diff options
author | Nick Clifton <nickc@redhat.com> | 2009-10-26 10:00:41 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2009-10-26 10:00:41 +0000 |
commit | f7e0cae24b71452eaf452d3799b6c3436d7301f2 (patch) | |
tree | c00793e8999e5a803997c1ac441444eaa88a8502 | |
parent | 15c59df67f4e35d95e8648316a810523d002a03a (diff) | |
download | cygnal-f7e0cae24b71452eaf452d3799b6c3436d7301f2.tar.gz cygnal-f7e0cae24b71452eaf452d3799b6c3436d7301f2.tar.bz2 cygnal-f7e0cae24b71452eaf452d3799b6c3436d7301f2.zip |
* arm/linux-syscalls0.S (SYSCALL0, SYSCALL3, SYSCALL6, SYSCALL4):
Delete Thumb definitions - the ARM versions work correctly in
Thumb mode.
-rw-r--r-- | libgloss/ChangeLog | 6 | ||||
-rw-r--r-- | libgloss/arm/linux-syscalls0.S | 44 |
2 files changed, 6 insertions, 44 deletions
diff --git a/libgloss/ChangeLog b/libgloss/ChangeLog index 2f9f36296..fc0733728 100644 --- a/libgloss/ChangeLog +++ b/libgloss/ChangeLog @@ -1,3 +1,9 @@ +2009-10-26 Nick Clifton <nickc@redhat.com> + + * arm/linux-syscalls0.S (SYSCALL0, SYSCALL3, SYSCALL6, SYSCALL4): + Delete Thumb definitions - the ARM versions work correctly in + Thumb mode. + 2009-10-08 Jie Zhang <jie.zhang@analog.com> * bfin/Makefile.in (basiccrt.o, basiccrts.o): Use diff --git a/libgloss/arm/linux-syscalls0.S b/libgloss/arm/linux-syscalls0.S index 81e21fd87..b16648fc3 100644 --- a/libgloss/arm/linux-syscalls0.S +++ b/libgloss/arm/linux-syscalls0.S @@ -19,47 +19,6 @@ #define GLOBAL(name) .global name; FUNC(name) #define SIZE(name) .size name, .-name -#if __thumb__ - -# define SYSCALL0(name) \ - GLOBAL(_ ## name); \ - mov r12, r7; \ - mov r7, #SYS_ ## name; \ - swi; \ - mov r7, r12; \ - b _set_errno; \ - SIZE(_ ## name) - -/* static int _syscall3(int a, int b, int c, int number); */ -FUNC(_syscall3) - push { r7 } - mov r7, r3 - swi - pop { r7 } - b _set_errno - SIZE(_syscall3) - -# define SYSCALL3(name) \ - GLOBAL(_ ## name); \ - mov r3, #SYS_ ## name; \ - b _syscall3; \ - SIZE(_ ## name) - -# define SYSCALL6(name) \ - GLOBAL(_ ## name); \ - push { r4 - r5, r7 }; \ - ldr r4, [sp, #12]; \ - ldr r5, [sp, #16]; \ - mov r7, #SYS_ ## name; \ - swi; \ - pop { r4 - r5, r7 }; \ - b _set_errno; \ - SIZE(_ ## name) - -# define SYSCALL4(name) SYSCALL6(name) - -#else /* __thumb__ */ - # define SYSCALL4(name) \ GLOBAL(_ ## name); \ swi #SYS_ ## name; \ @@ -78,9 +37,6 @@ FUNC(_syscall3) #define SYSCALL0(name) SYSCALL3(name) #define SYSCALL3(name) SYSCALL4(name) - -#endif /* __thumb__ */ - #define SYSCALL1(name) SYSCALL3(name) #define SYSCALL2(name) SYSCALL3(name) #define SYSCALL5(name) SYSCALL6(name) |