Subject: CVS commit: basesrc/libexec/ld.elf_so/arch/sparc64
To: None <source-changes@netbsd.org>
From: Charles M. Hannum <mycroft@netbsd.org>
List: source-changes
Date: 09/25/2002 19:35:09
Module Name:	basesrc
Committed By:	mycroft
Date:		Wed Sep 25 16:35:09 UTC 2002

Modified Files:
	basesrc/libexec/ld.elf_so/arch/sparc64: mdreloc.c rtld_start.S

Log Message:
Swap registers %o0 and %o1 in the binder stub to say one instruction.

Fix an obvious bug in the 64-bit PLT fixup: the SLLX was by 12 bits, when it
should be 32.

Fix what *appear* to be two bugs in the >32768 PLT entry stub:
* One division was wrong (/14 rather than /24).
* We need to subtract 1048576 (to make the offset relative to the beginning of
  the upper section), not add it.
This path is still untested, and buggy.


To generate a diff of this commit:
cvs rdiff -r1.25 -r1.26 basesrc/libexec/ld.elf_so/arch/sparc64/mdreloc.c
cvs rdiff -r1.10 -r1.11 basesrc/libexec/ld.elf_so/arch/sparc64/rtld_start.S

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.