summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/sh/crti.S
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2006-10-23 04:20:20 +0000
committerPaul Mundt <lethal@linux-sh.org>2006-10-23 04:20:20 +0000
commit0b508dd647e667c92820ddfc82eb5f95b19d2db1 (patch)
tree882e403d52d6a21249c00a7b8b451e9c7eec9239 /libc/sysdeps/linux/sh/crti.S
parent44b161a8c584a50d77d63ad553e78991c7dc3617 (diff)
Merge SH-2 trapa fixups from Mark.
2006-10-16 Mark Shinwell <shinwell@codesourcery.com> * libc/sysdeps/linux/sh/vfork.S: Use __SH_SYSCALL_TRAP_BASE. Also use __CONFIG_SH2__ rather than __sh2__, for consistency. * libc/sysdeps/linux/sh/syscall.c: Use __SH_SYSCALL_TRAP_BASE. * libc/sysdeps/linux/sh/bits/uClibc_arch_features.h: Use __CONFIG_SH2__ rather than __sh2__, for consistency. * libc/sysdeps/linux/sh/bits/syscalls.h (__SH_SYSCALL_TRAP_BASE): New. Use instead of hard-coded trap numbers in the various __NR_<name> macros. * libc/sysdeps/linux/sh/clone.S: Use __SH_SYSCALL_TRAP_BASE. Also use __CONFIG_SH2__ rather than __sh2__, for consistency. * libc/sysdeps/linux/sh/crti.S: Disable GOT-related code if __HAVE_SHARED__ is not set. * libc/sysdeps/linux/sh/pipe.c (pipe): Use __SH_SYSCALL_TRAP_BASE.
Diffstat (limited to 'libc/sysdeps/linux/sh/crti.S')
-rw-r--r--libc/sysdeps/linux/sh/crti.S22
1 files changed, 13 insertions, 9 deletions
diff --git a/libc/sysdeps/linux/sh/crti.S b/libc/sysdeps/linux/sh/crti.S
index 349613ab1..43ba28583 100644
--- a/libc/sysdeps/linux/sh/crti.S
+++ b/libc/sysdeps/linux/sh/crti.S
@@ -8,20 +8,21 @@
.type _init, @function
_init:
mov.l r12,@-r15
- mova .L6,r0
mov.l r14,@-r15
sts.l pr,@-r15
+#ifndef __HAVE_SHARED__
+ mova .L6,r0
mov.l .L6,r12
- mov r15,r14
add r0,r12
-
-
-
+#endif
+ mov r15,r14
bra 1f
nop
.align 2
+#ifndef __HAVE_SHARED__
.L6:
.long _GLOBAL_OFFSET_TABLE_
+#endif
1:
.section .fini
@@ -31,19 +32,22 @@ _init:
.type _fini, @function
_fini:
mov.l r12,@-r15
- mova .L11,r0
mov.l r14,@-r15
sts.l pr,@-r15
- mov.l .L11,r12
mov r15,r14
+#ifndef __HAVE_SHARED__
+ mov.l .L11,r12
+ mova .L11,r0
add r0,r12
-
-
+#endif
+
bra 1f
nop
.align 2
+#ifndef __HAVE_SHARED__
.L11:
.long _GLOBAL_OFFSET_TABLE_
+#endif
1:
.ident "GCC: (GNU) 3.3.2"