summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2012-10-17 23:45:21 -0400
committerRich Felker <dalias@aerifal.cx>2012-10-17 23:45:21 -0400
commitef2f595f7489a79b328766e3f8c2c899c8d23fd1 (patch)
tree2b974c102e8444927e5fa3a343e5df04045fe754
parent858df113bfac4d2ebb60c3fac1538e07d56096b0 (diff)
downloadmusl-ef2f595f7489a79b328766e3f8c2c899c8d23fd1.tar.gz
musl-ef2f595f7489a79b328766e3f8c2c899c8d23fd1.tar.bz2
musl-ef2f595f7489a79b328766e3f8c2c899c8d23fd1.tar.xz
musl-ef2f595f7489a79b328766e3f8c2c899c8d23fd1.zip
fix microblaze asm relocations for shared libc
only @PLT relocations are considered functions for purposes of -Bsymbolic-functions, so always use @PLT. it should not hurt in the static-linked case.
-rw-r--r--src/ldso/microblaze/dlsym.s2
-rw-r--r--src/ldso/microblaze/start.s4
-rw-r--r--src/signal/microblaze/sigsetjmp.s4
-rw-r--r--src/thread/microblaze/syscall_cp.s2
4 files changed, 6 insertions, 6 deletions
diff --git a/src/ldso/microblaze/dlsym.s b/src/ldso/microblaze/dlsym.s
index 2044e2df..63cd638b 100644
--- a/src/ldso/microblaze/dlsym.s
+++ b/src/ldso/microblaze/dlsym.s
@@ -1,5 +1,5 @@
.global dlsym
.type dlsym,@function
dlsym:
- brid __dlsym
+ brid __dlsym@PLT
add r7, r15, r0
diff --git a/src/ldso/microblaze/start.s b/src/ldso/microblaze/start.s
index 4afd59f0..5ffbcbae 100644
--- a/src/ldso/microblaze/start.s
+++ b/src/ldso/microblaze/start.s
@@ -8,11 +8,11 @@ _start:
mfs r7, rpc
addi r7, r7, _GLOBAL_OFFSET_TABLE_+8
addi r7, r7, _DYNAMIC@GOTOFF
- brlid r15, __reloc_self
+ brlid r15, __reloc_self@PLT
nop
lwi r5, r1, 0
- brlid r15, __dynlink
+ brlid r15, __dynlink@PLT
addi r6, r1, 4
lwi r4, r1, 0
diff --git a/src/signal/microblaze/sigsetjmp.s b/src/signal/microblaze/sigsetjmp.s
index 3aca90dc..47cf8d9e 100644
--- a/src/signal/microblaze/sigsetjmp.s
+++ b/src/signal/microblaze/sigsetjmp.s
@@ -2,8 +2,8 @@
.type sigsetjmp,@function
sigsetjmp:
lwi r11, r5, 72
- beqi r11, setjmp
+ beqi r11, setjmp@PLT
addi r7, r5, 76
add r6, r0, r0
- brid sigprocmask
+ brid sigprocmask@PLT
ori r5, r0, 2
diff --git a/src/thread/microblaze/syscall_cp.s b/src/thread/microblaze/syscall_cp.s
index c470521c..ce38b56c 100644
--- a/src/thread/microblaze/syscall_cp.s
+++ b/src/thread/microblaze/syscall_cp.s
@@ -4,7 +4,7 @@ __syscall_cp_asm:
.global __cp_begin
__cp_begin:
lwi r5, r5, 0
- bnei r5, __cancel
+ bnei r5, __cancel@PLT
addi r12, r6, 0
add r5, r7, r0
add r6, r8, r0