summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/sh/crti.S
diff options
context:
space:
mode:
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"