summaryrefslogtreecommitdiffstats
path: root/libexec/rtld-elf/powerpc/rtld_start.S
diff options
context:
space:
mode:
authorkan <kan@FreeBSD.org>2003-05-29 22:58:26 +0000
committerkan <kan@FreeBSD.org>2003-05-29 22:58:26 +0000
commit949c40c5fd683b40f39ebfa2783d06b8226148ab (patch)
treeb9989a6b77c2c503eafdb3cf6bf13370f5c6396b /libexec/rtld-elf/powerpc/rtld_start.S
parentb292a2679ee1e9385409c38e0e898f0c2f4cb41c (diff)
downloadFreeBSD-src-949c40c5fd683b40f39ebfa2783d06b8226148ab.zip
FreeBSD-src-949c40c5fd683b40f39ebfa2783d06b8226148ab.tar.gz
Allow threading libraries to register their own locking
implementation in case default one provided by rtld is not suitable. Consolidate various identical MD lock implementation into a single file using appropriate machine/atomic.h. Approved by: re (scottl)
Diffstat (limited to 'libexec/rtld-elf/powerpc/rtld_start.S')
-rw-r--r--libexec/rtld-elf/powerpc/rtld_start.S12
1 files changed, 6 insertions, 6 deletions
diff --git a/libexec/rtld-elf/powerpc/rtld_start.S b/libexec/rtld-elf/powerpc/rtld_start.S
index 040b663..86f76e6 100644
--- a/libexec/rtld-elf/powerpc/rtld_start.S
+++ b/libexec/rtld-elf/powerpc/rtld_start.S
@@ -33,10 +33,10 @@
.extern _GLOBAL_OFFSET_TABLE_
.extern _DYNAMIC
-
+
_ENTRY(.rtld_start)
- stwu %r1,-48(%r1) /* 16-byte aligned stack for reg saves +
- exit_proc & obj _rtld args +
+ stwu %r1,-48(%r1) /* 16-byte aligned stack for reg saves +
+ exit_proc & obj _rtld args +
backchain & lrsave stack frame */
stw %r3,16(%r1) /* argc */
stw %r4,20(%r1) /* argv */
@@ -71,7 +71,7 @@ _ENTRY(.rtld_start)
sync
icbi %r0,%r4
isync
-
+
lwz %r4,0(%r3) /* offset to _DYNAMIC */
add %r3,%r4,%r3 /* r3 = &_DYNAMIC, absolute value */
@@ -79,7 +79,7 @@ _ENTRY(.rtld_start)
mflr %r4 /* &_GLOBAL_OFFSET_TABLE_, absolute value */
lwz %r4,0(%r4) /* linker &_DYNAMIC, from got[0] */
subf %r4,%r4,%r3 /* subtract to calculate relocbase */
-
+
bl reloc_non_plt_self@plt /* reloc_non_plt_self(&_DYNAMIC,base) */
/*
@@ -190,5 +190,5 @@ _ENTRY(_rtld_powerpc_pltcall)
lwz %r11,0(%r11) # lwz 11,jmptab@l(11)
mtctr %r11
bctr # (*jmptab[index])()
-
+
OpenPOWER on IntegriCloud