Commit graph

1913 commits

Author SHA1 Message Date
Alan Modra
cd4a7468c9 bfd/
* elf32-spu.c (struct spu_link_hash_table): Add init, line_size_log2,
	num_lines_log2.
	(struct got_entry): Add br_addr.
	(struct call_info): Add priority.
	(struct function_info): Add lr_store and sp_adjust.
	(spu_elf_setup): Init line_size_log2 and num_lines_log2.
	(spu_elf_find_overlays): For soft-icache, mark any section within cache
	area as an overlay, and check that no other overlays exist.  Look up
	icache overlay manager entry sym.
	(BRA_STUBS, BRA, BRASL): Define.
	(enum _stub_type): Replace ovl_stub with call_ovl_stub and br*_ovl_stub.
	(needs_ovl_stub): Adjust for soft-icache.  Return priority encoded
	in branch insn.
	(count_stub, build_stub): Support soft-icache.
	(build_spuear_stubs, process_stubs): Adjust build_stub call.
	(spu_elf_size_stubs): Size soft-icache stubs.
	(overlay_index): New function.
	(spu_elf_build_stubs): Make static.  Support soft-icache.
	(spu_elf_check_vma): Don't turn off auto_overlay if soft-icache.
	(find_function_stack_adjust): Save lr store and stack adjust insn
	offsets.
	(maybe_insert_function): Adjust find_function_stack_adjust call.
	(mark_functions_via_relocs): Retrieve priority.
	(remove_cycles): Only warn about pruned arcs when stack_analysis.
	(sort_calls): Sort by priority first.
	(mark_overlay_section): Ignore .ovl.init.
	(sum_stack): Only print when stack_analysis.
	(print_one_overlay_section): New function, extracted from..
	(spu_elf_auto_overlay): ..here.  Support soft-icache overlays.
	(spu_elf_stack_analysis): Only print when htab->stack_analysis.
	(spu_elf_final_link): Call spu_elf_stack_analysis for lrlive
	analysis.  Call spu_elf_build_stubs.
	(spu_elf_relocate_section): For soft-icache encode overlay index
	into addresses.
	(spu_elf_output_symbol_hook): Support soft-icache.
	(spu_elf_modify_program_headers: Likewise.
	* elf32-spu.h (struct spu_elf_params): Add lrlive_analysis.  Rename
	num_regions to num_lines.  Add line_size and max_branch.
	(enum _ovly_flavour): Add ovly_soft_icache.
	(spu_elf_build_stubs): Delete.
gas/
	* config/tc-spu.c (md_pseudo_table): Add "brinfo".
	(brinfo): New var.
	(md_assemble): Poke brinfo into branch instructions.
	(spu_brinfo): New function.
	(md_apply_fix): Don't assume insn fields start off at zero, mask
	them to remove possible brinfo.
ld/
	* emultempl/spuelf.em (params): Init new fields.
	(num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars.
	(spu_place_special_section): Adjust placement for soft-icache.  Pad
	soft-icache section to a fixed size.  Clear addr_tree.
	(spu_elf_load_ovl_mgr): Support soft-icache.  Map overlay manager
	sections a little more intelligently.
	(gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs.
	(OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS.
	(OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define.
	(OPTION_SPU_LRLIVE): Define.
	(PARSE_AND_LIST_LONGOPTS): Add new soft-icache options.
	(PARSE_AND_LIST_OPTIONS): Likewise.
	(PARSE_AND_LIST_ARGS_CASES): Handle them.
	* emultempl/spu_icache.S: Dummy file.
	* emultempl/spu_icache.o_c: Regenerate.
	* Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c.
	(spu_icache.o_c): Add rule to build.
	(CLEANFILES): Zap temp files.
	(EXTRA_DIST): Add spu_icache.o_c.
	* Makefile.in: Regenerate.
ld/testsuite/
	* ld-spu/ovl.d: Allow for absolute branches in stubs.
	* ld-spu/ovl2.d: Likewise.
2009-01-12 00:23:58 +00:00
Kai Tietz
ce11ba6c9d 2009-01-08 Kai Tietz <kai.tietz@onevision.com>
* pe.em (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New.
	(gld..._add_options): Add new option
	--use-nul-prefixed-import-tables.
	(gld..._handle_option): Likewise.
	* pep.em: Same as for pe.em.
	* ld.texinfo: Add new option documentation for
	--use-nul-prefixed-import-tables.
	* pe-dll.c (pe_use_nul_prefixed_import_tables): New.
	(make_head): Make prefix leading zero prefix element for
	idata$4 and idata$5 dependent to new flag.
	(make_import_fixup_entry): Remove idata4/5 prefix.
	* pe-dll.h (pe_use_nul_prefixed_import_tables): New.
	* pep-dll.c (pe_use_nul_prefixed_import_tables): New.
	* pep-dll.h (pep_use_nul_prefixed_import_tables): New.
	* NEWS: Add new option.
2009-01-08 13:28:48 +00:00
Kai Tietz
d34c1c51b3 2009-01-05 Kai Tietz <kai.tietz@onevision.com>
* emultempl/pe.em: Prefix dollar characters to be outputed in
        generated C file.
        * emultempl/pep.em: Likewise.
2009-01-05 12:17:43 +00:00
Dave Korn
e1c37eb57e * NEWS: Mention new feature --exclude-modules-for-implib.
* ld.texinfo:  Document new --exclude-modules-for-implib option.
	* pe-dll.c (exclude_list_struct):  Change type member from int to
	new enumeration exclude_type.
	(pe_dll_add_excludes):  Accept exclude_type instead of int param.
	(auto_export):  Replace magic constants by exclude_type values and
	handle new choice EXCLUDEFORIMPLIB.
	(pe_dll_generate_implib):  Accept a pointer to the link_info and
	iterate all input BFDs looking for EXCLUDEFORIMPLIB modules; re-open
	fresh BFDs for any found and link into import lib archive chain.
	* pe-dll.h (exclude_type):  Add new enumerated type to replace magic
	constants previously used for exclude_list_struct type member.
	(pe_dll_add_excludes, pe_dll_generate_implib):  Update prototypes.
	* pep-dll.h (exclude_type, pe_dll_add_excludes,
	pe_dll_generate_implib):  Likewise to all the above.
	* emultempl/pe.em (OPTION_EXCLUDE_MODULES_FOR_IMPLIB):  Define new
	getopts long option code for new --exclude-modules-for-implib option.
	(gld${EMULATION_NAME}_add_options):  Add new entry to xtra_long[].
	(gld_${EMULATION_NAME}_list_options):  List usage for it.
	(gld${EMULATION_NAME}_handle_option):  Use exclude_type enumerated
	values when calling pe_dll_add_excludes, and handle EXCLUDEFORIMPLIB.
	(gld_${EMULATION_NAME}_finish):  Pass pointer to link_info when
	calling pe_dll_generate_implib.
	* emultempl/pep.em (options):  Define new enumerated value for getopts
	long option code for new --exclude-modules-for-implib option.
	(gld${EMULATION_NAME}_add_options, gld_${EMULATION_NAME}_list_options,
	gld${EMULATION_NAME}_handle_option, gld_${EMULATION_NAME}_finish):
	Again, likewise to all the above.
2009-01-03 18:04:16 +00:00
Dave Korn
81b07b162c 2009-01-03 Dave Korn <dave.korn.cygwin@gmail.com>
* pe-dll.c (autofilter_liblist):  Add entry for shared libgcc.
	(libnamencmp):  New function.
	(auto_export):  Use it in place of strncmp when filtering libraries.

Also rolled over ChangeLog to ChangeLog-2008
2009-01-03 17:43:45 +00:00
Nick Clifton
84e94c9023 Add LM32 port. 2008-12-23 19:10:25 +00:00
Tristan Gingold
0332c262c9 2008-12-23 Tristan Gingold <gingold@adacore.com>
* Makefile.am (EXTRA_DIST): Add deffilep.c and deffilep.h
	* Makefile.in: Regenerate.
2008-12-23 13:52:58 +00:00
Nick Clifton
0f88be7a13 Remove STT_IFUNC support. 2008-12-23 09:01:51 +00:00
Ralf Wildenhues
22e8c8e0c1 Add missing ChangeLog entries for my last commit. 2008-12-21 12:45:53 +00:00
Alan Modra
a3a219a90a bfd/
* elf32-spu.h (struct spu_elf_params): Add num_regions.
	* elf32-spu.c (spu_elf_auto_overlay): Handle multiple overlay regions.
ld/
	* emultempl/spuelf.em (params): Init new field.
	(OPTION_SPU_NUM_REGIONS): Define.
	(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --num-regions.
	(PARSE_AND_LIST_ARGS_CASES): Handle --num-regions.
2008-12-10 13:36:41 +00:00
Alan Modra
64615358cc bfd/
* elf32-spu.g (struct spu_elf_params, enum _ovly_flavour): New.
	(spu_elf_setup): Declare.
	(spu_elf_create_sections, spu_elf_size_stubs): Update prototype.
	(spu_elf_build_stubs, spu_elf_check_vma): Likewise.
	* elf32-spu.c (struct spu_link_hash_table): Add "params". Remove
	various other fields now in "params".  Adjust code throughout.
	(struct call_info, struct function_info): Move earlier in file.
	(struct spu_elf_stack_info): Likewise.
	(spu_elf_setup): New function.
	(spu_elf_create_sections): Remove args other than "info".
	(spu_elf_size_stubs, spu_elf_build_stubs, spu_elf_check_vma): Likewise.
	(maybe_needs_stubs): Remove "output_bfd" arg.  Adjust all calls.
	(interesting_section): Similarly with "obfd" arg.
	(needs_ovl_stub): Adjust output_section test.
	(allocate_spuear_stubs): Likewise.
	(OVL_STUB_SIZE): Don't define.
	(ovl_stub_size): New function, use in place of OVL_STUB_SIZE.
	(build_stub): Test params->ovly_flavour rather than OVL_STUB_SIZE.
	(spu_elf_auto_overlay): Remove args other than "info".  Make use
	of size returned from spu_elf_load_ovl_mgr.
	(spu_elf_stack_analysis): Remove args other than "info".
	(spu_elf_relocate_section): Tidy setting of "ea".
ld/
	* emultempl/spuelf.em (params): New var, used instead of various others.
	Adjust use throughout file.
	(spu_after_open): Call spu_elf_setup.
	(spu_place_special_section): Tidy.
	(spu_elf_load_ovl_mgr): Return total size of sections loaded.  Move
	code setting overlay section alignment to..
	(spu_before_allocation): ..here.
2008-12-10 06:32:52 +00:00
Nick Clifton
e7c3341679 include/elf/
* common.h (STT_IFUNC): Define.
elfcpp/
            * elfcpp.h (enum STT): Add STT_IFUNC.
bfd/
            * syms.c (struct bfd_symbol): Add new flag BSF_INDIRECT_FUNCTION.
            Remove redundant flag BFD_FORT_COMM_DEFAULT_VALUE.  Renumber flags
            to remove gaps.
            (bfd_print_symbol_vandf): Return 'i' for BSF_INDIRECT_FUNCTION.
            (bfd_decode_symclass): Likewise.
            * elf.c (swap_out_syms): Translate BSF_INDIRECT_FUNCTION into
            STT_IFUNC.
            (elf_find_function): Treat STT_IFUNC in the same way as STT_FUNC.
            (_bfd_elf_is_function_type): Likewise.
            * elf32-arm.c (arm_elf_find_function): Likewise.
            (elf32_arm_adjust_dynamic_symbol): Likewise.
            (elf32_arm_swap_symbol_in): Likewise.
            (elf32_arm_additional_program_headers): Likewise.
            * elf32-i386.c (is_indirect_symbol): New function.
            (elf_i386_check_relocs): Also generate dynamic relocs for
            relocations against STT_IFUNC symbols.
            (allocate_dynrelocs): Likewise.
            (elf_i386_relocate_section): Likewise.
            * elf64-x86-64.c (is_indirect_symbol): New function.
            (elf64_x86_64_check_relocs): Also generate dynamic relocs for
            relocations against STT_IFUNC symbols.
            (allocate_dynrelocs): Likewise.
            (elf64_x86_64_relocate_section): Likewise.
            * elfcode.h (elf_slurp_symbol_table): Translate STT_IFUNC into
            BSF_INDIRECT_FUNCTION.
            * elflink.c (_bfd_elf_adjust_dynamic_reloc_section): Add support
            for STT_IFUNC symbols.
            (get_ifunc_reloc_section_name): New function.
            (_bfd_elf_make_ifunc_reloc_section): New function.
            * elf-bfd.h (struct bfd_elf_section_data): Add indirect_relocs field.
            * bfd-in2.h: Regenerate.
gas/
            * config/obj-elf.c (obj_elf_type): Add support for STT_IFUNC type.
            * doc/as.texinfo: Document new feature.
            * NEWS: Mention new feature.
gas/testsuite/
            * gas/elf/type.s: Add test of STT_IFUNC symbol type.
            * gas/elf/type.e: Update expected disassembly.
            * gas/elf/elf.exp: Update grep of symbol types.
ld/
            * NEWS: Mention new feature.
            * pe-dll.c (process_def_file): Replace use of redundant
            BFD_FORT_COMM_DEFAULT_VALUE with 0.
            * scripttempl/elf.sc: Add .rel.ifunc.dyn and .rela.ifunc.dyn
            sections.
ld/testsuite/
            * ld-mips-elf/reloc-1-n32.d: Updated expected output for reloc
            descriptions.
            * ld-mips-elf/reloc-1-n64.d: Likewise.
            * ld-i386/ifunc.d: New test.
            * ld-i386/ifunc.s: Source file for the new test.
            * ld-i386/i386.exp: Run the new test.
2008-12-03 14:51:00 +00:00
Kai Tietz
acac4c6962 2008-12-02 Kai Tietz <kai.tietz@onevision.com>
* pe-dll.c (make_runtime_pseudo_reloc): Make symtab big enough to
        hold relocations.
2008-12-02 09:33:12 +00:00
M R Swami Reddy
7251ccbfd7 * emultempl/cr16elf.em (cr16_after_open): New function to handle
CR16 ELF embedded reloc creation (ld --embedded-relocs).
        (check_sections): New function.
        (LDEMUL_AFTER_OPEN): Define.
        * emulparams/elf32cr16.sh (EMBEDDED): Define.
	* NEWS: Add comment on cr16 new feature.
2008-11-27 12:41:14 +00:00
Alan Modra
ae5a359786 include/
PR 7047
	* bfdlink.h (struct bfd_elf_version_expr): Delete "symbol".
	Add "literal".
bfd/
	PR 7047
	* configure.in: Bump version.
	* configure: Regenerate.
	* elflink.c (_bfd_elf_link_assign_sym_version): Continue matching
	against version nodes when a global match is a wildcard.  Similarly
	continue matching on local wildcard matches, rather than only
	continuing for "*".  Have any global wildcard match override a
	local wildcard match.  Correct logic hiding unversioned symbol.
	(bfd_elf_size_dynamic_sections): Update for changes to struct
	bfd_elf_version_expr.
ld/
	PR 7047
	* emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Update
	for changes to struct bfd_elf_version_expr.
	* ldlang.c (lang_vers_match, version_expr_head_hash): Likewise.
	(version_expr_head_eq, lang_finalize_version_expr_head): Likewise.
	(lang_register_vers_node): Likewise.
	(lang_new_vers_pattern): Likewise.  Ensure "literal" is set when
	no glob chars found in "pattern".
	(realsymbol): Correct backslash quote logic.
	* ld.texinfo (VERSION): Warn about global wildcards.
2008-11-26 01:04:17 +00:00
Alan Modra
7512c3973e * ldlang.c (lang_record_phdrs): Don't add orphans to PT_INTERP header. 2008-11-24 07:54:34 +00:00
Nick Clifton
793c580792 Change documentation license to FDL v1.3 2008-11-19 16:22:48 +00:00
Ulrich Weigand
d7b99e76e2 * configure.tgt [spu-*-elf*]: Set NATIVE_LIB_DIRS to '/lib'. 2008-11-17 20:11:48 +00:00
Nick Clifton
764c62eb01 Update copyright year in --version messages. 2008-11-17 17:44:32 +00:00
Kai Tietz
6cb442d374 2008-11-14 Kai Tietz <kai.tietz@onevision.com>
* emultempl/pep.em (..._before_parse): initialize
	pei386_runtime_pseudo_reloc by version 2.
	(OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V1): New option.
	(OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V2): New option.
	(make_import_fixup): Use relocation size to read addend.
	* emultempl/pe.em (..._before_parse): initialize
	pei386_runtime_pseudo_reloc by version 1.
	(OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V1): New option.
	(OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V2): New option.
	* pe-dll.c (pe-dll.h): Remove useless include.
	(make_runtime_pseudo_reloc): Change addend to use bfd_vma.
	Handle the two variants of pseudo-relocation.
	(pe_create_import_fixup): Change addend to type bfd_vma.
	Modify for the two pseudo_relocation variants.
	(runtime_pseudp_reloc_v2_init): New static variable.
	* pe-dll.h (pe_create_import_fixup): Change addend argument type
	to bfd_vma.
	* pep-dll.h (pep_create_import_fixup): Likewise.
	* NEWS: Add comment.
2008-11-14 15:13:05 +00:00
Alan Modra
43b5d01b26 * Makefile.am (spu_ovl.o_c): Add missing line continuations.
* Makefile.in: Regenerate.
2008-11-14 06:54:40 +00:00
Nick Clifton
8a2a2dbb65 Add m32c-*-rtems* and m32r-*-rtems* configuration targets. 2008-11-06 15:36:38 +00:00
Bob Wilson
1aa89011a2 Fix my email in last entry. 2008-11-03 18:55:27 +00:00
Bob Wilson
e78c4c7ea8 * emulparams/elf32xtensa.sh (NO_REL_RELOCS): Set.
* scripttempl/elfxtensa.sc (NO_REL_RELOCS, NO_RELA_RELOCS)
	(NON_ALLOC_DYN): Import changes from elf.sc.
2008-11-03 18:52:52 +00:00
Nick Clifton
fb6cee9639 PR 6945
* ldlang.c (lang_size_sections_1): Do not update the VMAs of
        output sections when performing a relocatable link on COFF
        objects.
2008-10-25 09:54:01 +00:00
Nick Clifton
b8976b05f2 * emultempl/armelf.em (arm_elf_after_open): Move check for using a
non-arm output target from here...
        (arm_elf_create_output_section_statements): ... to here, so that
        the check is made at the earliest possible opportunity.
2008-10-22 14:23:44 +00:00
Alan Modra
f407252f29 * emulparams/elf32_i960.sh (TEMPLATE_NAME): "generic", not "elf32".
(EXTRA_EM_FILE): Define.
2008-10-22 06:06:09 +00:00
Alan Modra
485cf67968 * scripttempl/elf.sc (NO_REL_RELOCS, NO_RELA_RELOCS, NON_ALLOC_DYN):
Handle these defines.
	* emulparams/criself.sh, * emulparams/crislinux.sh,
	* emulparams/elf32am33lin.sh, * emulparams/elf32fr30.sh,
	* emulparams/elf32_i860.sh, * emulparams/elf32ip2k.sh,
	* emulparams/elf32mcore.sh, * emulparams/elf32ppccommon.sh,
	* emulparams/elf32ppcwindiss.sh, * emulparams/elf32_sparc.sh,
	* emulparams/elf32_spu.sh, * emulparams/elf32vax.sh,
	* emulparams/elf64alpha.sh, * emulparams/elf64mmix.sh,
	* emulparams/elf64ppc.sh, * emulparams/elf64_s390.sh,
	* emulparams/elf64_sparc.sh, * emulparams/elf_s390.sh,
	* emulparams/elf_x86_64.sh, * emulparams/h8300elf.sh,
	* emulparams/hppa64linux.sh, * emulparams/hppalinux.sh,
	* emulparams/m68kelf.sh, * emulparams/mn10200.sh,
	* emulparams/pjelf.sh, * emulparams/ppclynx.sh,
	* emulparams/shelf32.sh, * emulparams/shelf_nto.sh,
	* emulparams/shelf.sh, * emulparams/shelf_vxworks.sh,
	* emulparams/shlelf32_linux.sh, * emulparams/shlelf_linux.sh,
	* emulparams/shlelf_nto.sh (NO_REL_RELOCS): Set.
	* emulparams/arcelf.sh, * emulparams/elf32_i960.sh,
	* emulparams/elf32openrisc.sh, * emulparams/elf_i386_be.sh,
	* emulparams/elf_i386_ldso.sh, * emulparams/elf_i386.sh,
	* emulparams/elf_i386_vxworks.sh, * emulparams/i386lynx.sh,
	* emulparams/i386moss.sh, * emulparams/i386nto.sh,
	* emulparams/or32elf.sh, * emulparams/scoreelf.sh (NO_RELA_RELOCS): Set.
2008-10-22 05:20:44 +00:00
Alan Modra
07890c0736 * ldlang.c (lang_output_section_find_by_flags): Handle non-alloc
sections.
	* emultempl/elf32.em (enum orphan_save_index): Add orphan_nonalloc.
	(hold): Likewise.
	(gld${EMULATION_NAME}_place_orphan): Handle non-alloc orphans.
2008-10-21 22:55:04 +00:00
Alan Modra
4a977a3149 * emultempl/armelf.em (PARSE_AND_LIST_OPTIONS): Correct typo in
help text of --be8.
2008-10-21 22:20:29 +00:00
Alan Modra
c2edb4b89e * ldemul.h (ldemul_place_orphan): Update prototype.
(struct ld_emulation_xfer_struct <place_orphan>): Likewise.
	* ldemul.c (ldemul_place_orphan): Return pointer to output
	section statement.
	* emultempl/beos.em (gld${EMULATION_NAME}_place_orphan): 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.
	* emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
2008-10-20 12:14:29 +00:00
Nick Clifton
8cc9115f57 * configure.in (ALL_LINGUAS): Add "id".
* configure: Regenerate.
        * po/id.po: New Indonesian translation.
2008-10-08 15:58:26 +00:00
Alan Modra
f265bc0660 PR 6943
* scripttempl/avr.sc (.bss): Set lma when relocating.
	(.bss, .noinit): No need to set vma when relocating.
	(.text, .bss, ,noinit): Set vma to zero when not relocating.
2008-10-05 04:12:04 +00:00
Alan Modra
8a99a385a7 * ldemul.c (ldemul_place_orphan): Add "constraint" param.
* ldemul.h (ldemul_place_orphan): Update prototype.
	(struct ld_emulation_xfer_struct <place_orphan>): Likewise add param.
	* ldlang.c (unique_section_p): Make static.
	(lang_output_section_statement_lookup): Optimise creation of SPECIAL
	sections.
	(lang_insert_orphan): Add "constraint" param.  Pass to
	lang_enter_output_section_statement.
	(init_os): Don't use an existing bfd section for SPECIAL sections.
	(lang_place_orphans): Don't rename unique output sections, instead
	mark their output section statements SPECIAL.
	* ldlang.h (lang_insert_orphan): Update prototype.
	(unique_section_p): Delete.
	* emultempl/beos.em (place_orphan): Add "constraint" param.
	* emultempl/elf32.em (place_orphan): Likewise.  Don't match existing
	output sections if set.
	* emultempl/pe.em (place_orphan): Likewise.
	* emultempl/pep.em (place_orphan): Likewise.
	* emultempl/mmo.em (mmo_place_orphan): Update.
	* emultempl/spuelf.em (spu_place_special_section): Update.
2008-10-04 06:08:59 +00:00
Alan Modra
e932ca37ad add pr number for last commit 2008-10-03 10:09:51 +00:00
Alan Modra
bcacc0f587 bfd/
* elf.c (bfd_elf_set_group_contents): Assign sh_info for ld -r when
	the signature symbol is global.
	* elflink.c (elf_link_input_bfd): Ensure group signature symbol
	is output when ld -r.  Set group sh_info when local.
	* linker.c (default_indirect_link_order): Handle group sections
	specially.
ld/
	* ldemul.c (ldemul_place_orphan): Add "name" param.
	* ldemul.h (ldemul_place_orphan): Update prototype.
	(struct ld_emulation_xfer_struct <place_orphan>): Likewise.
	* ldlang.c (lang_place_orphans): Generate unique section names here..
	* emultempl/elf32.em (place_orphan): ..rather than here.  Don't
	directly use an existing output section statement that has no
	bfd section.
	* emultempl/pe.em (place_orphan): Likewise.
	* emultempl/pep.em (place_orphan): Likewise.
	* emultempl/beos.em (place_orphan): Adjust.
	* emultempl/spuelf.em (spu_place_special_section): Adjust
	place_orphan call.
	* emultempl/genelf.em (gld${EMULATION_NAME}_after_open): New function.
	(LDEMUL_AFTER_OPEN): Define.
2008-10-03 09:40:49 +00:00
Joseph Myers
b796d39d3a * emulparams/elf64ppc.sh (OTHER_GOT_RELOC_SECTIONS): Add .rela.opd
and .rela.branch_lt.
2008-09-30 15:04:34 +00:00
Alan Modra
782e11fd41 run "make dep-am" 2008-09-30 07:49:32 +00:00
Steve Ellcey
b214d478d7 * configure: Regenerate for new libtool.
* aclocal.m4: Ditto.
	* Makefile.in: Ditto.
2008-09-29 15:36:22 +00:00
Kai Tietz
b8a4873487 2008-09-26 Kai Tietz <kai.tietz@onevision.com>
* pe-dll.c (make_import_fixup_entry): Make sure reloc is addend.
2008-09-29 14:01:50 +00:00
Nick Clifton
afac680a76 * po/vi.po: Updated Vietnamese translation.
* po/fr.po: Updated French translation.
2008-09-29 09:48:31 +00:00
Alan Modra
4ac0c89885 * ldexp.c (fold_binary): Evaluate rhs when lhs not valid. 2008-09-25 02:34:00 +00:00
Jan Kratochvil
d053aef827 bfd/
Fix loading large elf64 binaries on 32bit hosts.
	* configure.in: Call AC_SYS_LARGEFILE.
	* config.in: Regenerate.
	* configure: Regenerate.

binutils/
	Fix loading large elf64 binaries on 32bit hosts.
	* configure.in: Call AC_SYS_LARGEFILE.
	* config.in: Regenerate.
	* configure: Regenerate.

gas/
	* configure.in: Call AC_SYS_LARGEFILE.
	* config.in: Regenerate.
	* configure: Regenerate.

gprof/
	* configure.in: Call AC_SYS_LARGEFILE.
	* gconfig.in: Regenerate.
	* configure: Regenerate.

ld/
	* configure.in: Call AC_SYS_LARGEFILE.
	* config.in: Regenerate.
	* configure: Regenerate.

libiberty/
	* configure.in: Call AC_SYS_LARGEFILE.
	* config.in: Regenerate.
	* configure: Regenerate.
2008-09-11 19:02:04 +00:00
Nick Clifton
44e36d8a7b * emultempl/pe.em (pe_find_data_imports): Add trailing newline
to warning message.
  * emultempl/pep.em (pep_find_data_imports): Likewise.
2008-09-09 09:45:31 +00:00
H.J. Lu
25d650345c 2008-09-08 H.J. Lu <hongjiu.lu@intel.com>
2008-09-07  Alan Modra  <amodra@bigpond.net.au>

	* emultempl/beos.em (gld${EMULATION_NAME}_place_orphan): Updated.
	* emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Likewise.
2008-09-08 16:07:46 +00:00
Tristan Gingold
6e33da127b ld/
2008-09-08  Tristan Gingold  <gingold@adacore.com>

	* NEWS: Add a marker for the 2.19 features.
gas/
2008-09-08  Tristan Gingold  <gingold@adacore.com>

	* NEWS: Add a marker for the 2.19 features.

binutils/
2008-09-08  Tristan Gingold  <gingold@adacore.com>

	* NEWS: Add a marker for the 2.19 features.
2008-09-08 08:56:57 +00:00
Alan Modra
66c103b772 * ldlang.h (lang_output_section_find): Define.
(lang_output_section_statement_lookup): Update prototype.
	* ldlang.c (lang_output_section_find,
	lang_output_section_statement_lookup_1): Merge into..
	(lang_output_section_statement_lookup): ..here.  Update all callers.
	(process_insert_statements): Set constraint negative
	for output section statements we might be inserting.  Make error
	fatal on not finding insertion section.
	(lang_output_section_find): Rather than comparing
	output_section_statement.constraint against -1, test whether
	it is postive.
	(lang_output_section_statement_lookup_1): Likewise.
	(output_prev_sec_find, strip_excluded_output_sections): Likewise.
	(lang_record_phdrs): Likewise.
	* emultempl/elf32.em (output_rel_find): Likewise.
	* NEWS: Mention INSERT.
2008-09-07 04:02:31 +00:00
Nick Clifton
8716772cc5 PR 6727
* emultempl/armelf.em (arm_elf_set_bfd_for_interworking): Scan all
   input sections in all input bfds and always select the last
   suitable one, so that interworking stubs are always processed
   after all other input sections.
   (arm_elf_before_allocation): Remove redundant use of
   output_has_begun flag.
2008-08-26 11:11:17 +00:00
Alan Modra
da594c4a29 Update a number of obsolete autoconf macros. 2008-08-24 03:13:05 +00:00
Jan Kratochvil
2b60860a4c PR ld/6833
* ldexp.c (fold_binary <DATA_SEGMENT_ALIGN>): Do not align
	EXPLD.DATASEG.MIN_BASE.
	* ldlang.c (lang_size_sections): New variable OLD_BASE.  Rename
	OLD_MIN_BASE to MIN_BASE with the former alignment from `ldexp.c'.
	Use OLD_BASE now for the minimal base check after the base decrease by
	the maximum alignment found.
2008-08-21 13:10:54 +00:00