summaryrefslogtreecommitdiffstats
path: root/lib/libc
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>2001-10-10 10:35:01 +0000
committerdfr <dfr@FreeBSD.org>2001-10-10 10:35:01 +0000
commita9c4a40889ad40c17f3ca45c343f126e9b81d61b (patch)
tree251fcdfec6ec69fc108316715c2e807d3be17ece /lib/libc
parent4338eb2498882d4c71fc92d803dec401aa9f9455 (diff)
downloadFreeBSD-src-a9c4a40889ad40c17f3ca45c343f126e9b81d61b.zip
FreeBSD-src-a9c4a40889ad40c17f3ca45c343f126e9b81d61b.tar.gz
Adjust so that we don't use relocations which can't exist in a shared
library.
Diffstat (limited to 'lib/libc')
-rw-r--r--lib/libc/ia64/sys/brk.S6
-rw-r--r--lib/libc/ia64/sys/ptrace.S3
-rw-r--r--lib/libc/ia64/sys/sbrk.S3
-rw-r--r--lib/libc/ia64/sys/setlogin.S3
4 files changed, 10 insertions, 5 deletions
diff --git a/lib/libc/ia64/sys/brk.S b/lib/libc/ia64/sys/brk.S
index 01638d5..a8d910c 100644
--- a/lib/libc/ia64/sys/brk.S
+++ b/lib/libc/ia64/sys/brk.S
@@ -39,12 +39,14 @@ EXPORT(minbrk)
.text
ENTRY(brk, 1)
- add r14=@gprel(minbrk),gp ;;
+ add r14=@ltoff(minbrk),gp ;;
+ ld8 r14=[r14] ;;
ld8 r14=[r14] ;;
cmp.ltu p6,p0=in0,r14 ;;
(p6) mov in0=r14
CALLSYS_ERROR(break)
- add r14=@gprel(curbrk),gp ;;
+ add r14=@ltoff(curbrk),gp ;;
+ ld8 r14=[r14] ;;
st8 [r14]=in0
mov ret0=0
br.ret.sptk.few rp
diff --git a/lib/libc/ia64/sys/ptrace.S b/lib/libc/ia64/sys/ptrace.S
index 9c11fcb..913a22d 100644
--- a/lib/libc/ia64/sys/ptrace.S
+++ b/lib/libc/ia64/sys/ptrace.S
@@ -31,7 +31,8 @@
#include "SYS.h"
ENTRY(ptrace, 4)
- add r14=@gprel(errno),gp ;;
+ add r14=@ltoff(errno),gp ;;
+ ld8 r14=[r14] ;;
st4 [r14]=r0
CALLSYS_ERROR(ptrace)
br.ret.sptk.few rp
diff --git a/lib/libc/ia64/sys/sbrk.S b/lib/libc/ia64/sys/sbrk.S
index 147e7c7..03e0766 100644
--- a/lib/libc/ia64/sys/sbrk.S
+++ b/lib/libc/ia64/sys/sbrk.S
@@ -40,7 +40,8 @@ EXPORT(curbrk)
ENTRY(sbrk, 1)
alloc r14=ar.pfs,1,2,0,0
- add loc0=@gprel(curbrk),gp ;;
+ add loc0=@ltoff(curbrk),gp ;;
+ ld8 loc0=[loc0] ;;
ld8 loc1=[loc0]
cmp.eq p6,p0=in0,r0
(p6) br.dpnt.few 1f
diff --git a/lib/libc/ia64/sys/setlogin.S b/lib/libc/ia64/sys/setlogin.S
index d46645d..2f80ddf 100644
--- a/lib/libc/ia64/sys/setlogin.S
+++ b/lib/libc/ia64/sys/setlogin.S
@@ -33,7 +33,8 @@
IMPORT(_logname_valid, 4) /* in getlogin() */
SYSCALL(setlogin)
- add r14=@gprel(_logname_valid),gp ;;
+ add r14=@ltoff(_logname_valid),gp ;;
+ ld8 r14=[r14] ;;
st4 [r14]=r0 /* clear it */
br.ret.sptk.few rp
END(setlogin)
OpenPOWER on IntegriCloud