Commit Graph

41 Commits

Author SHA1 Message Date
Andreas Schwab
773d8a5255 * sysdeps/m68k/dl-machine.h (RTLD_START): Call pre-init funtions. 1999-07-26 08:27:39 +00:00
Roland McGrath
893f3d106f 1999-07-21 Roland McGrath <roland@baalperazim.frob.com>
* elf/dl-reloc.c (_dl_reloc_bad_type): New function.
	* elf/ldsodefs.h: Declare it.
	* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Use it
	instead of assert.
	(elf_machine_lazy_rel): Likewise.  Take new arg MAP.
	* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise.
	(elf_machine_lazy_rel): Likewise.
	* sysdeps/mips/dl-machine.h (elf_machine_rel): Likewise.
	(elf_machine_lazy_rel): Likewise.
	* sysdeps/mips/mips64/dl-machine.h (elf_machine_rel): Likewise.
	(elf_machine_lazy_rel): Likewise.
	* sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
	(elf_machine_lazy_rel): Likewise.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
	(elf_machine_lazy_rel): Likewise.
	* sysdeps/generic/dl-machine.h (elf_machine_rel): Likewise.
	* sysdeps/arm/dl-machine.h (elf_machine_rel): Likewise.
	(elf_machine_lazy_rel): Likewise.
	* sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise.
	(elf_machine_lazy_rel): Likewise.
	* sysdeps/powerpc/dl-machine.h (elf_machine_lazy_rel): Likewise.
	* sysdeps/powerpc/dl-machine.c (__process_machine_rela): Use
	_dl_reloc_bad_type instead of _dl_signal_error.
	* elf/do-rel.h (elf_dynamic_do_rel): Pass MAP to elf_machine_lazy_rel.
1999-07-21 16:57:52 +00:00
Ulrich Drepper
e675032fec (elf_machine_runtime_setup): DT_PLTGOT entry is already relocated. 1999-02-20 18:22:38 +00:00
Ulrich Drepper
a2790a3c68 (elf_machine_rela): DT_STRTAB is already relocated. 1999-02-20 14:58:50 +00:00
Andreas Schwab
6d1d5abfa2 * sysdeps/m68k/dl-machine.h (elf_machine_rela): Reorder expression
to avoid accessing global data in the usual case.
1999-01-04 01:36:55 +00:00
Andreas Schwab
641d707400 * sysdeps/m68k/dl-machine.h (RTLD_START): Fix clearing startup
flag.
1998-10-07 02:02:53 +00:00
Andreas Schwab
b3e2d5611f * sysdeps/m68k/dl-machine.h (elf_machine_lazy_rel): Slightly
optimized.
1998-09-22 01:42:11 +00:00
Andreas Schwab
739902c55d * sysdeps/m68k/dl-machine.h(RTLD_START): Push _dl_main_searchlist
instead of _dl_default_scope[2] as argument to _dl_init_next.
1998-09-09 01:36:38 +00:00
Ulrich Drepper
68d11b268e (elf_machine_lazy_rel): Change first parameter and use this value. 1998-08-28 22:54:12 +00:00
Andreas Schwab
08016d928b * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Set
_dl_profile_map only if the name matches.
	(_dl_start_user): Remember stack address.
	* sysdeps/m68k/elf/start.S: Pass new argument to
	__libc_start_user.
1998-06-10 01:35:06 +00:00
Andreas Schwab
1e0c166557 * sysdeps/m68k/dl-machine.h: (elf_machine_load_address): Use word
offsets into the GOT.
	(RTLD_START): Likewise.
1998-03-04 02:36:01 +00:00
Ulrich Drepper
989166429c (elf_machine_rela): Fix last change.
The R_68K_GLOB_DAT and R_68K_JMP_SLOT relocations really ignore
the addend, Richard.
(elf_machine_fixup_plt): Don't add the addend.
(elf_machine_plt_value): New function.
1997-10-12 03:41:56 +00:00
Ulrich Drepper
ff91cf3056 (elf_machine_relplt): Killed.
(ELF_MACHINE_JMP_SLOT): Renamed.
(elf_machine_fixup_plt): New function.
1997-09-27 00:20:13 +00:00
Ulrich Drepper
ea420deaef (elf_machine_load_address): Use _dl_start instead of a local label, to
avoid getting an unreadable label name.
1997-09-05 01:40:47 +00:00
Ulrich Drepper
c0d5b73e05 (RTLD_START): Switch back to previous section to avoid confusing the
compiler.
1997-08-27 19:58:41 +00:00
Ulrich Drepper
6e8e1d85e0 Add support for shared library profiling. 1997-08-02 20:56:48 +00:00
Ulrich Drepper
482bd6c6e4 (elf_machine_runtime_setup): Add new parameter to enable profiling.
(elf_machine_rela): Add new parameter to specify place to store result in.
1997-07-28 22:31:42 +00:00
Ulrich Drepper
09d24ad477 (elf_machine_rela): Mention program name in warning message. 1997-07-22 00:03:10 +00:00
Ulrich Drepper
c96df8ef30 (elf_machine_rela): Check that the symbol was found. 1997-06-21 02:08:10 +00:00
Ulrich Drepper
b5fba1adf7 (elf_machine_rel): Print warning about changed size in copy relocation
only if symbol in shared object is larger or _dl_verbose is nonzero.
1997-05-25 01:07:16 +00:00
Ulrich Drepper
e295f61993 (elf_machine_runtime_setup): Return lazy. 1997-05-24 02:15:43 +00:00
Ulrich Drepper
e9b08b8835 (elf_machine_rela): Check for mismatch in size for copy relocation. 1997-05-07 14:32:55 +00:00
Ulrich Drepper
fea9a86a67 (elf_machine_rela): Rewritten as for i386.
(elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p,
ELF_MACHINE_RELOC_NOPLT): Define.
1997-03-27 01:57:11 +00:00
Ulrich Drepper
d6abe77e92 update from main archive 970218 1997-02-19 04:43:26 +00:00
Ulrich Drepper
4ead5e7163 Update to 2.1.x development version 1997-02-15 04:31:01 +00:00
Ulrich Drepper
f1fc182396 update from main archive 961203 1996-12-04 01:41:27 +00:00
Ulrich Drepper
c080e5ff92 update from main archive 960825 1996-08-26 00:42:04 +00:00
Ulrich Drepper
141ce15d97 update from main archive 960818 1996-08-19 01:07:37 +00:00
Ulrich Drepper
404e621688 update from main archive 960814 1996-08-15 01:23:29 +00:00
Roland McGrath
4f895a140a Sat Jul 20 14:03:45 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h (elf_machine_rela): Remove bogus
	#undef RESOLVE.
1996-07-22 13:43:16 +00:00
Roland McGrath
c6195ef632 Tue Jul 16 01:52:42 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h: Follow Jul 14 change in
	sysdeps/i386/dl-machine.h.
1996-07-17 16:14:42 +00:00
Roland McGrath
4be08629d9 Mon Jul 8 21:18:40 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h (RESOLVE): New macro, defined
	differently based on [RTLD_BOOTSTRAP].
	(elf_machine_rela): Use it instead of the fn ptr arg directly.
1996-07-10 14:42:15 +00:00
Roland McGrath
7d610b3a3d Wed Jun 12 20:40:51 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h (RTLD_START): Fix access to
	_dl_default_scope.
1996-06-17 21:49:10 +00:00
Roland McGrath
50f1932bda Tue Jun 11 19:13:04 1996 Richard Henderson <rth@tamu.edu>
* elf/rtld.c (_dl_start): Don't rely on pointer-to-first-arg hack
	for getting the argc/argv/envp block.  Instead, make it the argument.
	sysdeps/i386/dl-machine.h (RTLD_START): Do that.
	sysdeps/m68k/dl-machine.h (RTLD_START): Same.
1996-06-12 01:42:09 +00:00
Roland McGrath
9f9cd8224e Mon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-object.c (_dl_loaded): Variable removed.
	(_dl_default_scope): New variable replaces it.
	* elf/link.h (_dl_loaded): Remove variable decl; instead define as
	macro for _dl_default_scope[2].
	(_dl_default_scope): Declare it.
	* sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_default_scope[2]
	instead of _dl_loaded.
	* sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
	* elf/rtld.c (dl_main): Use _dl_default_scope for symbol lookups.
1996-06-10 20:11:28 +00:00
Roland McGrath
79a2e51250 Wed Jun 5 22:06:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h (elf_machine_rela): Fix type of reloc
	argument.
	[case R_68K_32]: Check for resolve being null.
	(RTLD_START): Add missing label.
1996-06-07 13:06:41 +00:00
Roland McGrath
7c366516bb Tue Jun 4 18:57:57 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-init.c (_dl_init_next): Take argument, link_map whose
 	searchlist describes the piece of the DT_NEEDED graph to be
 	initialized.
	* elf/link.h: Update prototype.
	* sysdeps/i386/dl-machine.h (RTLD_START): Pass _dl_loaded as argument
	to _dl_init_next.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* elf/dl-deps.c (_dl_open): Pass new object as arg to _dl_init_next.
1996-06-04 22:59:11 +00:00
Roland McGrath
43e2c3421f Mon Jun 3 03:06:34 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): Take new arg RELOC_ADDR and
	don't allow a defn resolving to that address.
	* elf/link.h: Update prototype and comment.
	* elf/dl-runtime.c (fixup): Define local `resolve' function and pass
	it to elf_machine_relplt.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Take new arg
	RELOC_ADDR and pass it through to _dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Pass RESOLVE to elf_machine_rel
	instead of calling it ourselves and passing its results.
	(elf_dynamic_do_rel): RESOLVE fn takes new arg RELOC_ADDR.
	* elf/rtld.c (dl_main): Pass 0 for RELOC_ADDR to _dl_lookup_symbol.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Remove SYM_LOADADDR
	arg.  Add RESOLVE function ptr arg.  Call *RESOLVE as necessary.
	* sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/stub/dl-machine.h: Likewise.
Sun Jun  2 14:56:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/dl-lookup.c (_dl_lookup_symbol): Arg NOSELF renamed to NOPLT.
	Reject SHN_UNDEF defns iff NOPLT is nonzero.
	* elf/link.h (_dl_lookup_symbol): Update prototype and comment.
	* elf/dl-runtime.c (fixup): Pass 1 to _dl_lookup_symbol for NOPLT.
	* elf/dlsym.c (dlsym): Pass 0.
	* elf/rtld.c (dl_main): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Second arg R_OFFSET
	replaced with NOPLT flag.  Pass it through to _dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Update prototype of RESOLVE arg.
	Pass `elf_machine_pltrel_p (R->r_type)' result as NOPLT flag value.
	* sysdeps/i386/dl-machine.h (elf_machine_pltrel_p): New macro.
	* sysdeps/m68k/dl-machine.h (elf_machine_pltrel_p): Likewise.
	* sysdeps/stub/dl-machine.h (elf_machine_pltrel_p): Likewise.
1996-06-03 04:24:14 +00:00
Roland McGrath
03e81891af Sun Jun 2 14:56:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): Arg NOSELF renamed to NOPLT.
	Reject SHN_UNDEF defns iff NOPLT is nonzero.
	* elf/link.h (_dl_lookup_symbol): Update prototype and comment.
	* elf/dl-runtime.c (fixup): Pass 1 to _dl_lookup_symbol for NOPLT.
	* elf/dlsym.c (dlsym): Pass 0.
	* elf/rtld.c (dl_main): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Second arg R_OFFSET
	replaced with NOPLT flag.  Pass it through to _dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Update prototype of RESOLVE arg.
	Pass `elf_machine_pltrel_p (R->r_type)' result as NOPLT flag value.
	* sysdeps/i386/dl-machine.h (elf_machine_pltrel_p): New macro.
	* sysdeps/m68k/dl-machine.h (elf_machine_pltrel_p): Likewise.
	* sysdeps/stub/dl-machine.h (elf_machine_pltrel_p): Likewise.
1996-06-02 21:35:13 +00:00
Roland McGrath
a9eac710a2 Thu Feb 15 16:56:17 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h (elf_machine_load_address): Corrected.
	(ELF_MACHINE_BEFORE_RTLD_RELOC): Define.
	(_dl_runtime_resolve): Save %a1 as well.
	(ELF_MACHINE_RUNTIME_FIXUP_ARGS): Add second dummy arg.
	(elf_machine_relplt): Define.
1996-02-18 18:31:55 +00:00
Roland McGrath
5f51e1132a Sat Feb 10 13:09:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/sys/mman.h: Define MAP_ANON and
	MAP_FILE if not already defined.

	* elf/elf.h: Add m68k reloc definitions.
	* sysdeps/m68k/dl-machine.h, sysdeps/m68k/elf/start.S: New files.
1996-02-13 09:26:53 +00:00