aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/arm
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2004-12-04 21:20:42 +0000
committerRoland McGrath <roland@gnu.org>2004-12-04 21:20:42 +0000
commit577e4aa1ec5462ead3af4ba2236881ed4672f01e (patch)
tree87948205c3d9250bd57065380599325f77cc152d /sysdeps/unix/arm
parent3f488b9cddc0a49b0860a3714eb7a77019482d38 (diff)
downloadglibc-577e4aa1ec5462ead3af4ba2236881ed4672f01e.tar
glibc-577e4aa1ec5462ead3af4ba2236881ed4672f01e.tar.gz
glibc-577e4aa1ec5462ead3af4ba2236881ed4672f01e.tar.bz2
glibc-577e4aa1ec5462ead3af4ba2236881ed4672f01e.zip
* sysdeps/arm/sysdep.h: Define __USE_BX__ if bx is available.
Use it instead of __THUMB_INTERWORK__. Make RETINSTR take only a condition and a register. * sysdeps/arm/dl-machine.h: Use __USE_BX__ instead of __THUMB_INTERWORK__. (_dl_start_user): Use BX. * sysdeps/arm/strlen.S: Use DO_RET. * sysdeps/unix/arm/brk.S, sysdeps/unix/arm/fork.S, sysdeps/unix/arm/sysdep.S, sysdeps/unix/arm/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/arm/clone.S, sysdeps/unix/sysv/linux/arm/mmap.S, sysdeps/unix/sysv/linux/arm/mmap64.S, sysdeps/unix/sysv/linux/arm/socket.S, sysdeps/unix/sysv/linux/arm/sysdep.h, sysdeps/unix/sysv/linux/arm/vfork.S: Update uses of RETINSTR.
Diffstat (limited to 'sysdeps/unix/arm')
-rw-r--r--sysdeps/unix/arm/brk.S2
-rw-r--r--sysdeps/unix/arm/fork.S2
-rw-r--r--sysdeps/unix/arm/sysdep.S4
-rw-r--r--sysdeps/unix/arm/sysdep.h2
4 files changed, 5 insertions, 5 deletions
diff --git a/sysdeps/unix/arm/brk.S b/sysdeps/unix/arm/brk.S
index 9e20dc6932..914e8a8bbe 100644
--- a/sysdeps/unix/arm/brk.S
+++ b/sysdeps/unix/arm/brk.S
@@ -43,7 +43,7 @@ SYSCALL__ (brk, 1)
#endif
str r0, [r1]
mov r0, $0
- RETINSTR(mov, pc, r14)
+ DO_RET (r14)
#ifdef PIC
1: .long _GLOBAL_OFFSET_TABLE_ - 2b - 8
_cb_addr:
diff --git a/sysdeps/unix/arm/fork.S b/sysdeps/unix/arm/fork.S
index b317b66a97..bd00c92cfe 100644
--- a/sysdeps/unix/arm/fork.S
+++ b/sysdeps/unix/arm/fork.S
@@ -27,7 +27,7 @@ SYSCALL__ (fork, 0)
R0&-1==R0, and the child gets R0&0==0. */
sub r1, r1, $1
and r0, r0, r1
- RETINSTR(mov, pc, r14)
+ DO_RET (r14)
PSEUDO_END (__fork)
libc_hidden_def (__fork)
diff --git a/sysdeps/unix/arm/sysdep.S b/sysdeps/unix/arm/sysdep.S
index 5fc80a872e..4810805d85 100644
--- a/sysdeps/unix/arm/sysdep.S
+++ b/sysdeps/unix/arm/sysdep.S
@@ -50,7 +50,7 @@ syscall_error:
ldr r1, 1f
str r0, [r1]
mvn r0, $0
- RETINSTR(mov, pc, r14)
+ DO_RET (r14)
1: .long C_SYMBOL_NAME(errno)
#else
@@ -60,7 +60,7 @@ syscall_error:
0: add r2, pc, r2
str r0, [r1, r2]
mvn r0, $0
- RETINSTR(mov, pc, r14)
+ DO_RET (r14)
1: .word _GLOBAL_OFFSET_TABLE_ - 0b - 8
2: .word C_SYMBOL_NAME(errno)(GOTOFF)
diff --git a/sysdeps/unix/arm/sysdep.h b/sysdeps/unix/arm/sysdep.h
index d776b45aa2..5f36272f27 100644
--- a/sysdeps/unix/arm/sysdep.h
+++ b/sysdeps/unix/arm/sysdep.h
@@ -24,7 +24,7 @@
#ifdef __ASSEMBLER__
-#define ret RETINSTR(mov, pc, r14)
+#define ret DO_RET (r14)
#define MOVE(a,b) mov b,a
#endif