summaryrefslogtreecommitdiff
path: root/sysdeps/sparc/sparc64/dl-machine.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-08-17 20:38:57 +0000
committerUlrich Drepper <drepper@redhat.com>2000-08-17 20:38:57 +0000
commit4c4b95182b5dcda4c8c1b37763755ec0a210f4f8 (patch)
tree045b0d798493a46c57777d5db499bd7363967bdd /sysdeps/sparc/sparc64/dl-machine.h
parent319b400bb50e6e70c97d7fabdbb365cd946780ac (diff)
downloadglibc-4c4b95182b5dcda4c8c1b37763755ec0a210f4f8.tar.gz
Update.
2000-08-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/sparc/fpu/fedisblxcpt.c: New file. * sysdeps/sparc/fpu/feenablxcpt.c: New file. * sysdeps/sparc/fpu/fegetexcept.c: New file. * sysdeps/sparc/sparc64/fpu/e_sqrtl.c: New file. * sysdeps/sparc/sparc64/dl-machine.h: Subtract 4 .rela.plt entries to match Solaris.
Diffstat (limited to 'sysdeps/sparc/sparc64/dl-machine.h')
-rw-r--r--sysdeps/sparc/sparc64/dl-machine.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/sysdeps/sparc/sparc64/dl-machine.h b/sysdeps/sparc/sparc64/dl-machine.h
index fc89f08ed2..6aa9ca6659 100644
--- a/sysdeps/sparc/sparc64/dl-machine.h
+++ b/sysdeps/sparc/sparc64/dl-machine.h
@@ -446,8 +446,8 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
plt[8 + 6] = 0xadc40011;
plt[8 + 7] = 0x9330700c;
- /* Now put the magic cookie at the beginning of .PLT3
- Entry .PLT4 is unused by this implementation. */
+ /* Now put the magic cookie at the beginning of .PLT2
+ Entry .PLT3 is unused by this implementation. */
*((struct link_map **)(&plt[16 + 0])) = l;
}
@@ -467,13 +467,14 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
ldx [%l6 + 32 + 8], %o0
sub %g1, %l6, %l0
xor %l2, -1016, %l2
- sethi %hi(5120), %l3
+ sethi %hi(5120), %l3 ! 160 * 32
add %l0, %l2, %l0
sethi %hi(32768), %l4
udivx %l0, %l3, %l3
sllx %l3, 2, %l1
add %l1, %l3, %l1
sllx %l1, 10, %l2
+ sub %l4, 4, %l4 ! No thanks to Sun for not obeying their own ABI
sllx %l1, 5, %l1
sub %l0, %l2, %l0
udivx %l0, 24, %l0
@@ -495,6 +496,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
! srlx %g1, 12, %o1 - Done in .PLT1
ldx [%l6 + 8], %o0
add %o1, %o1, %o3
+ sub %o1, 96, %o1 ! No thanks to Sun for not obeying their own ABI
mov %i7, %o2
call " #fixup_name "
add %o1, %o3, %o1