Commit graph

955 commits

Author SHA1 Message Date
Joern Rennecke
fb319d8d1d * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_after_allocation):
Allow second call from ldemul_finish.
2003-07-08 18:05:34 +00:00
Joern Rennecke
3a51fda661 Allow to override sh64 initial stack value with --defsym:
* emulparams/shelf32.sh (STACK_ADDR): Don't define.
	(OTHER_SECTIONS): Include .stack.
	* emulparams/shelf64.sh (OTHER_SECTIONS): Likewise.
2003-07-04 16:07:01 +00:00
Jakub Jelinek
9203ba999f bfd/
* elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add rel_fptr_sec.
	(elfNN_ia64_dynamic_symbol_p): Change info->shared into
	!info->executable.
	(get_fptr): For -pie create .opd as writable section and create
	.rela.opd as well.
	(elfNN_ia64_check_relocs): Change info->shared into
	!info->executable.
	(allocate_fptr): Likewise.
	(allocate_dynrel_entries): Account for a relative reloc for -pie
	@fptr().  Don't account for a relative reloc if -pie want_ltoff_fptr
	for undefweak symbol.  Account for an IPLT reloc in .rela.opd
	section if -pie.
	(set_got_entry): Don't create a relative reloc if -pie
	want_ltoff_fptr for undefweak symbol.
	(set_fptr_entry): Emit an IPLT reloc in .rela.opd for -pie.
	(elfNN_ia64_relocate_section): Emit a relative reloc for -pie
	@fptr().

	* elfxx-ia64.c (elfNN_ia64_relocate_section): Issue undefined_symbol
	even if -pie.
	* elf32-i386.c (elf_i386_relocate_section): Likewise.
	* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
	* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
	* elf64-s390.c (elf_s390_relocate_section): Likewise.
	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
	* elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
	* elf32-s390.c (elf_s390_relocate_section): Likewise.
	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
ld/
	* emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Don't include
	.opd if -pie.
	(OTHER_READWRITE_SECTIONS): Include .opd if -pie.
	* scripttempl/elf.sc: Use SHLIB_DATA_ADDR instead of DATA_ADDR
	if -pie.
2003-07-04 13:53:38 +00:00
Alan Modra
1579bae1cd Convert to C90 2003-06-28 05:28:54 +00:00
Nick Clifton
dc17f155ff Cope with NUL seperated directives. Fix reporting of unparseable directives. 2003-06-27 08:10:57 +00:00
Alan Modra
0c7a8e5acd * emultempl/aix.em: Convert to C90, remove unnecessary prototypes
and casts.  Replace PTR with void *.  Formatting.
	* emultempl/alphaelf.em: Likewise
	* emultempl/armcoff.em: Likewise
	* emultempl/armelf.em: Likewise
	* emultempl/armelf_oabi.em: Likewise
	* emultempl/beos.em: Likewise
	* emultempl/elf32.em: Likewise
	* emultempl/generic.em: Likewise
	* emultempl/gld960.em: Likewise
	* emultempl/gld960c.em: Likewise
	* emultempl/hppaelf.em: Likewise
	* emultempl/linux.em: Likewise
	* emultempl/lnk960.em: Likewise
	* emultempl/m68hc1xelf.em: Likewise
	* emultempl/m68kcoff.em: Likewise
	* emultempl/m68kelf.em: Likewise
	* emultempl/mipsecoff.em: Likewise
	* emultempl/mipself.em: Likewise
	* emultempl/mmix-elfnmmo.em: Likewise
	* emultempl/mmixelf.em: Likewise
	* emultempl/mmo.em: Likewise
	* emultempl/needrelax.em: Likewise
	* emultempl/netbsd.em: Likewise
	* emultempl/pe.em: Likewise
	* emultempl/sh64elf.em: Likewise
	* emultempl/sunos.em: Likewise
	* emultempl/ticoff.em: Likewise
	* emultempl/vanilla.em: Likewise
	* emultempl/xtensaelf.em: Likewise
	* Makefile.am: Correct dependencies.
	* Makefile.in: Regenerate.
2003-06-27 00:38:25 +00:00
Alan Modra
1049f94e8e Correct spelling of "relocatable". 2003-06-25 06:40:27 +00:00
Alan Modra
7e5d8d48ed * emultempl/ppc32elf.em: Convert to C90. 2003-06-24 14:04:29 +00:00
Alan Modra
7d8a3a28e3 * emultempl/ppc64elf.em: Convert to C90 function definitions, remove
unnecessary prototypes and casts.
2003-06-20 05:33:26 +00:00
Alan Modra
bda6c678f6 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Dump out
statistics from ppc64_elf_build_stubs.
2003-06-19 13:51:05 +00:00
Alan Modra
6bc8652b47 * emultempl/ppc64elf.em (build_section_lists): Check return status
from ppc64_elf_next_input_section.
2003-06-19 11:51:55 +00:00
H.J. Lu
f97b9cb853 bfd/
2003-06-17  H.J. Lu <hongjiu.lu@intel.com>

	* section.c (struct sec): Put back kept_section.
	(STD_SECTION): Put back kept_section initialization.
	* bfd-in2.h: Regenerate.

	* elflink.h (elf_link_input_bfd): Also check discarded linkonce
	sections for relocateable output. Use kept_section to preserve
	debug information discarded by linkonce.

ld/

2003-06-17  H.J. Lu <hongjiu.lu@intel.com>

	* ldlang.c (section_already_linked): Put back assignment of
	kept_section.
2003-06-18 00:30:04 +00:00
Nick Clifton
fea39bcb07 Catch and ignore an ARM_26D reloc. 2003-06-17 12:05:33 +00:00
Nick Clifton
40bdaaa8ed * ld-undefined/undefined.exp (i?86-*-freebsd*): Remove xfail.
* configure.host (*-*-freebsd*): Add known path for ld-elf.so.1 if not produced by gcc.
2003-06-17 11:01:17 +00:00
Hans-Peter Nilsson
b826ae225a * configure.tgt: Add specific case for cris-*-linux-gnu*
with crislinux emulation only.
2003-06-16 00:03:48 +00:00
Nick Clifton
a06a29f25f Add i386-netbsd-gnu target. 2003-06-13 13:17:58 +00:00
Richard Sandiford
728fa2f69b * configure.tgt (mips*-sgi-irix6*): Add the o32 and n64 emulations
to $targ_extra_libpath.
2003-06-12 05:48:06 +00:00
H.J. Lu
3b4433739c bfd/
2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

binutils/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

gas/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

gprof/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

ld/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

opcodes/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.
2003-06-11 01:32:08 +00:00
Doug Evans
cfa1ac0cb2 * Makefile.am (ALL_EMULATIONS): Add em32relf.o.
* Makefile.in: Regenerate.
2003-06-10 23:29:19 +00:00
Richard Sandiford
d1b2d571cc * scripttempl/h8300sxn.sc: New file. 2003-06-10 08:31:04 +00:00
Richard Sandiford
f4984206d8 include/elf/
* h8.h (E_H8_MACH_H8300SXN): New flag.

bfd/
	* archures.c (bfd_mach_h8300sxn): New architecture.
	* bfd-in2.h: Regenerate.
	* cpu-h8300.c (h8300_scan): Check for 'sxn'.
	(h8300sxn_info_struct): New.
	(h8300sx_info_struct): Link to it.
	* elf32-h8300.c (elf32_h8_mach): Add h8300sxn case.
	(elf32_h8_final_write_processing): Likewise.

gas/
	* config/tc-h8300.c (h8300sxnmode): New.
	(md_pseudo_table): Add .h8300sxn entry.  Sync others with FSF version.

ld/
	* configure.tgt (h8300*): Add h8300sxn emulations.
	* Makefile.am (ALL_EMULATIONS): Add eh8300sxn.o and eh8300sxnelf.o.
	(eh8300sxn.c, eh8300sxnelf.c): New rules.
	* Makefile.in: Regenerate.
	* emulparams/h8300sxnelf.sh, emulparams/h8300sxn.sh: New files.
2003-06-10 07:09:31 +00:00
Alan Modra
285272bdb0 * emulparams/elf64ppc.sh (EXECUTABLE_SYMBOLS, OTHER_BSS_END_SYMBOLS,
CTOR_START, CTOR_END, DTOR_START, DTOR_END): Don't define.
2003-06-10 04:35:28 +00:00
Alan Modra
0b9a4d73a8 * emultempl/ppc64elf.em (emit_stub_syms, toc_section): New vars.
(build_toc_list): New function.
	(gld${EMULATION_NAME}_finish): Call build_toc_list and
	ppc64_elf_reinit_toc.  Adjust ppc64_elf_build_stubs call.
	(OPTION_STUBSYMS): Define.
	(PARSE_AND_LIST_LONGOPTS): Add emit-stub-syms.
	(PARSE_AND_LIST_OPTIONS): Document.
	(PARSE_AND_LIST_ARGS_CASES): Handle.
2003-06-08 14:07:34 +00:00
Roland McGrath
c16d554dbf . 2003-06-06 06:28:50 +00:00
Jakub Jelinek
9ee5e4996f binutils/
* readelf.c (get_segment_type): Handle PT_GNU_STACK.
bfd/
	* elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_STACK.
	(bfd_section_from_phdr): Likewise.
	(map_sections_to_segments): Create PT_GNU_STACK segment header.
	(get_program_header_size): Count with PT_GNU_STACK.
	* elf-bfd.h (struct elf_obj_tdata): Add stack_flags.
	* elflink.h (bfd_elfNN_size_dynamic_sections): Set stack_flags.
include/
	* bfdlink.h (struct bfd_link_info): Add execstack and noexecstack.
	* elf/common.h (PT_GNU_STACK): Define.
ld/
	* ldgram.y (phdr_type): Grok PT_GNU_STACK.
	* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Add
	-z execstack and -z noexecstack.
	(gld${EMULATION_NAME}_list_options): Likewise.
	* scripttempl/elf.sc: If not -r, discard .note.GNU-stack section.
2003-06-03 22:27:24 +00:00
Michael Snyder
65982ba6e7 2003-06-03 Michael Snyder <msnyder@redhat.com>
and Bernd Schmidt   <bernds@redhat.com>
	and Alexandre Oliva <aoliva@redhat.com>
	* Makefile.am: Add new emulations for h8300sx.
	* Makefile.in: Regenerate.
	* configure.tgt: Add new emulations.
	* emulparams/h8300sx.sh: New emulation.
	* emulparams/h8300sxelf.sh: Ditto.
	* scripttempl/h8300sx.sc: Ditto.
2003-06-03 21:43:52 +00:00
H.J. Lu
6f6f27f842 bfd/
2003-06-03  H.J. Lu <hongjiu.lu@intel.com>

	* elflink.h (elf_link_input_bfd): Call linker error_handler
	for discarded definitions.

include/

2003-06-03  H.J. Lu <hongjiu.lu@intel.com>

	* bfdlink.h (LD_DEFINITION_IN_DISCARDED_SECTION): New.

ld/

2003-06-03  H.J. Lu <hongjiu.lu@intel.com>

	* ldmisc.c: Include "bfdlink.h".
	(error_handler): Handle LD_DEFINITION_IN_DISCARDED_SECTION
	and -LD_DEFINITION_IN_DISCARDED_SECTION.

	* Makefile.am: Rebuild dependency.
	* Makefile.in: Regenerated.

ld/testsuite/

2003-06-03  H.J. Lu <hongjiu.lu@intel.com>

	* ld-discard/extern.d: Updated.
	* ld-discard/start.d: Likewise.
	* ld-discard/static.d: Likewise.
2003-06-03 18:15:05 +00:00
Kaz Kojima
308f753f1c * emulparams/shlelf_linux.sh (GENERATE_PIE_SCRIPT): Set to yes.
* emulparams/shlelf32_linux.sh (GENERATE_PIE_SCRIPT): Likewize.
2003-06-03 04:51:49 +00:00
Nick Clifton
03a1c9a708 Scan table pe_dll->exports, which is sorted alphabetically, instead of
exported_symbols, which is sorted by ordinal.
2003-06-02 08:43:37 +00:00
Jakub Jelinek
36af4a4e51 bfd/
* elflink.h (elf_link_add_object_symbols): Use !info->executable
	instead of info->shared where appropriate.
	(bfd_elfNN_size_dynamic_sections, elf_link_output_extsym): Likewise.
	* elflink.c (_bfd_elf_create_got_section): Likewise.
	(_bfd_elf_link_create_dynamic_sections): Likewise.
	(_bfd_elf_link_assign_sym_version): Likewise.
	* elf32-i386.c (elf_i386_size_dynamic_sections): Create .interp section
	and DT_DEBUG dynamic tag even for position independent executables.
	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
	* elf32-s390.c (elf_s390_size_dynamic_sections: Likewise.
	* elf64-ppc.c (ppc64_elf_size_dynamic_sections: Likewise.
	* elf64-s390.c (elf_s390_size_dynamic_sections: Likewise.
	* elf64-x86-64.c (elf64_x86_64_size_dynamic_sections: Likewise.
	* elfxx-ia64.c (elfNN_ia64_size_dynamic_sections: Likewise.
	* elf32-sparc.c (elf32_sparc_size_dynamic_sections: Likewise.
	* elf64-alpha.c (elf64_alpha_size_dynamic_sections: Likewise.
	* elf64-sparc.c (sparc64_elf_size_dynamic_sections: Likewise.
include/
	* bfdlink.h (struct bfd_link_info): Add pie and executable
	bits.
ld/
	* lexsup.c (OPTION_PIE): Define.
	(ld_options): Add -pie and --pic-executable options.
	(parse_args): Handle OPTION_PIE.
	* ldmain.c (main): Initialize link_info.pie and
	link_info.executable.
	* genscripts.sh: Generate PIE scripts.
	* ld.texinfo: Document -pie and --pic-executable options.
	* emultempl/elf32.em (gld${EMULATION_NAME}_after_open):
	(gld${EMULATION_NAME}_place_orphan): Likewise.
	(gld${EMULATION_NAME}_get_script): Include PIE scripts.
	* scripttempl/elf.sc: In PIE scripts set . the same way as in
	shared scripts.
	* emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Set to yes.
	* emulparams/elf64_ia64.sh (GENERATE_PIE_SCRIPT): Likewise.
	* emulparams/elf32ppc.sh (GENERATE_PIE_SCRIPT): Likewise.
	* emulparams/elf64ppc.sh (GENERATE_PIE_SCRIPT): Likewise.
	* emulparams/elf_x86_64.sh (GENERATE_PIE_SCRIPT): Likewise.
	* emulparams/elf_s390.sh (GENERATE_PIE_SCRIPT): Likewise.
	* emulparams/elf32_sparc.sh (GENERATE_PIE_SCRIPT): Likewise.
	* emulparams/elf64_sparc.sh (GENERATE_PIE_SCRIPT): Likewise.
	* emulparams/elf64alpha.sh (GENERATE_PIE_SCRIPT): Likewise.
	* emulparams/elf64_s390.sh (GENERATE_PIE_SCRIPT): Likewise.
	* emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Likewise.
2003-05-30 15:50:12 +00:00
H.J. Lu
cdaeef2eb5 ld/
2003-05-30  H.J. Lu <hongjiu.lu@intel.com>

	* genscripts.sh: Create tmpdir/libpath.exp.

ld/testsuite/

2003-05-30  H.J. Lu <hongjiu.lu@intel.com>

	* config/default.exp: Load tmpdir/libpath.exp.
	(gcc_ld_flag): Set from $libpath.
2003-05-30 13:23:25 +00:00
Nick Clifton
06aa72344f (arm_elf_before_allocation): Replace ASSERT with a test for a NULL
bfd_for_interworking.
2003-05-30 08:19:30 +00:00
Jason Thorpe
561c27b2bb * configure.host (*-*-netbsd*): Set HOSTING_CRT0 and HOSTING_LIBS
correctly for more recent versions of NetBSD.
(alpha*-*-netbsd*): Remove.
(i[3-7]86-*-netbsd*): Remove.
2003-05-29 17:38:52 +00:00
Nick Clifton
29e1a6e4ca Replace <ctype.h> with "safe-ctype.h" 2003-05-29 15:05:41 +00:00
Maciej W. Rozycki
90be1c5c08 * emulparams/elf64btsmip.sh: Set TEXT_START_ADDR to 0x120000000 to
trap on pointer crops.
2003-05-26 11:56:26 +00:00
Nick Clifton
cea3d58d02 Check for a target triplet of shl-...-netbsdelf as well as shle-...-netbsdelf. 2003-05-21 13:06:30 +00:00
Nick Clifton
80c7c40aef Replace i[3456]86 with i[3-7]86 2003-05-16 16:30:27 +00:00
H.J. Lu
a6c0916fe9 2003-05-15 H.J. Lu <hongjiu.lu@intel.com>
* emulparams/elf64_ia64.sh: Don't set COMMONPAGESIZE for now.
2003-05-15 14:56:33 +00:00
Daniel Jacobowitz
df9a14a132 Add missing changelog entry for last commit:
* configure.tgt: Add armeb-elf and arm*b-*-linux-gnu.
2003-05-09 20:05:46 +00:00
Daniel Jacobowitz
d2012d1718 * Makefile.am (ALL_EMULATIONS): Add earmelfb.o and earmelfb_linux.o.
(earmelfb.c, earmelfb_linux.c): New rules.
	* Makefile.in: Regenerated.
	* emulparams/armelfb.sh, emulparams/armelfb_linux.sh: New files.
2003-05-09 20:05:04 +00:00
Nick Clifton
3cd9fdd546 oops - update date in ChangeLog entry 2003-05-09 16:13:45 +00:00
Nick Clifton
661849791b Default to generating a fatal error message if a loadable section is not
allocated to a memory region when regions are defined.
2003-05-09 16:12:07 +00:00
Alan Modra
efdffbe268 * Makefile.am (em68hc11elf.c): Correct dependencies.
(em68hc11elfb.c, em68hc12elf.c, em68hc12elfb.c): Likewise.
	* Makefile.in: Regenerate.
	* emultempl/elf32.em (find_exp_assignment): Adjust for changed
	bfd_elf_record_link_assignment name.
2003-05-09 02:28:01 +00:00
Alexandre Oliva
8aae64e67e * ldmain.h (overflow_cutoff_limit): Declare.
* ldmain.c (overflow_cutoff_limit): Define, initialized to 10.
(reloc_overflow): Limit error messages based on it.
* lexsup.c (parse_args) <OPTION_VERBOSE>: Set cutoff to
unlimited.
2003-05-07 04:14:57 +00:00
Alan Modra
5c7966bf11 * ldlex.l: Accept C style comments in version scripts. 2003-05-05 06:28:00 +00:00
H.J. Lu
c7996ad628 bfd/
2003-04-28  H.J. Lu <hjl@gnu.org>

	* elfxx-ia64.c (elfNN_ia64_relax_section): Relax ldxmov during
	the relax finalize pass.

	* section.c (struct sec): Add need_finalize_relax and remove
	flag11.
	(STD_SECTION): Update struct sec initializer.
	* bfd-in2.h: Regenerated.

include/

2003-04-28  H.J. Lu <hjl@gnu.org>

	* bfdlink.h (bfd_link_info): Add relax_finalizing.

ld/

2003-04-28  H.J. Lu <hjl@gnu.org>

	* ldlang.c (lang_process): Add the relax finalize pass.

	* ldmain.c (main): Initialize link_info.relax_finalizing to
	FALSE.
2003-04-29 01:53:46 +00:00
Roland McGrath
d145330dd9 . 2003-04-24 17:19:55 +00:00
Nick Clifton
8d9cd6b19b Add support for h8300hn and h8300sn 2003-04-24 12:36:08 +00:00
H.J. Lu
0f0569c4ae include/
* bfdlink.h (bfd_link_callbacks): Add error_handler.

ld/

	* ldmain.c (link_callbacks): Initialize error_handler.

	* ldmisc.c (error_handler): New function.

	* ldmisc.h (error_handler): New prototype.
2003-04-24 01:43:33 +00:00
Stephane Carrez
e2cebd4bde * emulparams/m68hc11elf.sh: Use m68hc1xelf.em extra.
* emulparams/m68hc11elfb.sh: Likewise.
	* emulparams/m68hc12elf.sh: Likewise.
	* emulparams/m68hc12elfb.sh: Likewise.
2003-04-21 13:29:05 +00:00