Almost all of the items in here are done.
This commit is contained in:
parent
5aa3fde6fa
commit
2f59687514
|
@ -1,49 +1,6 @@
|
|||
$NetBSD: README,v 1.9 2002/07/10 15:12:34 fredette Exp $
|
||||
|
||||
BUGS/PROBLEMS:
|
||||
|
||||
* rtld.c around line 184:
|
||||
|
||||
#iffdef __alpha__
|
||||
/* XXX XXX XXX */
|
||||
_rtld_objself.pltgot = NULL;
|
||||
#endif
|
||||
|
||||
It's a workaround for a linker bug, and will go away when the linker is
|
||||
fixed.
|
||||
|
||||
* The method used to relocate ld.so is shoddy and fragile. Currently it's
|
||||
something like:
|
||||
|
||||
alpha, hppa, powerpc:
|
||||
(1) assembly code relocates RELATIVE relocations in the GOT
|
||||
(on some ports, all relative relocations; this will probably
|
||||
have to be #ifdef'd in reloc.c), assuming that everything
|
||||
in the GOT is a RELATIVE relocation. On the hppa, this
|
||||
is actually done in C code.
|
||||
|
||||
(2) alpha, hppa only: C code relocates the rest of the loader,
|
||||
excluding those RELATIVE relocations already done (via an ...
|
||||
iffy heuristic).
|
||||
|
||||
arm, i386, m68k, sparc:
|
||||
(1) C code relocates the loader in _rtld_init() carefully so that
|
||||
it does not touch any globals.
|
||||
|
||||
mips:
|
||||
(1) loads ld.elf_so at 0, so no relocating is necessary.
|
||||
|
||||
Something better (like that the glibc ELF ld.so does) should be done
|
||||
eventually, where a single set of C code is compiled twice, once for
|
||||
normal use, and once to be used to relocate the shared linker. No
|
||||
relocations should be processed in assembly language.
|
||||
|
||||
* On the Alpha, this code Really needs to be checked to be sure that
|
||||
it doesn't make calls that could use FP, while doing lazy binding.
|
||||
$NetBSD: README,v 1.10 2002/09/13 04:05:00 mycroft Exp $
|
||||
|
||||
TO DO:
|
||||
|
||||
* Support for coexistance of 32-bit and 64-bit ELF on platforms that can
|
||||
do that.
|
||||
|
||||
* Support for relocating ld.elf_so on mips
|
||||
|
|
Loading…
Reference in New Issue