Commit Graph

279 Commits

Author SHA1 Message Date
Alan Modra 8349035256 * emultempl/ppc64elf.em (ppc_before_allocation): Clear cached
program_header_size.
2004-01-09 05:36:30 +00:00
Alan Modra e5caa5e0ca * ldexp.c (align_n): Make static.
* ldexp.h (align_n): Delete declaration.
	* ldlang.h (lang_enter_output_section_statement): Remove
	block_value param.
	* ldlang.c (lang_enter_output_section_statement): Likewise.
	(TO_ADDR, TO_SIZE): Define.
	(opb): New var.
	(init_opb): New function.
	(print_input_section): Call init_opb and use TO_ADDR.
	(print_data_statement, print_reloc_statement): Likewise.
	(print_padding_statement): Likewise.
	(size_input_section): Use TO_SIZE and TO_ADDR, and global opb.
	(lang_check_section_addresses): Likewise.
	(lang_size_sections_1): Likewise.
	(lang_do_assignments_1): Likewise.
	(lang_set_startof): Likewise.
	(lang_one_common): Likewise.  Combine power_of_two and opb alignment.
	(lang_process): Call init_opb.
	(lang_abs_symbol_at_end_of): Use TO_ADDR and global opb.
	(lang_enter_overlay_section): Adjust
	lang_enter_output_section_statement call.
	* ldgram.y: Likewise.
	* mri.c (mri_draw_tree): Likewise.
	* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Likewise.
	* emultempl/mmo.em (mmo_place_orphan): Likewise.
	* emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Likewise.
2004-01-03 12:39:07 +00:00
Alan Modra 5e2f15758b * ldfile.c (ldfile_set_output_arch): Add defarch param.
* ldfile.h (ldfile_set_output_arch): Ditto.
	* emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Use
	ldfile_set_output_arch.
	* emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/linux.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/mipsecoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/pe.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/sunos.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* ldgram.y: Adjust ldfile_set_output_arch call.
	* emultempl/armcoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/armelf_oabi.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/generic.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/gld960c.em (gld960_set_output_arch): Ditto.
	* emultempl/m68kcoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
	* emultempl/ticoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
2004-01-03 11:09:07 +00:00
Nick Clifton 44dbf3639f When scanning MS import libraries allow for the possible presence of static
objects.
2003-12-18 14:56:44 +00:00
H.J. Lu d9c458fcc1 bfd/
2003-12-04  H.J. Lu  <hongjiu.lu@intel.com>

	* elfxx-ia64.c (elfNN_ia64_relax_section): Use the
	need_relax_finalize field in link_info instead of
	relax_finalizing to check if the relax finalize pass is being
	done.

include/

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

	* bfdlink.h (bfd_link_info): Change relax_finalizing to
	need_relax_finalize.

ld/

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

	* emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse): Set
	link_info.need_relax_finalize to TRUE.

	* ldlang.c (lang_process): Use link_info.need_relax_finalize
	instead of link_info.relax_finalizing.
	* ldmain.c (main): Likewise.
2003-12-04 22:43:36 +00:00
Alan Modra f2241121e3 * ldlang.c (lang_do_assignments): Function return is void.
* ldlang.h (lang_do_assignments): Ditto.
	* emultempl/netbsd.em (gld${EMULATION_NAME}_before_parse): Declare.
	* Makefile.am (ens32knbsd.c): Depend on netbsd.em.
	* Makefile.in: Regenerate.
2003-12-04 12:09:25 +00:00
Kazu Hirata 021d913e2e * emultempl/beos.em: Remove ARGSUSED. 2003-12-03 03:25:36 +00:00
Alan Modra 6ad841a183 Rename bfd_link_hash_entry field "next" -> "und_next". 2003-12-02 23:00:00 +00:00
Alan Modra fd574c4615 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Test
hash table type rather than testing creator flavour.
	* emultempl/hppaelf.em (hppaelf_create_output_section_statements):
	Only create stub_file bfd if hash table creator is as expected.
	(gld${EMULATION_NAME}_finish): Test stub_file.
2003-12-01 06:28:56 +00:00
Alan Modra 4b83d61511 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Only do
pe_dll_extra_pe_debug stuff when DLL_SUPPORT defined.
	(pr_sym): Move inside #ifdef DLL_SUPPORT.
2003-11-04 23:36:21 +00:00
Alan Modra 2c07ab8a9e * emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Zap
unused variable.
2003-11-04 23:11:23 +00:00
Alan Modra e1918d2387 * bfd-in.h (_bfd_elf_tls_setup): Declare.
* bfd-in2.h: Regenerate.
	* elf-bfd.h (struct elf_link_tls_segment): Delete.
	(struct elf_link_hash_table): Add tls_sec and tls_size.
	* elf.c (_bfd_elf_link_hash_table_init): Init tls_sec and tls_size.
	* elflink.c (_bfd_elf_tls_setup): New function.
	* elflink.h (struct elf_final_link_info): Remove first_tls_sec.
	(elf_bfd_final_link): Don't set first_tls_sec here.  Update code
	saving tls segment info, round segment size up.
	(elf_link_output_extsym): Adjust code using tls segment info.
	(elf_link_input_bfd): Likewise.
	* elf32-i386.c (dtpoff_base, tpoff): Likewise.
	* elf32-s390.c (dtpoff_base, tpoff): Likewise.
	* elf32-sh.c (dtpoff_base, tpoff): Likewise.
	* elf32-sparc.c (dtpoff_base, tpoff): Likewise.
	* elf64-s390.c (dtpoff_base, tpoff): Likewise.
	* elf64-x86-64.c (dtpoff_base, tpoff): Likewise.
	* elfxx-ia64.c (elfNN_ia64_tprel_base): Likewise.
	(elfNN_ia64_dtprel_base): Likewise.
	* elf64-alpha.c (alpha_get_dtprel_base): Likewise.
	(alpha_get_tprel_base): Likewise.
	(struct alpha_relax_info): Remove tls_segment.
	(elf64_alpha_relax_got_load): Adjust invocation of
	alpha_get_dtprel_base and alpha_get_tprel_base.
	(elf64_alpha_relax_tls_get_addr): Likewise.
	(elf64_alpha_relax_section): Likewise.
	(elf64_alpha_relocate_section): Likewise.
	(elf64_alpha_relax_find_tls_segment): Delete.
	* elf32-ppc.c (struct ppc_elf_link_hash_table): Remove tls_sec.
	(ppc_elf_tls_setup): Call _bfd_elf_tls_setup.  Return section.
	(ppc_elf_relocate_section): Adjust to use elf.tls_sec.
	* elf32-ppc.h (ppc_elf_tls_setup): Update.
	* elf64-ppc.c (struct ppc_link_hash_table): Remove tls_sec.
	(ppc64_elf_tls_setup): Call _bfd_elf_tls_setup.  Return section.
	(ppc64_elf_tls_optimize): Adjust to use elf.tls_sec.
	(ppc64_elf_relocate_section): Likewise.
	* elf64-ppc.h (ppc64_elf_tls_setup): Update.

	* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Call
	_bfd_elf_tls_setup.
2003-11-04 06:16:39 +00:00
Andrew Cagney fc0a224429 Index: sim/frv/ChangeLog
2003-10-30  Andrew Cagney  <cagney@redhat.com>

	* traps.c: Replace "struct symbol_cache_entry" with "struct
	bfd_symbol".

Index: sim/d10v/ChangeLog
2003-10-30  Andrew Cagney  <cagney@redhat.com>

	* simops.c: Replace "struct symbol_cache_entry" with "struct
	bfd_symbol".

Index: sim/common/ChangeLog
2003-10-30  Andrew Cagney  <cagney@redhat.com>

	* sim-trace.c, sim-base.h: Replace "struct symbol_cache_entry"
	with "struct bfd_symbol".

Index: ld/ChangeLog
2003-10-30  Andrew Cagney  <cagney@redhat.com>

	* emultempl/pe.em, pe-dll.c: Replace "struct symbol_cache_entry"
	with "struct bfd_symbol".

Index: bfd/ChangeLog
2003-10-30  Andrew Cagney  <cagney@redhat.com>

	* syms.c: Replace "struct symbol_cache_entry" with "struct
	bfd_symbol".
	* vms.h, targets.c, section.c, reloc.c, peicode.h: Ditto.
	* mipsbsd.c, elf.c, linker.c, elf-bfd.h, ecoff.c: Ditto.
	* cpu-z8k.c, cpu-ns32k.c, cpu-h8500.c, bfd.c, bfd-in.h: Ditto.
	* bfd-in2.h: Re-generate.
2003-10-31 05:32:46 +00:00
Nick Clifton 383b84283a Oops - omitted from patch that added a second parameter to lang_memory_region_lookup. 2003-10-24 09:54:41 +00:00
Jakub Jelinek 108ba30509 bfd/
* elflink.c (_bfd_elf_export_symbol): Adjust for globals and locals
	field changes.
	(_bfd_elf_link_assign_sym_version): Likewise.
	* elflink.h (size_dynamic_sections): Likewise.
include/
	* bfdlink.h (struct bfd_elf_version_expr): Remove match field.
	Add wildcard and mask fields.
	(BFD_ELF_VERSION_C_TYPE): Define.
	(BFD_ELF_VERSION_CXX_TYPE): Likewise.
	(BFD_ELF_VERSION_JAVA_TYPE): Likewise.
	(struct bfd_elf_version_expr_head): New.
	(struct bfd_elf_version_tree): Add match field.
	Change type of globals and locals fields
	to struct bfd_elf_version_expr_head.
ld/
	* ldlang.c: Include hashtab.h.
	(lang_vers_match_lang_c, lang_vers_match_lang_cplusplus,
	lang_vers_match_lang_java): Remove.
	(lang_vers_match): New function.
	(lang_new_vers_pattern): Initialize wildcard and mask
	fields, don't initialize match.
	(lang_new_vers_node): Use xcalloc.  Adjust for globals and
	locals field type changes.  Set match field.
	(version_expr_head_hash, version_expr_head_eq): New functions.
	(lang_finalize_version_expr_head): New function.
	(lang_register_vers_node): Call lang_finalize_version_expr_head.
	Search in hash table if not wildcard when looking for duplicates.
	* emultempl/ppc64elf.em (new_vers_pattern): Don't bother with
	duplicate checking.  Initialize all fields of dot_entry from entry
	with the exception of pattern and next.
2003-10-22 06:58:17 +00:00
Andreas Schwab c2411cd270 * emultempl/ticoff.em (gld_${EMULATION_NAME}_list_options): Add
newline to message.
2003-10-19 15:58:18 +00:00
Hans-Peter Nilsson 06335781f6 * emultempl/mmix-elfnmmo.em (mmix_before_allocation): Force linker
relaxation always; don't exclude relocatable linking.  Adjust for
	_bfd_mmix_prepare_linker_allocated_gregs renamed to
	_bfd_mmix_before_linker_allocation.
	(mmix_after_allocation): Adjust for
	_bfd_mmix_finalize_linker_allocated_gregs renamed to
	_bfd_mmix_after_linker_allocation.
	* scripttempl/mmo.sc: Use ADDR (.text), not . - SIZEOF (.text).
2003-10-18 15:49:10 +00:00
Alan Modra 9c4f8b734a * emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse): Don't
use $EMULATION_NAME to call bfd function.
2003-10-16 06:26:37 +00:00
H.J. Lu 3f7deb8a34 bfd/
2003-10-10  H.J. Lu  <hongjiu.lu@intel.com>

	* bfd-in.h (bfd_elf32_ia64_after_parse): New prototype.
	(bfd_elf64_ia64_after_parse): Likewise.
	* bfd-in2.h: Regenerated.

	* elfxx-ia64.c (oor_ip): New.
	(oor_branch_size): Likewise.
	(bfd_elfNN_ia64_after_parse): Likewise.
	(elfNN_ia64_relax_section): Use oor_ip if oor_branch_size
	equals sizeof (oor_ip).

ld/

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

	* Makefile.am (eelf64_ia64.c): Also depend on
	$(srcdir)/emultempl/ia64elf.em.
	* Makefile.in: Regenerated.

	* emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Set to ia64elf.

	* emultempl/ia64elf.em: New.
2003-10-13 15:55:51 +00:00
Nick Clifton 560e09e9cc Better handking for unresolved symbols 2003-08-20 08:37:19 +00:00
Danny Smith 1fa1d2cdfc * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):
Change second (cmdline) arg to lang_add_entry to FALSE.
	(set_pe_subsystem): Change second arg to lang_add_entry to TRUE.
2003-08-07 01:52:36 +00:00
Nick Clifton 8c6756949e Prefix .gnu.warning section messages with "warning: ". 2003-08-04 11:32:52 +00:00
Alan Modra 2a36a1175e * emultempl/elf32.em (output_rel_find): Add "isdyn" param. Put
.rel.dyn before other reloc sections.  Don't stop looking for reloc
	sections on finding one that isn't allocated.  Match .rel even when
	placing .rela and vice versa, when setting last_rel and
	last_rel_alloc for the first time.  If no reloc sections in script,
	prefer allocated section over non-alloc.
	(gld${EMULATION_NAME}_place_orphan): Handle orphan .rel.dyn.
2003-08-04 04:01:39 +00:00
Alan Modra 68f8ff14d1 * emulparams/elf64ppc.sh (OTHER_GOT_SECTIONS): Don't define.
(GOT): Define.
	* emultempl/ppc64elf.em (stub_added): New static var.
	(ppc_create_output_section_statements): Call ppc64_elf_init_stub_bfd.
	(ppc_add_stub_section): Set stub_added.
	(gld${EMULATION_NAME}_finish): Look for .got rather than .toc.  Adjust
	ppc64_elf_size_stubs call and test for stubs.
	* scripttempl/elf.sc (GOT): Define and use.
2003-07-10 00:38:19 +00:00
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
Alan Modra 1579bae1cd Convert to C90 2003-06-28 05:28:54 +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
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 10b4329d5b 2003-06-05 Roland McGrath <roland@redhat.com>
* emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Remove
	extra \t in -z noexecstack line.
2003-06-06 06:28:42 +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
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
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
Nick Clifton 29e1a6e4ca Replace <ctype.h> with "safe-ctype.h" 2003-05-29 15:05:41 +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
Stephane Carrez 67bb994066 * emultempl/m68hc1xelf.em: New file to generate far trampolines on
68HC11 and 68HC12.
	(LDEMUL_BEFORE_ALLOCATION): Override to gather the trampolines to
	generate.
	(LDEMUL_FINISH): Override to generate the trampolines after gc and
	linker relaxation.
	(LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Override to create the
	stub file for trampolines.
	(PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_LONGOPTS): New options
	--no-trampoline and --bank-window to control the memory bank window.
2003-04-19 08:26:38 +00:00
Nick Clifton 2b817be136 pe-dll.c (pe_detail_list): arm-pe targets use underscores.
(process_def_file): Don't create an export section if there are no exports and
  we're building an exe.
(pe_dll_build_sections): Ditto
(pe_dll_fill_sections): Conditionalize setting abfd->dll true on info->shared

emultempl/pe.em (gld_${EMULATION_NAME}_after_open): If i386pe or armpe, call
  pe_dll_build_section() for both exe's and dll's, not just dll's.  Don't call
  pe_dll_build_section() if link_info.relocateable.
(gld_${EMULATION_NAME}_finish): For all targets except shpe and mipspe, call
  pe_dll_fill_sections() for both exe's and dll's, not just dll's.  Don't call
  pe_dll_fill_sections() if link_info.relocateable.
2003-04-02 17:39:24 +00:00
Nick Clifton e0001a05d2 Add Xtensa port 2003-04-01 15:50:31 +00:00
Alan Modra c279ca3ee9 * emulparams/elf64alpha.sh (EXTRA_EM_FILE): Define.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
	PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES,
	PARSE_AND_LIST_EPILOGUE): Don't define.
	* emultempl/alphaelf.em: New file.
2003-03-02 22:07:10 +00:00
Alan Modra fcf6587111 * ldemul.c: Include getopt.h.
* emultempl/elf32.em: Include getopt.h earlier.
	* emultempl/ticoff.em: Likewise.
2003-02-28 22:55:11 +00:00
Alan Modra a060b769bb * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Add combreloc
support when scripts read from files.
2003-02-28 04:46:04 +00:00
Alan Modra 3bcf55573d * ldemul.c (ldemul_add_options, ldemul_handle_option): New functions.
(ldemul_parse_args): Return bfd_boolean.  Formatting.
	* ldemul.h (ldemul_add_options, ldemul_handle_option): Declare.
	(ldemul_parse_args): Adjust.
	(struct ld_emulation_xfer_struct): Add add_options and handle_option.
	Return bfd_boolean from parse_args.
	* lexsup.c (parse_args): Malloc shortopts, longopts and
	really_longopts.  Call ldemul_add_options and ldemul_handle_option.
	* emultempl/aix.em (gld${EMULATION_NAME}_add_options): Split out from
	gld${EMULATION_NAME}_parse_args.
	(gld${EMULATION_NAME}_handle_option): Likewise.
	(ld_${EMULATION_NAME}_emulation): Adjust initializer.
	* emultempl/armcoff.em: As for aix.em, but remove parse_args.
	* emultempl/beos.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/ticoff.em: Likewise.
	* emultempl/elf32.em: Likewise.  Don't duplicate long options either.
	(gld${EMULATION_NAME}_add_sysroot): Prototype.
	* emultempl/armelf.em (PARSE_AND_LIST_LONGOPTS): Don't duplicate
	options.
	* emultempl/hppaelf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
	* emultempl/ppc32elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
	* emultempl/ppc64elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
	* emultempl/armelf_oabi.em (ld_${EMULATION_NAME}_emulation): Adjust
	initializer.
	* emultempl/generic.em: Likewise.
	* emultempl/gld960.em: Likewise.
	* emultempl/gld960c.em: Likewise.
	* emultempl/linux.em: Likewise.
	* emultempl/lnk960.em: Likewise.
	* emultempl/m68kcoff.em: Likewise.
	* emultempl/mipsecoff.em: Likewise.
	* emultempl/sunos.em: Likewise.
	* emultempl/vanilla.em: Likewise.
	* emultempl/netbsd.em (gldnetbsd_before_parse): Prototype.
2003-02-28 01:32:31 +00:00
Alexandre Oliva 42644a8920 * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Fix
memory allocation error.
2003-02-26 00:56:14 +00:00
Nick Clifton cf888e70e2 Disable region size checking whilst relaxing sections. 2003-02-21 10:51:24 +00:00
Alan Modra f9e6bfa8dc * emultempl/ppc32elf.em: New file.
* emulparams/elf32ppc.sh (EXTRA_EM_FILE): Define.
	* Makefile.am (eelf32lppc.c): Depend on emultempl/ppc32elf.em.
	(eelf32lppcnto.c): Likewise.
	(eelf32lppcsim.c): Likewise.
	(eelf32ppcnto.c): Likewise.
	(eelf32ppc.c): Likewise.
	(eelf32ppc_fbsd.c): Likewise.
	(eelf32ppcsim.c): Likewise.
	(eelf32ppclinux.c): Likewise.
2003-02-18 06:05:07 +00:00
Alan Modra a015f5eccc * emultempl/ppc64elf.em (ppc_create_output_section_statements): Check
hash creator.
	(ppc_before_allocation): Don't do optimizations if wrong hash table.
	(gld${EMULATION_NAME}_finish): Ditto.
2003-02-17 22:49:24 +00:00