aboutsummaryrefslogtreecommitdiff
path: root/ld
AgeCommit message (Collapse)AuthorFilesLines
2006-11-23 * ld-elf/warn2.d: Match regex also for the second segment.Thiemo Seufer2-1/+5
2006-11-22opcodes/Daniel Jacobowitz4-10/+16
* arm-dis.c (last_is_thumb): Delete. (enum map_type, last_type): New. (print_insn_data): New. (get_sym_code_type): Take MAP_TYPE argument. Check the type of the right symbol. Handle $d. (print_insn): Check for mapping symbols even without a normal symbol. Adjust searching. If $d is found see how much data to print. Handle data. gas/ * config/tc-arm.h (md_cons_align): Define. (mapping_state): New prototype. * config/tc-arm.c (mapping_state): Make global. gas/testsuite/ * gas/arm/arm7t.d, gas/arm/neon-ldst-rm.d, gas/arm/thumb2_pool.d, gas/arm/tls.d: Update for $d support. * gas/arm/mapshort.d, gas/arm/mapshort.s: New test. * gas/elf/section2.e-armeabi: Update. * gas/elf/section2.e-armelf: New file. * gas/elf/elf.exp: Use it. ld/testsuite/ * ld-arm/mixed-app.d, ld-arm/tls-app.d, ld-arm/tls-lib.d: Update for $d support.
2006-11-22Add Irish translation for ld and Malay translation for gprofNick Clifton4-2/+1922
2006-11-21 * elf-eh-frame.c (struct cie): New type.Jakub Jelinek5-0/+253
(cie_compare): Removed. (cie_eq, cie_hash, cie_compute_hash): New functions. (_bfd_elf_discard_section_eh_frame): Rewrite not to rely on FDEs pointing only to last CIE and allow merging of any duplicate CIEs, not just duplicate consecutive CIEs. (_bfd_elf_discard_section_eh_frame_hdr): Delete cies hash table. * elf-bfd.h (struct cie_header, struct cie): Removed. (struct eh_frame_sec_info): Remove alloced field. (struct eh_frame_hdr_info): Remove last_cie, last_cie_sec and last_cie_inf fields. Add cies field. * ld-elf/eh5.d: New test. * ld-elf/eh5.s: New file. * ld-elf/eh5a.s: New file. * ld-elf/eh5b.s: New file.
2006-11-202006-11-20 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-1/+5
* ld.texinfo: Fix a typo.
2006-11-20 * emulparams/elf32_spu.sh (OTHER_SECTIONS): Define.Alan Modra2-0/+5
2006-11-13 * ld-arm/arm-dyn.ld, ld-arm/arm-lib.ld: Remove .stack.Daniel Jacobowitz10-46/+43
* ld-arm/armthumb-lib.d, ld-arm/mixed-app.d, ld-arm/mixed-lib.d: Allow smaller section gap. * ld-arm/armthumb-lib.sym, ld-arm/mixed-lib.sym: Reorder. Remove _stack. * ld-arm/mixed-app.sym: Remove _stack. * ld-arm/tls-app.d: Update start address.
2006-11-13bfd/Daniel Jacobowitz2-12/+18
* bfd-in.h (bfd_elf32_arm_process_before_allocation): Update prototype. (bfd_elf32_arm_set_byteswap_code): New prototype. * bfd-in2.h: Regenerate. * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Don't take byteswap_code as an argument. Revert 2006-11-01 change. (bfd_elf32_arm_set_byteswap_code): New. (elf32_arm_size_dynamic_sections): Call bfd_elf32_arm_process_before_allocation. ld/ * emultempl/armelf.em (arm_elf_before_allocation): Only call bfd_elf32_arm_process_before_allocation if no dynamic sections.
2006-11-08ld/Alan Modra4-9/+25
* emultempl/elf32.em (gld*_before_allocation): Adjust output section size for warning sections. ld/testsuite/ * ld-elf/group.ld: Handle .rodata.brlt for powerpc64.
2006-11-082006-11-07 Vladimir Prus <vladimir@codesourcery.com>Vladimir Prus2-2/+7
* testsuite/ld-elf/symbol2w.s: Use "%" instead of "@" to avoid breakage on ARM.
2006-11-062006-11-06 Vladimir Prus <vladimir@codesourcery.com>Vladimir Prus2-1/+6
* testsuite/ld-elf/symbol1ref.s: Use ".dc.a" instead of ".long".
2006-11-06 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):Vladimir Prus6-7/+38
Don't prepend "warning" to the message. * testsuite/ld-elf/warn2.d: New. * testsuite/ld-elf/symbol2w.s: New. * testsuite/ld-elf/symbol2ref.s: New.
2006-11-05 * ld-cris/ldsym1.d: Adjust for semi-recent ld changes.Hans-Peter Nilsson2-1/+5
2006-11-03bfd/Daniel Jacobowitz3-0/+23
* libbfd-in.h (_bfd_clear_contents): New prototype. * reloc.c (_bfd_clear_contents): New. * libbfd.h: Regenerated. * elf32-arm.c (elf32_arm_final_link_relocate): Use _bfd_clear_contents. * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. * elf32-i386.c (elf_i386_relocate_section): Likewise. * elf32-ppc.c (ppc_elf_relocate_section): Likewise. * elf32-s390.c (elf_s390_relocate_section): Likewise. * elf32-sh.c (sh_elf_relocate_section): Likewise. * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. * elf64-s390.c (elf_s390_relocate_section): Likewise. * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. * elfxx-ia64.c (elfNN_ia64_relocate_section): Set value to zero for discarded symbols. * elfxx-mips.c (mips_elf_calculate_relocation): Likewise. ld/testsuite/ * ld-discard/zero-rel.d, ld-discard/zero-rel.s: New files.
2006-11-02 [ bfd/ChangeLog ]Thiemo Seufer5-0/+2883
* elf-bfd.h (local_call_stubs): New member. * elfxx-mips.c (FN_STUB_P, CALL_STUB_P, CALL_FP_STUB_P): New macros. (mips_elf_calculate_relocation): Handle local mips16 call stubs. (mips16_stub_section_p): Rename from mips_elf_stub_section_p, use the new stub macros. (_bfd_mips_elf_check_relocs): Handle call stubs for code which mixes mips16 and mips32 functions. Use mips16_stub_section_p. Mark used stubs with SEC_KEEP. Use the new stub macros. [ gas/testsuite/ChangeLog ] * gas/mips/mips16-intermix.d, gas/mips/mips16-intermix.s: New testcase. * gas/mips/mips.exp: Run new testcase. [ ld/testsuite/ChangeLog ] * ld-mips-elf/mips16-intermix-1.s, ld-mips-elf/mips16-intermix-2.s, ld-mips-elf/mips16-intermix.d: New testcase. * ld-mips-elf/mips-elf.exp (mips16_intermix_test): Run new testcases.
2006-11-01* pe-dll.c (autofilter_entry_type): Change name to const.Christopher Faylor2-21/+45
(pe_details_type) : Change target_name, object_target and autofilter_symbollist to const. (autofilter_symbollist_generic): Change to const. (autofilter_symbollist_i386, pe_detail_list, pe_details, autofilter_liblist, autofilter_objlist autofilter_symbolprefixlist, autofilter_symbolsuffixlist): Likewise. (is_import): Fix indentation. (auto_export): Change afptr to const. Move name declaration to beginning of scope. (make_tail): Clear undefined byte. (jmp_ix86_bytes, jmp_sh_bytes, jmp_mips_bytes, jmp_arm_bytes): Change to const. (make_one): Change jmp_bytes to const. Make idata$6 member size arithmetic explicit and add comment.
2006-10-30bfd/H.J. Lu5-11/+17
2006-10-30 H.J. Lu <hongjiu.lu@intel.com> PR ld/3111 * elf-bfd.h (elf_obj_tdata): Add symbuf. (_bfd_elf_section_already_linked): Add struct bfd_link_info *. (_bfd_elf_check_kept_section): Likewise. (bfd_elf_match_symbols_in_sections): Likewise. * elf.c (assign_section_numbers): Updated to add struct bfd_link_info *. (bfd_elf_match_symbols_in_sections): Updated. Cache symbol buffer if info->reduce_memory_overheads is false. * elflink.c (match_group_member): Updated to add struct bfd_link_info *. (_bfd_elf_check_kept_section): Likewise. (elf_link_input_bfd): Likewise. (_bfd_elf_section_already_linked): Likewise. (bfd_elf_final_link): Free symbol buffer if info->reduce_memory_overheads is false. * libbfd-in.h (_bfd_nolink_section_already_linked): Add struct bfd_link_info *. (_bfd_generic_section_already_linked): Likewise. * libbfd.h: Regenerated. * linker.c (bfd_section_already_linked): Add struct bfd_link_info *. (_bfd_generic_section_already_linked): Likewise. * targets.c (bfd_target): Add struct bfd_link_info * to _section_already_linked. * bfd-in2.h: Regenerated. include/ 2006-10-30 H.J. Lu <hongjiu.lu@intel.com> PR ld/3111 * bfdlink.h (bfd_link_info): Add reduce_memory_overheads. ld/ 2006-10-30 H.J. Lu <hongjiu.lu@intel.com> PR ld/3111 * ld.h (args_type): Remove reduce_memory_overheads. * ldlang.c (lang_map): Updated. (section_already_linked): Likewise. (print_input_section): Likewise. * ldmain.c (main): Likewise. * lexsup.c (parse_args): Likewise.
2006-10-30 * ld-sh/sh64/abi32.xd, ld-sh/sh64/abi64.xd, ld-sh/sh64/cmpct1.xd,Kaz Kojima13-48/+57
* ld-sh/sh64/crange1.rd, ld-sh/sh64/crange2.rd, * ld-sh/sh64/crange3-cmpct.rd, ld-sh/sh64/crange3-media.rd, * ld-sh/sh64/crange3.rd, ld-sh/sh64/mix1.xd, ld-sh/sh64/mix2.xd, * ld-sh/sh64/shdl32.xd, ld-sh/sh64/shdl64.xd: Update for removal of empty sections.
2006-10-29* pe-dll.c (make_singleton_name_thunk): Re-add the NULL terminator.Christopher Faylor2-4/+9
2006-10-27bfd/Alan Modra3-5/+14
* section.c (SEC_KEEP): Update comment. * bfd-in2.h: Regenerate. * elflink.c (bfd_elf_gc_sections): Ignore SEC_EXCLUDE sections. * merge.c (_bfd_merge_sections): Set SEC_KEEP on excluded sections. * stabs.c (_bfd_discard_section_stabs): Likewise. (_bfd_link_section_stabs): Likewise. Simplify abs_section check. ld/ * ldlang.c (lang_map): Don't say SEC_LINKER_CREATED and SEC_KEEP sections have been discarded. (lang_do_version_exports_section): Set SEC_KEEP on export section. * emultempl/elf32.em (before_allocation): Set SEC_KEEP on warning sections.
2006-10-262006-10-26 Joseph S. Myers <joseph@codesourcery.com>Joseph Myers2-5/+25
Mark Mitchell <mark@codesourcery.com> * configure.tgt (arm*linux*): Support both big- and little-endian.
2006-10-262006-10-25 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu3-3/+12
* emulparams/hppa64linux.sh (LARGE_SECTIONS): Renamed to ... (OTHER_BSS_SECTIONS): This. * scripttempl/elf.sc (OTHER_BSS_SECTIONS): Support LARGE_SECTIONS. (LARGE_SECTIONS): Move .lbss sections to OTHER_BSS_SECTIONS.
2006-10-25New Cell SPU port.Alan Modra21-14/+930
2006-10-25missed from last commitAlan Modra1-10/+18
2006-10-24 * ld-powerpc/plt1.s: New.Alan Modra5-1/+117
* ld-powerpc/plt1.d: New. * ld-powerpc/relbrlt.s: New. * ld-powerpc/relbrlt.d: New. * ld-powerpc/powerpc.exp: Run them.
2006-10-24 * lexsup.c (parse_args): Add a comment noting a fall-through.Ben Elliston2-0/+6
2006-10-232006-10-24 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu4-2/+16
* configure.in (AC_CHECK_HEADERS): Add limits.h and sys/param.h. * configure: Regenerated. * config.in: Likewise.
2006-10-23 * emulparams/h8300elf.sh (TINY_DATA_SECTION, TINY_BSS_SECTION): Don'tAlan Modra2-12/+15
set section address on a relocatable link.
2006-10-23 * ld.texinfo (Output Section Discarding): Fix xref.Alan Modra2-3/+7
2006-10-23missed from 2006-10-19 commit.Alan Modra1-3/+3
2006-10-22 * gas/sh/sh64/syntax-1.d: Update.Kaz Kojima19-732/+679
* ld-sh/sh64/abi32.xd, ld-sh/sh64/abi64.xd, ld-sh/sh64/cmpct1.xd, * ld-sh/sh64/crange1.rd, ld-sh/sh64/crange2.rd, * ld-sh/sh64/crange3-cmpct.rd, ld-sh/sh64/crange3-media.rd, * ld-sh/sh64/crange3.rd, ld-sh/sh64/crangerel1.rd, * ld-sh/sh64/crangerel2.rd, ld-sh/sh64/mix1.xd, * ld-sh/sh64/mix2.xd, ld-sh/sh64/rel32.xd, ld-sh/sh64/rel64.xd, * ld-sh/sh64/reldl32.rd, ld-sh/sh64/reldl64.rd, * ld-sh/sh64/shdl32.xd, ld-sh/sh64/shdl64.xd: Update.
2006-10-22 * emulparams/shelf32.sh: Set default stack to 0x80000.Kaz Kojima3-2/+7
* emulparams/shelf64.sh: Likewise.
2006-10-20 * ld-sh/tlsbin-1.d: Update.Kaz Kojima4-51/+57
* ld-sh/tlspic-1.d: Likewise. * ld-sh/tlstpoff-1.d: Likewise.
2006-10-20bfd/Richard Sandiford4-35/+8
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Make the size of .rel.dyn reflect the value of DT_RELSZ. ld/testsuite/ * ld-mips-elf/multi-got-1.d: Remove trailing R_MIPS_NONE entries. * ld-mips-elf/tls-multi-got-1.got: Likewise. * ld-mips-elf/tls-multi-got-1.r: Likewise.
2006-10-20bfd/Richard Sandiford18-69/+95
* elfxx-mips.c (_bfd_mips_elf_additional_program_headers): Allocate a PT_NULL header for dynamic objects. (_bfd_mips_elf_modify_segment_map): Add it. ld/testsuite/ * ld-mips-elf/multi-got-1.d: Do not expect a particular address for DT_HASH. * ld-mips-elf/rel32-o32.d: Bump addresses by 0x20 to account for the extra program header. * ld-mips-elf/rel32-n32.d: Likewise. * ld-mips-elf/tlslib-o32.got: Likewise. * ld-mips-elf/tlslib-o32-hidden.got: Likewise. * ld-mips-elf/tlslib-o32-ver.got: Likewise. * ld-mips-elf/tls-multi-got-1.got: Likewise. * ld-mips-elf/tls-multi-got-1.r: Likewise. * ld-mips-elf/rel64.d: Bump addresses by 0x30 to account for the extra program header. * ld-mips-elf/tlsdyn-o32.d: Reduce the GOT offset by 32 to account for the extra program header, and thus the shorter gap between the text and data segments. * ld-mips-elf/tlsdyn-o32-1.d: Likewise. * ld-mips-elf/tlsdyn-o32-2.d: Likewise. * ld-mips-elf/tlsdyn-o32-3.d: Likewise. * ld-mips-elf/tlsdyn-o32.got: Bump GOT text addresses by 0x20 to account for the extra program header. * ld-mips-elf/tlsdyn-o32-1.got: Likewise. * ld-mips-elf/tlsdyn-o32-2.got: Likewise. * ld-mips-elf/tlsdyn-o32-3.got: Likewise.
2006-10-20ld/Richard Sandiford7-3/+30
* emulparams/elf32bmip.sh (OTHER_GOT_RELOC_SECTIONS): Define. * emulparams/elf32bmipn32-defs.sh (OTHER_GOT_RELOC_SECTIONS): Likewise. ld/testsuite/ * ld-mips-elf/rel32-o32.d: Bump the section number of .text by 1 to account for the fact that .rel.dyn is now before .text in the section table. * ld-mips-elf/rel32-n32.d: Likewise. * ld-mips-elf/rel64.d: Likewise.
2006-10-19Fix score bugsNick Clifton1-3/+3
2006-10-19bfd/Richard Sandiford5-13/+21
* elfxx-mips.c (sort_dynamic_relocs): Sort relocations against the same symbol by increasing r_offset. (sort_dynamic_relocs_64): Likewise. Fix comparisons between very large and very small symbol indexes. ld/testsuite/ * ld-mips-elf/tlslib-o32-hidden.got: Sort relocations against the same symbol in order of increasing r_offset. * ld-mips-elf/tls-multi-got-1.got: Likewise. * ld-mips-elf/tls-hidden3.r: Likewise. * ld-mips-elf/tls-hidden4.r: Likewise.
2006-10-19bfd/Richard Sandiford8-44/+55
* elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG and DT_MIPS_RLD_MAP tags for position-independent executables. Do not add DT_DEBUG to shared libraries for any MIPS target. ld/testsuite/ * ld-mips-elf/multi-got-1.d: Remove DT_DEBUG tag. Do not require a specific file offset for .dynamic. Reduce DT_HASH by 8 to account for removed tag. * ld-mips-elf/tls-multi-got-1.r: Likewise. Also reduce DT_REL by 8. Reduce PLTGOT and symbol values by 16 to account for the removed tag. * ld-mips-elf/textrel-1.d: Remove DT_DEBUG tag. * ld-mips-elf/rel32-n32.d: Reduce addresses by 16 to account for removed DT_DEBUG tag. * ld-mips-elf/rel64.d: Likewise. * ld-mips-elf/tls-multi-got-1.got: Likewise. * ld-mips-elf/tlslib-o32-hidden.got: Likewise.
2006-10-19bfd/H.J. Lu7-0/+149
2006-10-18 H.J. Lu <hongjiu.lu@intel.com> PR ld/3290 * elflink.c (elf_link_add_object_symbols): Hide definitions in debug sections. ld/testsuite/ 2006-10-18 H.J. Lu <hongjiu.lu@intel.com> PR ld/3290 * ld-elf/dummy.c: New file. * ld-elf/dwarf.exp: Likewise. * ld-elf/dwarf1.c: Likewise. * ld-elf/dwarf1.h: Likewise. * ld-elf/dwarf1.out: Likewise. * ld-elf/dwarf1main.c: Likewise.
2006-10-19bfd/Alan Modra2-13/+14
* elf32-arm.c (bfd_elf32_arm_allocate_interworking_sect): Check, don't set, glue section size. (record_arm_to_thumb_glue): Set glue section size here. (record_thumb_to_arm_glue): Likewise. (bfd_elf32_arm_add_glue_sections_to_bfd): Formatting. (bfd_elf32_arm_process_before_allocation): Ignore exluded sections. ld/ * emultempl/armelf.em (arm_elf_before_allocation): Run gld${EMULATION_NAME}_before_allocation later. * ldlang.c (lang_size_sections_1): Revert 2006-09-15 change.
2006-10-182006-10-18 Roy Marples <uberlord@gentoo.org>Mike Frysinger2-0/+6
* bfd/elf64-sparc.c: Add FreeBSD support. (elf64_sparc_fbsd_post_process_headers): New function. * bfd/targets.c (_bfd_target_vector): Add bfd_elf64_sparc_freebsd_vec. * bfd/config.bfd (sparc64-*-freebsd*): Set targ_defvec to bfd_elf64_sparc_freebsd_vec. * bfd/configure.in: Add entry for bfd_elf64_sparc_freebsd_vec. * bfd/configure: Regenerate. * gas/config/tc-sparc.c (md_parse_option): Treat any target starting with elf32-sparc as a viable target for the -32 switch and any target starting with elf64-sparc as a viable target for the -64 switch. (sparc_target_format): For 64-bit ELF flavoured output use ELF_TARGET_FORMAT64 while for 32-bit ELF flavoured output use ELF_TARGET_FORMAT. * gas/config/tc-sparc.h (ELF_TARGET_FORMAT, ELF_TARGET_FORMAT64): Define. * ld/emulparams/elf64_sparc_fbsd.sh (OUTPUT_FORMAT): Define as elf64-sparc-freebsd.
2006-10-18 * configure.tgt (i[3-7]86-*-linux-*): Also defineJoseph Myers3-1/+9
targ_extra_libpath in want64 case. * emulparams/elf_x86_64.sh: Handle i[3-7]86-*-linux-* the same as x86_64*-linux*.
2006-10-182006-10-18 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu9-0/+117
* ld-elf/dl4.c: New file. * ld-elf/dl4.list: Likewise. * ld-elf/dl4a.out: Likewise. * ld-elf/dl4b.out: Likewise. * ld-elf/dl4main.c: Likewise. * ld-elf/dl4xxx.c: Likewise. * ld-elf/dl4xxx.list: Likewise. * ld-elf/shared.exp (build_tests): Add libdl4a.so and libdl4b.so. (run_tests): Likewise.
2006-10-18ld/testsuite/Richard Sandiford2-35/+39
* ld-mips-elf/reloc-1-n64.d: Match 16-character VMAs on LP64 hosts.
2006-10-18Fix typo in last changelog.Richard Sandiford1-1/+1
2006-10-18ld/testsuite/Richard Sandiford2-3/+9
* ld-mips-elf/rel32-n32.d: Bump addresses by 0x30 to account for the fact that .reginfo is now placed before .text. Change the section number of .text accordingly.
2006-10-18ld/testsuite/Richard Sandiford5-668/+681
* ld-mips-elf/elf-rel-got-n32.d: Adjust page gap from 0x100000 to 0x10000. Move .reginfo before .text and bump .text addresses by 0x10 to make room. Move data segment down by 0x10 bytes to account for new size of text segment. * ld-mips-elf/elf-rel-xgot-n32.d: Likewise. * ld-mips-elf/elf-rel-got-n64-linux.d: Adjust page gap from 0x100000 to 0x10000. * ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise.
2006-10-17 bfd/Mark Shinwell10-0/+140
* elf32-arm.c (elf32_arm_howto_table_1): Change offset for R_THM_CALL to 25 and remove FIXME comment. (using_thumb2): New function. (elf32_arm_final_link_relocate): Cope with Thumb-2 BL encoding. include/ * elf/arm.h: Define TAG_CPU_ARCH_* constants. ld/testsuite/ * ld-arm/arm-elf.exp: Add thumb1-bl, thumb2-bl, thumb2-bl-as-thumb1-bad and thumb2-bl-bad tests. * ld-arm/thumb1-bl.d: New. * ld-arm/thumb1-bl.s: New. * ld-arm/thumb2-bl-as-thumb1-bad.d: New. * ld-arm/thumb2-bl-as-thumb1-bad.s: New. * ld-arm/thumb2-bl-bad.d: New. * ld-arm/thumb2-bl-bad.s: New. * ld-arm/thumb2-bl.d: New. * ld-arm/thumb2-bl.s: New.
2006-10-17 * scripttempl/elf.sc (INTERP): Delete. Move definition to..Alan Modra5-5/+28
(INITIAL_READONLY_SECTIONS): ..here. * emulparams/criself.sh (INITIAL_READONLY_SECTIONS): Include .interp. * emulparams/elf32bmip.sh (INITIAL_READONLY_SECTIONS): Ditto. * emulparams/elf32bmipn32-defs.sh (INITIAL_READONLY_SECTIONS): Ditto.