about summary refs log tree commit diff
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.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