about summary refs log tree commit diff
path: root/sysdeps/powerpc/dl-machine.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-11-17 18:36:05 +0000
committerUlrich Drepper <drepper@redhat.com>1998-11-17 18:36:05 +0000
commitd8cceb4fcf42c9dd7805b75a8640e15d00dd7ac9 (patch)
tree2509bdf2a3563d5cddb03fb92b97c1dedee40ad2 /sysdeps/powerpc/dl-machine.h
parentcae8899646b7acc7e5b27c14624a027f5240787f (diff)
downloadglibc-d8cceb4fcf42c9dd7805b75a8640e15d00dd7ac9.tar.gz
glibc-d8cceb4fcf42c9dd7805b75a8640e15d00dd7ac9.tar.xz
glibc-d8cceb4fcf42c9dd7805b75a8640e15d00dd7ac9.zip
Update.
1998-11-17  Ulrich Drepper  <drepper@cygnus.com>

	* stdio-common/printf_fphex.c (__printf_fphex): Correct printing
	of denormalized numbers.

1998-10-06  Geoff Keating  <geoffk@ozemail.com.au>

	* sysdeps/powerpc/dl-machine.h (elf_machine_load_address): Suppress
	another parentheses warning, make nano-optimisation.

	* sysdeps/powerpc/dl-machine.h (_dl_runtime_resolve): Preserve
	saved LR on stack so _mcount works.
	(_dl_prof_resolve): Likewise.
	* sysdeps/powerpc/register-dump.h: Print FPRs.  Adjust for correct
	signal handler calling convention.
	* sysdeps/unix/sysv/linux/powerpc/sigcontextinfo.h: Adjust for
	correct signal handler calling convention---more like x86 linux and
	mklinux, less like linux-ppc versions between 2.1 and 2.1.126.

1998-11-17  Ulrich Drepper  <drepper@cygnus.com>

	* configure.in: Correct allowed makeinfo version.

1998-11-17  Philip Blundell  <pb@nexus.co.uk>

	* sysdeps/generic/bits/mathdef.h: Fix typo.

	* intl/locale.alias: Change `japanese' alias to match X11R6's.
Diffstat (limited to 'sysdeps/powerpc/dl-machine.h')
-rw-r--r--sysdeps/powerpc/dl-machine.h19
1 files changed, 9 insertions, 10 deletions
diff --git a/sysdeps/powerpc/dl-machine.h b/sysdeps/powerpc/dl-machine.h
index ce6fcd02ab..6542b1d3b2 100644
--- a/sysdeps/powerpc/dl-machine.h
+++ b/sysdeps/powerpc/dl-machine.h
@@ -91,8 +91,7 @@ elf_machine_load_address (void)
   /* So now work out the difference between where the branch actually points,
      and the offset of that location in memory from the start of the file.  */
   return ((Elf32_Addr)branchaddr - *got
-	  + (*branchaddr & 0x3fffffc
-	     | (int)(*branchaddr << 6 & 0x80000000) >> 6));
+	  + ((int)(*branchaddr << 6 & 0xffffff00) >> 6));
 }
 
 #define ELF_MACHINE_BEFORE_RTLD_RELOC(dynamic_info) /* nothing */
@@ -111,7 +110,7 @@ elf_machine_load_address (void)
 _dl_runtime_resolve:
  # We need to save the registers used to pass parameters, and register 0,
  # which is used by _mcount; the registers are saved in a stack frame.
-	stwu 1,-48(1)
+	stwu 1,-64(1)
 	stw 0,12(1)
 	stw 3,16(1)
 	stw 4,20(1)
@@ -123,7 +122,7 @@ _dl_runtime_resolve:
 	mflr 0
  # We also need to save some of the condition register fields.
 	stw 7,32(1)
-	stw 0,52(1)
+	stw 0,48(1)
 	stw 8,36(1)
 	mfcr 0
 	stw 9,40(1)
@@ -133,7 +132,7 @@ _dl_runtime_resolve:
  # 'fixup' returns the address we want to branch to.
 	mtctr 3
  # Put the registers back...
-	lwz 0,52(1)
+	lwz 0,48(1)
 	lwz 10,44(1)
 	lwz 9,40(1)
 	mtlr 0
@@ -147,7 +146,7 @@ _dl_runtime_resolve:
 	lwz 3,16(1)
 	lwz 0,12(1)
  # ...unwind the stack frame, and jump to the PLT entry we updated.
-	addi 1,1,48
+	addi 1,1,64
 	bctr
 	.size	 _dl_runtime_resolve,.-_dl_runtime_resolve
 
@@ -157,7 +156,7 @@ _dl_runtime_resolve:
 _dl_prof_resolve:
  # We need to save the registers used to pass parameters, and register 0,
  # which is used by _mcount; the registers are saved in a stack frame.
-	stwu 1,-48(1)
+	stwu 1,-64(1)
         stw 0,12(1)
 	stw 3,16(1)
 	stw 4,20(1)
@@ -169,7 +168,7 @@ _dl_prof_resolve:
 	mflr 5
  # We also need to save some of the condition register fields.
 	stw 7,32(1)
-	stw 5,52(1)
+	stw 5,48(1)
 	stw 8,36(1)
 	mfcr 0
 	stw 9,40(1)
@@ -179,7 +178,7 @@ _dl_prof_resolve:
  # 'fixup' returns the address we want to branch to.
 	mtctr 3
  # Put the registers back...
-	lwz 0,52(1)
+	lwz 0,48(1)
 	lwz 10,44(1)
 	lwz 9,40(1)
 	mtlr 0
@@ -193,7 +192,7 @@ _dl_prof_resolve:
 	lwz 3,16(1)
         lwz 0,12(1)
  # ...unwind the stack frame, and jump to the PLT entry we updated.
-	addi 1,1,48
+	addi 1,1,64
 	bctr
 	.size	 _dl_prof_resolve,.-_dl_prof_resolve
  # Undo '.section text'.