Nick Clifton
90b3661c07
* NEWS: Mention addition of TILEPRO and TIKE-Gx support.
2011-06-15 09:12:09 +00:00
Alan Modra
5daeae9b97
* ld-elf/elf.exp: Don't attempt to build symbol3.a for hppa64-hpux.
...
* ld-elf/warn3.d: Correct target selection and comment.
2011-06-14 02:55:29 +00:00
Alan Modra
50b1867819
PR ld/12851
...
* ld-elf/pr12851.d: Correct target selection and comment.
2011-06-14 02:46:57 +00:00
Nick Clifton
aa137e4d51
* Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo.
...
(ALL_MACHINE_CFILES): Add cpu-tilegx.c and cpu-tilepro.c.
(BFD32_BACKENDS): Add elf32-tilegx.lo, elf32-tilepro.lo,
and elfxx-tilegx.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tilegx.c elf32-tilepro.c, and
elfxx-tilegx.c.
(BFD64_BACKENDS): Add elf64-tilegx.lo.
(BFD64_BACKENDS_CFILES): Add elf64-tilegx.c.
* Makefile.in: Regenerate.
* arctures.c (bfd_architecture): Define bfd_arch_tilepro,
bfd_arch_tilegx, bfd_mach_tilepro, bfd_mach_tilegx.
(bfd_arch_info): Add bfd_tilegx_arch, bfd_tilepro_arch.
(bfd_archures_list): Add bfd_tilegx_arch, bfd_tilepro_arch.
bfd-in2.h: Regenerate.
* config.bfd: Handle tilegx-*-* and tilepro-*-*.
* configure.in: Handle bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* configure: Regenerate.
* elf-bfd.h (enum elf_target_id): Define TILEGX_ELF_DATA and
TILEPRO_ELF_DATA.
* libbfd.h: Regenerate.
* reloc.c: Add BFD_RELOC_TILEPRO_{COPY, GLOB_DAT, JMP_SLOT,
RELATIVE, BROFF_X1, JOFFLONG_X1, JOFFLONG_X1_PLT, IMM8_X0,
IMM8_Y0, IMM8_X1, IMM8_Y1, DEST_IMM8_X1, MT_IMM15_X1, MF_IMM15_X1,
IMM16_X0, IMM16_X1, IMM16_X0_LO, IMM16_X1_LO, IMM16_X0_HI,
IMM16_X1_HI, IMM16_X0_HA, IMM16_X1_HA, IMM16_X0_PCREL,
IMM16_X1_PCREL, IMM16_X0_LO_PCREL, IMM16_X1_LO_PCREL,
IMM16_X0_HI_PCREL, IMM16_X1_HI_PCREL, IMM16_X0_HA_PCREL,
IMM16_X1_HA_PCREL, IMM16_X0_GOT, IMM16_X1_GOT, IMM16_X0_GOT_LO,
IMM16_X1_GOT_LO, IMM16_X0_GOT_HI, IMM16_X1_GOT_HI,
IMM16_X0_GOT_HA, IMM16_X1_GOT_HA, MMSTART_X0, MMEND_X0,
MMSTART_X1, MMEND_X1, SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1,
IMM16_X0_TLS_GD, IMM16_X1_TLS_GD, IMM16_X0_TLS_GD_LO,
IMM16_X1_TLS_GD_LO, IMM16_X0_TLS_GD_HI, IMM16_X1_TLS_GD_HI,
IMM16_X0_TLS_GD_HA, IMM16_X1_TLS_GD_HA, IMM16_X0_TLS_IE,
IMM16_X1_TLS_IE, IMM16_X0_TLS_IE_LO, IMM16_X1_TLS_IE_LO,
IMM16_X0_TLS_IE_HI, IMM16_X1_TLS_IE_HI, IMM16_X0_TLS_IE_HA,
IMM16_X1_TLS_IE_HA, TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
Add BFD_RELOC_TILEGX_{HW0, HW1, HW2, HW3, HW0_LAST, HW1_LAST,
HW2_LAST, COPY, GLOB_DAT, JMP_SLOT, RELATIVE, BROFF_X1,
JUMPOFF_X1, JUMPOFF_X1_PLT, IMM8_X0, IMM8_Y0, IMM8_X1, IMM8_Y1,
DEST_IMM8_X1, MT_IMM14_X1, MF_IMM14_X1, MMSTART_X0, MMEND_X0,
SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1, IMM16_X0_HW0,
IMM16_X1_HW0, IMM16_X0_HW1, IMM16_X1_HW1, IMM16_X0_HW2,
IMM16_X1_HW2, IMM16_X0_HW3, IMM16_X1_HW3, IMM16_X0_HW0_LAST,
IMM16_X1_HW0_LAST, IMM16_X0_HW1_LAST, IMM16_X1_HW1_LAST,
IMM16_X0_HW2_LAST, IMM16_X1_HW2_LAST, IMM16_X0_HW0_PCREL,
IMM16_X1_HW0_PCREL, IMM16_X0_HW1_PCREL, IMM16_X1_HW1_PCREL,
IMM16_X0_HW2_PCREL, IMM16_X1_HW2_PCREL, IMM16_X0_HW3_PCREL,
IMM16_X1_HW3_PCREL, IMM16_X0_HW0_LAST_PCREL,
IMM16_X1_HW0_LAST_PCREL, IMM16_X0_HW1_LAST_PCREL,
IMM16_X1_HW1_LAST_PCREL, IMM16_X0_HW2_LAST_PCREL,
IMM16_X1_HW2_LAST_PCREL, IMM16_X0_HW0_GOT, IMM16_X1_HW0_GOT,
IMM16_X0_HW1_GOT, IMM16_X1_HW1_GOT, IMM16_X0_HW2_GOT,
IMM16_X1_HW2_GOT, IMM16_X0_HW3_GOT, IMM16_X1_HW3_GOT,
IMM16_X0_HW0_LAST_GOT, IMM16_X1_HW0_LAST_GOT,
IMM16_X0_HW1_LAST_GOT, IMM16_X1_HW1_LAST_GOT,
IMM16_X0_HW2_LAST_GOT, IMM16_X1_HW2_LAST_GOT, IMM16_X0_HW0_TLS_GD,
IMM16_X1_HW0_TLS_GD, IMM16_X0_HW1_TLS_GD, IMM16_X1_HW1_TLS_GD,
IMM16_X0_HW2_TLS_GD, IMM16_X1_HW2_TLS_GD, IMM16_X0_HW3_TLS_GD,
IMM16_X1_HW3_TLS_GD, IMM16_X0_HW0_LAST_TLS_GD,
IMM16_X1_HW0_LAST_TLS_GD, IMM16_X0_HW1_LAST_TLS_GD,
IMM16_X1_HW1_LAST_TLS_GD, IMM16_X0_HW2_LAST_TLS_GD,
IMM16_X1_HW2_LAST_TLS_GD, IMM16_X0_HW0_TLS_IE,
IMM16_X1_HW0_TLS_IE, IMM16_X0_HW1_TLS_IE, IMM16_X1_HW1_TLS_IE,
IMM16_X0_HW2_TLS_IE, IMM16_X1_HW2_TLS_IE, IMM16_X0_HW3_TLS_IE,
IMM16_X1_HW3_TLS_IE, IMM16_X0_HW0_LAST_TLS_IE,
IMM16_X1_HW0_LAST_TLS_IE, IMM16_X0_HW1_LAST_TLS_IE,
IMM16_X1_HW1_LAST_TLS_IE, IMM16_X0_HW2_LAST_TLS_IE,
IMM16_X1_HW2_LAST_TLS_IE, TLS_DTPMOD64, TLS_DTPOFF64, TLS_TPOFF64,
TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
* targets.c (bfd_elf32_tilegx_vec): Declare.
(bfd_elf32_tilepro_vec): Declare.
(bfd_elf64_tilegx_vec): Declare.
(bfd_target_vector): Add bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* cpu-tilegx.c: New file.
* cpu-tilepro.c: New file.
* elf32-tilepro.h: New file.
* elf32-tilepro.c: New file.
* elf32-tilegx.c: New file.
* elf32-tilegx.h: New file.
* elf64-tilegx.c: New file.
* elf64-tilegx.h: New file.
* elfxx-tilegx.c: New file.
* elfxx-tilegx.h: New file.
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tilegx.c and
config/tc-tilepro.c.
(TARGET_CPU_HFILES): Add config/tc-tilegx.h and
config/tc-tilepro.h.
* Makefile.in: Regenerate.
* configure.tgt (tilepro-*-*): New.
(tilegx-*-*): Likewise.
* config/tc-tilegx.c: New file.
* config/tc-tilegx.h: Likewise.
* config/tc-tilepro.h: Likewise.
* config/tc-tilepro.c: Likewise.
* doc/Makefile.am (CPU_DOCS): Add c-tilegx.texi and
c-tilepro.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TILEGX): Define.
(TILEPRO): Define.
* doc/as.texinfo: Add Tile-Gx and TILEPro documentation. Include
c-tilegx.texi and c-tilepro.texi.
* doc/c-tilegx.texi: New.
* doc/c-tilepro.texi: New.
* gas/tilepro/t_constants.s: New file.
* gas/tilepro/t_constants.d: Likewise.
* gas/tilepro/t_insns.s: Likewise.
* gas/tilepro/tilepro.exp: Likewise.
* gas/tilepro/t_insns.d: Likewise.
* gas/tilegx/tilegx.exp: Likewise.
* gas/tilegx/t_insns.d: Likewise.
* gas/tilegx/t_insns.s: Likewise.
* dis-asm.h (print_insn_tilegx): Declare.
(print_insn_tilepro): Likewise.
* tilegx.h: New file.
* tilepro.h: New file.
* common.h: Add EM_TILEGX.
* tilegx.h: New file.
* tilepro.h: New file.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and
eelf32tilepro.c.
(ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c.
(eelf32tilegx.c): New target.
(eelf32tilepro.c): Likewise.
(eelf64tilegx.c): Likewise.
* Makefile.in: Regenerate.
* configure.tgt: Handle tilegx-*-* and tilepro-*-*.
* emulparams/elf32tilegx.sh: New file.
* emulparams/elf64tilegx.sh: New file.
* emulparams/elf32tilepro.sh: New file.
* ld-elf/eh5.d: Don't run on tile*.
* ld-srec/srec.exp: xfail on tile*.
* ld-tilegx/external.s: New file.
* ld-tilegx/reloc.d: New file.
* ld-tilegx/reloc.s: New file.
* ld-tilegx/tilegx.exp: New file.
* ld-tilepro/external.s: New file.
* ld-tilepro/reloc.d: New file.
* ld-tilepro/reloc.s: New file.
* ld-tilepro/tilepro.exp: New file.
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tilegx-dis.c,
tilegx-opc.c, tilepro-dis.c, and tilepro-opc.c.
* Makefile.in: Regenerate.
* configure.in: Handle bfd_tilegx_arch and bfd_tilepro_arch.
* configure: Regenerate.
* disassemble.c (disassembler): Add ARCH_tilegx and ARCH_tilepro.
* po/POTFILES.in: Regenerate.
* tilegx-dis.c: New file.
* tilegx-opc.c: New file.
* tilepro-dis.c: New file.
* tilepro-opc.c: New file.
2011-06-13 15:18:54 +00:00
Alan Modra
80cc85a903
* ldlang.c (sort_def_symbol, lang_one_common): Don't handle
...
warning symbols here.
* emultempl/pe.em (pr_sym): Remove redundant test.
* emultempl/pep.em (pr_sym): Likewise.
2011-06-13 00:59:43 +00:00
Nick Clifton
894891db7f
* elflink.c (_bfd_elf_link_create_dynamic_sections): If the
...
backend does not provide a function for creating dynamic sections
then fail.
(bfd_elf_final_link): Issue a warning message if a dynamic section
has the SHT_NOTE type.
(bfd_elf_final_link): Do not look for dynamic strings in a section
that does not have the SHT_STRTAB type or the name .dynstr.
* elf32-arm.c (elf32_arm_finish_dynamic_sections): Fail if the got
section is not in the output binary.
* elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Likewise.
* ld-elf/elf.exp: Add test for linking a shared library with a
broken linker script that marks dynamic sections as being notes.
* ld-elf/note-3.s: New test source file.
* ld-elf/note-3.t: New test linker script.
* ld-elf/note-3.l: Expected output from the linker.
* lib/ld-lib.exp (run_ld_link_tests): Improve description.
2011-06-10 14:04:25 +00:00
Nick Clifton
ba85c43e2c
PR ld/12845
...
* elf.c (_bfd_elf_init_private_section_data): Add an assertion
that the output section has an allocated bfd_elf_section_data
structure.
* elfxx-mips.c (mips_elf_check_symbols): Do not create a stub for
symbols in sections that have been removed by garbage collection.
* emultempl/mipself.em (mips_add_stub_section): Do not add stubs
for sections that have been removed by garbage collection.
2011-06-09 10:36:20 +00:00
H.J. Lu
56d4d7f261
Build x32 DSO from x86-64 object file only for native.
...
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/x86-64.exp: Build x32 DSO from x86-64 object file
only for native.
2011-06-09 06:00:09 +00:00
H.J. Lu
adc7571d31
Allow building x32 DSO from x86-64 object file.
...
bfd/
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (elf_x86_64_check_relocs): Allow R_X86_64_64
relocations in SEC_DEBUGGING sections when building shared
libraries.
ld/testsuite/
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/simple.c: New.
* ld-x86-64/x86-64-x32.rd: Likewise.
* ld-x86-64/x86-64.exp: Check building x32 DSO from x86-64
object file.
2011-06-09 05:51:11 +00:00
H.J. Lu
2400775011
Check relocations in note sections for --gc-sections.
...
bfd/
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12851
* elflink.c (elf_gc_sweep): Don't check SHT_NOTE sections here.
(bfd_elf_gc_sections): Also check SHT_NOTE sections.
ld/testsuite/
2011-06-08 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12851
* ld-elf/pr12851.d: New.
* ld-elf/pr12851.s: Likewise.
2011-06-09 04:52:15 +00:00
Nick Clifton
ab3719da06
configure.tgt: Accept any V850 architecture.
2011-06-08 07:43:18 +00:00
H.J. Lu
83c5d36fc5
Add a testcase for warning on common symbol in archive.
...
2011-06-07 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/elf.exp: Build symbol3.a and symbol3w.a.
* ld-elf/symbol3.s: New.
* ld-elf/symbol3w.s: Likewise.
* ld-elf/warn3.d: Likewise.
2011-06-08 04:47:04 +00:00
Alan Modra
5b4c94ad8d
* ldlang.c (lang_one_common): Handle warning symbols.
2011-06-07 23:58:30 +00:00
Alan Modra
8a1241ef4b
Regenerate.
2011-06-06 14:51:42 +00:00
Nick Clifton
bc77a04af7
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32am33lin.c
...
Add rule to build eelf32am33lin.c
* Makefile.in: Regenerate.
2011-06-03 10:36:39 +00:00
Nathan Sidwell
26d97720ed
gas/
...
* config/tc-arm.c (parse_address_main): Handle -0 offsets.
(encode_arm_addr_mode_2): Set default sign of zero here ...
(encode_arm_addr_mode_3): ... and here.
(encode_arm_cp_address): ... and here.
(md_apply_fix): Use default sign of zero here.
gas/testsuite/
* gas/arm/inst.d: Adjust for signed zero offsets.
* gas/arm/ldst-offset0.d: New test.
* gas/arm/ldst-offset0.s: New test.
* gas/arm/offset-1.d: New test.
* gas/arm/offset-1.s: New test.
ld/testsuite/
Adjust tests for zero offset formatting.
* ld-arm/cortex-a8-fix-bcc-plt.d: Adjust.
* ld-arm/farcall-arm-arm-pic-veneer.d: Adjust.
* ld-arm/farcall-arm-thumb.d: Adjust.
* ld-arm/farcall-group-size2.d: Adjust.
* ld-arm/farcall-group.d: Adjust.
* ld-arm/farcall-mix.d: Adjust.
* ld-arm/farcall-mix2.d: Adjust.
* ld-arm/farcall-mixed-lib-v4t.d: Adjust.
* ld-arm/farcall-mixed-lib.d: Adjust.
* ld-arm/farcall-thumb-arm-blx-pic-veneer.d: Adjust.
* ld-arm/farcall-thumb-arm-pic-veneer.d: Adjust.
* ld-arm/farcall-thumb-thumb.d: Adjust.
* ld-arm/ifunc-10.dd: Adjust.
* ld-arm/ifunc-3.dd: Adjust.
* ld-arm/ifunc-4.dd: Adjust.
* ld-arm/ifunc-5.dd: Adjust.
* ld-arm/ifunc-6.dd: Adjust.
* ld-arm/ifunc-7.dd: Adjust.
* ld-arm/ifunc-8.dd: Adjust.
* ld-arm/jump-reloc-veneers-long.d: Adjust.
* ld-arm/tls-longplt-lib.d: Adjust.
* ld-arm/tls-thumb1.d: Adjust.
opcodes/
* arm-dis.c (print_insn_coprocessor): Explicitly print #-0
as address offset.
(print_arm_address): Likewise. Elide positive #0 appropriately.
(print_insn_arm): Likewise.
2011-06-02 15:32:10 +00:00
Nick Clifton
cc643b88f1
Fix spelling mistakes.
2011-06-02 13:43:24 +00:00
Paul Brook
63e1a0fcba
2011-05-31 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-arm.c (elf32_arm_final_link_relocate): Only do bl conversion
for known functions.
(elf32_arm_swap_symbol_in): Only set ST_BRANCH_TO_ARM for function
symbols.
include/elf/
* arm.h (arm_st_branch_type): Add ST_BRANCH_UNKNOWN.
ld/testsuite/
* ld-arm/cortex-a8-far.d: Adjust expected output.
* ld-arm/arm-call1.s: Give function symbol correct type.
* ld-arm/arm-call2.s: Ditto.
* ld-arm/farcall-group4.s: Ditto.
* ld-arm/arm-elf.exp (cortex-a8-far): Define far symbols with correct
type via assembly file.
* ld-arm/cortex-a8-far-3.s: New file.
* ld-arm/abs-call-1.s: Add Thumb tests
2011-05-31 14:07:58 +00:00
Paul Brook
6e7ce2cdd3
2011-05-31 Paul Brook <paul@codesourcery.com>
...
Nathan Sidwell <nathan@codesourcery.com>
gas/
* config/tc-arm.c (fix_new_arm): Create an absolute symbol for
pc-relative fixes to constants.
* config/tc-arm.h (TC_FORCE_RELOCATATION_ABS): Define.
ld/testsuite/
* ld-arm/abs-call-1.d: New.
* ld-arm/abs-call-1.s: New.
* ld-arm/arm-elf.exp: Add it.
2011-05-31 13:40:04 +00:00
Paul Brook
12352d3f85
2011-05-31 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-arm.c (arm_stub_is_thumb): Add
arm_stub_long_branch_v4t_thumb_tls_pic.
(elf32_arm_final_link_relocate): TLS stubs are always ARM.
Handle Thumb stubs.
ld/testsuite/
* ld-arm/tls-longplt.d: Update expected output.
* ld-arm/tls-thumb1.d: Ditto.
2011-05-31 13:37:27 +00:00
Alan Modra
04c932a298
PR 12763
...
missed from last commit
2011-05-27 12:47:12 +00:00
Nick Clifton
f20db198c0
* scripttempl/v850.sc (_heap_start): Provide.
2011-05-27 10:47:46 +00:00
H.J. Lu
6769d5017f
Handle R_X86_64_TPOFF64 in executable.
...
bfd/
2011-05-26 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12809
* elf64-x86-64.c (elf_x86_64_relocate_section): Handle
R_X86_64_TPOFF64 in executable.
ld/testsuite/
2011-05-26 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12809
* ld-x86-64/tlsbin.s: Add a test for LE with large model.
* ld-x86-64/tlsbin.dd: Updated.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsbindesc.dd: Likewise.
* ld-x86-64/tlsbindesc.rd: Likewise.
* ld-x86-64/tlsbindesc.sd: Likewise.
* ld-x86-64/tlsbindesc.td: Likewise.
2011-05-26 13:22:04 +00:00
Hans-Peter Nilsson
c4334bf97b
* ld-cris/tls-e-tpoffcomm1.d: Adjust for second PR12763 change,
...
setting TLS file offset.
2011-05-24 00:06:17 +00:00
Nick Clifton
45394486ba
* ld-elf/shared.exp: Revert previous delta. Do not build
...
libraries in a non-native environment.
2011-05-23 09:13:57 +00:00
Alan Modra
270396f296
* ldmisc.c (vfinfo): Add %H.
...
* ldmain.c (reloc_overflow): Use %H rather than %C.
(reloc_dangerous, unattached_reloc): Likewise.
2011-05-23 06:13:35 +00:00
Alan Modra
6de6a7fe35
PR 12763
...
bfd/
* elf.c (assign_file_positions_for_load_sections): Set sh_offset for
.tbss, and page align same for all SHT_NOBITS sections.
ld/
* ldlang.c (lang_output_section_find_by_flags): Match orphan .sdata2
like sections to existing .sdata2, and similarly for orphan TLS
sections.
* emultempl/elf32.em (place_orphan): Exclude .tbss from orphan_bss.
2011-05-23 05:41:01 +00:00
Alan Modra
3bd61671c3
PR 12763
...
* ld-elf/binutils.exp: Don't run tdata3 for hppa64.
2011-05-23 05:29:38 +00:00
Hans-Peter Nilsson
b71457c579
* ld-cris/tls-e-tpoffcomm1.d: Adjust for PR12763 change removing
...
empty program header.
2011-05-21 01:47:24 +00:00
Alan Modra
67e9eb74af
PR 12763
...
* ld-elf/tdata3.s: New test.
* ld-elf/tbss3.s: New test.
* ld-elf/binutils.exp: Consolidate tbss and tdata tests.
2011-05-20 15:33:29 +00:00
Bernd Schmidt
4a73203297
ld/testsuite/
...
* ld-tic6x/pcr-reloc.d: New test.
* ld-tic6x/pcr-reloc.s: New test.
gas/testsuite/
* gas/tic6x/pcr-relocs.d: New test.
* gas/tic6x/pcr-relocs.s: New test.
* gas/tic6x/pcr-relocs-undef.d: New test.
* gas/tic6x/pcr-relocs-undef.s: New test.
* gas/tic6x/reloc-bad-2.s: Update for pcr_offset.
* gas/tic6x/reloc-bad-2.l: Update for pcr_offset.
bfd/
* elf32-tic6x.c (elf32_tic6x_howto_table): Add entries for
R_C6000_PCR_H16 and R_C6000_PCR_L16.
(elf32_tic6x_relocate_section): Handle them.
gas/
* config/tc-tic6x.c (tic6x_operators): Add "pcr_offset".
(tic6x_parse_name): Handle it.
(tic6x_fix_new_exp): Handle O_pcr_offset.
(tic6x_fix_adjustable): Return 0 for the new relocs.
(md_apply_fix): Handle them.
(tc_gen_reloc): Likewise.
* config/tc-tic6x.h (tic6x_fix_info): Add a fix_subsy member.
2011-05-20 10:10:00 +00:00
Nick Clifton
dd98f8d276
PR ld/12761
...
* elflink.c (elf_link_add_object_symbols): Process .gnu.warning
sections when building shared libraries.
* lib/ld-lib.exp (run_cc_link_tests): Add an optional 8th
parameter - an expected warning message from the linker.
* ld-elf/shared.exp (build_tests): Expect a warning message when
building the libbarw.so library.
* ld-elf/shared.exp: Run library building tests even when not
building a native toolchain.
2011-05-18 14:04:32 +00:00
Nick Clifton
84bff83f79
PR ld/12759
...
* emultempl/rxelf.em (ignore_lma): New variable.
(rx_elf_create_output_section_statements): Pass the setiing of
ignore_lma to bfd_elf32_rx_set_target_flags.
(OPTION_IGNORE_LMA): Define.
(OPTION_NO_IGNORE_LMA): Define.
(PARSE_AND_LIST_LONGOPTS): Add ignore lma.
(PARSE_AND_LIST_OPTIONS): Add ignore lma.
(PARSE_AND_LIST_ARGS_CASES): Add ignore lma.
* elf32-rx.c (ignore_lma): New variable.
(bfd_elf32_rx_set_target_flags): Add ignore_lma parameter.
(rx_modify_program_headers): Only copy the LMA into the VMA if
ignore_lma is true.
2011-05-17 16:02:31 +00:00
Alan Modra
16d96b5b8f
PR ld/12760
...
include/
* bfdlink.h (struct bfd_link_callbacks <notice>): Add "flags" and
"string" param.
bfd/
* coff-aux.c (coff_m68k_aux_link_add_one_symbol): Adjust "notice" call.
* elflink.c (elf_link_add_object_symbols): Likewise.
* linker.c (_bfd_generic_link_add_one_symbol): Likewise.
ld/
* ldmain.c (notice): Add "flags" and "string" param.
* plugin.c (plugin_notice): Likewise. Handle indirect, warning
and constructor syms.
2011-05-17 13:02:18 +00:00
H.J. Lu
e3b66208d1
Replace --private with --private-headers for objdump.
...
2011-05-16 H.J. Lu <hongjiu.lu@intel.com>
* ld-scripts/phdrs.exp: Replace --private with
--private-headers for objdump.
* ld-scripts/phdrs2.exp: Likewise.
2011-05-16 13:47:28 +00:00
Nathan Sidwell
f37a7048a8
* ldlang.c (print_assignment): Use the symbol's section if we
...
use its value.
* ldexp.c (exp_fold_tree_1): Skip self-assignment. Expand
comment on copying symbol type.
2011-05-16 11:34:48 +00:00
Alan Modra
cd6eee13df
PR ld/12760
...
* plugin.c (plugin_notice): Set u.undef.abfd for symbols made
undefweak.
2011-05-16 00:58:11 +00:00
Alan Modra
83e7bd17d6
* ldlang.c (lang_leave_output_section_statement): Don't copy
...
previous lma_region if given address.
2011-05-16 00:22:39 +00:00
Richard Sandiford
77c56f443d
bfd/
...
* elfxx-mips.c (_bfd_mips_elf_check_relocs): Record both local and
global GOT entries for GOT_PAGE relocations against global symbols.
ld/testsuite/
* lib/ld-lib.exp (run_ld_link_tests): Simplify pass/fail logic.
Fail if the link command fails and if no test rules are defined.
* ld-mips-elf/reloc-6a.s, ld-mips-elf/reloc-6b.s: New tests.
* ld-mips-elf/mips-elf.exp: Run them.
2011-05-15 18:52:01 +00:00
Bernd Schmidt
2a6163793f
ld/
...
(eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
* Makefile.am (ALL_EMULATIONS): Add these files.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
* Makefile.in: Regenerated.
* emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
vectors.
* emulparams/elf32_tic6x_elf_be.sh: New file.
* emulparams/elf32_tic6x_elf_le.sh: New file.
* emulparams/elf32_tic6x_linux_be.sh: New file.
* emulparams/elf32_tic6x_linux_le.sh: New file.
* configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
ld/testsuite/
* ld-tic6x/dsbt.ld (OUTPUT_FORMAT): Add.
* ld-tic6x/tic6x.exp: Add OSABI tests.
bfd/
* config.bfd (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
* elf32-tic6x.c (elf32_tic6x_set_osabi): New static function.
(elf32_tic6x_check_relocs): Create dynamic sections if -shared.
(elf_backend_relocs_compatible, elf_backend_post_process_headers):
Define.
(elf32_bed, TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM,
TARGET_BIG_NAME, ELF_OSABI): Redefine twice, and include
"elf32-target.h" two more times.
* configure.in: Handle bfd_elf32_tic6x_linux_be_vec,
bfd_elf32_tic6x_linux_le_vec, bfd_elf32_tic6x_elf_be_vec and
bfd_elf32_tic6x_elf_le_vec.
* configure: Regenerate.
2011-05-13 18:15:33 +00:00
Jan Beulich
3ac5406bdb
bfd/
...
2011-05-13 Jan Beulich <jbeulich@novell.com>
* config.bfd: Add targets x86_64-*-pe and x86_64-*-pep.
ld/
2011-05-13 Jan Beulich <jbeulich@novell.com>
* configure.tgt: Add targets x86_64-*-pe and x86_64-*-pep.
2011-05-13 06:43:13 +00:00
Alan Modra
c472114968
missed changelog from last commit
2011-05-13 04:39:08 +00:00
Alan Modra
c9eaa05f39
* ld-elf/flags1.d: Don't xfail tic6x.
...
* ld-scripts/weak.exp: Correct comments. Don't xfail sh-pe. Remove
redundant xfail.
* ld-selective/sel-dump.exp: Don't xfail alpha.
* ld-selective/selective.exp: Run for alpha.
* ld-undefined/weak-undef.exp: Don't xfail hppa64.
2011-05-13 04:19:18 +00:00
Bernd Schmidt
de1491f042
* config/default.exp (ld_assemble): Pass flags parameter to
...
default_ld_assemble.
(ld_assemble_flags): New function.
* ld-elf/frame.exp: Pass -mpic and -mpid flags to the assembler on
tic6x.
* ld-elf/exclude.exp: Likewise.
* lib/ld-lib.exp (default_ld_assemble): Take extra argument in_flags
and pass it to the assembler.
2011-05-12 10:00:06 +00:00
Richard Sandiford
250826bd54
ld/testsuite/
...
* ld-mips-elf/mips-elf.exp: Add missing $has_newabi tests.
2011-05-11 12:50:58 +00:00
H.J. Lu
31507b90da
Remoe pr12730.cc/pr12730.out.
...
2011-05-09 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/elf.exp (array_tests): Remove "pr12730".
(array_tests_pie): Remove "PIE pr12730".
(array_tests_static): Remove "static pr12730".
* ld-elf/pr12730.cc: Removed.
* ld-elf/pr12730.out: Likewise.
2011-05-09 14:36:14 +00:00
Paul Brook
fbd9ad907d
2011-05-09 Paul Brook <paul@codesourcery.com>
...
bfd/
* bfd-in.h (elf32_tic6x_fix_exidx_coverage): Add prototype.
* bfd-in2.h: Regenerate.
* elf32-tic6x.c: Include limits.h.
(tic6x_unwind_edit_type, tic6x_unwind_table_edit,
_tic6x_elf_section_data): New.
(elf32_tic6x_section_data): Define.
(elf32_tic6x_new_section_hook): Allocate target specific data.
(elf32_tic6x_add_unwind_table_edit): New function.
(get_tic6x_elf_section_data, elf32_tic6x_adjust_exidx_size,
elf32_tic6x_insert_cantunwind_after, elf32_tic6x_add_low31,
elf32_tic6x_copy_exidx_entry): New functions.
(elf_backend_write_section): Define.
ld/
* emultempl/tic6xdsbt.em (merge_exidx_entries): New.
(compare_output_sec_vma): New function.
(gld${EMULATION_NAME}_after_allocation): New function.
(OPTION_NO_MERGE_EXIDX_ENTRIES): Define.
(PARSE_AND_LIST_OPTIONS): Add --no-merge-exidx-entries.
(PARSE_AND_LIST_ARGS_CASES): Add OPTION_NO_MERGE_EXIDX_ENTRIES.
(LDEMUL_AFTER_ALLOCATION): Set.
* ld.texinfo: Document c6x --no-merge-exidx-entries.
ld/testsuite/
* ld-tic6x/discard-unwind.ld: New.
* ld-tic6x/unwind.ld: New.
* ld-tic6x/unwind-1.d: New test.
* ld-tic6x/unwind-1.s: New test.
* ld-tic6x/unwind-2.d: New test.
* ld-tic6x/unwind-2.s: New test.
* ld-tic6x/unwind-3.d: New test.
* ld-tic6x/unwind-3.s: New test.
* ld-tic6x/unwind-4.d: New test.
* ld-tic6x/unwind-4.s: New test.
* ld-tic6x/unwind-5.d: New test.
* ld-tic6x/unwind-5.s: New test.
* ld-tic6x/unwind-6.d: New test.
2011-05-09 13:23:27 +00:00
Dave Korn
730035f7af
bfd/ChangeLog:
...
PR ld/12365
* cofflink.c (bfd_coff_link_input_bfd): Check for and warn about
references to symbols defined in discarded sections.
ld/ChangeLog:
PR ld/12365
* scripttempl/pe.sc (__rt_psrelocs_start): New symbol definition.
(__rt_psrelocs_end): Likewise.
(__rt_psrelocs_size): Likewise difference between the above.
(__RUNTIME_PSEUDO_RELOC_LIST_END__): Move outside .rdata section
immediately after end of pseudo-reloc data.
(___RUNTIME_PSEUDO_RELOC_LIST_END___): Likewise.
(__RUNTIME_PSEUDO_RELOC_LIST__): Move outside .rdata section and
calculate backward from list end.
(___RUNTIME_PSEUDO_RELOC_LIST___): Likewise.
* scripttempl/pep.sc: Likewise.
ld/testsuite/ChangeLog:
PR ld/12365
* ld-plugin/plugin-7.d: Allow underscore in error message.
* ld-plugin/plugin-8.d: Likewise.
2011-05-07 14:29:10 +00:00
H.J. Lu
310fd250b9
Reverse copy .ctors/.dtors sections if needed.
...
bfd/
2011-05-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12730
* elf.c (_bfd_elf_section_offset): Check SEC_ELF_REVERSE_COPY.
* elflink.c (elf_link_input_bfd): Reverse copy .ctors/.dtors
sections if needed.
* section.c (SEC_ELF_REVERSE_COPY): New.
* bfd-in2.h: Regenerated.
ld/testsuite/
2011-05-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12730
* ld-elf/elf.exp (array_tests): Add "pr12730".
(array_tests_pie): New.
(array_tests_static): Add -static for "static init array mixed".
Add "static pr12730". Run array_tests_pie for Linux.
* ld-elf/init-mixed.c (ctor1007): Renamed to ...
(ctor1007a): This.
(ctor1007b): New.
(ctors1007): Remove ctor1007. Add ctor1007b and ctor1007a.
(dtor1007): Renamed to ...
(dtor1007a): This.
(dtor1007b): New.
(dtors1007): Remove dtor1007. Add dtor1007b and dtor1007a.
(ctor65535): Renamed to ...
(ctor65535a): This.
(ctor65535b): New.
(ctors65535): Remove ctor65535. Add ctor65535b and ctor65535a.
(dtor65535): Renamed to ...
(dtor65535a): This.
(dtor65535b): New.
(dtors65535): Remove dtor65535. Add dtor65535b and dtor65535a.
* ld-elf/pr12730.cc: New.
* ld-elf/pr12730.out: Likewise.
2011-05-07 14:12:59 +00:00
Tristan Gingold
55221e4b5a
2011-05-06 Tristan Gingold <gingold@adacore.com>
...
* scripttempl/alphavms.sc (CODE): Add *$CODE*.
2011-05-06 10:44:31 +00:00
Richard Sandiford
7d24e6a65a
bfd/
...
* elf32-arm.c (cortex_a8_erratum_scan): If the stub is a Thumb
branch to a PLT entry, redirect it to the PLT's Thumb entry point.
ld/testsuite/
* ld-arm/cortex-a8-fix-b-plt.s, ld-arm/cortex-a8-fix-b-plt.d,
ld-arm/cortex-a8-fix-bcc-plt.s, ld-arm/cortex-a8-fix-bcc-plt.d,
ld-arm/cortex-a8-fix-bl-plt.s, ld-arm/cortex-a8-fix-bl-plt.d,
ld-arm/cortex-a8-fix-blx-plt.s, ld-arm/cortex-a8-fix-blx-plt.d,
ld-arm/cortex-a8-fix-plt.ld: New tests.
* ld-arm/arm-elf.exp: Run them.
2011-05-06 10:21:32 +00:00
Bernd Schmidt
c6a8f6e0ed
bfd/
...
* elf32-tic6x.c (elf32_tic6x_final_link): New function.
(elf32_tic6x_merge_attributes): Do not warn for PID or PIC
mismatch. Choose the lower of the two values.
(bfd_elf32_bfd_final_link): New macro.
ld/testsuite/
* ld-tic6x/shared-nopic.d: New test.
* ld-tic6x/shared-nopid.d: New test.
* ld-tic6x/attr-pid-21.d: Don't expect a warning; check readelf
output instead.
* ld-tic6x/attr-pid-12.d: Likewise.
* ld-tic6x/attr-pic-01.d: Likewise.
* ld-tic6x/attr-pic-10.d: Likewise.
* ld-tic6x/attr-pid-01.d: Likewise.
* ld-tic6x/attr-pid-10.d: Likewise.
* ld-tic6x/attr-pid-02.d: Likewise.
* ld-tic6x/attr-pid-20.d: Likewise.
* ld-tic6x/got-reloc-inrange.d: Pass -mpic and -mpid options to gas.
2011-05-05 16:05:19 +00:00
Tristan Gingold
45cfb56cf4
2011-05-04 Tristan Gingold <gingold@adacore.com>
...
* emultempl/generic.em (ld_${EMULATION_NAME}_emulation): Add
LDEMUL_ADD_OPTIONS and LDEMUL_HANDLE_OPTION.
* emultempl/vms.em (OPTION_IDENTIFICATION): New macro.
(gld${EMULATION_NAME}_add_options): New function.
(gld${EMULATION_NAME}_list_options): Ditto.
(gld${EMULATION_NAME}_handle_option): Ditto.
(LDEMUL_ADD_OPTIONS, LDEMUL_HANDLE_OPTION)
(LDEMUL_LIST_OPTIONS): Define.
2011-05-04 08:31:04 +00:00
Alan Modra
2f65ac726a
PR ld/12726
...
* ldexp.h (lang_phase_type): Add lang_assigning_phase_enum.
* ldexp.c (exp_fold_tree_1): Correct assign to dot comment. Don't
assign to dot when lang_assigning_phase_enum.
* ldlang.h (lang_do_assignments): Update prototype.
* ldlang.c (lang_do_assignments): Add phase parameter. Update all
callers.
* pe-dll.c (pe_dll_fill_sections, pe_exe_fill_sections): Update
lang_do_assignments calls.
2011-05-03 14:56:14 +00:00
Paul Brook
2fbb87f627
2011-05-03 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-tic6x.c (elf32_tic6x_howto_table,
elf32_tic6x_howto_table_rel, (elf32_tic6x_gc_sweep_hook,
elf32_tic6x_relocate_section, elf32_tic6x_check_relocs):
Add R_C6000_EHTYPE.
gas/
* config/tc-tic6x.c (s_ehtype): New function.
(md_pseudo_table): Add "ehtype".
(tic6x_fix_adjustable, md_apply_fix): BFD_RELOC_C6000_EHTYPE.
* doc/c-tic6x.texi: Document .ehtype directive.
ld/testsuite/
* ld-tic6x/ehtype-reloc-1-rel.d: New test.
* ld-tic6x/ehtype-reloc-1.d: New test.
* ld-tic6x/ehtype-reloc-1.s: New test.
2011-05-03 11:17:22 +00:00
H.J. Lu
2abca860af
Add testcases for PR ld/12718.
...
2011-05-01 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12718
* ld-i386/i386.exp: Run pr12718.
* ld-x86-64/x86-64.exp: Likewise.
* ld-i386/pr12718.d: New.
* ld-i386/pr12718.s: Likewise.
* ld-x86-64/pr12718.d: Likewise.
* ld-x86-64/pr12718.s: Likewise.
2011-05-01 13:38:22 +00:00
Alan Modra
e0605dbe1c
PR ld/12614
...
* emultempl/pe.em (_after_open): Correctly check whether symbol is
in undef list.
2011-04-28 15:29:42 +00:00
Nick Clifton
72b016b4ac
* dw2gencfi.c (dwcfi_seg_list): New struct.
...
(dwcfi_hash): New static hash variable.
(get_debugseg_name): New.
(alloc_debugseg_item): New.
(make_debug_seg): New.
(dwcfi_hash_insert): New.
(dwcfi_hash_find): New.
(dwcfi_hash_find_or_make): New.
(cfi_insn_data): New member cur_seg.
(cie_entry): Likewise.
(fde_entry): New cseg and handled members.
(alloc_fde_entry): Initialize cseg member.
(alloc_cfi_insn_data): Initialize cur_seg member.
(dot_cfi_sections): Compare for beginning of
section names via strncmp.
(get_cfi_seg): New.
(cfi_finish): Treat link-once sections.
(is_now_linkonce_segment): New local helper.
(output_cie): Ignore cie entries not member of current
segment.
(output_fde): Likewise.
(select_cie_for_fde): Likewise.
(cfi_change_reg_numbers): Add new argument for current segment
and ignore insn elements, if not part of current segment.
* ehopt.c (get_cie_info): Use strncmp for
section name matching.
(heck_eh_frame): Likewise.
* coffcode.h (sec_to_styp_flags): Allow linkonce for
debugging sections.
* scripttempl/pe.sc: Handle .eh_frame($|.)* sections.
* scripttempl/pep.sc: Likewise.
* ld-pe/pe.exp: Add cfi/cfi32 tests.
* ld-pe/cfi.d: New.
* ld-pe/cfi32.d: New.
* ld-pe/cfia.s: New.
* ld-pe/cfib.s: New.
2011-04-26 15:28:08 +00:00
Alan Modra
35ed3f940b
PR ld/12365
...
PR ld/12696
include/
* bfdlink.h (ENUM_BITFIELD): Define.
(struct bfd_link_hash_entry): Make "type" a bitfield. Add "non_ir_ref".
(struct bfd_link_callbacks <notice>): Pass bfd_link_hash_entry pointer
rather than "name".
bfd/
* coff-aux.c (coff_m68k_aux_link_add_one_symbol): Update "notice" call.
* linker.c (_bfd_link_hash_newfunc): Clear bitfields.
(_bfd_generic_link_add_one_symbol): Update "notice" call.
* elflink.c (_bfd_elf_merge_symbol): Don't skip weak redefs when
it is a redef of an IR symbol in a real BFD.
ld/
* ldmain.c (notice): Delete "name" param, add "h".
* plugin.c (plugin_notice): Likewise. Set non_ir_ref. Handle
redefinitions of IR symbols in real BFDs.
(plugin_multiple_definition, plugin_multiple_common): Delete.
(non_ironly_hash, init_non_ironly_hash): Delete.
(is_visible_from_outside): Traverse entry_symbol chain.
(get_symbols): Use non_ir_ref flag rather than hash lookup.
2011-04-24 10:02:14 +00:00
H.J. Lu
aa71524235
Skip local IFUNC symbols when checking dynamic relocs in read-only sections.
...
bfd/
2011-04-21 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12694
* elf32-i386.c (elf_i386_readonly_dynrelocs): Skip local IFUNC
symbols.
* elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise.
ld/testsuite/
2011-04-21 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12694
* ld-ifunc/ifunc-14-i386.d: New.
* ld-ifunc/ifunc-14-x86-64.d: Likewise.
* ld-ifunc/ifunc-14a.s: Likewise.
* ld-ifunc/ifunc-14b.s: Likewise.
2011-04-21 22:25:39 +00:00
Tristan Gingold
9165b2bff2
2011-04-21 Tristan Gingold <gingold@adacore.com>
...
* scripttempl/alphavms.sc: Add dwarf2 embedding marks.
2011-04-21 12:22:25 +00:00
Tristan Gingold
ced323bd49
2011-04-20 Tristan Gingold <gingold@adacore.com>
...
* emultempl/aix.em (_add_options): Ignore -bbigtoc switch.
2011-04-20 13:43:24 +00:00
Alan Modra
8ad17b3a2c
bfd/
...
* hash.c (bfd_default_hash_table_size): Make it an unsigned long.
(bfd_hash_table_init_n): Overflow checking.
(bfd_hash_set_default_size): Return current size. Take unsigned long
arg. Add 65537 to hash_size primes.
* bfd-in.h (bfd_hash_set_default_size): Update prototype.
* bfd-in2.h: Regenerate.
gas/
* hash.c (set_gas_hash_table_size): Use bfd_hash_set_default_size.
(hash_new_sized): New function, split out from..
(hash_new): ..here.
ld/
* ld.h (ld_config_type <hash_table_size>): Make it an unsigned long.
2011-04-20 12:52:16 +00:00
Alan Modra
02d002477b
PR ld/12365
...
bfd/
* elfcode.h (elf_slurp_symbol_table): Put common plugin IR symbols
in their own common section.
* elflink.c (elf_link_add_object_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Don't lose flags
if common section is pre-existing.
(_bfd_generic_link_add_one_symbol): Likewise.
ld/
* ldfile.c (ldfile_try_open_bfd): Move code creating and switching
to plugin IR BFD..
* ldmain.c (add_archive_element): ..and similar code here..
* plugin.c (plugin_maybe_claim): ..to here. New function.
(plugin_call_claim_file): Make static.
(asymbol_from_plugin_symbol): Set ELF st_shndx for common syms.
(plugin_multiple_common): New function.
(plugin_call_all_symbols_read): Hook in plugin_multiple_common.
* plugin.h (plugin_call_claim_file): Don't declare.
(plugin_maybe_claim): Declare.
2011-04-20 00:22:08 +00:00
Alan Modra
24f58f47de
PR ld/12365
...
include/
* bfdlink.h (struct bfd_link_callbacks): Modify multiple_definition
and multiple_common parameters to pass in a bfd_link_hash_entry
pointer rather than name,bfd etc. found in the hash entry.
bfd/
* elflink.c (_bfd_elf_merge_symbol): Update multiple_common calls.
* linker.c (_bfd_generic_link_add_one_symbol): Likewise. Call
multiple_definition regardless of allow_multiple_definition.
* simple.c (simple_dummy_multiple_definition): Update.
* xcofflink.c (xcoff_link_add_symbols): Update multiple_definition
calls.
ld/
* ldmain.c (multiple_definition): Take a bfd_link_hash_entry
pointer arg rather than "name", "obfd", "osec", "oval". Add code
removed from linker.c. Hack around xcofflink.c oddity in
passing NULL nbfd.
(multiple_common): Similarly.
* plugin.c (orig_allow_multiple_defs): Delete.
(plugin_call_all_symbols_read): Don't twiddle allow_multiple_definition.
(plugin_multiple_definition): Update.
2011-04-20 00:11:33 +00:00
H.J. Lu
948b3cc42f
Remove the unused ld-plugin/plugin-ignore.d.
...
2011-04-19 H.J. Lu <hongjiu.lu@intel.com>
* ld-plugin/plugin-ignore.d: Removed.
2011-04-19 17:06:21 +00:00
H.J. Lu
86942c28f6
Update expected LTO linker errors for GCC 4.6.
...
2011-04-18 H.J. Lu <hongjiu.lu@intel.com>
* ld-plugin/plugin-7.d: Update expected LTO linker errors for
GCC 4.6.
* ld-plugin/plugin-8.d: Likewise.
2011-04-18 21:45:37 +00:00
Kai Tietz
dc204beb8b
2011-04-18 Kai Tietz <ktietz@redhat.com>
...
* deffilep.y (def_aligncomm): Avoid duplets.
2011-04-18 15:40:27 +00:00
Kai Tietz
bdca0ea17b
2011-04-18 Kai Tietz <ktietz@redhat.com>
...
* deffilep.y (def_pool_str): New type.
(pool_strs): Local static.
(def_pool_alloc): Local function.
(def_pool_strdup): Likewise.
(def_pool_free): Likewise.
(opt_name): Replace xmalloc/xstrdup by
def_pool_alloc/def_pool_strdup.
(dot_name): Likewise.
(anylang_id): Likewise.
(def_lex): Likewise.
(def_file_parse): Call def_pool_free on
exit and cleanup directives elements.
(def_file_add_directive): Call def_pool_free.
2011-04-18 15:38:03 +00:00
Paul Brook
6970a02804
2011-04-18 Paul Brook <paul@codesourcery.com>
...
ld/
* emulparams/elf32_tic6x_le.sh: Define OTHER_READONLY_SECTIONS
for unwinding tables.
2011-04-18 13:41:40 +00:00
Alan Modra
901f1d179d
PR ld/12365
...
PR ld/12672
missing changelog entries
2011-04-17 23:18:24 +00:00
Alan Modra
9e2278f567
PR ld/12365
...
PR ld/12672
bfd/
* bfd.c (BFD_PLUGIN): Define.
(BFD_FLAGS_SAVED, BFD_FLAGS_FOR_BFD_USE_MASK): Add BFD_PLUGIN.
* bfd-in2.h: Regenerate.
* elflink.c (elf_link_output_extsym): Strip undefined plugin syms.
* opncls.c (bfd_make_readable): Don't lose original bfd flags.
ld/
* ldfile.c (ldfile_try_open_bfd): Don't attempt any plugin action
when no_more_claiming.
* ldmain.c (add_archive_element): Likewise.
(multiple_definition): Remove plugin_multiple_definition call.
(notice): Remove plugin_notice call.
* ldlang.c (lang_list_insert_after, void lang_list_remove_tail): Move.
Delete prototype.
(plugin_insert): New static var.
(open_input_bfds): Only rescan libs after plugin insert point.
(lang_gc_sections): Omit plugin claimed files.
(lang_process): Set plugin_insert. Only rescan when plugin adds
objects.
* plugin.h (no_more_claiming): Declare.
(plugin_notice, plugin_multiple_definition): Don't declare.
* plugin.c: Formatting.
(orig_notice_all, orig_allow_multiple_defs, orig_callbacks,
plugin_callbacks): New static vars.
(no_more_claiming): Make global.
(plugin_cached_allow_multiple_defs): Delete.
(plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy .text section,
use newer bfd_make_section variant. Make COMMON section too.
Error handling. Correct setting of gp size.
(asymbol_from_plugin_symbol): Properly cast last arg of concat.
(message): Likewise for ACONCAT.
(asymbol_from_plugin_symbol): Use our COMMON section.
(get_symbols): When report_plugin_symbols, show visibility too.
(init_non_ironly_hash): Move. Don't test non_ironly_hash.
(plugin_load_plugins): Save state of linker callbacks, set up to
call plugin_notice instead. Call init_non_ironly_hash here.
(plugin_call_all_symbols_read): Set plugin_multiple_definition in
plugin callbacks.
(plugin_notice): Rewrite.
(plugin_multiple_definition): Make static, call original callback.
ld/testsuite/
* ld-plugin/plugin-7.d: Adjust for plugin changes.
* ld-plugin/plugin-8.d: Likewise.
* ld-plugin/plugin.exp: Pass --verbose=2 for visibility test, and
compare ld output to..
* ld-plugin/plugin-12.d: New.
2011-04-17 23:15:13 +00:00
Maxim Kuvyrkov
9c68f58e48
* ld-m68k/tls-gd-ie-1.d: Stabilize test.
...
* ld-m68k/tls-gd-3.[sd]: New test.
2011-04-15 09:58:23 +00:00
Alan Modra
486329aaad
PR ld/12672
...
* ldlang.c (enum open_bfd_mode): New.
(open_input_bfds): Replace "force" param with "mode". Reload
archives for rescan. Update all callers.
(lang_process): Make another open_input_bfds pass for plugins.
2011-04-15 03:47:30 +00:00
Kai Tietz
db17156eaa
2011-04-13 Kai Tietz <ktietz@redhat.com>
...
PR binutils/12658
* deffile.h (def_file_add_export): Add is_dup argument.
(def_file_add_import): Likewise.
* deffilep.y (are_names_equal): New helper.
(cmp_export_elem): New helper.
(find_export_in_list): Add search routine for exports.
(def_file_add_export): Check for duplicates.
(cmp_import_elem): New helper.
(find_import_in_list): Add search routine for imports.
(def_file_add_import): Check for duplicates.
(def_exports): Handle duplicates.
(def_imports): Likewise.
* pe-dll.c (process_def_file_and_drectve): Likewise.
(pe_implied_import_dll): Likewise.
2011-04-13 12:53:36 +00:00
Richard Henderson
6452a567da
* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Do not
...
exclude empty .got sections.
2011-04-12 23:23:02 +00:00
Nick Clifton
ed0d9c711c
* scripttempl/elf.sc (.exception_ranges): Add new section.
2011-04-11 15:38:12 +00:00
Nick Clifton
f64b2e8d60
PR 10549
...
* elf-bfd.h (has_ifunc_symbols): Renamed to has_gnu_symbols.
(has_gnu_symbols): Renamed from has_ifunc_symbols.
* elf.c (_bfd_elf_set_osabi): Use new has_gnu_symbols name.
* elf32-arm.c (elf32_arm_add_symbol_hook): Set has_gnu_symbols
also if STB_GNU_UNIQUE symbol binding was seen.
* elf32-i386.c (elf_i386_add_symbol_hook): Likewise.
* elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
* elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
* elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
* elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
* elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise.
* ld-unique: New directory.
* ld-unique/unique.exp: New file: Run the UNIQUE tests.
* ld-unique/unique.s: New test file.
* ld-unique/unique_empty.s: Likewise.
* ld-unique/unique_shared.s: Likewise.
2011-04-11 08:13:22 +00:00
Alan Modra
721da2d9f9
* ld-elf/eh-frame-hdr.d: xfail avr.
2011-04-11 05:12:08 +00:00
H.J. Lu
959b0961c9
Properly handle R_386_TLS_LDO_32 for PIE.
...
bfd/
2011-04-08 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12654
* elf32-i386.c (elf_i386_relocate_section): Check !executable
instead of shared for R_386_TLS_LDO_32.
ld/testsuite/
2011-04-08 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12654
* ld-i386/i386.exp: Run tlspie2.
* ld-i386/tlspie2.d: New.
* ld-i386/tlspie2.s: Likewise.
2011-04-08 16:14:49 +00:00
Nick Clifton
0e9dfb4626
PR ld/12643
...
* configure.tgt: Add support for arm-*-gnueabihf targets.
2011-04-08 16:05:12 +00:00
Eric B. Weddington
80518809de
2011-04-07 Eric B. Weddington <eric.weddington@atmel.com>
...
* Makefile.in: Regenerate. Remove stray eavrtiny10 rules.
2011-04-07 13:39:00 +00:00
Joseph Myers
91db4c57cf
* configure.tgt: Remove stray ;;.
2011-04-07 01:19:22 +00:00
Joseph Myers
8c5fc80011
bfd:
...
* config.bfd (thumb-*-oabi): Don't handle in list of obsolete
targets.
(strongarm*, thumb*, xscale*): Remove architectures.
(strongarm-*-kaos*, thumb-*-coff, thumb-*-elf, thumb-epoc-pe*,
thumb-*-pe*, strongarm-*-elf, strongarm-*-coff, xscale-*-elf,
xscale-*-coff): Remove targets.
binutils:
* configure.in (thumb-*-pe*): Remove.
* configure: Regenerate.
binutils/testsuite:
* binutils-all/objcopy.exp (*arm*-*-coff): Change to arm*-*-coff.
(xscale-*-coff, thumb*-*-coff, thumb*-*-pe): Don't handle.
gas:
* configure.tgt (strongarm*be, strongarm*b, strongarm*,
xscale*be|xscale*b, xscale*): Remove architectures.
(thumb-*-coff, thumb-*-rtems*, thumb-*-elf, thumb-epoc-pe,
thumb-*-pe, xscale-*-coff, xscale-*-elf): Remove targets.
gas/testsuite:
* gas/all/gas.exp (*arm*-*-coff): Change to arm*-*-coff.
(thumb*-*-coff, thumb*-*-pe*): Don;t handle.
* gas/arm/arm.exp (*arm*-*-*): Change to arm*-*-*.
(*xscale*-*-*): Don't handle.
* gas/cfi/cfi.exp (xscale*-*): Don't handle.
* gas/elf/elf.exp (*arm*-*-*): Change to arm*-*-*.
(xscale*-*-*): Don't handle.
ld:
* configure.tgt (thumb-*-linux-* | thumb-*-uclinux*,
strongarm-*-coff, strongarm-*-elf, strongarm-*-kaos*,
thumb-*-coff, thumb-*-elf, thumb-epoc-pe, thumb-*-pe,
xscale-*-coff, xscale-*-elf): Remove targets.
ld/testsuite:
* ld-selective/selective.exp (xscale-*-*): Don't handle.
* ld-srec/srec.exp (strongarm*-*-*, xscale*-*-*, thumb-*-*): Don't
handle.
(*arm*-*-*): Change to arm*-*-*.
(strongarm*-*-coff, xscale*-*-coff, thumb-*-coff*, thumb-*-pe*,
thumb-*-elf*, strongarm*-*-*, thumb-*-*): Remove xfails.
* ld-undefined/undefined.exp (thumb*-*-pe*, thumb*-*-pe*): Remove
commented-out xfails.
(thumb-elf): Remove reference in comment.
* lib/ld-lib.exp (strongarm*-*-*, xscale*-*-*, thumb-*-*): Don't
handle.
2011-04-06 17:09:56 +00:00
H.J. Lu
a3293649cd
Add a testcase for PR ld/12627.
...
2011-04-04 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12627
* ld-i386/i386.exp: Run pr12627.
* ld-i386/pr12627.d: New.
* ld-i386/pr12627.s: Likewise.
* ld-i386/pr12627.t: Likewise.
2011-04-04 16:36:29 +00:00
H.J. Lu
d02c4aae3d
Fix elf_l1om linker scripts.
...
2011-03-31 H.J. Lu <hongjiu.lu@intel.com>
* configure.tgt: Add elf_l1om to targ_extra_libpath for
x86_64-*-linux-*.
* emulparams/elf_l1om.sh: Remove duplicates.
2011-03-31 22:23:09 +00:00
Bernd Schmidt
ac14530735
include/elf/
...
* tic6x.h (R_C6000_JUMP_SPLOT, R_C6000_EHTYPE,
R_C6000_PCR_H16, R_C6000_PCR_L16): New relocs.
(SHN_TIC6X_SCOMMON): Define.
bfd/
* elf32-tic6x.h (struct elf32_tic6x_params): New.
(elf32_tic6x_setup): Declare.
* elf32-tic6x.c: Include <limits.h>.
(ELF_DYNAMIC_LINKER, DEFAULT_STACK_SIZE, PLT_ENTRY_SIZE): Define.
(struct elf32_tic6x_link_hash_table, struct elf32_link_hash_entry):
New structures.
(elf32_tic6x_link_hash_table, is_tic6x_elf): New macros.
(tic6x_elf_scom_section, tic6x_elf_scom_symbol,
tic6x_elf_scom_symbol_ptr): New static variables.
(elf32_tic6x_howto_table, elf32_tic6x_howto_table_rel,
elf32_tic6x_reloc_map): Add R_C6000_JUMP_SLOT, R_C6000_EHTYPE,
R_C6000_PCR_H16 and R_C6000_PCR_L16.
(elf32_tic6x_link_hash_newfunc, elf32_tic6x_link_hash_table_create,
elf32_tic6x_link_hash_table_free, elf32_tic6x_setup,
elf32_tic6x_using_dsbt, elf32_tic6x_install_rela,
elf32_tic6x_create_dynamic_sections, elf32_tic6x_make_got_dynreloc,
elf32_tic6x_finish_dynamic_symbol, elf32_tic6x_gc_sweep_hook,
elf32_tic6x_adjust_dynamic_symbol): New static functions.
(elf32_tic6x_relocate_section): For R_C6000_PCR_S21, convert branches
to weak symbols as required by the ABI.
Handle GOT and DSBT_INDEX relocs, and copy relocs to the output file
as needed when generating DSBT output.
(elf32_tic6x_check_relocs, elf32_tic6x_add_symbol_hook,
elf32_tic6x_symbol_processing, elf32_tic6x_section_from_bfd_section,
elf32_tic6x_allocate_dynrelocs, elf32_tic6x_size_dynamic_sections,
elf32_tic6x_always_size_sections, elf32_tic6x_modify_program_headers,
elf32_tic6x_finish_dynamic_sections, elf32_tic6x_plt_sym_val,
elf32_tic6x_copy_private_data, elf32_tic6x_link_omit_section_dynsym):
New static functions.
(ELF_MAXPAGESIZE): Define to 0x1000.
(bfd_elf32_bfd_copy_private_bfd_data,
bfd_elf32_bfd_link_hash_table_create,
bfd_elf32_bfd_link_hash_table_free, elf_backend_can_refcount,
elf_backend_want_got_plt, elf_backend_want_dynbss,
elf_backend_plt_readonly, elf_backend_got_header_size,
elf_backend_gc_sweep_hook, elf_backend_modify_program_headers,
elf_backend_create_dynamic_sections, elf_backend_adjust_dynamic_symbol,
elf_backend_check_relocs, elf_backend_add_symbol_hook,
elf_backend_symbol_processing, elf_backend_link_output_symbol_hook,
elf_backend_section_from_bfd_section,
elf_backend_finish_dynamic_symbol, elf_backend_always_size_sections,
elf32_tic6x_size_dynamic_sections, elf_backend_finish_dynamic_sections,
elf_backend_omit_section_dynsym, elf_backend_plt_sym_val): Define.
* bfd/reloc.c (BFD_RELOC_C6000_JUMP_SLOT, BFD_RELOC_C6000_EHTYPE,
BFD_RELOC_C6000_PCR_H16, BFD_RELOC_C6000_PCR_S16): Add.
* bfd/bfd-in2.h: Regenerate.
* bfd/libbfd.h: Regenerate.
* config.bfd: Accept tic6x-*-* instead of tic6x-*-elf.
gas/
* config/tc-tic6x.c (sbss_section, scom_section, scom_symbol): New
static variables.
(md_begin): Initialize them.
(s_tic6x_scomm): New static function.
(md_pseudo_table): Add "scomm".
(tc_gen_reloc): Really undo all adjustments made by
bfd_install_relocation.
* doc/c-tic6x.texi: Document the .scomm directive.
gas/testsuite/
* gas/tic6x/scomm-directive-1.s: New test.
* gas/tic6x/scomm-directive-1.d: New test.
* gas/tic6x/scomm-directive-2.s: New test.
* gas/tic6x/scomm-directive-2.d: New test.
* gas/tic6x/scomm-directive-3.s: New test.
* gas/tic6x/scomm-directive-3.d: New test.
* gas/tic6x/scomm-directive-4.s: New test.
* gas/tic6x/scomm-directive-4.d: New test.
* gas/tic6x/scomm-directive-5.s: New test.
* gas/tic6x/scomm-directive-5.d: New test.
* gas/tic6x/scomm-directive-6.s: New test.
* gas/tic6x/scomm-directive-6.d: New test.
* gas/tic6x/scomm-directive-7.s: New test.
* gas/tic6x/scomm-directive-7.d: New test.
* gas/tic6x/scomm-directive-8.s: New test.
* gas/tic6x/scomm-directive-8.d: New test.
ld/
* emulparams/elf32_tic6x_le.sh (BIG_OUTPUT_FORMAT, EXTRA_EM_FILE,
GENERATE_SHLIB_SCRIPT): New defines.
(TEXT_START_ADDR): Define differently depending on target.
(.got): Redefine to include "*(.dsbt)".
(SDATA_START_SYMBOLS): Remove, replace with
(OTHER_GOT_SYMBOLS): New.
(OTHER_BSS_SECTIONS): Define only for ELF targets.
* emultempl/tic6xdsbt.em: New file.
* gen-doc.texi: Set C6X.
* ld.texinfo: Likewise.
(Options specific to C6X uClinux targets): New section.
binutils/
* readelf.c (get_symbol_index_type): Handle SCOM for TIC6X.
(dump_relocations): Likewise.
binutils/testsuite/
* lib/binutils-common.exp (is_elf_format): Accept tic6x*-*-uclinux*.
ld/testsuite/
* ld-scripts/crossref.exp: Add CFLAGS for tic6x*-*-*.
* ld-elf/sec-to-seg.exp: Remove tic6x from list of targets defining
pagesize to 1.
* ld-tic6x/tic6x.exp: Add support for DSBT shared library/executable
linking tests.
* ld-tic6x/dsbt.ld: New linker script.
* ld-tic6x/dsbt-be.ld: New linker script.
* ld-tic6x/dsbt-overflow.ld: New linker script.
* ld-tic6x/dsbt-inrange.ld: New linker script.
* ld-tic6x/shlib-1.s: New test.
* ld-tic6x/shlib-2.s: New test.
* ld-tic6x/shlib-app-1r.s: New test.
* ld-tic6x/shlib-app-1.s: New test.
* ld-tic6x/shlib-1.sd: New test.
* ld-tic6x/shlib-1.dd: New test.
* ld-tic6x/shlib-app-1.rd: New test.
* ld-tic6x/shlib-app-1rb.rd: New test.
* ld-tic6x/shlib-app-1.sd: New test.
* ld-tic6x/static-app-1rb.od: New test.
* ld-tic6x/shlib-app-1.dd: New test.
* ld-tic6x/shlib-app-1rb.sd: New test.
* ld-tic6x/static-app-1b.od: New test.
* ld-tic6x/static-app-1r.od: New test.
* ld-tic6x/shlib-1rb.rd: New test.
* ld-tic6x/shlib-app-1rb.dd: New test.
* ld-tic6x/shlib-1rb.sd: New test.
* ld-tic6x/shlib-1rb.dd: New test.
* ld-tic6x/shlib-app-1b.od: New test.
* ld-tic6x/tic6x.exp: New test.
* ld-tic6x/static-app-1rb.rd: New test.
* ld-tic6x/shlib-app-1r.od: New test.
* ld-tic6x/static-app-1.od: New test.
* ld-tic6x/static-app-1b.rd: New test.
* ld-tic6x/static-app-1r.rd: New test.
* ld-tic6x/static-app-1rb.sd: New test.
* ld-tic6x/static-app-1b.sd: New test.
* ld-tic6x/static-app-1rb.dd: New test.
* ld-tic6x/static-app-1r.sd: New test.
* ld-tic6x/static-app-1b.dd: New test.
* ld-tic6x/shlib-1b.rd: New test.
* ld-tic6x/static-app-1r.dd: New test.
* ld-tic6x/shlib-app-1b.rd: New test.
* ld-tic6x/shlib-1r.rd: New test.
* ld-tic6x/shlib-app-1r.rd: New test.
* ld-tic6x/shlib-1b.sd: New test.
* ld-tic6x/static-app-1.rd: New test.
* ld-tic6x/shlib-app-1b.sd: New test.
* ld-tic6x/shlib-1r.sd: New test.
* ld-tic6x/shlib-1b.dd: New test.
* ld-tic6x/shlib-app-1r.sd: New test.
* ld-tic6x/shlib-app-1b.dd: New test.
* ld-tic6x/shlib-1r.dd: New test.
* ld-tic6x/static-app-1.sd: New test.
* ld-tic6x/shlib-app-1r.dd: New test.
* ld-tic6x/static-app-1.dd: New test.
* ld-tic6x/shlib-noindex.rd: New test.
* ld-tic6x/shlib-noindex.dd: New test.
* ld-tic6x/shlib-noindex.sd: New test.
* ld-tic6x/got-reloc-local-1.s: New test.
* ld-tic6x/got-reloc-local-2.s: New test.
* ld-tic6x/got-reloc-local-r.d: New test.
* ld-tic6x/got-reloc-global.s: New test.
* ld-tic6x/got-reloc-global-addend-1.d: New test.
* ld-tic6x/got-reloc-global-addend-1.s: New test.
* ld-tic6x/got-reloc-global-addend-2.d: New test.
* ld-tic6x/got-reloc-inrange.d: New test.
* ld-tic6x/got-reloc-overflow.d: New test.
* ld-tic6x/got-reloc-global-addend-2.s: New test.
* ld-tic6x/dsbt-index-error.d: New test.
* ld-tic6x/dsbt-index.d: New test.
* ld-tic6x/dsbt-index.s: New test.
* ld-tic6x/shlib-app-1.od: New test.
* ld-tic6x/shlib-app-1rb.od: New test.
* ld-tic6x/shlib-1.rd: New test.
* ld-tic6x/weak.d: New test.
* ld-tic6x/weak-be.d: New test.
* ld-tic6x/weak.s: New test.
* ld-tic6x/weak-data.d: New test.
* ld-tic6x/common.d: New test.
* ld-tic6x/common.ld: New test.
* ld-tic6x/common.s: New test.
2011-03-31 08:58:28 +00:00
Richard Henderson
991cda6c97
* ld-elf/elf.exp: Force 32-bit start address for alpha.
...
* ld-elf/group8a.d: Don't disable for alpha.
* ld-elf/group8b.d: Likewise.
* ld-gc/start.s: Use .dc.a instead of .long.
2011-03-30 17:41:36 +00:00
Alan Modra
c3a7b1206d
PR ld/12613
...
* ldlex.l (lex_warn_invalid): Don't assume char is unsigned.
2011-03-29 02:52:36 +00:00
Nick Clifton
5b806d2793
Add support for DragonFlyBSD target.
2011-03-28 11:18:27 +00:00
Joseph Myers
f31d24a0a1
* configure.in: Check for windows.h, not Windows.h.
...
* configure: Regenerate.
* plugin.c: Include windows.h, not Windows.h.
2011-03-28 10:27:07 +00:00
Eric B. Weddington
d0289b45c2
Regenerate Makefile.in.
2011-03-25 18:04:48 +00:00
Joseph Myers
d436a15e02
* lexsup.c (parse_args): Only set report_plugin_symbols if plugins
...
are enabled. Mark level as possibly unused.
2011-03-23 19:53:06 +00:00
Alan Modra
663a1470e1
bfd/
...
* elf32-ppc.c (ppc_elf_tls_optimize): Catch more cases where
old-style __tls_get_addr calls without marker relocs don't match
their arg setup insn one for one. If such mismatches are found
report the reloc and don't do any tls optimization.
* elf64-ppc.c (ppc64_elf_tls_optimize): Likewise.
ld/testsuite/
* ld-powerpc/tlsmark.s: Delete non-optimizable section.
* ld-powerpc/tlsmark32.s: Likewise.
* ld-powerpc/tlsmark.d: Adjust to suit.
* ld-powerpc/tlsmark32.d: Likewise.
* ld-powerpc/tlsopt1.d, * ld-powerpc/tlsopt1.s: New.
* ld-powerpc/tlsopt2.d, * ld-powerpc/tlsopt2.s: New.
* ld-powerpc/tlsopt3.d, * ld-powerpc/tlsopt3.s: New.
* ld-powerpc/tlsopt4.d, * ld-powerpc/tlsopt4.s: New.
* ld-powerpc/tlsopt1_32.d, * ld-powerpc/tlsopt1_32.s: New.
* ld-powerpc/tlsopt2_32.d, * ld-powerpc/tlsopt2_32.s: New.
* ld-powerpc/tlsopt3_32.d, * ld-powerpc/tlsopt3_32.s: New.
* ld-powerpc/tlsopt4_32.d, * ld-powerpc/tlsopt4_32.s: New.
* ld-powerpc/powerpc.exp: Run new tests.
2011-03-23 15:25:06 +00:00
Eric B. Weddington
8cc66334fa
/bfd:
...
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* archures.c: Add AVR XMEGA architecture information.
* cpu-avr.c (arch_info_struct): Likewise.
* elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
(elf32_avr_object_p): Likewise.
/gas:
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* config/tc-avr.c (struct avr_opcodes_s): Add opcode field.
(AVR_INSN): Change definition to match.
(avr_opcodes): Likewise, change to match.
(mcu_types): Add XMEGA architecture names and new XMEGA device names.
(md_show_usage): Add XMEGA architecture names.
(avr_operand): Add 'E' constraint for DES instruction of XMEGA devices.
Add support for SPM Z+ instruction.
* doc/c-avr.texi: Add documentation for XMEGA architectures and
devices.
/include/opcode:
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* avr.h (AVR_ISA_SPMX,AVR_ISA_DES,AVR_ISA_M256,AVR_ISA_XMEGA):
New instruction set flags.
(AVR_INSN): Add new instructions for SPM Z+, DES for XMEGA.
/ld:
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* Makefile.am (ALL_EMULATION_SOURCES): Add AVR XMEGA architectures.
(eavrxmega?.c): Likewise.
* configure.tgt (targ_extra_emuls): Likewise.
* emulparams/avrxmega1.sh: New file.
* emulparams/avrxmega2.sh: Likewise.
* emulparams/avrxmega3.sh: Likewise.
* emulparams/avrxmega4.sh: Likewise.
* emulparams/avrxmega5.sh: Likewise.
* emulparams/avrxmega6.sh: Likewise.
* emulparams/avrxmega7.sh: Likewise.
* emultempl/avrelf.em (avr_elf_${EMULATION_NAME}_before_allocation):
Add avrxmega6, avrxmega7 to list of architectures for no stubs.
/opcodes:
2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
* avr-dis.c (avr_operand): Add opcode_str parameter. Check for
post-increment to support LPM Z+ instruction. Add support for 'E'
constraint for DES instruction.
(print_insn_avr): Adjust calls to avr_operand. Rename variable.
2011-03-22 18:10:48 +00:00
Eric B. Weddington
ef844a53d2
2011-03-21 Eric B. Weddington <eric.weddington@atmel.com>
...
* scripttempl/avr.sc: Add fuse, lock, and signature memory regions.
2011-03-21 20:07:42 +00:00
Mike Frysinger
e6961d10d8
ld: vers19 test: add -rpath-link
...
Using -Wl,-rpath,. isn't sufficient for cross-linkers to locate the
necessary libraries. So throw in -Wl,-rpath-link,. to make it work.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-03-15 23:34:30 +00:00
Richard Sandiford
34e77a920a
include/elf/
...
* arm.h (R_ARM_IRELATIVE): New relocation.
bfd/
* reloc.c (BFD_RELOC_ARM_IRELATIVE): New relocation.
* bfd-in2.h: Regenerate.
* elf32-arm.c (elf32_arm_howto_table_2): Rename existing definition
to elf32_arm_howto_table_3 and replace with a single R_ARM_IRELATIVE
entry.
(elf32_arm_howto_from_type): Update accordingly.
(elf32_arm_reloc_map): Map BFD_RELOC_ARM_IRELATIVE to R_ARM_IRELATIVE.
(elf32_arm_reloc_name_lookup): Handle elf32_arm_howto_table_3.
(arm_plt_info): New structure, split out from elf32_arm_link_hash_entry
with an extra noncall_refcount field.
(arm_local_iplt_info): New structure.
(elf_arm_obj_tdata): Add local_iplt.
(elf32_arm_local_iplt): New accessor macro.
(elf32_arm_link_hash_entry): Replace plt_thumb_refcount,
plt_maybe_thumb_refcount and plt_got_offset with an arm_plt_info.
Change tls_type to a bitfield and add is_iplt.
(elf32_arm_link_hash_newfunc): Update accordingly.
(elf32_arm_allocate_local_sym_info): New function.
(elf32_arm_create_local_iplt): Likewise.
(elf32_arm_get_plt_info): Likewise.
(elf32_arm_plt_needs_thumb_stub_p): Likewise.
(elf32_arm_get_local_dynreloc_list): Likewise.
(create_ifunc_sections): Likewise.
(elf32_arm_copy_indirect_symbol): Update after the changes to
elf32_arm_link_hash_entry. Assert the is_iplt has not yet been set.
(arm_type_of_stub): Add an st_type argument. Use elf32_arm_get_plt_info
to get PLT information. Assert that all STT_GNU_IFUNC references
are turned into PLT references.
(arm_build_one_stub): Pass the symbol type to
elf32_arm_final_link_relocate.
(elf32_arm_size_stubs): Pass the symbol type to arm_type_of_stub.
(elf32_arm_allocate_irelocs): New function.
(elf32_arm_add_dynreloc): In static objects, use .rel.iplt for
all R_ARM_IRELATIVE.
(elf32_arm_allocate_plt_entry): New function.
(elf32_arm_populate_plt_entry): Likewise.
(elf32_arm_final_link_relocate): Add an st_type parameter.
Set srelgot to null for static objects. Use separate variables
to record which st_value and st_type should be used when generating
a dynamic relocation. Use elf32_arm_get_plt_info to find the
symbol's PLT information, setting has_iplt_entry, splt,
plt_offset and gotplt_offset accordingly. Check whether
STT_GNU_IFUNC symbols should resolve to an .iplt entry, and change
the relocation target accordingly. Broaden assert to include
.iplts. Don't set sreloc for static relocations. Assert that
we only generate dynamic R_ARM_RELATIVE relocations for R_ARM_ABS32
and R_ARM_ABS32_NOI. Generate R_ARM_IRELATIVE relocations instead
of R_ARM_RELATIVE relocations if the target is an STT_GNU_IFUNC
symbol. Pass the symbol type to arm_type_of_stub. Conditionally
resolve GOT references to the .igot.plt entry.
(elf32_arm_relocate_section): Update the call to
elf32_arm_final_link_relocate.
(elf32_arm_gc_sweep_hook): Use elf32_arm_get_plt_info to get PLT
information. Treat R_ARM_REL32 and R_ARM_REL32_NOI as call
relocations in shared libraries and relocatable executables.
Count non-call PLT references. Use elf32_arm_get_local_dynreloc_list
to get the list of dynamic relocations for a local symbol.
(elf32_arm_check_relocs): Always create ifunc sections. Set isym
at the same time as setting h. Use elf32_arm_allocate_local_sym_info
to allocate local symbol information. Treat R_ARM_REL32 and
R_ARM_REL32_NOI as call relocations in shared libraries and
relocatable executables. Record PLT information for local
STT_GNU_IFUNC functions as well as global functions. Count
non-call PLT references. Use elf32_arm_get_local_dynreloc_list
to get the list of dynamic relocations for a local symbol.
(elf32_arm_adjust_dynamic_symbol): Handle STT_GNU_IFUNC symbols.
Don't remove STT_GNU_IFUNC PLTs unless all references have been
removed. Update after the changes to elf32_arm_link_hash_entry.
(allocate_dynrelocs_for_symbol): Decide whether STT_GNU_IFUNC PLT
entries should live in .plt or .iplt. Check whether the .igot.plt
and .got entries can be combined. Use elf32_arm_allocate_plt_entry
to allocate .plt and .(i)got.plt entries. Detect which .got
entries will need R_ARM_IRELATIVE relocations and use
elf32_arm_allocate_irelocs to allocate them. Likewise other
non-.got dynamic relocations.
(elf32_arm_size_dynamic_sections): Allocate .iplt, .igot.plt
and dynamic relocations for local STT_GNU_IFUNC symbols.
Check whether the .igot.plt and .got entries can be combined.
Detect which .got entries will need R_ARM_IRELATIVE relocations
and use elf32_arm_allocate_irelocs to allocate them. Use stashed
section pointers intead of strcmp checks. Handle iplt and igotplt.
(elf32_arm_finish_dynamic_symbol): Use elf32_arm_populate_plt_entry
to fill in .plt, .got.plt and .rel(a).plt entries. Point
STT_GNU_IFUNC symbols at an .iplt entry if non-call relocations
resolve to it.
(elf32_arm_output_plt_map_1): New function, split out from
elf32_arm_output_plt_map. Handle .iplt entries. Use
elf32_arm_plt_needs_thumb_stub_p.
(elf32_arm_output_plt_map): Call it.
(elf32_arm_output_arch_local_syms): Add mapping symbols for
local .iplt entries.
(elf32_arm_swap_symbol_in): Handle Thumb STT_GNU_IFUNC symbols.
(elf32_arm_swap_symbol_out): Likewise.
(elf32_arm_add_symbol_hook): New function.
(elf_backend_add_symbol_hook): Define for all targets.
opcodes/
* arm-dis.c (get_sym_code_type): Treat STT_GNU_IFUNCs as code.
gas/
* config/tc-arm.c (md_pcrel_from_section): Use S_FORCE_RELOC to
determine whether a relocation is needed.
(md_apply_fix, arm_apply_sym_value): Likewise.
ld/testsuite/
* ld-arm/ifunc-1.s, ld-arm/ifunc-1.dd, ld-arm/ifunc-1.gd,
ld-arm/ifunc-1.rd, ld-arm/ifunc-2.s, ld-arm/ifunc-2.dd,
ld-arm/ifunc-2.gd, ld-arm/ifunc-2.rd, ld-arm/ifunc-3.s,
ld-arm/ifunc-3.dd, ld-arm/ifunc-3.gd, ld-arm/ifunc-3.rd,
ld-arm/ifunc-4.s, ld-arm/ifunc-4.dd, ld-arm/ifunc-4.gd,
ld-arm/ifunc-4.rd, ld-arm/ifunc-5.s, ld-arm/ifunc-5.dd,
ld-arm/ifunc-5.gd, ld-arm/ifunc-5.rd, ld-arm/ifunc-6.s,
ld-arm/ifunc-6.dd, ld-arm/ifunc-6.gd, ld-arm/ifunc-6.rd,
ld-arm/ifunc-7.s, ld-arm/ifunc-7.dd, ld-arm/ifunc-7.gd,
ld-arm/ifunc-7.rd, ld-arm/ifunc-8.s, ld-arm/ifunc-8.dd,
ld-arm/ifunc-8.gd, ld-arm/ifunc-8.rd, ld-arm/ifunc-9.s,
ld-arm/ifunc-9.dd, ld-arm/ifunc-9.gd, ld-arm/ifunc-9.rd,
ld-arm/ifunc-10.s, ld-arm/ifunc-10.dd, ld-arm/ifunc-10.gd,
ld-arm/ifunc-10.rd, ld-arm/ifunc-11.s, ld-arm/ifunc-11.dd,
ld-arm/ifunc-11.gd, ld-arm/ifunc-11.rd, ld-arm/ifunc-12.s,
ld-arm/ifunc-12.dd, ld-arm/ifunc-12.gd, ld-arm/ifunc-12.rd,
ld-arm/ifunc-13.s, ld-arm/ifunc-13.dd, ld-arm/ifunc-13.gd,
ld-arm/ifunc-13.rd, ld-arm/ifunc-14.s, ld-arm/ifunc-14.dd,
ld-arm/ifunc-14.gd, ld-arm/ifunc-14.rd, ld-arm/ifunc-15.s,
ld-arm/ifunc-15.dd, ld-arm/ifunc-15.gd, ld-arm/ifunc-15.rd,
ld-arm/ifunc-16.s, ld-arm/ifunc-16.dd, ld-arm/ifunc-16.gd,
ld-arm/ifunc-16.rd, ld-arm/ifunc-dynamic.ld,
ld-arm/ifunc-static.ld: New tests.
* ld-arm/farcall-group.d, ld-arm/farcall-group-size2.d,
ld-arm/farcall-mixed-lib-v4t.d, ld-arm/farcall-mixed-lib.d: Update
for new stub hashes.
* ld-arm/arm-elf.exp: Run them.
2011-03-14 16:04:16 +00:00
Richard Sandiford
35fc36a8d6
include/elf/
...
* internal.h (elf_internal_sym): Add st_target_internal.
* arm.h (arm_st_branch_type): New enum.
(ARM_SYM_BRANCH_TYPE): New macro.
bfd/
* elf-bfd.h (elf_link_hash_entry): Add target_internal.
* elf.c (swap_out_syms): Set st_target_internal for each
Elf_Internal_Sym.
* elfcode.h (elf_swap_symbol_in): Likewise.
* elf32-i370.c (i370_elf_finish_dynamic_sections): Likewise.
* elf32-sh-symbian.c (sh_symbian_relocate_section): Likewise.
* elf64-sparc.c (elf64_sparc_output_arch_syms): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
* elflink.c (elf_link_output_extsym): Likewise.
(bfd_elf_final_link): Likewise.
(elf_link_add_object_symbols): Copy st_target_internal
to the hash table if we see a definition.
(_bfd_elf_copy_link_hash_symbol_type): Copy target_internal.
* elf32-arm.c (elf32_arm_stub_hash_entry): Replace st_type with
a branch_type field.
(a8_erratum_fix, a8_erratum_reloc): Likewise.
(arm_type_of_stub): Replace actual_st_type with an
actual_branch_type parameter.
(arm_build_one_stub): Use branch types rather than st_types to
determine the type of branch.
(cortex_a8_erratum_scan): Likewise.
(elf32_arm_size_stubs): Likewise.
(bfd_elf32_arm_process_before_allocation): Likewise.
(allocate_dynrelocs_for_symbol): Likewise.
(elf32_arm_finish_dynamic_sections): Likewise.
(elf32_arm_final_link_relocate): Replace sym_flags parameter with
a branch_type parameter.
(elf32_arm_relocate_section): Update call accordingly.
(elf32_arm_adjust_dynamic_symbol): Don't check STT_ARM_TFUNC.
(elf32_arm_output_map_sym): Initialize st_target_internal.
(elf32_arm_output_stub_sym): Likewise.
(elf32_arm_symbol_processing): Delete.
(elf32_arm_swap_symbol_in): Convert STT_ARM_TFUNCs into STT_FUNCs.
Use st_target_internal to record the branch type.
(elf32_arm_swap_symbol_out): Use st_target_internal to test for
Thumb functions.
(elf32_arm_is_function_type): Delete.
(elf_backend_symbol_processing): Likewise.
(elf_backend_is_function_type): Likewise.
gas/
* config/tc-arm.c (arm_adjust_symtab): Set the branch type
for Thumb symbols.
ld/
* emultempl/armelf.em (gld${EMULATION_NAME}_finish): Check
eh->target_internal.
opcodes/
* arm-dis.c (get_sym_code_type): Don't check for STT_ARM_TFUNC.
Use branch types instead.
(print_insn): Likewise.
2011-03-14 15:55:04 +00:00
Richard Sandiford
cbc704f397
bfd/
...
* elf32-arm.c (elf32_arm_check_relocs): Always assign a dynobj.
(elf32_arm_finish_dynamic_sections): Move sgot != NULL assertion
into the PLT block.
ld/
* emultempl/armelf.em (arm_elf_before_allocation): Check dynobj
instead of dynamic_sections_created.
2011-03-14 15:53:58 +00:00
Richard Sandiford
f6e32f6db5
bfd/
...
* elf32-arm.c (elf32_arm_check_relocs): Use call_reloc_p,
may_need_local_target_p and may_become_dynamic_p to classify
the relocation type. Don't check info->symbolic or h->def_regular
when deciding whether to record a potential dynamic reloc.
Don't treat potential dynamic relocs as PLT references.
(elf32_arm_gc_sweep_hook): Update to match. Assert that we don't
try to make the PLT reference count go negative.
ld/testsuite/
* ld-arm/arm-lib-plt-2a.s, ld-arm/arm-lib-plt-2b.s,
ld-arm/arm-lib-plt-2.dd, ld-arm/arm-lib-plt-2.rd: New tests.
* ld-arm/arm-elf.exp: Run them.
2011-03-14 15:53:33 +00:00
Richard Sandiford
b436d85411
bfd/
...
* elf32-arm.c (elf32_arm_final_link_relocate): Always fill in the
GOT entry here, rather than leaving it to finish_dynamic_symbol.
Only create a dynamic relocation for local references if
info->shared.
(allocate_dynrelocs_for_symbol): Update dynamic relocation
allocation accordingly.
(elf32_arm_finish_dynamic_symbol): Don't initialise the GOT entry here.
ld/testsuite/
* ld-arm/exec-got-1a.s, ld-arm/exec-got-1b.s, ld-arm/exec-got-1.d,
ld-arm/unresolved-1.s, ld-arm/unresolved-1.d,
ld-arm/unresolved-1-dyn.d: New tests.
* ld-arm/arm-elf.exp: Run them.
2011-03-14 15:52:53 +00:00
H.J. Lu
52bc799a91
Support TLS x32 GD->IE, GD->LE and LD->LE transitions.
...
bfd/
2011-03-12 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (elf_x86_64_check_tls_transition): Supprt TLS
x32 GD->IE and GD->LE transitions.
(elf_x86_64_relocate_section): Supprt TLS x32 GD->IE, GD->LE
and LD->LE transitions.
ld/testsuite/
2011-03-12 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/tlsgd4.dd: New.
* ld-x86-64/tlsgd4.s: Likewise.
* ld-x86-64/tlsgd5.dd: Likewise.
* ld-x86-64/tlsgd5a.s: Likewise.
* ld-x86-64/tlsgd5b.s: Likewise.
* ld-x86-64/tlsgd6.dd: Likewise.
* ld-x86-64/tlsgd6a.s: Likewise.
* ld-x86-64/tlsgd6b.s: Likewise.
* ld-x86-64/tlsld2.dd: Likewise.
* ld-x86-64/tlsld2.s: Likewise.
* ld-x86-64/x86-64.exp (x86_64tests): Add tlsgd4, libtlsgd5.so,
tlsgd5, libtlsgd6.so, tlsgd6 and tlsld2.
2011-03-12 14:38:31 +00:00
Dave Korn
10be1b6abe
[PATCH] Respect symbol wrappers when computing symbol resolutions.
...
ld/ChangeLog:
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
* plugin.c (get_symbols): Use wrapped lookup for undefined symbols.
2011-03-10 10:27:50 +00:00
Dave Korn
422b6f1440
[PATCH] Fix issue from GCC PR47527: no ELF flags, EABI attribs, etc. in dummy IR BFD.
...
ld/ChangeLog:
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
* ldlang.c (lang_check): Don't run checks on dummy IR BFDs.
2011-03-10 10:26:26 +00:00
Dave Korn
8543fde54a
[PATCH] Revise linker plugin API to better preserve link order.
...
ld/ChangeLog:
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
* ldlang.h (lang_input_statement_type): Add new 'claim_archive' flag,
wrapping both it and 'claim' flag in #ifdef ENABLE_PLUGINS.
* ldmain.c (add_archive_element): Set it if the member is claimed.
* ldlang.c (new_afile): Initialise claim_archive and claimed members.
(find_replacements_insert_point): New helper function.
(lang_process): After adding and opening replacement files passed
from plugin, splice them into correct place in statement list and
file chains to preserve critical link order.
(lang_list_insert_after): New helper function.
(lang_list_remove_tail): Likewise.
2011-03-10 10:25:02 +00:00
Dave Korn
cf4dc96f0f
[PATCH] Do not use dummy bfd suffix for recognition, make it human-readable instead.
...
ld/ChangeLog:
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
* plugin.c (IRONLY_SUFFIX): Revise to nicely human-readable form.
(IRONLY_SUFFIX_LEN): Delete.
(plugin_get_ir_dummy_bfd): Don't append IRONLY_SUFFIX.
(is_ir_dummy_bfd): Don't look for suffix; check claimed flag of
enclosing lang input statement instead.
2011-03-10 10:22:24 +00:00
Dave Korn
4bf0cafb35
[PATCH] Fix PE-COFF bug in orphan section alignment handling.
...
ld/ChangeLog:
2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
* emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Preserve
alignment of input sections when creating orphan output sections
during relocatable link.
* emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
2011-03-10 10:20:26 +00:00
H.J. Lu
1715a13cc2
Report plugin symbols for --verbose=N.
...
2011-03-04 H.J. Lu <hongjiu.lu@intel.com>
* ld.texinfo: Document --verbose[=NUMBER].
* lexsup.c (ld_options): Update --verbose.
(parse_args): Set report_plugin_symbols.
* plugin.c (report_plugin_symbols): New.
(get_symbols): Report plugin symbols if report_plugin_symbols
is TRUE.
* plugin.h (report_plugin_symbols): New.
2011-03-04 23:44:01 +00:00
H.J. Lu
4a4c5f250b
Supprt TLS x32 IE->LE transition.
...
bfd/
2011-03-03 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (elf_x86_64_check_tls_transition): Supprt TLS
x32 IE->LE transition.
(elf_x86_64_relocate_section): Likewise.
ld/testsuite/
2011-03-03 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/tlsie4.dd: New.
* ld-x86-64/tlsie4.s: Likewise.
* ld-x86-64/x86-64.exp (x86_64tests): Add tlsie4.
2011-03-03 22:11:33 +00:00
H.J. Lu
f4c37f5655
Don't use filename_cmp in plugin test DSO.
...
2011-03-01 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12529
* testplug.c: Don't include "filenames.h".
(onclaim_file): Don't use filename_cmp.
2011-03-01 22:55:35 +00:00
Kai Tietz
426278217b
2011-02-28 Kai Tietz <kai.tietz@onevision.com>
...
* emultempl/beos.em (sort_by_file_name): Use filename_(n)cmp.
* emultempl/elf32.em (gld${EMULATION_NAME}_vercheck):
Likewise.
(gld${EMULATION_NAME}_stat_needed): Likewise.
(gld${EMULATION_NAME}_check_needed): Likewise.
* emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise.
(gld_${EMULATION_NAME}_unrecognized_file): Likewise.
* emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise.
(gld_${EMULATION_NAME}_unrecognized_file): Likewise.
* ldfile.c (ldfile_open_file): Likewise.
* ldlang.c (wild_sort): Likewise.
(lookup_name): Likewise.
(check_excluded_libs): Likewise.
* ldmisc.c (vfinfo): Likewise.
* pe-dll.c (libnamencmp): Likewise.
(auto_export): Likewise.
(pe_dll_generate_implib): Likewise.
* testplug.c (onclaim_file): Likewise.
2011-02-28 18:34:52 +00:00
H.J. Lu
174b85fcf1
Add entry_symbol chain into non_ironly_hash.
...
2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12507
* plugin.c (get_symbols): Don't check entry symbol here.
(init_non_ironly_hash): Add entry_symbol chain into
non_ironly_hash.
2011-02-26 04:38:34 +00:00
H.J. Lu
6ee6cf6ac1
Add a testcase for PR ld/12516.
...
2011-02-25 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12516
* ld-elf/dynamic1.d: New.
* ld-elf/dynamic1.ld: Likewise.
* ld-elf/dynamic1.s: Likewise.
2011-02-25 15:53:24 +00:00
Alan Modra
e1e9003466
PR gas/12519
...
* config/obj-elf.c (elf_frob_symbol): Properly handle size expression.
* ld-mn10300/i135409-3.s: Correct .size label reference.
* ld-sh/sh64/stolib.s: Likewise.
2011-02-25 13:45:54 +00:00
H.J. Lu
8ff09c128e
Don't mark entry symbol IR only.
...
2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12507
* plugin.c (get_symbols): Don't mark entry symbol IR only.
2011-02-24 22:58:05 +00:00
H.J. Lu
3b8d4c366a
Don't include <exception_defines.h>
...
2011-02-23 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/new.cc: Don't include <exception_defines.h>.
2011-02-23 22:37:48 +00:00
Dave Anglin
ae97b9228d
PR ld/12376
...
emulparams/hppalinux.sh (DATA_ADDR): Define.
(SHLIB_DATA_ADDR): Likewise.
2011-02-18 18:20:29 +00:00
H.J. Lu
73f2a3d2e9
Change x32 LIBPATH_SUFFIX to x32.
...
2011-02-16 H.J. Lu <hongjiu.lu@intel.com>
* emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX): Changed to
x32 for x32.
2011-02-16 19:14:41 +00:00
Kai Tietz
fd11958c53
2011-02-15 Kai Tietz <kai.tietz@onevision.com>
...
* pe-dll.c (process_def_file_and_drectve): Don't strip
leading underscore from symbol by calling bfd_find_version_for_sym.
2011-02-15 16:15:55 +00:00
Mike Frysinger
93252b1cf4
bfd/ld: handle ABI prefixes in version scripts
...
The default language in version scripts is supposed to be C, but no
symbol demangling is performed on the symbols by default. This makes
targets with a symbol prefix to fail with most version scripts out
there. So strip away this prefix by default.
This fixes many tests (real world and ld's testsuite) for Blackfin
targets and doesn't seem to cause regressions for x86_64.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-02-14 17:03:45 +00:00
Alan Modra
498cd2a0fd
* ldmain.c (remove_output): Rename to..
...
(ld_cleanup): ..this. Call bfd_cache_close_all and plugin_call_cleanup.
(main): Adjust.
* plugin.c (plugin_call_cleanup): Make global.
(plugin_load_plugins): Don't register plugin_call_cleanup with xatexit.
* plugin.h (plugin_call_cleanup): Declare.
2011-02-14 09:53:15 +00:00
Ralf Wildenhues
822ce8ee21
Remove freebsd1 from libtool.m4 macros and config.rpath.
...
/:
Import from Libtool and gnulib:
2011-01-27 Gerald Pfeifer <gerald@pfeifer.com>
Prepare for supporting FreeBSD 10.
* config.rpath: Remove handling of freebsd1* which soon would
match FreeBSD 10.0.
2011-01-20 Gerald Pfeifer <gerald@pfeifer.com> (tiny change)
Remove support for FreeBSD 1.x.
* libtool.m4 (_LT_LINKER_SHLIBS)
(_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
soon would incorrectly match FreeBSD 10.0.
bfd/:
* configure: Regenerate.
gas/:
* configure: Regenerate.
ld/:
* configure: Regenerate.
opcodes/:
* configure: Regenerate.
binutils/:
* configure: Regenerate.
gprof/:
* configure: Regenerate.
2011-02-13 21:00:14 +00:00
Alan Modra
dc56ba2d58
remove accidental SANE_EXPR change
2011-02-10 08:35:26 +00:00
Alan Modra
09b910c68c
* scripttempl/armbpabi.sc: Revert 2010-11-02 H.J. Lu.
...
* scripttempl/avr.sc: Likewise.
* scripttempl/elf32cr16.sc: Likewise.
* scripttempl/elf32crx.sc: Likewise.
* scripttempl/elf32msp430.sc: Likewise.
* scripttempl/elf32msp430_3.sc: Likewise.
* scripttempl/elf32sh-symbian.sc: Likewise.
* scripttempl/elf64hppa.sc: Likewise.
* scripttempl/elf_chaos.sc: Likewise.
* scripttempl/elfd10v.sc: Likewise.
* scripttempl/elfd30v.sc: Likewise.
* scripttempl/elfi370.sc: Likewise.
* scripttempl/elfm68hc11.sc: Likewise.
* scripttempl/elfm68hc12.sc: Likewise.
* scripttempl/elfxtensa.sc: Likewise.
* scripttempl/ip2k.sc: Likewise.
* scripttempl/iq2000.sc: Likewise.
* scripttempl/mep.sc: Likewise.
* scripttempl/mmo.sc: Likewise.
* scripttempl/v850.sc: Likewise.
* scripttempl/xstormy16.sc: Likewise.
* scripttempl/elf.sc: Revert 2010-10-29 H.J. Lu.
2011-02-10 08:18:58 +00:00
Alan Modra
ea6c5ce90d
* ld-scripts/defined.exp: Don't run defined5 for AOUT.
...
* ld-scripts/defined5.s: Use .text for "defined" section.
* ld-scripts/defined5.t: Adjust.
2011-02-10 08:04:22 +00:00
Alan Modra
6092a2bf7b
* ld-gc/start.d: Exclude frv-*-linux*.
...
* ld-misc/defsym1.d: Likewise.
2011-02-10 07:24:06 +00:00
Alan Modra
2893311c83
* ld-elfvsb/elfvsb.exp: Don't run any non-PIC tests on powerpc*-linux.
...
* ld-gc/gc.exp: Ensure powerpc64 test continues to fail.
* ld-srec/srec.exp: Don't edit toc on powerpc64.
2011-02-09 08:18:54 +00:00
Alan Modra
6a2bb08055
* ld-scripts/sane1.d, * ld-scripts/sane1.t: New test.
...
* ld-scripts/expr.exp: Run it.
2011-01-23 03:29:30 +00:00
H.J. Lu
3cb622973f
Add AC_PROG_CXX.
...
2011-01-22 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am (CXX): Removed.
* configure.in: Add AC_PROG_CXX.
* Makefile.in: Regenerated.
* configure: Likewise.
2011-01-22 19:25:37 +00:00
Richard Sandiford
ed88c97ee7
bfd/
...
* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Ignore
common sections too.
ld/
* plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's
private data and GP size.
2011-01-22 10:16:29 +00:00
Alan Modra
9bc8bb33fe
* ldexp.c (fold_binary): Set result section for arithmetic and
...
logical operations to NULL when both operands are in same section.
* ld.texinfo (Expression Section): Describe this.
2011-01-21 13:18:19 +00:00
H.J. Lu
1a0c107f58
Undo Solaris damages in elf64-x86-64.c.
...
bfd/
2011-01-18 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (elf_backend_static_tls_alignment): Undefine
after Solaris target.
(elf_backend_want_plt_sym): Redefine to 0 after Solaris target.
ld/testsuite/
2011-01-18 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/ilp32-4.d: Updated.
2011-01-18 20:41:09 +00:00
Richard Sandiford
da17376b70
bfd/
...
* elf32-arm.c (elf32_arm_check_relocs): Check needs_plt rather than
h->needs_plt when deciding whether to record a possible dynamic reloc.
ld/testsuite/
* ld-arm/arm-rel32.s, ld-arm/arm-rel32.d: New testcase.
* ld-arm/arm-elf.exp: Run it.
2011-01-17 16:36:43 +00:00
Richard Sandiford
1e81e12b2c
bfd/
...
* elf32-arm.c (elf32_arm_gc_sweep_hook): Remove all registered
dynamic relocs for the removed section.
ld/testsuite/
* ld-arm/gc-thumb-lib.s, ld-arm/gc-thumb.s,
ld-arm/gc-thumb.d: New test.
* ld-arm/arm-elf.exp: Run it.
2011-01-17 16:36:15 +00:00
H.J. Lu
9d53781512
Replace n32 with x32.
2011-01-15 00:38:35 +00:00
H.J. Lu
570561f71a
Rename --n32 to --x32.
...
gas/
2011-01-14 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (OPTION_N32): Renamed to ...
(OPTION_X32): This.
(md_longopts): Replace n32 with x32.
(md_parse_option): Updated.
(md_show_usage): Likewise.
* doc/c-i386.texi: Replace n32 with x32.
gas/testsuite/
2011-01-14 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/ilp32/cfi/ilp32.exp: Replace --n32 with --x32.
* gas/i386/ilp32/elf/ilp32.exp: Likewise.
* gas/i386/ilp32/ilp32.exp: Likewise.
* gas/i386/ilp32/lns/ilp32.exp: Likewise.
ld/testsuite/
2011-01-14 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/ilp32-1.d: Replace --n32 with --x32.
* ld-x86-64/ilp32-2.d: Likewise.
* ld-x86-64/ilp32-3.d: Likewise.
* ld-x86-64/ilp32-4.d: Likewise.
* ld-x86-64/ilp32-5.d: Likewise.
* ld-x86-64/x86-64.exp: Likewise.
2011-01-14 23:07:11 +00:00
H.J. Lu
248775ba37
Handle R_X86_64_32 like R_X86_64_64 for ILP32.
...
bfd/
2011-01-14 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (elf_x86_64_link_hash_table): Add pointer_r_type.
(elf_x86_64_link_hash_table_create): Set pointer_r_type.
(elf_x86_64_check_relocs): Handle R_X86_64_32 like R_X86_64_64
for ILP32. Remove ABI_64_P PIC check for R_X86_64_8,
R_X86_64_16, R_X86_64_32 and R_X86_64_32S.
(elf_x86_64_relocate_section): Handle R_X86_64_32 like R_X86_64_64
for ILP32.
ld/testsuite/
2011-01-14 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/ilp32-5.d: New.
* ld-x86-64/ilp32-5.s: Likewise.
* ld-x86-64/x86-64.exp: Run ilp32-5.
2011-01-14 22:48:12 +00:00
Alan Modra
e922bcabdf
* ldmain.c (main): Flush stdout before and stderr after printing
...
message.
* ldmisc.c (einfo): Similarly.
* plugin.c (message): Likewise.
* emultempl/ppc64elf.em: Likewise.
* emultempl/xtensaelf.em: Likewise.
* emulparams/elf32mcore.sh: Use einfo rather than printf.
* emultempl/beos.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/pep.em: Likewise.
2011-01-14 12:37:17 +00:00
H.J. Lu
82e96e07e5
Fix x86-64 ILP32 shared library.
...
bfd/
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (elf_x86_64_link_hash_table): Remove
swap_reloca_out.
(elf_x86_64_link_hash_table_create): Don't set swap_reloca_out.
(elf_x86_64_check_relocs): Align relocation section to 4 byte
for 32bit.
(elf_x86_64_gc_sweep_hook): Replace ELF64_ST_TYPE with
ELF_ST_TYPE.
(elf_x86_64_finish_dynamic_symbol): Updated.
(elf_x86_64_finish_dynamic_sections): Don't use
Elf64_External_Dyn, bfd_elf64_swap_dyn_in, nor
bfd_elf64_swap_dyn_out.
ld/testsuite/
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/ilp32-4.d: New.
* ld-x86-64/x86-64.exp: Run ilp32-4.
2011-01-14 04:24:00 +00:00
Alan Modra
175b7cd42c
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
...
attempt to put non-alloc orphans before debug sections, just place
them after .comment.
2011-01-14 02:27:41 +00:00
Alan Modra
a05e447ffb
PR ld/12339
...
* ldlang.c (sort_def_symbol): Handle bfd_link_hash_warning symbols.
2011-01-14 02:18:22 +00:00
Alan Modra
3ed41d5946
* Makefile.am: Sort emulation rules.
...
(eelf32am33lin.c): Delete.
(ALL_EMULATION_SOURCES): Sort, add missing entries.
(ALL_64_EMULATION_SOURCES): Likewise.
* Makefile.in: Regenerate.
2011-01-14 02:03:42 +00:00
H.J. Lu
75e68ef97a
Add a testcase for PR ld/12356.
...
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12356
* ld-scripts/defined.exp: Run defined5.
* ld-scripts/defined5.d: New.
* ld-scripts/defined5.s: Likewise.
* ld-scripts/defined5.t: Likewise.
2011-01-13 17:07:52 +00:00
H.J. Lu
e235872c41
Add xfail and notarget.
...
2011-01-13 H.J. Lu <hongjiu.lu@intel.com>
* ld-scripts/defined4.d: Xfail rs6000-*-aix*. Skip mips*-*-*
and mmix-*-*.
* ld-scripts/expr2.d: Xfail rs6000-*-aix* and arm-*-*aout.
2011-01-13 15:23:59 +00:00
Alan Modra
729c05fc7c
Update copyright dates.
2011-01-13 13:34:54 +00:00
Alan Modra
01554a74b5
PR ld/12356
...
* ld.texinfo (Miscellaneous Commands): Describe LD_FEATURE.
(Expression Section): Update.
* ld.h (ld_config_type): Add sane_expr.
* ldgram.y (ifile_p1): Add LD_FEATURE.
* ldlex.l (LD_FEATYRE): New.
* ldemul.c (after_parse_default): Delete code handling ld_compatibility.
* ldexp.h (struct ldexp_control): Delete uses_defined.
* ldexp.c: Remove all uses of uses_defined.
(fold_name): Test config.sane_expr rather than ld_compatibility.
(exp_fold_tree_1): Likewise. Adjust handling of assignments
during first phase.
* ldlang.h (ld_compatibility): Delete.
(lang_ld_feature): Declare.
* ldlang.c (ld_compatibility): Delete.
(open_input_bfds): Only handle assignments for --defsym.
(lang_ld_feature): New function.
2011-01-13 13:29:55 +00:00
Alan Modra
2e57b2afce
PR ld/12356
...
* ldexp.h (exp_assop): Delete.
(exp_assign, exp_defsym): Declare.
* ldexp.c (exp_assop): Make static, handle all assignment variations.
(exp_assign, exp_defsym): New functions.
(exp_provide): Use exp_assop.
* ldgram.y (defsym_expr): Use exp_defsym.
* ldctor.c, * ldgram.y, * ldlang.c, * mri.c, * emultempl/beos.em,
* emultempl/pe.em, * emultempl/pep.em, * emultempl/spuelf.em,
* emultempl/xtensaelf.em: Update exp_assop -> exp_assign.
2011-01-13 13:06:22 +00:00
Alan Modra
ea7c2e6c9b
PR ld/12380
...
* ldexp.h (enum phase_enum): Comment. Add exp_dataseg_done.
* ldexp.c (fold_unary <DATA_SEGMENT_END>): Rearrange code. Test
for exp_dataseg_done rather than expld.phase == lang_final_phase_enum
to detect when we've finished sizing sections.
(fold_binary <DATA_SEGMENT_ALIGN>): Likewise.
(fold_binary <DATA_SEGMENT_RELRO_END>): Likewise. Also test
that we are not inside an output section statement.
* ldlang.c (lang_size_sections): Set exp_dataseg_done on exit if
not exp_dataseg_relro_adjust or exp_dataseg_adjust. Don't set
lang_final_phase_enum here.
(lang_process): Set lang_final_phase_enum here.
2011-01-12 12:07:19 +00:00
H.J. Lu
9d573aae1f
Remove the extra `.'.
2011-01-10 15:03:15 +00:00
H.J. Lu
eda17dc18d
Add a test for linker ASSERT.
...
2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
* ld-scripts/assert.exp: Run assert2.
* ld-scripts/assert2.d: New.
* ld-scripts/assert2.t: Likewise.
2011-01-10 14:37:40 +00:00
Nick Clifton
f74656046a
* po/da.po: Updated Danish translation.
2011-01-10 13:51:10 +00:00
H.J. Lu
1e91580429
Remove startup_file from ldlang.c.
...
2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
* ldlang.c (startup_file): Removed.
(lang_startup): Updated.
2011-01-10 13:13:32 +00:00
Nathan Sidwell
0855e32bf5
bfd/
...
* reloc.c (BFD_RELOC_ARM_TLS_GOTDESC, BFD_RELOC_ARM_TLS_CALL,
BFD_RELOC_ARM_THM_TLS_CALL, BFD_RELOC_ARM_TLS_DESCSEQ,
BFD_RELOC_ARM_THM_TLS_DESCSEQ, BFD_RELOC_ARM_TLS_DESC): New
relocations.
* libbfd.h: Rebuilt.
* bfd-in2.h: Rebuilt.
* elf32-arm.c (elf32_arm_howto_table_1): Add new relocations.
(elf32_arm_reloc_map): Likewise.
(tls_trampoline, dl_tlsdesc_lazy_trampoline): New PLT templates.
(elf32_arm_stub_long_branch_any_tls_pic,
elf32_arm_stub_long_branch_v4t_thumb_tls_pic): New stub templates.
(DEF_STUBS): Add new stubs.
(struct_elf_arm_obj_data): Add local_tlsdesc_gotent field.
(elf32_arm_local_tlsdesc_gotent): New.
(GOT_TLS_GDESC): New mask.
(GOT_TLS_GD_ANY): Define.
(struct elf32_arm_link_hash_entry): Add tlsdesc_got field.
(elf32_arm_compute_jump_table_size): New.
(struct elf32_arm_link_hash_table): Add next_tls_desc_index,
num_tls_desc, dt_tlsdesc_plt, dt_tlsdesc_got, tls_trampoline,
sgotplt_jump_table_size fields.
(elf32_arm_link_hash_newfunc): Initialize tlsdesc_got field.
(elf32_arm_link_hash_table_create): Initialize new fields.
(arm_type_of_stub): Check TLS desc relocs too.
(elf32_arm_stub_name): TLS desc relocs can be shared.
(elf32_arm_tls_transition): Determine relaxation.
(arm_stub_required_alignment): Add tls stubs.
(elf32_arm_size_stubs): Likewise.
(elf32_arm_tls_relax): Perform TLS relaxing.
(elf32_arm_final_link_relocate): Process TLS DESC relocations.
(IS_ARM_TLS_GNU_RELOC): New.
(IS_ARM_TLS_RELOC): Use it.
(elf32_arm_relocate_section): Perform TLS relaxing.
(elf32_arm_check_relocs): Anticipate TLS relaxing, process tls
desc relocations.
(allocate_dynrelocs): Allocate tls desc relcoations.
(elf32_arm_output_arch_local_syms): Emit tls trampoline mapping
symbols.
(elf32_arm_size_dynamic_sections): Allocate tls trampolines and
got slots.
(elf32_arm_always_size_sections): New. Create _TLS_MODULE_BASE
symbol.
(elf32_arm_finish_dynamic_symbol): Adjust.
(arm_put_trampoline): New.
(elf32_arm_finish_dynamic_sections): Emit new dynamic tags and tls
trampolines.
(elf_backend_always_size_sections): Define.
include/elf/
* arm.h (R_ARM_TLS_DESC, R_ARM_TLS_GOTDESC, R_ARM_TLS_CALL,
R_ARM_TLS_DESCSEQ, T_ARM_THM_TLS_CALL, R_ARM_THM_TLS_DESCSEQ): New
relocations.
gas/
* doc/c-arm.texi: Document TLSDESC and TLSCALL relocations, and
.tlsdescseq directive.
* config/tc-arm.c (arm_typed_reg_parse): Check for potential reloc
following a symbol.
(s_arm_tls_descseq): New directive.
(md_pseudo_table): Add it.
(encode_branch): Allow TLS_CALL relocs too.
(do_t_blx, do_t_branch23): Use encode_branch.
(reloc_names): Add tlsdesc and tlscall.
(md_apply_fix): Process tls desc relocations.
(tc_gen_reloc): Likewise.
(arm_fix_adjustable): Likewise.
gas/testsuite/
* gas/arm/tls.s: Add tlsdesc tests.
* gas/arm/tls.d: Adjust.
ld/testsuite/
* ld-arm/arm-elf.exp: Added tests for new TLS handling
relocations.
* ld-arm/tls-descrelax-be32.d: New.
* ld-arm/tls-descrelax-be32.s: New.
* ld-arm/tls-descrelax-be8.d: New.
* ld-arm/tls-descrelax-be8.s: New.
* ld-arm/tls-descrelax-v7.d: New.
* ld-arm/tls-descrelax-v7.s: New.
* ld-arm/tls-descrelax.d: New.
* ld-arm/tls-descrelax.s: New.
* ld-arm/tls-descseq.d: New.
* ld-arm/tls-descseq.r: New.
* ld-arm/tls-descseq.s: New.
* ld-arm/tls-gdesc-got.d: New.
* ld-arm/tls-gdesc-got.s: New.
* ld-arm/tls-gdesc-nlazy.g: New.
* ld-arm/tls-gdesc-nlazy.s: New.
* ld-arm/tls-gdesc.d: New.
* ld-arm/tls-gdesc.r: New.
* ld-arm/tls-gdesc.s: New.
* ld-arm/tls-gdierelax.d: New.
* ld-arm/tls-gdierelax.s: New.
* ld-arm/tls-gdierelax2.d: New.
* ld-arm/tls-gdierelax2.s: New.
* ld-arm/tls-gdlerelax.d: New.
* ld-arm/tls-gdlerelax.s: New.
* ld-arm/tls-lib-loc.d: New.
* ld-arm/tls-lib-loc.r: New.
* ld-arm/tls-lib-loc.s: New.
* ld-arm/tls-longplt-lib.d: New.
* ld-arm/tls-longplt-lib.s: New.
* ld-arm/tls-longplt.d: New.
* ld-arm/tls-longplt.s: New.
* ld-arm/tls-mixed.r: New.
* ld-arm/tls-mixed.s: New.
* ld-arm/tls-thumb1.d: New.
* ld-arm/tls-thumb1.s: New.
* ld-arm/arm-elf.exp: New.
2011-01-10 08:40:19 +00:00
Nick Clifton
bd53e8b7ee
* ld-misc/defsym1.d: Add a -e linker command line option.
...
* ld-misc/dummy.s: Remove text.
2011-01-08 09:52:57 +00:00
Nick Clifton
5d8cb12404
correct PR citation in previous delta
2011-01-08 09:40:40 +00:00
Nick Clifton
fc31e83bec
PR ld/13258
...
PR ld/13259
* ld-elf/textaddr2.d: Fix regexp to work with hppa64 targets.
* ld-elf/textaddr6.d: Fix regexp to work with hppa64 targets.
2011-01-08 09:38:17 +00:00
H.J. Lu
ae428b5752
Correct year.
2011-01-06 19:05:48 +00:00
H.J. Lu
3db2e7dda6
Handle STT_GNU_IFUNC symols when building shared library.
...
bfd/
2012-01-06 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12366
PR ld/12371
* elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Properly
handle symbols marked with regular reference, but not non-GOT
reference when building shared library.
* elf32-i386.c (elf_i386_gc_sweep_hook): Properly handle
local and global STT_GNU_IFUNC symols when building shared
library.
* elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.
ld/testsuite/
2012-01-06 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12366
PR ld/12371
* ld-ifunc/ifunc-10-i386.s: Add more tests.
* ld-ifunc/ifunc-10-x86-64.s: Likewise.
* ld-ifunc/ifunc-11-i386.s: Likewise.
* ld-ifunc/ifunc-11-x86-64.s: Likewise.
* ld-ifunc/ifunc-12-i386.d: New.
* ld-ifunc/ifunc-12-i386.s: Likewise.
* ld-ifunc/ifunc-12-x86-64.d: Likewise.
* ld-ifunc/ifunc-12-x86-64.s: Likewise.
* ld-ifunc/ifunc-13-i386.d: Likewise.
* ld-ifunc/ifunc-13-x86-64.d: Likewise.
* ld-ifunc/ifunc-13a-i386.s: Likewise.
* ld-ifunc/ifunc-13a-x86-64.s: Likewise.
* ld-ifunc/ifunc-13b-i386.s: Likewise.
* ld-ifunc/ifunc-13b-x86-64.s: Likewise.
2011-01-06 18:45:05 +00:00
H.J. Lu
cc322803a5
Check if a bfd is NULL before accessing its flags field.
...
2011-01-05 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12364
* plugin.c (get_symbols): Check if owner_sec->owner is NULL
before accessing its flags field.
2011-01-05 14:25:26 +00:00
H.J. Lu
889a4d3e74
Don't allow mixing x64_32 with x86_64.
...
bfd/
2011-01-03 H.J. Lu <hongjiu.lu@intel.com>
* cpu-i386.c (bfd_i386_compatible): New.
(bfd_x64_32_arch_intel_syntax): Replace bfd_default_compatible
with bfd_i386_compatible.
(bfd_x86_64_arch_intel_syntax): Likewise.
(bfd_i386_arch_intel_syntax): Likewise.
(i8086_arch): Likewise.
(bfd_x64_32_arch): Likewise.
(bfd_x86_64_arch): Likewise.
(bfd_i386_arch): Likewise.
ld/testsuite/
2011-01-03 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/dummy.s: New.
* ld-x86-64/foo.s: Likewise.
* ld-x86-64/ia32-1.d: Likewise.
* ld-x86-64/ia32-2.d: Likewise.
* ld-x86-64/ia32-3.d: Likewise.
* ld-x86-64/ilp32-1.d: Likewise.
* ld-x86-64/ilp32-2.d: Likewise.
* ld-x86-64/ilp32-3.d: Likewise.
* ld-x86-64/lp64-1.d: Likewise.
* ld-x86-64/lp64-2.d: Likewise.
* ld-x86-64/lp64-3.d: Likewise.
* ld-x86-64/start.s: Likewise.
* ld-x86-64/x86-64.exp: Run ilp32-1, ilp32-2, ilp32-3, ia32-1,
ia32-2, ia32-3, lp64-1, lp64-2 and lp64-3.
2011-01-03 18:16:46 +00:00
H.J. Lu
f024e1550e
Add a testcase for PR ld/12001.
...
2011-01-02 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12001
* ld-misc/defsym.exp: New.
* ld-misc/defsym1.d: Likewise.
* ld-misc/dummy.s: Likewise.
* ld-misc/foo.s: Likewise.
* ld-misc/start.s: Likewise.
2011-01-02 16:04:32 +00:00
H.J. Lu
4fb3aee212
Update copyright in comments to 2011.
2011-01-01 21:42:17 +00:00
H.J. Lu
0db46eb403
Update copyright to 2011.
...
binutils/
2011-01-01 H.J. Lu <hongjiu.lu@intel.com>
* version.c (print_version): Update copyright to 2011.
gas/
2011-01-01 H.J. Lu <hongjiu.lu@intel.com>
* gas.c (parse_args): Update copyright to 2011.
gold/
2011-01-01 H.J. Lu <hongjiu.lu@intel.com>
* version.cc (print_version): Update copyright to 2011.
ld/
2011-01-01 H.J. Lu <hongjiu.lu@intel.com>
* ldver.c (ldversion): Update copyright to 2011.
opcodes/
2011-01-01 H.J. Lu <hongjiu.lu@intel.com>
* i386-gen.c (process_copyright): Update copyright to 2011.
2011-01-01 20:55:48 +00:00
H.J. Lu
9e9e082043
Rotate binutils ChangeLogs.
2011-01-01 16:43:53 +00:00
Dave Anglin
db09a73fa4
* ld-undefined/undefined.exp (testline): XFAIL hppa*64*-*-*.
2010-12-31 22:56:36 +00:00
Dave Anglin
70a274ec08
PR ld/12360
...
* ld-elfcomm/elfcomm.exp (test1w1): Use same check as MIPS on
hppa*64*-*-*.
2010-12-31 22:29:19 +00:00
Richard Sandiford
3cc86b96c0
Add change missing from previous commit, and fix misplaced changelog line.
2010-12-31 11:04:55 +00:00
Richard Sandiford
aeffff6722
bfd/
...
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 11:01:00 +00:00
H.J. Lu
351f65ca26
Add x86-64 ILP32 support.
...
bfd/
2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
* archures.c (bfd_mach_x64_32): New.
(bfd_mach_x64_32_intel_syntax): Likewise.
* bfd-in2.h: Regenerated.
* config.bfd (targ64_selvecs): Add bfd_elf32_x86_64_vec for
i[3-7]86-*-linux-*.
(targ_selvecs): Add bfd_elf32_x86_64_vec for x86_64-*-linux-*.
* configure.in: Support bfd_elf32_x86_64_vec.
* configure: Regenerated.
* cpu-i386.c (bfd_x64_32_arch_intel_syntax): New.
(bfd_x64_32_arch): Likewise.
* elf-bfd.h (elf_append_rela): New prototype.
(elf_append_rel): Likewise.
(elf64_r_info): Likewise.
(elf32_r_info): Likewise.
(elf64_r_sym): Likewise.
(elf32_r_sym): Likewise.
* elf64-x86-64.c (ABI_64_P): New.
(elf_x86_64_info_to_howto): Replace ELF64_R_TYPE with
ELF32_R_TYPE. Replace ELF64_ST_TYPE with ELF_ST_TYPE.
(elf_x86_64_check_tls_transition):Likewise.
(elf_x86_64_check_relocs): Likewise.
(elf_x86_64_gc_mark_hook):Likewise.
(elf_x86_64_gc_sweep_hook): Likewise.
(elf_x86_64_relocate_section): Likewise.
(elf_x86_64_reloc_type_class): Likewise.
(ELF_DYNAMIC_INTERPRETER): Renamed to ...
(ELF64_DYNAMIC_INTERPRETER): This.
(ELF32_DYNAMIC_INTERPRETER): New.
(elf_x86_64_link_hash_table): Add r_info, r_sym, swap_reloca_out,
dynamic_interpreter and dynamic_interpreter_size.
(elf_x86_64_get_local_sym_hash): Replace ELF64_R_SYM with
htab->r_sym. Replace ELF64_R_INFO with htab->r_info.
(elf_x86_64_get_local_sym_hash): Likewise.
(elf_x86_64_check_tls_transition):Likewise.
(elf_x86_64_check_relocs): Likewise.
(elf_x86_64_gc_mark_hook):Likewise.
(elf_x86_64_gc_sweep_hook): Likewise.
(elf_x86_64_relocate_section): Likewise.
(elf_x86_64_finish_dynamic_symbol): Likewise.
(elf_x86_64_finish_local_dynamic_symbol): Likewise.
(elf_x86_64_link_hash_table_create): Initialize r_info, r_sym,
swap_reloca_out, dynamic_interpreter and dynamic_interpreter_size.
(elf_x86_64_check_relocs): Check ABI_64_P when requesting for
PIC.
(elf_x86_64_relocate_section): Likewise.
(elf64_x86_64_adjust_dynamic_symbol): Replace sizeof
(Elf64_External_Rela) with bed->s->sizeof_rela.
(elf64_x86_64_allocate_dynrelocs): Likewise.
(elf64_x86_64_size_dynamic_sections): Likewise.
(elf64_x86_64_finish_dynamic_symbol): Likewise.
(elf64_x86_64_append_rela): Removed.
(elf32_x86_64_elf_object_p): New.
Add bfd_elf32_x86_64_vec.
* elf64-x86-64.c (elf64_x86_64_xxx): Renamed to ...
(elf_x86_64_xxx): This.
* elflink.c (bfd_elf_final_link): Check ELF file class on error.
(elf_append_rela): New.
(elf_append_rel): Likewise.
(elf64_r_info): Likewise.
(elf32_r_info): Likewise.
(elf64_r_sym): Likewise.
(elf32_r_sym): Likewise.
* targets.c (bfd_elf32_x86_64_vec): New.
(_bfd_target_vector): Add bfd_elf32_x86_64_vec.
gas/
2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (x86_elf_abi): New.
(i386_mach): Return bfd_mach_x64_32 for ILP32.
(OPTION_N32): Likewise.
(md_longopts): Add "n32" for ELF.
(md_parse_option): Handle OPTION_N32.
(md_show_usage): Add --n32.
(i386_target_format): Update and check x86_elf_abi.
* config/tc-i386.h (ELF_TARGET_FORMAT32): New.
* doc/as.texinfo: Document --n32.
* doc/c-i386.texi: Likewise.
gas/testsuite/
2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/ilp32/lns/ilp32.exp: New.
* gas/i386/ilp32/lns/lns-common-1.d: Likewise.
* gas/i386/ilp32/lns/lns-duplicate.d: Likewise.
* gas/i386/ilp32/cfi/cfi-common-1.d: New.
* gas/i386/ilp32/cfi/cfi-common-2.d: Likewise.
* gas/i386/ilp32/cfi/cfi-common-3.d: Likewise.
* gas/i386/ilp32/cfi/cfi-common-4.d: Likewise.
* gas/i386/ilp32/cfi/cfi-common-5.d: Likewise.
* gas/i386/ilp32/cfi/cfi-common-6.d: Likewise.
* gas/i386/ilp32/cfi/cfi-common-7.d: Likewise.
* gas/i386/ilp32/cfi/cfi-x86_64.d: Likewise.
* gas/i386/ilp32/cfi/ilp32.exp: Likewise.
* gas/i386/ilp32/elf/ehopt0.d: Likewise.
* gas/i386/ilp32/elf/equ-reloc.d: Likewise.
* gas/i386/ilp32/elf/file.d: Likewise.
* gas/i386/ilp32/elf/group0a.d: Likewise.
* gas/i386/ilp32/elf/group0b.d: Likewise.
* gas/i386/ilp32/elf/group1a.d: Likewise.
* gas/i386/ilp32/elf/group1b.d: Likewise.
* gas/i386/ilp32/elf/ifunc-1.d: Likewise.
* gas/i386/ilp32/elf/ilp32.exp: Likewise.
* gas/i386/ilp32/elf/redef.d: Likewise.
* gas/i386/ilp32/elf/section0.d: Likewise.
* gas/i386/ilp32/elf/section1.d: Likewise.
* gas/i386/ilp32/elf/section3.d: Likewise.
* gas/i386/ilp32/elf/section4.d: Likewise.
* gas/i386/ilp32/elf/section6.d: Likewise.
* gas/i386/ilp32/elf/section7.d: Likewise.
* gas/i386/ilp32/elf/struct.d: Likewise.
* gas/i386/ilp32/elf/symtab.d: Likewise.
* gas/i386/ilp32/elf/symver.d: Likewise.
* gas/i386/ilp32/ilp32.exp: New.
* gas/i386/ilp32/immed64.d: Likewise.
* gas/i386/ilp32/mixed-mode-reloc64.d: Likewise.
* gas/i386/ilp32/reloc64.d: Likewise.
* gas/i386/ilp32/rex.d: Likewise.
* gas/i386/ilp32/rexw.d: Likewise.
* gas/i386/ilp32/svme64.d: Likewise.
* gas/i386/ilp32/x86-64-addr32.d: Likewise.
* gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
* gas/i386/ilp32/x86-64-aes.d: Likewise.
* gas/i386/ilp32/x86-64-aes-intel.d: Likewise.
* gas/i386/ilp32/x86-64-amdfam10.d: Likewise.
* gas/i386/ilp32/x86-64-arch-1.d: Likewise.
* gas/i386/ilp32/x86-64-arch-2.d: Likewise.
* gas/i386/ilp32/x86-64-avx.d: Likewise.
* gas/i386/ilp32/x86-64-avx-intel.d: Likewise.
* gas/i386/ilp32/x86-64-avx-swap.d: Likewise.
* gas/i386/ilp32/x86-64-avx-swap-intel.d: Likewise.
* gas/i386/ilp32/x86-64-branch.d: Likewise.
* gas/i386/ilp32/x86-64-cbw.d: Likewise.
* gas/i386/ilp32/x86-64-cbw-intel.d: Likewise.
* gas/i386/ilp32/x86-64-clmul.d: Likewise.
* gas/i386/ilp32/x86-64-clmul-intel.d: Likewise.
* gas/i386/ilp32/x86-64-crc32.d: Likewise.
* gas/i386/ilp32/x86-64-crc32-intel.d: Likewise.
* gas/i386/ilp32/x86-64-crx.d: Likewise.
* gas/i386/ilp32/x86-64-crx-suffix.d: Likewise.
* gas/i386/ilp32/x86-64.d: Likewise.
* gas/i386/ilp32/x86-64-disp.d: Likewise.
* gas/i386/ilp32/x86-64-disp-intel.d: Likewise.
* gas/i386/ilp32/x86-64-drx.d: Likewise.
* gas/i386/ilp32/x86-64-drx-suffix.d: Likewise.
* gas/i386/ilp32/x86-64-ept.d: Likewise.
* gas/i386/ilp32/x86-64-ept-intel.d: Likewise.
* gas/i386/ilp32/x86-64-fma4.d: Likewise.
* gas/i386/ilp32/x86-64-fma.d: Likewise.
* gas/i386/ilp32/x86-64-fma-intel.d: Likewise.
* gas/i386/ilp32/x86-64-gidt.d: Likewise.
* gas/i386/ilp32/x86-64-ifunc.d: Likewise.
* gas/i386/ilp32/x86-64-intel64.d: Likewise.
* gas/i386/ilp32/x86-64-io.d: Likewise.
* gas/i386/ilp32/x86-64-io-intel.d: Likewise.
* gas/i386/ilp32/x86-64-io-suffix.d: Likewise.
* gas/i386/ilp32/x86-64-localpic.d: Likewise.
* gas/i386/ilp32/x86-64-mem.d: Likewise.
* gas/i386/ilp32/x86-64-mem-intel.d: Likewise.
* gas/i386/ilp32/x86-64-movbe.d: Likewise.
* gas/i386/ilp32/x86-64-movbe-intel.d: Likewise.
* gas/i386/ilp32/x86-64-nops-1-core2.d: Likewise.
* gas/i386/ilp32/x86-64-nops-1.d: Likewise.
* gas/i386/ilp32/x86-64-nops-1-k8.d: Likewise.
* gas/i386/ilp32/x86-64-nops-1-nocona.d: Likewise.
* gas/i386/ilp32/x86-64-nops-1-pentium.d: Likewise.
* gas/i386/ilp32/x86-64-nops-2.d: Likewise.
* gas/i386/ilp32/x86-64-nops-3.d: Likewise.
* gas/i386/ilp32/x86-64-nops-4-core2.d: Likewise.
* gas/i386/ilp32/x86-64-nops-4.d: Likewise.
* gas/i386/ilp32/x86-64-nops-4-k8.d: Likewise.
* gas/i386/ilp32/x86-64-nops-5.d: Likewise.
* gas/i386/ilp32/x86-64-nops-5-k8.d: Likewise.
* gas/i386/ilp32/x86-64-nops.d: Likewise.
* gas/i386/ilp32/x86-64-opcode.d: Likewise.
* gas/i386/ilp32/x86-64-opcode-inval.d: Likewise.
* gas/i386/ilp32/x86-64-opcode-inval-intel.d: Likewise.
* gas/i386/ilp32/x86-64-opts.d: Likewise.
* gas/i386/ilp32/x86-64-opts-intel.d: Likewise.
* gas/i386/ilp32/x86-64-pcrel.d: Likewise.
* gas/i386/ilp32/x86-64-reg.d: Likewise.
* gas/i386/ilp32/x86-64-reg-intel.d: Likewise.
* gas/i386/ilp32/x86-64-rep.d: Likewise.
* gas/i386/ilp32/x86-64-rep-suffix.d: Likewise.
* gas/i386/ilp32/x86-64-rip.d: Likewise.
* gas/i386/ilp32/x86-64-rip-intel.d: Likewise.
* gas/i386/ilp32/x86-64-sib.d: Likewise.
* gas/i386/ilp32/x86-64-sib-intel.d: Likewise.
* gas/i386/ilp32/x86-64-simd.d: Likewise.
* gas/i386/ilp32/x86-64-simd-intel.d: Likewise.
* gas/i386/ilp32/x86-64-simd-suffix.d: Likewise.
* gas/i386/ilp32/x86-64-sse2avx.d: Likewise.
* gas/i386/ilp32/x86-64-sse2avx-opts.d: Likewise.
* gas/i386/ilp32/x86-64-sse2avx-opts-intel.d: Likewise.
* gas/i386/ilp32/x86-64-sse3.d: Likewise.
* gas/i386/ilp32/x86-64-sse4_1.d: Likewise.
* gas/i386/ilp32/x86-64-sse4_1-intel.d: Likewise.
* gas/i386/ilp32/x86-64-sse4_2.d: Likewise.
* gas/i386/ilp32/x86-64-sse4_2-intel.d: Likewise.
* gas/i386/ilp32/x86-64-sse-check.d: Likewise.
* gas/i386/ilp32/x86-64-sse-check-none.d: Likewise.
* gas/i386/ilp32/x86-64-sse-check-warn.d: Likewise.
* gas/i386/ilp32/x86-64-sse-noavx.d: Likewise.
* gas/i386/ilp32/x86-64-ssse3.d: Likewise.
* gas/i386/ilp32/x86-64-stack.d: Likewise.
* gas/i386/ilp32/x86-64-stack-intel.d: Likewise.
* gas/i386/ilp32/x86-64-stack-suffix.d: Likewise.
* gas/i386/ilp32/x86-64-unwind.d: Likewise.
* gas/i386/ilp32/x86-64-vmx.d: Likewise.
* gas/i386/ilp32/x86-64-xsave.d: Likewise.
* gas/i386/ilp32/x86-64-xsave-intel.d: Likewise.
ld/
2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
* emulparams/elf32_x86_64.sh: New.
* configure.tgt (targ64_extra_emuls): Add elf32_x86_64 for
i[3-7]86-*-linux-*.
(targ_extra_libpath): Likewise.
(targ_extra_emuls): Add elf32_x86_64 for x86_64-*-linux-*.
(targ_extra_libpath): Likewise.
* Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf32_x86_64.c.
(eelf32_x86_64.c): New.
* Makefile.in: Regenerated.
opcodes/
2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (print_insn): Support bfd_mach_x64_32 and
bfd_mach_x64_32_intel_syntax.
2010-12-31 00:33:36 +00:00
H.J. Lu
3458c4521e
Mention PR ld/12327 in ChangeLog entry.
2010-12-29 01:03:31 +00:00
H.J. Lu
abd4c01a40
Add testcases for PR ld/12327.
...
2010-12-28 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12327
* ld-scripts/defined4.d: New.
* ld-scripts/defined4.s: Likewise.
* ld-scripts/defined4.t: Likewise.
* ld-scripts/expr2.d: Likewise.
* ld-scripts/expr2.s: Likewise.
* ld-scripts/expr2.t: Likewise.
* ld-scripts/defined.exp: Run defined4.
* ld-scripts/expr.exp: Run expr2.
2010-12-28 18:04:10 +00:00
Kai Tietz
c91a930cb7
2010-12-21 Kai Tietz <kai.tietz@onevision.com>
...
* peXXigen.c (_bfd_XXi_final_link_postscript): Use
bfd_get_symbol_leading_char to determine "_tls_used" name.
2010-12-21 Kai Tietz <kai.tietz@onevision.com>
* ld-pe/pe.exp: Add TLS directory test.
* ld-pe/tlssec.s: New.
* ld-pe/tlssec64.d: New.
* ld-pe/tlssec32.d: New.
2010-12-21 15:24:39 +00:00
Thomas Schwinge
43fbacdedc
Adjust URLs.
2010-12-21 11:00:48 +00:00
Alan Modra
66a3cb9c76
* ld-bootstrap/bootstrap.exp: Fix misplaced comment.
2010-12-20 13:05:00 +00:00
Alan Modra
5c3049d2ef
* ld.texinfo (Expression Section): Describe treatment of numbers
...
and absolute symbols.
* ldemul.c (after_open_default): Look up __ld_compatibility.
* ldexp.c (fold_name): Convert absolute symbols to numbers when
inside output section definitions, or when __ld_compatibility >= 221.
(exp_fold_tree_1): Convert numbers to absolute when not in output
section definition and __ld_compatibility < 221. Don't always
convert values outside an output section definition to absolute.
* ldexp.h (uses_defined): Comment.
* ldlang.c (ld_compatibility): New variable.
* ldlang.h (ld_compatibility): Declare.
* emultempl/aix.em, * emultempl/armcoff.em, * emultempl/beos.em,
* emultempl/elf32.em, * emultempl/genelf.em, * emultempl/lnk960.em,
* emultempl/m68kcoff.em, * emultempl/mmo.em, * emultempl/pe.em,
* emultempl/pep.em, * emultempl/sunos.em, * emultempl/z80.em: Call
after_open_default from after_open function.
2010-12-20 13:00:14 +00:00
Alan Modra
e759c11602
PR ld/12001
...
Revert 2010-11-03 Nick Clifton
* ldlang.c (ldlang_def_chain_list): Delete.
(insert_defined, ldlang_add_def, lang_place_defineds): Delete.
(lang_process): Don't call lang_place_defineds.
(lang_add_assignment): Don't do anything special for --defsym.
* ldexp.h (struct ldexp_control): Add uses_defined.
(exp_fold_tree_no_dot): Declare.
* ldexp.c (exp_fold_tree): Clear uses_defined.
(exp_fold_tree_no_dot): Likewise. Make global.
(fold_name <DEFINED>): Set uses_defined.
(exp_fold_tree_1 <etree_assign>): Define symbol during first phase
even when the value being assigned isn't valid.
* ldlang.c (open_input_bfds): Process assignment statements.
(lang_process): Bump lang_statement_iteration.
(scan_for_self_assignment): Formatting.
(print_assignment): Style.
testsuite/
* ld-scripts/default-script2.d: Revert 2010-11-03 change.
2010-12-20 06:27:11 +00:00
H.J. Lu
02ecc8e968
Add SORT_BY_INIT_PRIORITY.
...
bfd/
2010-12-15 H.J. Lu <hongjiu.lu@intel.com>
* elf.c (_bfd_elf_new_section_hook): Special handling for
.init_array/.fini_array output sections.
ld/
2010-12-15 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am (GENSCRIPTS): Add @enable_initfini_array@.
* NEWS: Mention SORT_BY_INIT_PRIORITY.
* configure.in: Add AC_CANONICAL_BUILD.
Add --enable-initfini-array.
* genscripts.sh (ENABLE_INITFINI_ARRAY): New.
* ld.h (sort_type): Add by_init_priority.
* ld.texinfo: Document SORT_BY_INIT_PRIORITY.
* ldgram.y (SORT_BY_INIT_PRIORITY): New.
(wildcard_spec): Handle SORT_BY_INIT_PRIORITY.
* ldlang.c (get_init_priority): New.
(compare_section): Use get_init_priority for by_init_priority.
* ldlex.l (SORT_BY_INIT_PRIORITY): New.
* scripttempl/elf.sc: Support ENABLE_INITFINI_ARRAY.
* Makefile.in: Regenerated.
* aclocal.m4: Regenerated.
* config.in: Likewise.
* configure: Likewise.
ld/testsuite/
2010-12-15 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/elf.exp (array_tests): Add init-mixed.
(array_tests_static): Likewise.
Also delete tmpdir/init-mixed.
* ld-elf/init-mixed.c: New.
* ld-elf/init-mixed.out: Likewise.
2010-12-15 14:56:40 +00:00
Alan Modra
4610564552
* ldlang.c (load_symbols): Correct last change.
2010-12-13 01:06:35 +00:00
H.J. Lu
db0ca79ff4
Optimize for add_archive_element.
...
bfd/
2010-12-12 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (elf_link_add_archive_symbols): Remove subsbfd.
ld/
2010-12-12 H.J. Lu <hongjiu.lu@intel.com>
* ldlang.c (load_symbols): Optimize for add_archive_element.
2010-12-12 14:52:27 +00:00
Alan Modra
3710d6361b
* ld-elfvers/vers25a.dsym: Really include _? in match.
2010-12-11 12:58:36 +00:00
Mike Frysinger
b9e33f301e
ld: elfvers tests: support symbol prefixed targets
...
The symbol versioning tests mix C-visible symbols and linker-visible
symbols in order to verify .symver behavior. This works for most
people, but fail for targets that have a symbol prefix. So add a
helper file with macros that expand gcc's __USER_LABEL_PREFIX__ as
necessary and convert all .symver users over to it.
Now that the tests are usable on prefixed targets, update the tests
to take into account an optional leading underscore.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-12-10 06:08:11 +00:00
Mike Frysinger
8b9a522f57
bfd/binutils/gas/gprof/ld/libiberty/opcodes: add .gitignore
...
This seems to cover a few random targets as well as --enable-targets=all.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-12-09 09:03:18 +00:00
H.J. Lu
94bf3a11ec
Add -flto and -flto-partition=.
...
2010-12-06 H.J. Lu <hongjiu.lu@intel.com>
* lexsup.c (ld_options): Add -flto and -flto-partition= for
GCC LTO option compatibility.
2010-12-06 23:35:13 +00:00
H.J. Lu
d251c5c4e1
Don't add the trailing `\n' for LDPL_ERROR.
...
2010-12-06 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12288
* plugin.c (message): Don't add the trailing `\n' for
LDPL_ERROR.
2010-12-06 21:47:43 +00:00
H.J. Lu
ada487f6b3
Remove the trailing `\n' from TV_MESSAGE.
...
2010-12-06 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12288
* testplug.c: Remove the trailing `\n' from TV_MESSAGE.
2010-12-06 20:59:20 +00:00
H.J. Lu
d9b2146348
Use putchar for the trailing `\n' in plugin message.
...
bfd/
2010-12-06 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
PR ld/12288
* plugin.c (message): Add putchar for the trailing `\n'.
ld/
2010-12-06 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
PR ld/12288
* plugin.c (message): Use putchar for the trailing `\n'.
2010-12-06 20:25:49 +00:00
H.J. Lu
e73d965c22
Call xatexit with plugin_call_cleanup.
...
2010-12-06 H.J. Lu <hongjiu.lu@intel.com>
Dmitry Gorbachev <d.g.gorbachev@gmail.com>
PR ld/12289
* ldmain.c (main): Don't call plugin_call_cleanup.
* plugin.c (plugin_call_cleanup): Make it static.
(message): Don't call plugin_call_cleanup.
(plugin_load_plugins): Call xatexit with plugin_call_cleanup.
2010-12-06 12:44:51 +00:00
H.J. Lu
3b8525f821
Call plugin_call_cleanup on plugin fatal error.
...
2010-12-05 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12289
* plugin.c (message): Call plugin_call_cleanup on fatal
error.
2010-12-06 05:38:11 +00:00
H.J. Lu
7990daecfc
Add a space after `:' in plugin error message.
...
2010-12-05 H.J. Lu <hongjiu.lu@intel.com>
* plugin.c (message): Add a space after `:' in error message.
2010-12-06 02:28:31 +00:00
H.J. Lu
7ac96fb5a8
Add `%P' on error in plugin message.
2010-12-06 00:59:14 +00:00
H.J. Lu
ea360572bd
Add the trailing `\n' to einfo in plugin.c.
...
2010-12-05 H.J. Lu <hongjiu.lu@intel.com>
* plugin.c (asymbol_from_plugin_symbol): Add the trailing `\n'
to einfo.
(get_symbols): Likewise.
(plugin_notice): Likewise.
(plugin_multiple_definition): Likewise.
2010-12-06 00:53:20 +00:00
H.J. Lu
2be3382c20
Mention PR ld/12277 in ChangeLog.
2010-12-06 00:51:14 +00:00
H.J. Lu
b7f4214449
Add the trailing `\n' to pluin message.
...
2010-12-05 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12288
* plugin.c (message): Add the trailing `\n'.
2010-12-06 00:49:00 +00:00
H.J. Lu
b7f95647fd
Replace is_archive with maybe_archive.
...
2010-12-05 H.J. Lu <hongjiu.lu@intel.com>
* ldfile.c (ldfile_open_file_search): Check maybe_archive instead
of is_archive.
* emultempl/aix.em: Likewise.
* emultempl/elf32.em: Likewise.
* emultempl/linux.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/pep.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/vms.em: Likewise.
* ldlang.c (new_afile): Set maybe_archive instead of is_archive..
* ldlang.h (lang_input_statement_struct): Replace is_archive
with maybe_archive.
2010-12-06 00:07:06 +00:00
H.J. Lu
cfac8028e4
Properly convert LTO plugin visibility to ELF visibility.
...
ld/
2010-12-05 H.J. Lu <hongjiu.lu@intel.com>
* plugin.c (asymbol_from_plugin_symbol): Properly convert LTO
plugin visibility to ELF visibility.
(is_visible_from_outside): Re-indent.
ld/testsuite/
2010-12-05 H.J. Lu <hongjiu.lu@intel.com>
* ld-plugin/plugin-vis-1.d: Updated.
2010-12-06 00:00:15 +00:00
H.J. Lu
1d62840f4f
Don't pass -fvtable-gc to GCC 3.4.0 or above.
...
2010-12-04 H.J. Lu <hongjiu.lu@intel.com>
* ld-selective/selective.exp: Don't pass -fvtable-gc to GCC
3.4.0 or above.
2010-12-04 18:32:52 +00:00
H.J. Lu
8233c39317
Replace -export-dynamic with -Wl,-export-dynamic.
...
2010-12-04 H.J. Lu <hongjiu.lu@intel.com>
* ld-elfvers/vers.exp: Replace -export-dynamic with
-Wl,-export-dynamic.
2010-12-04 18:07:42 +00:00
Alan Modra
c5b0a9ef7e
* ldlang.c (lang_size_sections_1): Align lma using same alignment
...
as for vma.
2010-12-04 03:30:45 +00:00
H.J. Lu
99bca8f991
Fix a typo in comments.
...
2010-12-03 H.J. Lu <hongjiu.lu@intel.com>
* lexsup.c (ld_options): Fix a typo in comments.
2010-12-03 22:03:22 +00:00
H.J. Lu
8be6259eb2
Break long lines.
2010-12-02 01:26:07 +00:00
H.J. Lu
a48d02c9a7
Re-indent plugin.h.
...
2010-12-01 H.J. Lu <hongjiu.lu@intel.com>
* plugin.h: Re-indent.
2010-12-02 01:22:54 +00:00
Matthew Gretton-Dann
c3e5cf5f4d
* ld/testsuite/ld-scripts/script.exp: Remove full path from REGION_ALIAS test
...
names.
2010-11-30 13:38:59 +00:00
Alan Modra
9203b09a4b
Add sparc64-rtems.
2010-11-30 01:14:08 +00:00
Alan Modra
a9a7adc0f4
update japanese translation
2010-11-26 00:00:55 +00:00
Matthew Gretton-Dann
d9a88323fe
* ld/testsuite/ld-arm/arm-elf.exp (armeabitests): Replace --defsym argument in
...
jump-reloc-veneers* tests with --section-start .text=0x8000.
2010-11-25 09:34:43 +00:00
Alan Modra
1de34e0afe
Update translations
2010-11-25 06:08:52 +00:00
Alan Modra
add44f8d5c
* scripttempl/elf.sc: Group .text.exit, text.startup and .text.hot
...
sections.
2010-11-25 03:03:02 +00:00
Nick Clifton
c77912127f
* configure.ac: For --enable-gold, handle value `default' instead of
...
`both*'. New configure option --{en,dis}able-ld.
ld, gold/
* configure.ac: For --enable-gold, handle value `default' instead of
`both*'. Always install ld as ld.gold, install as ld if gold is
the default.
2010-11-23 13:39:57 +00:00
H.J. Lu
f84854b643
Re-indent plugin code.
...
2010-11-21 H.J. Lu <hongjiu.lu@intel.com>
* ldfile.c: Re-indent plugin code.
* ldlang.c: Likewise.
* ldmain.c: Likewise.
* plugin.c: Likewise.
2010-11-21 20:36:25 +00:00
H.J. Lu
5c08b7d40e
Set alignment of common plugin symbol to 1 for For ELF targets.
...
2010-11-20 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12246
* plugin.c (asymbol_from_plugin_symbol): Set alignment of
common symbol to 1 for For ELF targets.
2010-11-20 17:34:16 +00:00
H.J. Lu
f9982339c9
Properly report loading plugin error.
...
2010-11-20 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12247
* lexsup.c (parse_args): Properly report loading plugin error.
2010-11-20 17:32:07 +00:00
Richard Sandiford
eb22018c4c
binutils/testsuite/
...
* lib/binutils-common.exp (regexp_diff): New procedure.
* lib/utils-lib.exp (regexp_diff): Delete.
gas/testsuite/
* lib/gas-defs.exp (regexp_diff): Delete.
(run_dump_test): Remove final "" argument in call to regexp_diff.
(run_list_test): Likewise.
(run_list_test_stdin): Likewise.
* gas/all/gas.exp (test_cond): Likewise.
* gas/elf/elf.exp (run_elf_list_test): Likewise.
* gas/m68k/all.exp: Likewise.
* gas/mep/complex-relocs.exp (regexp_test): Likewise.
* gas/mt/relocs.exp (regexp_test): Likewise.
* gas/symver/symver.exp (run_error_test): Likewise.
ld/testsuite/
* lib/ld-lib.exp (regexp_diff, simple_diff): Delete.
2010-11-20 15:36:34 +00:00
Richard Sandiford
f3097f3364
binutils/testsuite/
...
* lib/binutils-common.exp: New file.
* lib/utils-lib.exp (load_common_lib): New function. Load
binutils-common.exp.
(is_elf_format): Delete.
gas/testsuite/
* lib/gas-defs.exp (load_common_lib): New function. Load
binutils-common.exp.
(is_elf_format, is_aout_format, is_pecoff_format): Delete.
ld/testsuite/
* lib/ld-lib.exp (load_common_lib): New function. Load
binutils-common.exp.
(is_elf_format, is_elf64, is_aout_format, is_pecoff_format): Delete.
2010-11-20 15:36:10 +00:00
Dave Korn
42a851a999
* plugin.c (is_visible_from_outside): New function.
...
(get_symbols): Use it.
2010-11-19 03:31:06 +00:00
Alan Modra
99753d9d70
* ld-elf/binutils.exp: Correct x86 gnu target match.
...
* ld-i386/i386.exp: Likewise.
* ld-ifunc/binutils.exp: Likewise.
* ld-ifunc/ifunc.exp: Likewise.
* ld-discard/discard.exp: Remove unnecessary line continuations.
* ld-elfvers/vers.exp: Likewise. Simplify linuxaout and linuxoldld
test.
* ld-elfweak/elfweak.exp: Likewise.
2010-11-18 06:57:57 +00:00
Andreas Schwab
3a072d2c6d
* ld/testsuite/ld-gc/pr11218-2.c: Declare
...
unresolved_detected_at_runtime_not_at_linktime.
2010-11-16 23:41:38 +00:00
Alan Modra
283c0b82c3
* ld-plugin/plugin.exp: Define printf and puts as main.
2010-11-16 23:00:48 +00:00
Mike Frysinger
ca00c57b8c
blackfin: add support for L1 code/data flags
...
forgot to `cvs add` this file
2010-11-16 03:33:07 +00:00
Mike Frysinger
781303cee5
blackfin: add support for L1 code/data flags
...
Add new linker options for marking programs to load into L1 memory
at runtime. This needs new EF flag bits, so declare them.
Signed-off-by: Jie Zhang <jie.zhang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-11-15 22:30:47 +00:00
Alan Modra
c85f715a62
* emultempl/pe.em (_list_options): Correct typo.
...
* emultempl/pep.em (_list_options): Likewise.
2010-11-15 22:01:17 +00:00
Thomas Schwinge
5940a93c84
Improve binutils testsuite coverage for GNU/Hurd.
...
binutils/testsuite/
* lib/utils-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
* binutils-all/elfedit-2.d (target): Likewise.
* binutils-all/elfedit-3.d (target): Likewise.
* binutils-all/i386/i386.exp: Likewise.
* binutils-all/objcopy.exp: Likewise.
* binutils-all/strip-3.d (target): Likewise.
gas/testsuite/
* lib/gas-defs.exp (is_elf_format): Consider for *-*-gnu*, too.
* gas/elf/elf.exp: Likewise.
* gas/symver/symver.exp: Likewise.
ld/
* configure.host: Add stanza for *-*-gnu*.
ld/testsuite/
* lib/ld-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
* ld-discard/discard.exp: Likewise.
* ld-elf/binutils.exp: Likewise.
* ld-elf/commonpage1.d (target): Likewise.
* ld-elf/compress1c.d (target): Likewise.
* ld-elf/discard1.d (target): Likewise.
* ld-elf/discard2.d (target): Likewise.
* ld-elf/discard3.d (target): Likewise.
* ld-elf/dynsym1.d (target): Likewise.
* ld-elf/eh6.d (target): Likewise.
* ld-elf/elf.exp: Likewise.
(array_tests): Move -static tests to...
(array_tests_static): ... here, and handle it accordingly.
* ld-elf/hash.d (target): Likewise.
* ld-elf/header.d (target): Likewise.
* ld-elf/loadaddr1.d (target): Likewise.
* ld-elf/loadaddr2.d (target): Likewise.
* ld-elf/loadaddr3a.d (target): Likewise.
* ld-elf/loadaddr3b.d (target): Likewise.
* ld-elf/local1.d (target): Likewise.
* ld-elf/maxpage1.d (target): Likewise.
* ld-elf/maxpage2.d (target): Likewise.
* ld-elf/maxpage3a.d (target): Likewise.
* ld-elf/multibss1.d (target): Likewise.
* ld-elf/noload-2.d (target): Likewise.
* ld-elf/seg.d (target): Likewise.
* ld-elf/textaddr1.d (target): Likewise.
* ld-elf/textaddr2.d (target): Likewise.
* ld-elf/textaddr3.d (target): Likewise.
* ld-elf/textaddr4.d (target): Likewise.
* ld-elf/textaddr5.d (target): Likewise.
* ld-elf/textaddr6.d (target): Likewise.
* ld-elf/textaddr7.d (target): Likewise.
* ld-elf/tls_common.exp: Likewise.
* ld-elf/unknown2.d (target): Likewise.
* ld-elfvers/vers.exp: Likewise.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-elfweak/elfweak.exp: Likewise.
(setup_xfail_gnu_hurd): New function. Use it where appropriate.
* ld-gc/abi-note.d (target): Likewise.
* ld-gc/gc.exp: Likewise.
* ld-gc/pr11218.d (target): Likewise.
* ld-gc/start.d (target): Likewise.
* ld-i386/i386.exp: Likewise.
* ld-ifunc/binutils.exp: Likewise.
* ld-ifunc/ifunc.exp: Likewise.
* ld-linkonce/linkonce.exp: Likewise.
* ld-linkonce/zeroehl32.d (target): Likewise.
* ld-pie/pie.exp: Likewise.
* ld-scripts/phdrs2.exp: Likewise.
* ld-scripts/rgn-at5.d (target): Likewise.
* ld-shared/shared.exp: Likewise.
* ld-undefined/entry-3.d (target): Likewise.
* ld-undefined/entry-4.d (target): Likewise.
* ld-undefined/weak-undef.exp: Likewise.
2010-11-08 06:43:40 +00:00
Alan Modra
a92833adb6
* ld-plugin/plugin-6.d: Relax file name match.
2010-11-06 10:47:32 +00:00
Richard Sandiford
04ea1ddd35
Fix spacing.
2010-11-05 17:21:06 +00:00
Richard Sandiford
a38ce0d06c
ld/
...
2010-11-05 Pierre Muller <muller@ics.u-strasbg.fr>
* emultempl/spuelf.em (new_tmp_file): Fix wrong first parameter.
2010-11-05 17:20:17 +00:00
Joseph Myers
0547accfd9
bfd:
...
* elf32-tic6x.c (elf32_tic6x_obj_attrs_handle_unknown): New.
(elf32_tic6x_merge_attributes): Use
_bfd_elf_merge_unknown_attribute_low and
_bfd_elf_merge_unknown_attribute_list.
(elf_backend_obj_attrs_handle_unknown): Define.
ld/testsuite:
* ld-tic6x/attr-unknown-1.d, ld-tic6x/attr-unknown-1000-1.s,
ld-tic6x/attr-unknown-1000-2.s, ld-tic6x/attr-unknown-1024-1.s,
ld-tic6x/attr-unknown-2.d, ld-tic6x/attr-unknown-3.d,
ld-tic6x/attr-unknown-4.d, ld-tic6x/attr-unknown-5.d,
ld-tic6x/attr-unknown-54-1.s, ld-tic6x/attr-unknown-55-a.s,
ld-tic6x/attr-unknown-6.d, ld-tic6x/attr-unknown-7.d,
ld-tic6x/attr-unknown-71-a.s, ld-tic6x/attr-unknown-71-b.s: New
tests.
2010-11-05 13:04:07 +00:00
Tristan Gingold
2ee0aedfb8
bfd/
...
2010-11-05 Tristan Gingold <gingold@adacore.com>
* po/bfd.pot: Regenerate
binutils/
2010-11-05 Tristan Gingold <gingold@adacore.com>
* po/binutils.pot: Regenerate
gas/
2010-11-05 Tristan Gingold <gingold@adacore.com>
* po/gas.pot: Regenerate
* po/POTFILES.in: Regenerate
gprof/
2010-11-05 Tristan Gingold <gingold@adacore.com>
* po/gprof.pot: Regenerate
ld/
2010-11-05 Tristan Gingold <gingold@adacore.com>
* po/ld.pot: Regenerate
* po/POTFILES.in: Regenerate
opcodes/
2010-11-05 Tristan Gingold <gingold@adacore.com>
* po/opcodes.pot: Regenerate
2010-11-05 10:25:11 +00:00
Tristan Gingold
44f4576731
binutils/
...
2010-11-05 Tristan Gingold <gingold@adacore.com>
* NEWS: Add marker for 2.21.
gas/
2010-11-05 Tristan Gingold <gingold@adacore.com>
* NEWS: Add marker for 2.21.
ld/
2010-11-05 Tristan Gingold <gingold@adacore.com>
* NEWS: Add marker for 2.21.
2010-11-05 08:33:51 +00:00
Dave Korn
36fe835f75
* ld-plugin/plugin.exp (testobjfiles): Dont use HOSTING_CRT0.
...
(testobjfiles_notext): Likewise.
(libs): Don't use HOSTING_LIBS; fill with default symbol defs instead.
* lib/ld-lib.exp (ld_simple_link_defsyms): Add cygming clause.
2010-11-05 07:23:10 +00:00
Dave Korn
d44ad554d4
* plugin.h (plugin_active_plugins_p): New prototype.
...
(is_ir_dummy_bfd): Delete prototype.
* plugin.c: Fix formatting issues.
(is_ir_dummy_bfd): Make static.
(plugin_active_plugins_p): New function.
* ldfile.c (ldfile_try_open_bfd): Use it to save work if no plugins
are loaded. Always close file descriptor after claim handler returns.
* ldmain.c (add_archive_element): Likewise.
2010-11-05 07:20:07 +00:00
Alan Modra
f4eaaf7fce
* ldlang.c (lang_add_section): Distinguish ELF treatment of NOLOAD.
...
(map_input_to_output_sections): Likewise.
(lang_size_sections_1): Likewise.
(IGNORE_SECTION): Don't test SEC_NEVER_LOAD.
(lang_check_section_addresses): Likewise.
2010-11-05 05:56:53 +00:00
Alan Modra
677ba44709
* ld-elfvers/vers32c.dsym, * ld-elfvers/vers32c.ver: Delete.
...
* ld-elfvers/vers32d.ver: Delete.
* ld-elfvers/vers.exp: Don't run them.
2010-11-05 03:54:21 +00:00
Kai Tietz
802d48223b
bfd/
...
2010-11-04 Kai Tietz <kai.tietz@onevision.com>
* coffcode.h (GNU_LINKONCE_WT): New.
(sec_to_styp_flags): Add handling of new debug
section.
(styp_to_sec_flags): Likewise.
ld/
010-11-04 Kai Tietz <kai.tietz@onevision.com>
* scripttempl/pe.sc (.debug_types): New.
* scripttempl/pep.sc: Likewise.
2010-11-04 16:03:25 +00:00
Alan Modra
129b5d55a3
* plugin.c (is_ir_dummy_bfd): Don't segfault on NULL abfd.
2010-11-04 12:44:54 +00:00
Nick Clifton
e597fa0866
PR ld/12001
...
* ldlang.c (ldlang_def_chain_list): New variable. Contains a list
of symbols defined via the --defsym command line option and
currently waiting assignment.
(insert_defined): Add a defined symbol to the symbol table.
(ldlang_add_def): Add a entry to the ldlang_def_chain_list.
(lang_place_defineds): Walk ldlang_def_chain_list defining the
symbols.
(lang_process): Call lang_place_defineds.
(lang_add_assignment): If the assignment has come from a --defsym
command line option then call lang_add_def.
* ld-script/default-script2.d: Fix expected address for text
section.
PR gold/12001
* script.h (class Symbol_assignment: name): New member. Returns
the name of the symbol.
* scrfipt.cc (Script_options::is_pending_assignment): New member.
Returns true if the given symbol name is on the list of
assignments wating to be processed.
* archive.cc (should_incldue_member): If the symbol is undefined,
check to see if it is on the list of symbols pending assignment.
2010-11-03 17:18:23 +00:00
Alan Modra
2ebf396434
* Makefile.am (eelf64hppa.c): Correct dependencies.
...
* Makefile.in: Regenerate.
2010-11-03 03:22:01 +00:00
Joseph Myers
877791769e
bfd:
...
* elf32-tic6x.c (elf32_tic6x_obj_attrs_arg_type): Except for
Tag_ABI_compatibility, treat odd tags as strings and even ones as
integers.
(elf32_tic6x_obj_attrs_order, elf32_tic6x_tag_to_array_alignment,
elf32_tic6x_array_alignment_to_tag): New.
(elf32_tic6x_merge_attributes): Handle more attributes. Set type
for merged attributes.
(elf_backend_obj_attrs_order): Define.
binutils:
* readelf.c (display_tic6x_attribute): Handle more attributes.
gas:
* config/tc-tic6x.c (OPTION_MPID, OPTION_MPIC, OPTION_MNO_PIC):
New enum values.
(md_longopts): Add options mpid, mpic and mno-pic.
(tic6x_pid_type, tic6x_pid, tic6x_pic, tic6x_pid_type_table,
tic6x_pid_types, tic6x_use_pid): New.
(md_parse_option): Handle new options.
(md_show_usage): Output help text for new options.
(tic6x_set_attributes): Set PID and PIC attributes.
* doc/as.texinfo: Document -mpid=, -mpic and -mno-pic.
* doc/c-tic6x.texi (TIC6X Options): Likewise.
gas/testsuite:
* gas/tic6x/attr-array-directive-1.d,
gas/tic6x/attr-array-directive-1.s,
gas/tic6x/attr-array-directive-2.d,
gas/tic6x/attr-array-directive-2.s,
gas/tic6x/attr-array-directive-3.d,
gas/tic6x/attr-array-directive-3.s,
gas/tic6x/attr-array-directive-4.d,
gas/tic6x/attr-array-directive-4.s,
gas/tic6x/attr-conformance-directive-1.d,
gas/tic6x/attr-conformance-directive-1.s,
gas/tic6x/attr-conformance-directive-2.d,
gas/tic6x/attr-conformance-directive-2.s,
gas/tic6x/attr-pic-directive-1.d,
gas/tic6x/attr-pic-directive-1.s,
gas/tic6x/attr-pic-directive-2.d,
gas/tic6x/attr-pic-directive-2.s,
gas/tic6x/attr-pic-opts-mno-pic.d, gas/tic6x/attr-pic-opts-mpic.d,
gas/tic6x/attr-pid-directive-1.d,
gas/tic6x/attr-pid-directive-1.s,
gas/tic6x/attr-pid-directive-2.d,
gas/tic6x/attr-pid-directive-2.s,
gas/tic6x/attr-pid-opts-mpid-far.d,
gas/tic6x/attr-pid-opts-mpid-near.d,
gas/tic6x/attr-pid-opts-mpid-no.d,
gas/tic6x/attr-stack-directive-1.d,
gas/tic6x/attr-stack-directive-1.s,
gas/tic6x/attr-stack-directive-2.d,
gas/tic6x/attr-stack-directive-2.s,
gas/tic6x/attr-wchar-directive-1.d,
gas/tic6x/attr-wchar-directive-1.s,
gas/tic6x/attr-wchar-directive-2.d,
gas/tic6x/attr-wchar-directive-2.s: New tests.
include/elf:
* tic6x-attrs.h (Tag_ABI_wchar_t, Tag_ABI_stack_align_needed,
Tag_ABI_stack_align_preserved, Tag_ABI_PID, Tag_ABI_PIC,
Tag_ABI_array_object_alignment,
Tag_ABI_array_object_align_expected, Tag_ABI_conformance): Define.
ld/testsuite:
* ld-tic6x/attr-array-16-16.d, ld-tic6x/attr-array-16-4.d,
ld-tic6x/attr-array-16-416.d, ld-tic6x/attr-array-16-48.d,
ld-tic6x/attr-array-16-8.d, ld-tic6x/attr-array-16-816.d,
ld-tic6x/attr-array-16.s, ld-tic6x/attr-array-4-16.d,
ld-tic6x/attr-array-4-4.d, ld-tic6x/attr-array-4-416.d,
ld-tic6x/attr-array-4-48.d, ld-tic6x/attr-array-4-8.d,
ld-tic6x/attr-array-4-816.d, ld-tic6x/attr-array-4.s,
ld-tic6x/attr-array-416-16.d, ld-tic6x/attr-array-416-4.d,
ld-tic6x/attr-array-416-416.d, ld-tic6x/attr-array-416-48.d,
ld-tic6x/attr-array-416-8.d, ld-tic6x/attr-array-416-816.d,
ld-tic6x/attr-array-416.s, ld-tic6x/attr-array-48-16.d,
ld-tic6x/attr-array-48-4.d, ld-tic6x/attr-array-48-416.d,
ld-tic6x/attr-array-48-48.d, ld-tic6x/attr-array-48-8.d,
ld-tic6x/attr-array-48-816.d, ld-tic6x/attr-array-48.s,
ld-tic6x/attr-array-8-16.d, ld-tic6x/attr-array-8-4.d,
ld-tic6x/attr-array-8-416.d, ld-tic6x/attr-array-8-48.d,
ld-tic6x/attr-array-8-8.d, ld-tic6x/attr-array-8-816.d,
ld-tic6x/attr-array-8.s, ld-tic6x/attr-array-816-16.d,
ld-tic6x/attr-array-816-4.d, ld-tic6x/attr-array-816-416.d,
ld-tic6x/attr-array-816-48.d, ld-tic6x/attr-array-816-8.d,
ld-tic6x/attr-array-816-816.d, ld-tic6x/attr-array-816.s,
ld-tic6x/attr-conformance-10-10.d,
ld-tic6x/attr-conformance-10-11.d,
ld-tic6x/attr-conformance-10-none.d,
ld-tic6x/attr-conformance-10.s, ld-tic6x/attr-conformance-11-10.d,
ld-tic6x/attr-conformance-11-11.d,
ld-tic6x/attr-conformance-11-none.d,
ld-tic6x/attr-conformance-11.s,
ld-tic6x/attr-conformance-none-10.d,
ld-tic6x/attr-conformance-none-11.d,
ld-tic6x/attr-conformance-none-none.d,
ld-tic6x/attr-conformance-none.s, ld-tic6x/attr-pic-0.s,
ld-tic6x/attr-pic-00.d, ld-tic6x/attr-pic-01.d,
ld-tic6x/attr-pic-1.s, ld-tic6x/attr-pic-10.d,
ld-tic6x/attr-pic-11.d, ld-tic6x/attr-pid-0.s,
ld-tic6x/attr-pid-00.d, ld-tic6x/attr-pid-01.d,
ld-tic6x/attr-pid-02.d, ld-tic6x/attr-pid-1.s,
ld-tic6x/attr-pid-10.d, ld-tic6x/attr-pid-11.d,
ld-tic6x/attr-pid-12.d, ld-tic6x/attr-pid-2.s,
ld-tic6x/attr-pid-20.d, ld-tic6x/attr-pid-21.d,
ld-tic6x/attr-pid-22.d, ld-tic6x/attr-stack-16-16.d,
ld-tic6x/attr-stack-16-8.d, ld-tic6x/attr-stack-16-816.d,
ld-tic6x/attr-stack-16.s, ld-tic6x/attr-stack-8-16.d,
ld-tic6x/attr-stack-8-8.d, ld-tic6x/attr-stack-8-816.d,
ld-tic6x/attr-stack-8.s, ld-tic6x/attr-stack-816-16.d,
ld-tic6x/attr-stack-816-8.d, ld-tic6x/attr-stack-816-816.d,
ld-tic6x/attr-stack-816.s, ld-tic6x/attr-wchar-0.s,
ld-tic6x/attr-wchar-00.d, ld-tic6x/attr-wchar-01.d,
ld-tic6x/attr-wchar-02.d, ld-tic6x/attr-wchar-1.s,
ld-tic6x/attr-wchar-10.d, ld-tic6x/attr-wchar-11.d,
ld-tic6x/attr-wchar-12.d, ld-tic6x/attr-wchar-2.s,
ld-tic6x/attr-wchar-20.d, ld-tic6x/attr-wchar-21.d,
ld-tic6x/attr-wchar-22.d: New tests.
2010-11-02 14:36:39 +00:00
H.J. Lu
34734a010b
Include compressed DWARF debug sections in ELF linker scripts.
...
binutils/testsuite/
2010-11-02 H.J. Lu <hongjiu.lu@intel.com>
* binutils-all/libdw2.out: Also accept MIPS_DWARF.
ld/
2010-11-02 H.J. Lu <hongjiu.lu@intel.com>
* scripttempl/armbpabi.sc: Include compressed DWARF debug
sections.
* scripttempl/avr.sc: Likewise.
* scripttempl/elf32cr16.sc: Likewise.
* scripttempl/elf32crx.sc: Likewise.
* scripttempl/elf32msp430.sc: Likewise.
* scripttempl/elf32msp430_3.sc: Likewise.
* scripttempl/elf32sh-symbian.sc: Likewise.
* scripttempl/elf64hppa.sc: Likewise.
* scripttempl/elf_chaos.sc: Likewise.
* scripttempl/elfd10v.sc: Likewise.
* scripttempl/elfd30v.sc: Likewise.
* scripttempl/elfi370.sc: Likewise.
* scripttempl/elfm68hc11.sc: Likewise.
* scripttempl/elfm68hc12.sc: Likewise.
* scripttempl/elfxtensa.sc: Likewise.
* scripttempl/ip2k.sc: Likewise.
* scripttempl/iq2000.sc: Likewise.
* scripttempl/mep.sc: Likewise.
* scripttempl/mmo.sc: Likewise.
* scripttempl/v850.sc: Likewise.
* scripttempl/xstormy16.sc: Likewise.
ld/testsuite/
2010-11-02 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/compress1a.d: Also check MIPS_DWARF.
* ld-elf/compress1b.d: Likewise.
* ld-elf/compress1c.d: Likewise.
2010-11-02 13:47:44 +00:00
Joseph Myers
3cbd1c0665
bfd:
...
* elf32-tic6x.c (elf32_tic6x_obj_attrs_arg_type): Check
Tag_ABI_compatibility not Tag_compatibility.
(elf32_tic6x_merge_attributes): Update compatibility attribute
name in comment. Return FALSE if merging common attributes fails.
binutils:
* readelf.c (display_tic6x_attribute): Use Tag_ABI_compatibility
not hardcoded 32. Display name of this attribute.
gas:
* doc/c-tic6x.texi (TIC6X Directives): Mention
Tag_ABI_compatibility.
gas/testsuite:
* gas/tic6x/attr-compatibility-directive-1.d,
gas/tic6x/attr-compatibility-directive-1.s,
gas/tic6x/attr-compatibility-directive-2.d,
gas/tic6x/attr-compatibility-directive-2.s: New tests.
include/elf:
* tic6x-attrs.h (Tag_ABI_compatibility): Define.
ld/testsuite:
* ld-tic6x/attr-compatibility-gnu-gnu.d,
ld-tic6x/attr-compatibility-gnu-other.d,
ld-tic6x/attr-compatibility-gnu.s,
ld-tic6x/attr-compatibility-other-gnu.d,
ld-tic6x/attr-compatibility-other-other.d,
ld-tic6x/attr-compatibility-other.s: New tests.
2010-10-29 16:47:55 +00:00
H.J. Lu
29d4a7cacd
Only run ld-elf/compress1c.d for Linux targets.
...
2010-10-29 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/compress1c.d: Only run for Linux targets.
2010-10-29 16:16:59 +00:00
H.J. Lu
4a114e3e0c
Add compressed debug section support to binutils and ld.
...
bfd/
2010-10-29 H.J. Lu <hongjiu.lu@intel.com>
Cary Coutant <ccoutant@google.com>
* archive.c (bfd_openr_next_archived_file): Copy BFD_COMPRESS
and BFD_DECOMPRESS.
* bfd.c (BFD_COMPRESS): New.
(BFD_DECOMPRESS): Likewise.
(BFD_FLAGS_SAVED): Likewise.
(bfd_preserve_save): Replace BFD_IN_MEMORY with BFD_FLAGS_SAVED.
* compress.c (bfd_uncompress_section_contents): Removed.
(get_uncompressed_size): New.
(decompress_contents): Likewise.
(bfd_compress_section_contents): Likewise.
(bfd_get_full_section_contents): Likewise.
(bfd_is_section_compressed): Likewise.
(bfd_init_section_decompress_status): Likewise.
(bfd_init_section_compress_status): Likewise.
* dwarf2.c (dwarf_debug_sections): New.
(dwarf_debug_section_enum): Likewise.
(read_section): Remove section_name and compressed_section_name.
Add dwarf_debug_section_enum. Try compressed debug section.
(read_indirect_string): Updated.
(read_abbrevs): Likewise.
(decode_line_info): Likewise.
(read_debug_ranges): Likewise.
(find_line): Updated.
* ecoff.c (bfd_debug_section): Add compress_status and
compressed_size.
* elf.c (_bfd_elf_make_section_from_shdr): Call
bfd_is_section_compressed to check if a DWARF debug section is
compressed. Call bfd_init_section_compress_status or
bfd_init_section_decompress_status if needed.
* elflink.c (elf_link_input_bfd): Replace bfd_get_section_contents
with bfd_get_full_section_contents.
* merge.c (_bfd_add_merge_section): Likewise.
* reloc.c (bfd_generic_get_relocated_section_contents): Likewise.
* simple.c (bfd_simple_get_relocated_section_contents): Likewise.
* elfxx-target.h (TARGET_BIG_SYM): Allow BFD_COMPRESS and
BFD_DECOMPRESS.
(TARGET_LITTLE_SYM): Likewise.
* libbfd-in.h (dwarf_debug_section): New.
(dwarf_debug_sections): Likewise.
* libbfd.c (_bfd_generic_get_section_contents): Issue an error
when getting contents on compressed/decompressed section.
* section.c (COMPRESS_SECTION_NONE): New.
(COMPRESS_SECTION_DONE): Likewise.
(DECOMPRESS_SECTION_SIZED): Likewise.
(BFD_FAKE_SECTION): Add compress_status and compressed_size.
(bfd_malloc_and_get_section): Replace bfd_get_section_contents
with bfd_get_full_section_contents.
* bfd-in2.h: Regenerated.
* libbfd.h: Likewise.
binutils/
2010-10-29 H.J. Lu <hongjiu.lu@intel.com>
* addr2line.c (process_file): Set BFD_DECOMPRESS.
* objcopy.c (do_debug_sections): New.
(OPTION_COMPRESS_DEBUG_SECTIONS): New.
(OPTION_DECOMPRESS_DEBUG_SECTIONS): Likewise.
(copy_options): Add OPTION_COMPRESS_DEBUG_SECTIONS and
OPTION_DECOMPRESS_DEBUG_SECTIONS.
(copy_usage): Add --compress-debug-sections and
--decompress-debug-sections.
(copy_file): Set BFD_COMPRESS or BFD_DECOMPRESS.
(copy_section): Replace bfd_get_section_contents with
bfd_get_full_section_contents.
(copy_main): Handle OPTION_COMPRESS_DEBUG_SECTIONS and
OPTION_DECOMPRESS_DEBUG_SECTIONS. Check do_debug_sections to
rename DWARF debug sections.
* objdump.c (load_specific_debug_section): Replace
bfd_get_section_contents with bfd_get_full_section_contents.
Remove bfd_uncompress_section_contents.
(dump_section): Replace bfd_get_section_contents with
bfd_get_full_section_contents.
(display_file): Set BFD_DECOMPRESS if needed.
* readelf.c (uncompress_section_contents): Set buffer to NULL
to indiate decompression failure.
(load_specific_debug_section): Always call
uncompress_section_contents.
* doc/binutils.texi: Document --compress-debug-sections and
--decompress-debug-sections.
binutils/testsuite/
2010-10-29 H.J. Lu <hongjiu.lu@intel.com>
* binutils-all/compress.exp: New.
* binutils-all/dw2-1.S: Likewise.
* binutils-all/dw2-2.S: Likewise.
* binutils-all/libdw2-compressed.out: Likewise.
* binutils-all/libdw2.out: Likewise.
gas/
2010-10-29 H.J. Lu <hongjiu.lu@intel.com>
* write.c (compress_debug): Optimize section flags check.
gas/testsuite/
2010-10-29 H.J. Lu <hongjiu.lu@intel.com>
* elf/dwarf2-1.s: Replace .zdebug_abbrev section with
.debug_abbrev section.
* elf/dwarf2-2.3: Likewise.
* elf/dwarf2-1.d: Pass --compress-debug-sections to assembler.
Updated.
* elf/dwarf2-2.d: Likewise.
* gas/i386/i386.exp: Remove xfail on dw2-compress-2 and
x86-64-dw2-compress-2.
ld/
2010-10-29 H.J. Lu <hongjiu.lu@intel.com>
* ldfile.c (ldfile_try_open_bfd): Set BFD_DECOMPRESS after
bfd_openr returns.
* emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Likewise.
* scripttempl/elf.sc: Include compressed DWARF debug sections.
ld/testsuite/
2010-10-29 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/compress.exp: New.
* ld-elf/compress1.s: Likewise.
* ld-elf/compress1a.d: Likewise.
* ld-elf/compress1b.d: Likewise.
* ld-elf/compress1c.d: Likewise.
2010-10-29 12:10:39 +00:00
Joseph Myers
b559362370
bfd:
...
2010-10-29 Bernd Schmidt <bernds@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* elf32-tic6x.c (elf32_tic6x_merge_attributes): Check for mismatch
of DSBT attributes.
binutils:
2010-10-29 Bernd Schmidt <bernds@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* readelf.c (display_tic6x_attribute): Handle Tag_ABI_DSBT.
gas:
2010-10-29 Bernd Schmidt <bernds@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* config/tc-tic6x.c (OPTION_MDSBT, OPTION_MNO_DSBT): New enum
values.
(md_longopts): Add mdsbt and mno-dsbt.
(tic6x_dsbt): New static variable.
(md_parse_option): Handle OPTION_MDSBT and OPTION_MNO_DSBT.
(md_show_usage): Output help text for -mdsbt and -mno-dsbt.
(TAG): Add comma at the end.
(tic6x_set_attributes): Set Tag_ABI_DSBT.
* doc/as.texinfo: Document -mdsbt and -mno-dsbt.
* doc/c-tic6x.texi (TIC6X Options): Likewise.
(TIC6X Directives): Mention Tag_ABI_DSBT.
gas/testsuite:
2010-10-29 Bernd Schmidt <bernds@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* gas/tic6x/attr-dsbt-directive-1.d,
gas/tic6x/attr-dsbt-directive-1.s,
gas/tic6x/attr-dsbt-directive-2.d,
gas/tic6x/attr-dsbt-directive-2.s,
gas/tic6x/attr-dsbt-opts-mdsbt.d,
gas/tic6x/attr-dsbt-opts-mno-dsbt.d: New tests.
include/elf:
2010-10-29 Bernd Schmidt <bernds@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* tic6x-attrs.h (Tag_ABI_DSBT): New.
ld/testsuite:
2010-10-29 Bernd Schmidt <bernds@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* ld-tic6x/attr-dsbt-0.s, ld-tic6x/attr-dsbt-00.d,
ld-tic6x/attr-dsbt-01.d, ld-tic6x/attr-dsbt-1.s,
ld-tic6x/attr-dsbt-10.d, ld-tic6x/attr-dsbt-11.d: New tests.
2010-10-29 00:15:59 +00:00
Alan Modra
ace9d8665f
* ldfile.c (find_scripts_dir): Don't look in absolute SCRIPTDIR.
2010-10-28 12:06:27 +00:00
Alan Modra
9160ea826a
Add directory section for info document.
2010-10-28 11:40:26 +00:00
Thomas Schwinge
4287f8de97
ld/testsuite/
...
* ld-scripts/script.exp: Sort all filename globs.
gas/testsuite/
* gas/iq2000/load-hazards.exp: Sort all filename globs.
* gas/iq2000/yield.exp: Likewise.
* gas/mt/errors.exp: Likewise.
2010-10-28 09:10:08 +00:00
Alan Modra
24b01a7495
* ld-elfvers/vers.exp: Enable test for powerpc64.
...
* ld-elfweak/elfweak.exp: Likewise
* ld-shared/shared.exp: Likewise. Xfail non-pic dso tests for ppc64.
* ld-elfvers/vers1.dsym, * ld-elfvers/vers1.sym,
* ld-elfvers/vers2.dsym, * ld-elfvers/vers3.dsym,
* ld-elfvers/vers4.sym, * ld-elfvers/vers4a.dsym,
* ld-elfvers/vers4a.sym, * ld-elfvers/vers6.dsym,
* ld-elfvers/vers6.sym, * ld-elfvers/vers7a.dsym,
* ld-elfvers/vers7a.sym, * ld-elfvers/vers9.dsym,
* ld-elfvers/vers9.sym, * ld-elfvers/vers15.dsym,
* ld-elfvers/vers15.sym, * ld-elfvers/vers16.dsym,
* ld-elfvers/vers16a.dsym, * ld-elfvers/vers17.dsym,
* ld-elfvers/vers18.dsym, * ld-elfvers/vers18.sym,
* ld-elfvers/vers19.dsym, * ld-elfvers/vers20.dsym,
* ld-elfvers/vers21.dsym, * ld-elfvers/vers21.sym,
* ld-elfvers/vers22.dsym, * ld-elfvers/vers22a.dsym,
* ld-elfvers/vers22a.sym, * ld-elfvers/vers22b.dsym,
* ld-elfvers/vers23.dsym, * ld-elfvers/vers23a.dsym,
* ld-elfvers/vers23a.sym, * ld-elfvers/vers23b.dsym,
* ld-elfvers/vers25a.dsym, * ld-elfvers/vers26a.dsym,
* ld-elfvers/vers27a.dsym, * ld-elfvers/vers27d.dsym,
* ld-elfvers/vers27d.sym, * ld-elfvers/vers27d4.dsym,
* ld-elfvers/vers28b.dsym, * ld-elfvers/vers28c.dsym,
* ld-elfvers/vers29.dsym, * ld-elfvers/vers30.dsym,
* ld-elfvers/vers31.dsym, * ld-elfvers/vers32a.dsym,
* ld-elfvers/vers32b.dsym, * ld-elfvers/vers32c.dsym,
* ld-elfweak/dso.dsym, * ld-elfweak/dsodata.dsym,
* ld-elfweak/dsow.dsym, * ld-elfweak/dsowdata.dsym,
* ld-elfweak/strong.sym, * ld-elfweak/strongcomm.sym,
* ld-elfweak/strongdata.sym, * ld-elfweak/weak.dsym,
* ld-elfweak/weakdata.dsym: Relax whitespace matching, tighten
non-whitespace matching. Match powerpc64 functions in .opd section.
* ld-shared/elf-offset.ld: Place powerpc64 .toc sections.
2010-10-28 09:08:35 +00:00
Alan Modra
71755fdf7b
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): For
...
--no-undefined-version, don't report dot sym versions added by ld.
2010-10-28 08:38:45 +00:00
Alan Modra
f0e607602e
* ld-plugin/plugin.exp (libs): Remove $LIBS.
2010-10-28 08:16:34 +00:00
Alan Modra
24898b7032
* ldlang.h (ldlang_add_undef): Add cmdline param.
...
* ldlang.c (undef_from_cmdline): New var.
(ldlang_add_undef): Add cmdline param. Set undef_from_cmdline.
(lang_end): Really require -e or -u from command line on
relocatable --gc-sections.
* ldemul.c (after_parse_default): Adjust ldlang_add_undef call.
* ldgram.y (extern_name_list_body): Likewise.
* lexsup.c (parse_args): Likewise.
* emultempl/aix.em (gld${EMULATION_NAME}_read_file): Likewise.
2010-10-28 06:45:33 +00:00
Alan Modra
47f929815c
* ld-elf/sec-to-seg.exp (B_test_same_seg): Clear for i960,
...
microblaze, moxie, and mt.
2010-10-28 06:27:55 +00:00