summaryrefslogtreecommitdiff
path: root/libc
diff options
context:
space:
mode:
Diffstat (limited to 'libc')
-rw-r--r--libc/sysdeps/linux/powerpc/crt1.S8
1 files changed, 4 insertions, 4 deletions
diff --git a/libc/sysdeps/linux/powerpc/crt1.S b/libc/sysdeps/linux/powerpc/crt1.S
index a912481ef..a97b0d142 100644
--- a/libc/sysdeps/linux/powerpc/crt1.S
+++ b/libc/sysdeps/linux/powerpc/crt1.S
@@ -43,7 +43,7 @@ _start:
mr r10,r1 /* Save the stack pointer */
clrrwi r1,r1,4 /* Align stack ptr to 16 bytes */
mr r9,r1 /* Pass aligned stack ptr */
-#if defined L_Scrt1
+#ifdef __PIC__
bl _GLOBAL_OFFSET_TABLE_-4@local
mflr r31
#endif
@@ -58,12 +58,12 @@ _start:
addi r5,r10,4
mr r8,r7 /* Pass _dl_fini from ldso or NULL if statically linked */
/* Ok, now run uClibc's main() -- shouldn't return */
-# ifdef L_Scrt1
+#ifdef __PIC__
lwz r6,_init@got(r31)
lwz r7,_fini@got(r31)
lwz r3,main@got(r31)
b __uClibc_main@plt
-# else
+#else
lis r6,_init@ha # load top 16 bits
addi r6,r6,_init@l # load bottom 16 bits
lis r7,_fini@ha # load top 16 bits
@@ -71,7 +71,7 @@ _start:
lis r3,main@ha # load top 16 bits
addi r3,r3,main@l # load bottom 16 bits
b __uClibc_main
-# endif
+#endif
.size _start,.-_start