aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Rabson <dfr@FreeBSD.org>2001-10-10 10:35:01 +0000
committerDoug Rabson <dfr@FreeBSD.org>2001-10-10 10:35:01 +0000
commitd9ed7b41fec28e44da08e5e52410ef5d72fbb9a3 (patch)
tree251fcdfec6ec69fc108316715c2e807d3be17ece
parentd7ed89186f6dbe8708f7b2e671ce421d27b13c95 (diff)
downloadsrc-d9ed7b41fec28e44da08e5e52410ef5d72fbb9a3.tar.gz
src-d9ed7b41fec28e44da08e5e52410ef5d72fbb9a3.zip
Adjust so that we don't use relocations which can't exist in a shared
library.
Notes
Notes: svn path=/head/; revision=84755
-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 01638d575d1e..a8d910c859d8 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 9c11fcbcf6e3..913a22de1041 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 147e7c76648e..03e076628420 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 d46645d76e6e..2f80ddf60fe8 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)