old-cross-binutils/ld/testsuite/ChangeLog

1592 lines
52 KiB
Text
Raw Normal View History

2009-10-07 18:31:50 +00:00
2009-10-06 Nathan Sidwell <nathan@codesourcery.com>
* ld-scripts/phdrs3.d: New.
* ld-scripts/phdrs3.t: New.
* ld-scripts/phdrs3.exp: New.
2009-10-03 Alan Modra <amodra@bigpond.net.au>
* ld-powerpc/tlsexe.d: Update.
* ld-powerpc/tlsexe.r: Update.
* ld-powerpc/tlsexetoc.d: Update.
* ld-powerpc/tlsexetoc.r: Update.
* ld-powerpc/tlsso.d: Update.
* ld-powerpc/tlsso.r: Update.
* ld-powerpc/tlstocso.d: Update.
* ld-powerpc/tlstocso.r: Update.
2009-10-02 Alan Modra <amodra@bigpond.net.au>
* lib/ld-lib.exp (ld_simple_link_defsyms): New proc, adding
powerpc-*-rtems to code setting symbols, extracted from..
* ld-srec/srec.exp (run_srec_test): ..here. Correct flags for sh64.
* ld-gc/gc.exp (test_gc): Use ld_simple_link_defsyms.
2009-10-01 Ulrich Weigand <uweigand@de.ibm.com>
* ld-spu/icache1.d: Update to new section layout.
bfd/ 2009-09-24 H.J. Lu <hongjiu.lu@intel.com> PR ld/10630 * elflink.c (elf_link_output_extsym): Turn off visibility on local symbol. (bfd_elf_final_link): Turn off visibility on dynamic local symbol. ld/testsuite/ 2009-09-24 H.J. Lu <hongjiu.lu@intel.com> PR ld/10630 * ld-alpha/tlsbin.rd: Remove HIDDEN/.hidden on local symbols. * ld-alpha/tlsbinr.rd: Likewise. * ld-alpha/tlspic.rd: Likewise. * ld-cris/libdso-2.d: Likewise. * ld-cris/locref1.d: Likewise. * ld-cris/locref2.d: Likewise. * ld-cris/tls-e-20a.d: Likewise. * ld-cris/tls-e-20.d: Likewise. * ld-cris/tls-e-80.d: Likewise. * ld-cris/tls-gc-68.d: Likewise. * ld-cris/tls-gc-69.d: Likewise. * ld-cris/tls-gc-70.d: Likewise. * ld-cris/tls-gc-75.d: Likewise. * ld-cris/tls-gc-76.d: Likewise. * ld-cris/tls-gc-79.d: Likewise. * ld-cris/tls-gd-1h.d: Likewise. * ld-cris/tls-gd-2h.d: Likewise. * ld-cris/tls-ld-4.d: Likewise. * ld-cris/tls-ld-5.d: Likewise. * ld-cris/tls-ld-6.d: Likewise. * ld-cris/tls-ld-7.d: Likewise. * ld-cris/tls-ldgd-14.d: Likewise. * ld-cris/tls-ldgd-15.d: Likewise. * ld-cris/tls-local-63.d: Likewise. * ld-cris/tls-local-64.d: Likewise. * ld-elf/pr9676.rd: Likewise. * ld-elf/pr9679.rd: Likewise. * ld-elfvsb/hidden2.d: Likewise. * ld-i386/tlsbindesc.rd: Likewise. * ld-i386/tlsbin.rd: Likewise. * ld-i386/tlsdesc.rd: Likewise. * ld-i386/tlsgdesc.rd: Likewise. * ld-i386/tlsnopic.rd: Likewise. * ld-i386/tlspic.rd: Likewise. * ld-ia64/tlsbin.rd: Likewise. * ld-ia64/tlspic.rd: Likewise. * ld-powerpc/tlsexe32.r: Likewise. * ld-powerpc/tlsexe.r: Likewise. * ld-powerpc/tlsexetoc.r: Likewise. * ld-powerpc/tlsso32.r: Likewise. * ld-powerpc/tlsso.r: Likewise. * ld-powerpc/tlstocso.r: Likewise. * ld-s390/tlsbin_64.rd: Likewise. * ld-s390/tlsbin.rd: Likewise. * ld-s390/tlspic_64.rd: Likewise. * ld-s390/tlspic.rd: Likewise. * ld-sparc/gotop32.rd: Likewise. * ld-sparc/gotop64.rd: Likewise. * ld-sparc/tlssunbin32.rd: Likewise. * ld-sparc/tlssunbin64.rd: Likewise. * ld-sparc/tlssunnopic32.rd: Likewise. * ld-sparc/tlssunnopic64.rd: Likewise. * ld-sparc/tlssunpic32.rd: Likewise. * ld-sparc/tlssunpic64.rd: Likewise. * ld-x86-64/tlsbindesc.rd: Likewise. * ld-x86-64/tlsbin.rd: Likewise. * ld-x86-64/tlsdesc.rd: Likewise. * ld-x86-64/tlsgdesc.rd: Likewise. * ld-x86-64/tlspic.rd: Likewise. * ld-xtensa/tlsbin.rd: Likewise. * ld-xtensa/tlspic.rd: Likewise. * ld-elf/local1.d: New. * ld-elf/local1.map: Likewise. * ld-elf/local1.s: Likewise. * ld-ia64/local1.d: Likewise. * ld-ia64/local1.map: Likewise. * ld-ia64/local1.s: Likewise.
2009-09-24 15:56:52 +00:00
2009-09-24 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10630
* ld-alpha/tlsbin.rd: Remove HIDDEN/.hidden on local symbols.
* ld-alpha/tlsbinr.rd: Likewise.
* ld-alpha/tlspic.rd: Likewise.
* ld-cris/libdso-2.d: Likewise.
* ld-cris/locref1.d: Likewise.
* ld-cris/locref2.d: Likewise.
* ld-cris/tls-e-20a.d: Likewise.
* ld-cris/tls-e-20.d: Likewise.
* ld-cris/tls-e-80.d: Likewise.
* ld-cris/tls-gc-68.d: Likewise.
* ld-cris/tls-gc-69.d: Likewise.
* ld-cris/tls-gc-70.d: Likewise.
* ld-cris/tls-gc-75.d: Likewise.
* ld-cris/tls-gc-76.d: Likewise.
* ld-cris/tls-gc-79.d: Likewise.
* ld-cris/tls-gd-1h.d: Likewise.
* ld-cris/tls-gd-2h.d: Likewise.
* ld-cris/tls-ld-4.d: Likewise.
* ld-cris/tls-ld-5.d: Likewise.
* ld-cris/tls-ld-6.d: Likewise.
* ld-cris/tls-ld-7.d: Likewise.
* ld-cris/tls-ldgd-14.d: Likewise.
* ld-cris/tls-ldgd-15.d: Likewise.
* ld-cris/tls-local-63.d: Likewise.
* ld-cris/tls-local-64.d: Likewise.
* ld-elf/pr9676.rd: Likewise.
* ld-elf/pr9679.rd: Likewise.
* ld-elfvsb/hidden2.d: Likewise.
* ld-i386/tlsbindesc.rd: Likewise.
* ld-i386/tlsbin.rd: Likewise.
* ld-i386/tlsdesc.rd: Likewise.
* ld-i386/tlsgdesc.rd: Likewise.
* ld-i386/tlsnopic.rd: Likewise.
* ld-i386/tlspic.rd: Likewise.
* ld-ia64/tlsbin.rd: Likewise.
* ld-ia64/tlspic.rd: Likewise.
* ld-powerpc/tlsexe32.r: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso32.r: Likewise.
* ld-powerpc/tlsso.r: Likewise.
* ld-powerpc/tlstocso.r: Likewise.
* ld-s390/tlsbin_64.rd: Likewise.
* ld-s390/tlsbin.rd: Likewise.
* ld-s390/tlspic_64.rd: Likewise.
* ld-s390/tlspic.rd: Likewise.
* ld-sparc/gotop32.rd: Likewise.
* ld-sparc/gotop64.rd: Likewise.
* ld-sparc/tlssunbin32.rd: Likewise.
* ld-sparc/tlssunbin64.rd: Likewise.
* ld-sparc/tlssunnopic32.rd: Likewise.
* ld-sparc/tlssunnopic64.rd: Likewise.
* ld-sparc/tlssunpic32.rd: Likewise.
* ld-sparc/tlssunpic64.rd: Likewise.
* ld-x86-64/tlsbindesc.rd: Likewise.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-x86-64/tlsdesc.rd: Likewise.
* ld-x86-64/tlsgdesc.rd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.
* ld-xtensa/tlsbin.rd: Likewise.
* ld-xtensa/tlspic.rd: Likewise.
* ld-elf/local1.d: New.
* ld-elf/local1.map: Likewise.
* ld-elf/local1.s: Likewise.
* ld-ia64/local1.d: Likewise.
* ld-ia64/local1.map: Likewise.
* ld-ia64/local1.s: Likewise.
2009-09-23 Matt Rice <ratmice@gmail.com>
* ld-elf/audit.exp: New.
* ld-elf/audit.rd: New.
* ld-elf/depaudit.rd: New.
* ld-elf/depaudit2.rd: New.
2009-09-23 Jie Zhang <jie.zhang@analog.com>
* ld-srec/srec.exp: Add xfails for bfin-*-linux-uclibc.
2009-09-23 Alan Modra <amodra@bigpond.net.au>
* ld-alpha/tlsbin.rd: Tolerate some whitespace differences.
* ld-alpha/tlsbinr.rd: Likewise.
* ld-alpha/tlspic.rd: Likewise.
* ld-arm/armthumb-lib.sym: Likewise.
* ld-arm/farcall-mixed-app.sym: Likewise.
* ld-arm/mixed-app.sym: Likewise.
* ld-arm/mixed-lib.sym: Likewise.
* ld-arm/preempt-app.sym: Likewise.
* ld-arm/use-thumb-lib.sym: Likewise.
* ld-cris/libdso-2.d: Likewise.
* ld-cris/tls-local-63.d: Likewise.
* ld-cris/tls-local-64.d: Likewise.
* ld-cris/tls-und-38.d: Likewise.
* ld-cris/tls-und-42.d: Likewise.
* ld-cris/tls-und-46.d: Likewise.
* ld-cris/tls-und-50.d: Likewise.
* ld-cris/weakref3.d: Likewise.
* ld-cris/weakref4.d: Likewise.
* ld-elf/empty.d: Likewise.
* ld-elf/group1.d: Likewise.
* ld-elf/group3a.d: Likewise.
* ld-elf/group3b.d: Likewise.
* ld-elf/hash.d: Likewise.
* ld-elf/warn1.d: Likewise.
* ld-elf/warn2.d: Likewise.
* ld-elfvers/vers24.rd: Likewise.
* ld-elfvsb/hidden0.d: Likewise.
* ld-elfvsb/hidden1.d: Likewise.
* ld-elfvsb/hidden2.d: Likewise.
* ld-elfvsb/internal0.d: Likewise.
* ld-elfvsb/internal1.d: Likewise.
* ld-elfvsb/protected0.d: Likewise.
* ld-elfvsb/protected1.d: Likewise.
* ld-i386/tlsbin.rd: Likewise.
* ld-i386/tlsbindesc.rd: Likewise.
* ld-i386/tlsdesc.rd: Likewise.
* ld-i386/tlsgdesc.rd: Likewise.
* ld-i386/tlsnopic.rd: Likewise.
* ld-i386/tlspic.rd: Likewise.
* ld-ia64/tlsbin.rd: Likewise.
* ld-ia64/tlspic.rd: Likewise.
* ld-mips-elf/got-vers-1.sd: Likewise.
* ld-mips-elf/mips16-pic-2.nd: Likewise.
* ld-mips-elf/mips16-pic-4a.nd: Likewise.
* ld-mips-elf/pic-and-nonpic-1-rel.nd: Likewise.
* ld-mips-elf/pic-and-nonpic-1.nd: Likewise.
* ld-mips-elf/pic-and-nonpic-3b.nd: Likewise.
* ld-mips-elf/pic-and-nonpic-4b.nd: Likewise.
* ld-mips-elf/pic-and-nonpic-5b.nd: Likewise.
* ld-mips-elf/pic-and-nonpic-6-n32.nd: Likewise.
* ld-mips-elf/pic-and-nonpic-6-n64.nd: Likewise.
* ld-mips-elf/pic-and-nonpic-6-o32.nd: Likewise.
* ld-mips-elf/vxworks1-lib.nd: Likewise.
* ld-mmix/bspec1.d: Likewise.
* ld-mmix/bspec2.d: Likewise.
* ld-mmix/local1.d: Likewise.
* ld-mmix/local3.d: Likewise.
* ld-mmix/local5.d: Likewise.
* ld-mmix/local7.d: Likewise.
* ld-mmix/undef-3.d: Likewise.
* ld-mn10300/i135409-1.d: Likewise.
* ld-mn10300/i135409-2.d: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsexe32.r: Likewise.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso.r: Likewise.
* ld-powerpc/tlsso32.r: Likewise.
* ld-powerpc/tlstocso.r: Likewise.
* ld-powerpc/vxworks1-lib.nd: Likewise.
* ld-s390/tlsbin.rd: Likewise.
* ld-s390/tlsbin_64.rd: Likewise.
* ld-s390/tlspic.rd: Likewise.
* ld-s390/tlspic_64.rd: Likewise.
* ld-sh/tlsbin-2.d: Likewise.
* ld-sh/tlspic-2.d: Likewise.
* ld-sh/vxworks1-lib.nd: Likewise.
* ld-sh/sh64/crange1.rd: Likewise.
* ld-sh/sh64/crange2.rd: Likewise.
* ld-sh/sh64/crange3-cmpct.rd: Likewise.
* ld-sh/sh64/crange3-media.rd: Likewise.
* ld-sh/sh64/crange3.rd: Likewise.
* ld-sh/sh64/crangerel1.rd: Likewise.
* ld-sh/sh64/crangerel2.rd: Likewise.
* ld-sh/sh64/reldl32.rd: Likewise.
* ld-sh/sh64/reldl64.rd: Likewise.
* ld-sparc/gotop32.rd: Likewise.
* ld-sparc/gotop64.rd: Likewise.
* ld-sparc/tlssunbin32.rd: Likewise.
* ld-sparc/tlssunbin64.rd: Likewise.
* ld-sparc/tlssunnopic32.rd: Likewise.
* ld-sparc/tlssunnopic64.rd: Likewise.
* ld-sparc/tlssunpic32.rd: Likewise.
* ld-sparc/tlssunpic64.rd: Likewise.
* ld-vxworks/plt-mips1.d: Likewise.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-x86-64/tlsbindesc.rd: Likewise.
* ld-x86-64/tlsdesc.rd: Likewise.
* ld-x86-64/tlsgdesc.rd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.
* ld-xtensa/tlsbin.rd: Likewise.
* ld-xtensa/tlspic.rd: Likewise.
2009-09-21 Richard Sandiford <rdsandiford@googlemail.com>
PR ld/10681
* ld-elf/eh6.d: Expect absolute pointers in shared libraries to
be converted into PC-relative form.
2009-09-21 Richard Sandiford <rdsandiford@googlemail.com>
* ld-mips-elf/eh-frame5.d: Expect PC-relative encodings
to include DW_EH_PE_sdata4.
2009-09-21 Richard Sandiford <rdsandiford@googlemail.com>
* ld-mips-elf/eh-frame1-n32.d: Expect PC-relative encodings
to include DW_EH_PE_sdata4.
* ld-mips-elf/eh-frame2-n32.d: Likewise.
* ld-mips-elf/eh-frame1-n64.d: Expect PC-relative encodings
to include DW_EH_PE_sdata8.
* ld-mips-elf/eh-frame2-n64.d: Likewise.
include/elf/ * ppc.h (DT_PPC_TLSOPT): Define. * ppc64.h (DT_PPC64_TLSOPT): Define. bfd/ * elf32-ppc.c (TLS_GET_ADDR_GLINK_SIZE): Define. (ADD_3_12_2, BEQLR, CMPWI_11_0, LWZ_11_3, LWZ_12_3): Define. (MR_0_3, MR_3_0): Define. (struct ppc_elf_link_hash_table): Add no_tls_get_addr_opt. (ppc_elf_select_plt_layout): Save emit_stub_syms param earlier. (ppc_elf_tls_setup): Add no_tls_get_addr_opt param and save to hash table. Check for presense of __tls_get_addr_opt (allocate_dynrelocs): Increase glink entry size for __tls_get_addr. (ppc_elf_size_dynamic_sections): Add DT_PPC_TLS_OPT tag. (write_glink_stub): Add param p. (ppc_elf_relocate_section): Adjust write_glink_stub call. (ppc_elf_finish_dynamic_symbol): Emit special glink call stub for __tls_get_addr. * elf32-ppc.h (ppc_elf_tls_setup): Update prototype. * elf64-ppc.c (struct ppc_link_hash_table): Add no_tls_get_addr_opt. (ppc64_elf_tls_setup): Add no_tls_get_addr_opt param and save to hash table. Check for presense of __tls_get_addr_opt. (ppc64_elf_size_dynamic_sections): Add DT_PPC64_TLS_OPT tag. (LD_R11_0R3, LD_R12_0R3, MR_R0_R3, CMPDI_R11_0, ADD_R3_R12_R13, BEQLR, MR_R3_R0, MFLR_R11, STD_R11_0R1, BCTRL, LD_R11_0R1, LD_R2_0R1, MTLR_R11): Define. (build_tls_get_addr_stub): New function. (ppc_build_one_stub): Call it. (ppc_size_one_stub): Add extra size for __tls_get_addr stub. (ppc64_elf_relocate_section): Don't change nop to ld 2,40(1) for __tls_get_addr plt call. * elf64-ppc.h (ppc64_elf_tls_setup): Update prototype. binutils/ * readelf.c (get_ppc_dynamic_type): Add TLSOPT. (get_ppc64_dynamic_type): Likewise. ld/ * emultempl/ppc32elf.em (no_tls_get_addr_opt): New var. (ppc_before_allocation): Pass to ppc_elf_tls_setup. (OPTION_NO_TLS_GET_ADDR_OPT): Define. Redefine other options in terms of previous option. (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --no-tls-get-addr-optimize. (PARSE_AND_LIST_ARGS_CASES): Handle it. * emultempl/ppc64elf.em (no_tls_get_addr_opt): New var. (ppc_before_allocation): Pass to ppc64_elf_tls_setup. (OPTION_NO_TLS_GET_ADDR_OPT): Define. (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --no-tls-get-addr-optimize. (PARSE_AND_LIST_ARGS_CASES): Handle it. ld/testsuite/ * ld-powerpc/tlslib.s: Delete dot-symbol entry syms. Add __tls_get_addr_opt. * ld-powerpc/tlslib32.s: Add __tls_get_addr_opt. * ld-powerpc/oldtlslib.s: New file, old-abi version of tlslib.s. * ld-powerpc/powerpc.exp: Build old-abi library and use it in two new link tests. * ld-powerpc/tlsexe.d: Update for new __tls_get_addr stub. * ld-powerpc/tlsexe.g, * ld-powerpc/tlsexe.r, *ld-powerpc/tlsexe32.d, * ld-powerpc/tlsexe32.g, * ld-powerpc/tlsexe32.r, * ld-powerpc/tlsexetoc.d, * ld-powerpc/tlsexetoc.g, * ld-powerpc/tlsexetoc.r: Likewise.
2009-09-21 11:51:02 +00:00
2009-09-21 Alan Modra <amodra@bigpond.net.au>
* ld-powerpc/tlslib.s: Delete dot-symbol entry syms. Add
__tls_get_addr_opt.
* ld-powerpc/tlslib32.s: Add __tls_get_addr_opt.
* ld-powerpc/oldtlslib.s: New file, old-abi version of tlslib.s.
* ld-powerpc/powerpc.exp: Build old-abi library and use it in
two new link tests.
* ld-powerpc/tlsexe.d: Update for new __tls_get_addr stub.
* ld-powerpc/tlsexe.g, * ld-powerpc/tlsexe.r, *ld-powerpc/tlsexe32.d,
* ld-powerpc/tlsexe32.g, * ld-powerpc/tlsexe32.r,
include/elf/ * ppc.h (DT_PPC_TLSOPT): Define. * ppc64.h (DT_PPC64_TLSOPT): Define. bfd/ * elf32-ppc.c (TLS_GET_ADDR_GLINK_SIZE): Define. (ADD_3_12_2, BEQLR, CMPWI_11_0, LWZ_11_3, LWZ_12_3): Define. (MR_0_3, MR_3_0): Define. (struct ppc_elf_link_hash_table): Add no_tls_get_addr_opt. (ppc_elf_select_plt_layout): Save emit_stub_syms param earlier. (ppc_elf_tls_setup): Add no_tls_get_addr_opt param and save to hash table. Check for presense of __tls_get_addr_opt (allocate_dynrelocs): Increase glink entry size for __tls_get_addr. (ppc_elf_size_dynamic_sections): Add DT_PPC_TLS_OPT tag. (write_glink_stub): Add param p. (ppc_elf_relocate_section): Adjust write_glink_stub call. (ppc_elf_finish_dynamic_symbol): Emit special glink call stub for __tls_get_addr. * elf32-ppc.h (ppc_elf_tls_setup): Update prototype. * elf64-ppc.c (struct ppc_link_hash_table): Add no_tls_get_addr_opt. (ppc64_elf_tls_setup): Add no_tls_get_addr_opt param and save to hash table. Check for presense of __tls_get_addr_opt. (ppc64_elf_size_dynamic_sections): Add DT_PPC64_TLS_OPT tag. (LD_R11_0R3, LD_R12_0R3, MR_R0_R3, CMPDI_R11_0, ADD_R3_R12_R13, BEQLR, MR_R3_R0, MFLR_R11, STD_R11_0R1, BCTRL, LD_R11_0R1, LD_R2_0R1, MTLR_R11): Define. (build_tls_get_addr_stub): New function. (ppc_build_one_stub): Call it. (ppc_size_one_stub): Add extra size for __tls_get_addr stub. (ppc64_elf_relocate_section): Don't change nop to ld 2,40(1) for __tls_get_addr plt call. * elf64-ppc.h (ppc64_elf_tls_setup): Update prototype. binutils/ * readelf.c (get_ppc_dynamic_type): Add TLSOPT. (get_ppc64_dynamic_type): Likewise. ld/ * emultempl/ppc32elf.em (no_tls_get_addr_opt): New var. (ppc_before_allocation): Pass to ppc_elf_tls_setup. (OPTION_NO_TLS_GET_ADDR_OPT): Define. Redefine other options in terms of previous option. (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --no-tls-get-addr-optimize. (PARSE_AND_LIST_ARGS_CASES): Handle it. * emultempl/ppc64elf.em (no_tls_get_addr_opt): New var. (ppc_before_allocation): Pass to ppc64_elf_tls_setup. (OPTION_NO_TLS_GET_ADDR_OPT): Define. (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --no-tls-get-addr-optimize. (PARSE_AND_LIST_ARGS_CASES): Handle it. ld/testsuite/ * ld-powerpc/tlslib.s: Delete dot-symbol entry syms. Add __tls_get_addr_opt. * ld-powerpc/tlslib32.s: Add __tls_get_addr_opt. * ld-powerpc/oldtlslib.s: New file, old-abi version of tlslib.s. * ld-powerpc/powerpc.exp: Build old-abi library and use it in two new link tests. * ld-powerpc/tlsexe.d: Update for new __tls_get_addr stub. * ld-powerpc/tlsexe.g, * ld-powerpc/tlsexe.r, *ld-powerpc/tlsexe32.d, * ld-powerpc/tlsexe32.g, * ld-powerpc/tlsexe32.r, * ld-powerpc/tlsexetoc.d, * ld-powerpc/tlsexetoc.g, * ld-powerpc/tlsexetoc.r: Likewise.
2009-09-21 11:51:02 +00:00
* ld-powerpc/tlsexetoc.d, * ld-powerpc/tlsexetoc.g,
* ld-powerpc/tlsexetoc.r: Likewise.
2009-09-20 Richard Sandiford <rdsandiford@googlemail.com>
* ld-mips-elf/elf-rel-got-n64-linux.d: Expect BALs.
* ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise.
2009-09-19 Richard Sandiford <rdsandiford@googlemail.com>
* ld-mips-elf/eh-frame5.s, ld-mips-elf/eh-frame5.ld,
ld-mips-elf/eh-frame5.d: New test.
* ld-mips-elf/mips-elf.exp: Run it.
2009-09-18 Alan Modra <amodra@bigpond.net.au>
* ld-powerpc/tlsso.d: Update.
* ld-powerpc/tlsso.r: Update.
* ld-powerpc/tlstocso.d: Update.
* ld-powerpc/tlstocso.r: Update.
2009-09-15 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* ld-elfcomm/elfcomm.exp: Add appropriate emulation option
for sh64*-*-*.
* ld-gc/gc.exp (test_gc): Likewise.
2009-09-14 H.J. Lu <hongjiu.lu@intel.com>
* ld-undefined/entry-7.d: New.
2009-09-13 Richard Sandiford <rdsandiford@googlemail.com>
* ld-mips-elf/eh-frame1-n32.d: Change "the section \.eh_frame"
to "the \.eh_frame section".
* ld-mips-elf/eh-frame1-n64.d: Likewise.
* ld-mips-elf/eh-frame2-n32.d: Likewise.
* ld-mips-elf/eh-frame2-n64.d: Likewise.
* ld-mips-elf/eh-frame3.d: Likewise.
* ld-mips-elf/eh-frame4.d: Likewise.
* ld-mips-elf/elf-rel-got-n32.d: Expect bals.
* ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
* ld-mips-elf/mips-elf.exp: Force the MIPS16 PIC tests to use -mips1.
2009-09-11 Jie Zhang <jie.zhang@analog.com>
* ld-elf/warn2.d: `Foo' appears in section 3 when target
is bfin-*-linux-uclibc.
2009-09-09 Daniel Jacobowitz <dan@codesourcery.com>
* ld-arm/farcall-mixed-lib.d: Update.
2009-09-09 Alan Modra <amodra@bigpond.net.au>
* ld-elf/sec64k.exp: For frv-linux use "aw" sections.
* ld-elf/seg.d: Cater for GNU_STACK segment.
* ld-elf/symbol1ref.s: Use data section.
* ld-elf/symbol2ref.s: Likewise.
* ld-scripts/empty-address-1.d: Don't run on frv-linux.
* ld-scripts/empty-address-2a.d: Likewise.
* ld-scripts/empty-address-2b.d: Likewise.
* ld-scripts/empty-aligned.d: Likewise.
* ld-elf/extract-symbol-1sym.d: Tolerate extra target supplied syms.
* ld-scripts/sort_b_a-1.d: Likewise.
* ld-scripts/sort_b_a.d: Likewise.
* ld-scripts/sort_b_a_a-1.d: Likewise.
* ld-scripts/sort_b_a_a-2.d: Likewise.
* ld-scripts/sort_b_a_a-3.d: Likewise.
* ld-scripts/sort_b_a_n-1.d: Likewise.
* ld-scripts/sort_b_a_n-2.d: Likewise.
* ld-scripts/sort_b_a_n-3.d: Likewise.
* ld-scripts/sort_b_n-1.d: Likewise.
* ld-scripts/sort_b_n.d: Likewise.
* ld-scripts/sort_b_n_a-1.d: Likewise.
* ld-scripts/sort_b_n_a-2.d: Likewise.
* ld-scripts/sort_b_n_a-3.d: Likewise.
* ld-scripts/sort_b_n_n-1.d: Likewise.
* ld-scripts/sort_b_n_n-2.d: Likewise.
* ld-scripts/sort_b_n_n-3.d: Likewise.
* ld-scripts/sort_no-1.d: Likewise.
* ld-scripts/sort_no-2.d: Likewise.
2009-09-08 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
* ld-elf/merge.d: xfail cr16-*-*.
2009-09-08 Alan Modra <amodra@bigpond.net.au>
* ld-elf/eh5.d: Don't run on hppa64. Allow non-pcrel encoding.
Skip extra CIEs emitted on embedded targets and adjust FDE
matches to suit.
2009-09-05 Jie Zhang <jie.zhang@analog.com>
* ld-elf/sec64k.exp: Use ".set" instead of "=" for bfin-*-*.
2009-09-03 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/longsecn.d: Adjusted to match new .text section merging
in default PE linker scripts.
* ld-pe/longsecn-1.d: Likewise.
* ld-pe/longsecn-2.d: Likewise.
2009-08-31 Jie Zhang <jie.zhang@analog.com>
* lib/ld-lib.exp (is_elf_format): Return 1 for bfin-*-uclinux.
2009-08-31 Alan Modra <amodra@bigpond.net.au>
* ld-ifunc/ifunc.exp: Match R_PPC64_JUMP_IREL.
2009-08-30 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10569
* ld-elf/commonpage2.d: New.
* ld-elf/maxpage4.d: Likewise.
* ld-elf/maxpage4.t: Likewise.
2009-08-26 Maxim Kuvyrkov <maxim@codesourcery.com>
* ld-m68k/tls-def-1.s: New file.
* ld-m68k/tls-def-1.d: New file.
* ld-m68k/tls-gd-1.d2: New file.
* ld-m68k/tls-gd-1.d3: New file.
* ld-m68k/tls-main-1.s: New file.
* ld-m68k/tls-main-1.d: New file.
* ld-m68k/m68k.exp: Run new TLS tests.
2009-08-23 Andreas Schwab <schwab@linux-m68k.org>
* ld-powerpc/powerpc.exp: Move relaxing and relocatable relaxing
tests from ppc64elftest to ppcelftest and pass -a32 to assembler.
* ld-powerpc/relax.d: Fix whitespace.
* ld-powerpc/relaxr.d: Likewise.
2009-08-21 Daniel Gutson <dgutson@codesourcery.com>
* ld-arm/callweak.d: Opcodes updated.
* ld-arm/callweak.s: Architecture specified.
* ld-arm/callweak-2.d: New test case.
* ld-arm/callweak-2.s: New file.
2009-08-17 Nick Clifton <nickc@redhat.com>
* ld-elf/linkonce1.d: Accept "UNUSED" as part of the name of an
unused reloc.
* ld-elf/linkonce2.d: Likewise.
2009-08-10 Jan Kratochvil <jan.kratochvil@redhat.com>
Test go32 stub preservation by objcopy.
* ld-i386/i386.exp (go32 stub, go32 stub patch the source)
(go32 stub objcopy, go32 stub comparison after objcopy): New.
2009-08-10 Nathan Sidwell <nathan@codesourcery.com>
* ld-powerpc/relax.s: New.
* ld-powerpc/relax.d: New.
* ld-powerpc/relaxr.d: New.
* ld-powerpc/powerpc.exp: Add new tests.
2009-08-06 Nathan Sidwell <nathan@codesourcery.com>
* ld-arm/arm-elf.exp: Add new test.
* ld-arm/cortex-a8-fix-hdr.d: New.
* ld-arm/cortex-a8-fix-hdr.s: New.
* ld-arm/cortex-a8-fix-hdr.t: New.
2009-08-05 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
* ld-spu/fixup.d: New.
* ld-spu/fixup.s: New.
2009-08-05 Nathan Sidwell <nathan@codesourcery.com>
* ld-arm/cortex-a8-far-1.s: New.
* ld-arm/cortex-a8-far-2.s: New.
* ld-arm/cortex-a8-far.d: New.
* ld-arm/arm-elf.exp: Add new test.
2009-08-02 H.J. Lu <hongjiu.lu@intel.com>
PR ld/6443
* ld-i386/i386.exp: Run tlspie1.
* ld-x86-64/x86-64.exp: tlspie1.
* ld-i386/tlspie1.d: New.
* ld-i386/tlspie1.s: Likewise.
* ld-x86-64/tlspie1.d: Likewise.
* ld-x86-64/tlspie1.s: Likewise.
2009-07-31 Hans-Peter Nilsson <hp@bitrange.com>
* ld-mmix/x.s, ld-mmix/y.s, ld-mmix/zeroeh.ld,
ld-mmix/zeroehelf.d, ld-mmix/zeroehmmo.d: Use .gcc_except_table,
not .eh_frame.
2009-07-30 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/shared.exp: Comment out dl3b.
2009-07-30 Hans-Peter Nilsson <hp@bitrange.com>
* ld-scripts/empty-address-3a.d, ld-scripts/empty-address-3b.d:
Skip for mmix-knuth-mmixware.
2009-07-29 Hans-Peter Nilsson <hp@bitrange.com>
* ld-scripts/default-script.s (text): Globalize.
* ld-scripts/default-script1.d, ld-scripts/default-script2.d,
ld-scripts/default-script3.d, ld-scripts/default-script4.d: Adjust
accordingly.
bfd/ 2009-07-25 H.J. Lu <hongjiu.lu@intel.com> * archures.c (bfd_architecture): Add bfd_arch_l1om. (bfd_l1om_arch): New. (bfd_archures_list): Add &bfd_l1om_arch. * bfd-in2.h: Regenerated. * config.bfd (targ64_selvecs): Add bfd_elf64_l1om_vec if bfd_elf64_x86_64_vec is supported. Add bfd_elf64_l1om_freebsd_vec if bfd_elf64_x86_64_freebsd_vec is supported. (targ_selvecs): Likewise. * configure.in: Support bfd_elf64_l1om_vec and bfd_elf64_l1om_freebsd_vec. * configure: Regenerated. * cpu-l1om.c: New. * elf64-x86-64.c (elf64_l1om_elf_object_p): New. (bfd_elf64_l1om_vec): Likewise. (bfd_elf64_l1om_freebsd_vec): Likewise. * Makefile.am (ALL_MACHINES): Add cpu-l1om.lo. (ALL_MACHINES_CFILES): Add cpu-l1om.c. * Makefile.in: Regenerated. * targets.c (bfd_elf64_l1om_vec): New. (bfd_elf64_l1om_freebsd_vec): Likewise. (_bfd_target_vector): Add bfd_elf64_l1om_vec and bfd_elf64_l1om_freebsd_vec. binutils/ 2009-07-25 H.J. Lu <hongjiu.lu@intel.com> * readelf.c (guess_is_rela): Handle EM_L1OM. (dump_relocations): Likewise. (get_machine_name): Likewise. (get_section_type_name): Likewise. (get_elf_section_flags): Likewise. (get_symbol_index_type): Likewise. (is_32bit_abs_reloc): Likewise. (is_32bit_pcrel_reloc): Likewise. (is_64bit_abs_reloc): Likewise. (is_64bit_pcrel_reloc): Likewise. (is_none_reloc): Likewise. gas/ 2009-07-25 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (cpu_arch): Add l1om. (check_cpu_arch_compatible): New. (set_cpu_arch): Use it. (i386_arch): New. (i386_mach): Return bfd_mach_l1om for Intel L1OM. (md_show_usage): Display l1om. (i386_target_format): Return ELF_TARGET_L1OM_FORMAT if cpu_arch_isa_flags.bitfield.cpul1om is set. * config/tc-i386.h (TARGET_ARCH): Use (i386_arch ()). (i386_arch): New. (ELF_TARGET_L1OM_FORMAT): Likewise. * doc/c-i386.texi: Document l1om. gas/testsuite/ 2009-07-25 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/l1om.d: New. * gas/i386/l1om-inval.l: Likewise. * gas/i386/l1om-inval.s: Likewise. * gas/i386/i386.exp: Run l1om-inval and l1om. include/elf/ 2009-07-25 H.J. Lu <hongjiu.lu@intel.com> * common.h (EM_L1OM): New. ld/ 2009-07-25 H.J. Lu <hongjiu.lu@intel.com> * configure.tgt (targ64_extra_emuls): Add elf_l1om if elf_x86_64 is supported. Add elf_l1om_fbsd if elf_x86_64_fbsd is supported. (targ_extra_emuls): Likewise. * Makefile.am (ALL_64_EMULATIONS): Add eelf_l1om.o and eelf_l1om_fbsd.o (eelf_l1om.c): New. (eelf_l1om_fbsd.c): Likewise. * Makefile.in: Regenerated. * emulparams/elf_l1om.sh: New. * emulparams/elf_l1om_fbsd.sh: Likewise. ld/testsuite/ 2009-07-25 H.J. Lu <hongjiu.lu@intel.com> * ld-x86-64/abs-l1om.d: New. * ld-x86-64/protected2-l1om.d: Likewise. * ld-x86-64/protected3-l1om.d: Likewise. * ld-x86-64/x86-64.exp: Run abs-l1om, protected2-l1om and protected3-l1om. opcodes/ 2009-07-25 H.J. Lu <hongjiu.lu@intel.com> * configure.in: Handle bfd_l1om_arch. * disassemble.c (disassembler): Likewise. * configure: Regenerated. * i386-dis.c (print_insn): Handle bfd_mach_l1om and bfd_mach_l1om_intel_syntax. Use 8 bytes per line for Intel L1OM. * i386-gen.c (cpu_flag_init): Set CPU_UNKNOWN_FLAGS to ~CpuL1OM. Add CPU_L1OM_FLAGS. (cpu_flags): Add CpuL1OM. (set_bitfield): Take an argument to set the value field. (process_i386_cpu_flag): Support ~CpuXXX and ~(CpuXXX|CpuYYY). (process_i386_opcode_modifier): Updated. (process_i386_operand_type): Likewise. * i386-init.h: Regenerated. * i386-tbl.h: Likewise. * i386-opc.h (CpuL1OM): New. (CpuXsave): Updated. (i386_cpu_flags): Add cpul1om.
2009-07-25 14:58:58 +00:00
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/abs-l1om.d: New.
* ld-x86-64/protected2-l1om.d: Likewise.
* ld-x86-64/protected3-l1om.d: Likewise.
* ld-x86-64/x86-64.exp: Run abs-l1om, protected2-l1om and
protected3-l1om.
2009-07-24 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
Alan Modra <amodra@bigpond.net.au>
* ld-spu/pic.d: New.
* ld-spu/pic.s: New.
* ld-spu/picdef.s: New.
2009-07-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10434
* ld-x86-64/tlsle1.d: New.
* ld-x86-64/tlsle1.s: Likewise.
* ld-x86-64/x86-64.exp: Run tlsle1.
2009-07-21 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10426
* ld-ifunc/ifunc.exp: Check test-1 and libtest-2.so. Updated.
* ld-ifunc/test-1.c: New.
* ld-ifunc/test-2.c: Likewise.
2009-07-17 Chao-ying Fu <fu@mips.com>
* ld-mips-elf/pic-and-nonpic-3b.dd: Updated to use new PLT
entries.
* ld-mips-elf/pic-and-nonpic-5b.dd: Likewise.
* ld-mips-elf/pic-and-nonpic-6-o32.dd: Likewise.
* ld-mips-elf/pic-and-nonpic-6-n32.dd: Likewise.
* ld-mips-elf/pic-and-nonpic-6-n64.dd: Likewise.
2009-07-16 H.J. Lu <hongjiu.lu@intel.com>
* ld-ifunc/ifunc-5r-local-i386.d: New.
* ld-ifunc/ifunc-5r-local-x86-64.d: Likewise.
2009-07-16 Nathan Sidwell <nathan@codesourcery.com>
* ld-arm/arm-target2.s: Add addend cases.
* ld-arm/arm-target2-rel.d: Adjust.
* ld-arm/arm-target2-abs.d: Adjust.
* ld-arm/arm-target2-got-rel.d: Adjust.
2009-07-13 H.J. Lu <hongjiu.lu@intel.com>
* ld-ifunc/ifunc.exp: Don't use -shared/-static to build object
files. Use ld_simple_link to build static non-ifunc-using
executable. Re-enable static non-ifunc-using executable check.
2009-07-10 H.J. Lu <hongjiu.lu@intel.com>
2009-07-13 16:55:09 +00:00
* ld-ifunc/ifunc.exp: Don't check static non-ifunc-using
executable.
2009-07-10 H.J. Lu <hongjiu.lu@intel.com>
* ld-ifunc/ifunc-1-local-x86.d: Updated.
* ld-ifunc/ifunc-1-x86.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
2009-07-10 H.J. Lu <hongjiu.lu@intel.com>
* ld-ifunc/ifunc-1-local-x86.d: Updated.
* ld-ifunc/ifunc-1-x86.d: Likewise.
* ld-ifunc/ifunc-2-local-x86-64.d: Likewise.
* ld-ifunc/ifunc-2-x86-64.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
2009-07-10 12:19:58 +00:00
2009-07-10 Alan Modra <amodra@bigpond.net.au>
* ld-ifunc/ifunc.exp: Run for powerpc. Really generate static
executables, renaming the existing dynamic but local tests.
2009-07-08 Alan Modra <amodra@bigpond.net.au>
* ld-selective/selective.exp: Remove check that $CC contains the
string "gcc". Do -dumpversion for $CXX.
2009-06-30 Nick Clifton <nickc@redhat.com>
PR 10288
* ld-arm/arm-app.d: Update expcted disassembly.
* ld-arm/arm-be8.d: Likewise.
* ld-arm/arm-call.d: Likewise.
* ld-arm/arm-lib-plt32.d: Likewise.
* ld-arm/arm-lib.d: Likewise.
* ld-arm/arm-movwt.d: Likewise.
* ld-arm/arm-pic-veneer.d: Likewise.
* ld-arm/armthumb-lib.d: Likewise.
* ld-arm/armv4-bx.d: Likewise.
* ld-arm/cortex-a8-fix-b-rel-arm.d: Likewise.
* ld-arm/farcall-mixed-app-v5.d: Likewise.
* ld-arm/farcall-mixed-app.d: Likewise.
* ld-arm/farcall-mixed-lib.d: Likewise.
* ld-arm/farcall-thumb-arm-pic-veneer.d: Likewise.
* ld-arm/farcall-thumb-arm-short.d: Likewise.
* ld-arm/farcall-thumb-arm.d: Likewise.
* ld-arm/farcall-thumb-thumb-m-pic-veneer.d: Likewise.
* ld-arm/farcall-thumb-thumb-m.d: Likewise.
* ld-arm/farcall-thumb-thumb-pic-veneer.d: Likewise.
* ld-arm/farcall-thumb-thumb.d: Likewise.
* ld-arm/group-relocs.d: Likewise.
* ld-arm/mixed-app-v5.d: Likewise.
* ld-arm/mixed-app.d: Likewise.
* ld-arm/mixed-lib.d: Likewise.
* ld-arm/movw-merge.d: Likewise.
* ld-arm/thumb2-b-interwork.d: Likewise.
* ld-arm/tls-app.d: Likewise.
* ld-arm/tls-lib.d: Likewise.
2009-06-29 Nick Clifton <nickc@redhat.com>
PR 10288
* ld-arm/arm-app-abs32.d: Update expected disassembly.
* ld-arm/arm-app.d: Likewise.
* ld-arm/arm-lib-plt32.d: Likewise.
* ld-arm/arm-lib.d: Likewise.
* ld-arm/arm-pic-veneer.d: Likewise.
* ld-arm/armthumb-lib.d: Likewise.
* ld-arm/farcall-mixed-app-v5.d: Likewise.
* ld-arm/farcall-mixed-app.d: Likewise.
* ld-arm/farcall-mixed-lib.d: Likewise.
* ld-arm/group-relocs.d: Likewise.
* ld-arm/mixed-app-v5.d: Likewise.
* ld-arm/mixed-app.d: Likewise.
* ld-arm/mixed-lib.d: Likewise.
* ld-arm/thumb2-bl-undefweak.d: Likewise.
2009-06-27 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10337
* ld-ifunc/binutils.exp: New.
2009-06-25 Kai Tietz <kai.tietz@onevision.com>
* ld-pe/aligncomm-1.c (size_t): Add typedef.
(main): Use it for casting pointer to scalar.
* ld-pe/aligncomm-2.c: Likewise.
* ld-pe/aligncomm-3.c: Likewise.
* ld-pe/aligncomm-4.c: Likewise.
* ld-scripts/empty-address.exp: Make sure that for x86_64-*-mingw*
target imagebase is set to zero.
* ld-scripts/weak.exp: Don't fail for x86_64-*-mingw* target.
2009-06-22 Christophe Lyon <christophe.lyon@st.com>
ld/testsuite:
* ld-arm/farcall-mixed-app.s: Add new references to check more
modes switching.
* ld-arm/farcall-mixed-lib1.s: Likewise.
* ld-arm/farcall-mixed-app-v5.d: Update expected result.
* farcall-mixed-app.d: Likewise.
* ld-arm/farcall-mixed-lib.d: Likewise.
2009-06-22 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/pe-run.exp (proc test_direct_link_dll): Fix incorrect
line-wrapping.
2009-06-19 H.J. Lu <hongjiu.lu@intel.com>
* ld-i386/i386.exp: Run tlsgd2.
* ld-i386/tlsgd2.d: New.
* ld-i386/tlsgd2.s: Likewise.
* ld-x86-64/tlsgd3.d: Updated.
2009-06-18 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/pe-run.exp (proc test_direct_link_dll): Always pass
--enable-auto-import to the linker.
* ld-pe/vers-script-1.d: Replace '\$' by '_' in all symbol names.
* ld-pe/vers-script-3.d: Likewise.
* ld-pe/vers-script-4.d: Likewise.
* ld-pe/vers-script-dll.c: Likewise.
* lib/ld-lib.exp (proc is_pecoff_format): Also return true for
"*-*-cegcc*" targets.
2009-06-15 H.J. Lu <hongjiu.lu@intel.com>
* ld-ifunc/ifunc-9-x86.d: Fix a typo.
2009-06-14 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10270
* ld-ifunc/ifunc-9-x86.d: New.
* ld-ifunc/ifunc-9-x86.s: Likewise.
bfd/ 2009-06-13 H.J. Lu <hongjiu.lu@intel.com> PR ld/10269 * elf32-i386.c: Include "objalloc.h" and "hashtab.h". (elf_i386_link_hash_table): Add loc_hash_table and loc_hash_memory. (elf_i386_local_hash): New. (elf_i386_local_htab_hash): Likewise. (elf_i386_local_htab_eq): Likewise. (elf_i386_get_local_sym_hash): Likewise. (elf_i386_link_hash_table_free): Likewise. (elf_i386_allocate_local_dynrelocs): Likewise. (elf_i386_finish_local_dynamic_symbol): Likewise. (bfd_elf64_bfd_link_hash_table_free): Likewise. (elf_i386_link_hash_table_create): Create loc_hash_table and loc_hash_memory. (elf_i386_check_relocs): Handle local STT_GNU_IFUNC symbols. (elf_i386_size_dynamic_sections): Likewise. (elf_i386_relocate_section): Likewise. (elf_i386_finish_dynamic_sections): Likewise. (elf_i386_finish_dynamic_symbol): Check _DYNAMIC only if sym isn't NULL. * elf64-x86-64.c: Include "objalloc.h" and "hashtab.h". (elf64_x86_64_link_hash_table): Add loc_hash_table and loc_hash_memory. (elf64_x86_64_local_hash): New. (elf64_x86_64_local_htab_hash): Likewise. (elf64_x86_64_local_htab_eq): Likewise. (elf64_x86_64_get_local_sym_hash): Likewise. (elf64_x86_64_link_hash_table_free): Likewise. (elf64_x86_64_allocate_local_dynrelocs): Likewise. (elf64_x86_64_finish_local_dynamic_symbol): Likewise. (bfd_elf64_bfd_link_hash_table_free): Likewise. (elf64_x86_64_link_hash_table_create): Create loc_hash_table and loc_hash_memory. (elf64_x86_64_check_relocs): Handle local STT_GNU_IFUNC symbols. (elf64_x86_64_size_dynamic_sections): Likewise. (elf64_x86_64_relocate_section): Likewise. (elf64_x86_64_finish_dynamic_sections): Likewise. (elf64_x86_64_finish_dynamic_symbol): Check _DYNAMIC only if sym isn't NULL. gas/ 2009-06-13 H.J. Lu <hongjiu.lu@intel.com> PR ld/10269 * config/tc-i386.c (md_apply_fix): Use TC_FORCE_RELOCATION instead of generic_force_reloc. * config/tc-i386.h (TC_FORCE_RELOCATION): New. ld/testsuite/ 2009-06-13 H.J. Lu <hongjiu.lu@intel.com> PR ld/10269 *: ld-ifunc/ifunc-1-local-x86.d: New. *: ld-ifunc/ifunc-1-local-x86.s: Likewise. *: ld-ifunc/ifunc-2-local-i386.d: Likewise. *: ld-ifunc/ifunc-2-local-i386.s: Likewise. *: ld-ifunc/ifunc-2-local-x86-64.d: Likewise. *: ld-ifunc/ifunc-2-local-x86-64.s: Likewise. *: ld-ifunc/ifunc-4-local-x86.d: Likewise. *: ld-ifunc/ifunc-4-local-x86.s: Likewise. *: ld-ifunc/ifunc-5-local-i386.s: Likewise. *: ld-ifunc/ifunc-5-local-x86-64.s: Likewise. *: ld-ifunc/ifunc-5a-local-i386.d: Likewise. *: ld-ifunc/ifunc-5a-local-x86-64.d: Likewise. *: ld-ifunc/ifunc-5b-local-i386.d: Likewise. *: ld-ifunc/ifunc-5b-local-x86-64.d: Likewise.
2009-06-14 01:39:46 +00:00
2009-06-13 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10269
* ld-ifunc/ifunc-1-local-x86.d: New.
* ld-ifunc/ifunc-1-local-x86.s: Likewise.
* ld-ifunc/ifunc-2-local-i386.d: Likewise.
* ld-ifunc/ifunc-2-local-i386.s: Likewise.
* ld-ifunc/ifunc-2-local-x86-64.d: Likewise.
* ld-ifunc/ifunc-2-local-x86-64.s: Likewise.
* ld-ifunc/ifunc-4-local-x86.d: Likewise.
* ld-ifunc/ifunc-4-local-x86.s: Likewise.
* ld-ifunc/ifunc-5-local-i386.s: Likewise.
* ld-ifunc/ifunc-5-local-x86-64.s: Likewise.
* ld-ifunc/ifunc-5a-local-i386.d: Likewise.
* ld-ifunc/ifunc-5a-local-x86-64.d: Likewise.
* ld-ifunc/ifunc-5b-local-i386.d: Likewise.
* ld-ifunc/ifunc-5b-local-x86-64.d: Likewise.
bfd/ 2009-06-13 H.J. Lu <hongjiu.lu@intel.com> PR ld/10269 * elf32-i386.c: Include "objalloc.h" and "hashtab.h". (elf_i386_link_hash_table): Add loc_hash_table and loc_hash_memory. (elf_i386_local_hash): New. (elf_i386_local_htab_hash): Likewise. (elf_i386_local_htab_eq): Likewise. (elf_i386_get_local_sym_hash): Likewise. (elf_i386_link_hash_table_free): Likewise. (elf_i386_allocate_local_dynrelocs): Likewise. (elf_i386_finish_local_dynamic_symbol): Likewise. (bfd_elf64_bfd_link_hash_table_free): Likewise. (elf_i386_link_hash_table_create): Create loc_hash_table and loc_hash_memory. (elf_i386_check_relocs): Handle local STT_GNU_IFUNC symbols. (elf_i386_size_dynamic_sections): Likewise. (elf_i386_relocate_section): Likewise. (elf_i386_finish_dynamic_sections): Likewise. (elf_i386_finish_dynamic_symbol): Check _DYNAMIC only if sym isn't NULL. * elf64-x86-64.c: Include "objalloc.h" and "hashtab.h". (elf64_x86_64_link_hash_table): Add loc_hash_table and loc_hash_memory. (elf64_x86_64_local_hash): New. (elf64_x86_64_local_htab_hash): Likewise. (elf64_x86_64_local_htab_eq): Likewise. (elf64_x86_64_get_local_sym_hash): Likewise. (elf64_x86_64_link_hash_table_free): Likewise. (elf64_x86_64_allocate_local_dynrelocs): Likewise. (elf64_x86_64_finish_local_dynamic_symbol): Likewise. (bfd_elf64_bfd_link_hash_table_free): Likewise. (elf64_x86_64_link_hash_table_create): Create loc_hash_table and loc_hash_memory. (elf64_x86_64_check_relocs): Handle local STT_GNU_IFUNC symbols. (elf64_x86_64_size_dynamic_sections): Likewise. (elf64_x86_64_relocate_section): Likewise. (elf64_x86_64_finish_dynamic_sections): Likewise. (elf64_x86_64_finish_dynamic_symbol): Check _DYNAMIC only if sym isn't NULL. gas/ 2009-06-13 H.J. Lu <hongjiu.lu@intel.com> PR ld/10269 * config/tc-i386.c (md_apply_fix): Use TC_FORCE_RELOCATION instead of generic_force_reloc. * config/tc-i386.h (TC_FORCE_RELOCATION): New. ld/testsuite/ 2009-06-13 H.J. Lu <hongjiu.lu@intel.com> PR ld/10269 *: ld-ifunc/ifunc-1-local-x86.d: New. *: ld-ifunc/ifunc-1-local-x86.s: Likewise. *: ld-ifunc/ifunc-2-local-i386.d: Likewise. *: ld-ifunc/ifunc-2-local-i386.s: Likewise. *: ld-ifunc/ifunc-2-local-x86-64.d: Likewise. *: ld-ifunc/ifunc-2-local-x86-64.s: Likewise. *: ld-ifunc/ifunc-4-local-x86.d: Likewise. *: ld-ifunc/ifunc-4-local-x86.s: Likewise. *: ld-ifunc/ifunc-5-local-i386.s: Likewise. *: ld-ifunc/ifunc-5-local-x86-64.s: Likewise. *: ld-ifunc/ifunc-5a-local-i386.d: Likewise. *: ld-ifunc/ifunc-5a-local-x86-64.d: Likewise. *: ld-ifunc/ifunc-5b-local-i386.d: Likewise. *: ld-ifunc/ifunc-5b-local-x86-64.d: Likewise.
2009-06-14 01:39:46 +00:00
2009-06-03 H.J. Lu <hongjiu.lu@intel.com>
* ld-ifunc/ifunc-2-x86-64.d: Pass --64 to as and -melf_x86_64 to
ld.
* ld-ifunc/ifunc-5a-x86-64.d: Likewise.
* ld-ifunc/ifunc-5b-x86-64.d: Likewise.
* ld-ifunc/ifunc-6a-x86-64.d: Likewise.
* ld-ifunc/ifunc-6b-x86-64.d: Likewise.
* ld-ifunc/ifunc-7a-x86-64.d: Likewise.
* ld-ifunc/ifunc-7b-x86-64.d: Likewise.
* ld-ifunc/ifunc-8a-i386.s: New.
* ld-ifunc/ifunc-8a-x86-64.s: Likewise.
* ld-ifunc/ifunc-8b-i386.s: Likewise.
* ld-ifunc/ifunc-8b-x86-64.s: Likewise.
* ld-ifunc/ifunc-8-i386.d: Likewise.
* ld-ifunc/ifunc-8-x86-64.d: Likewise.
2009-06-02 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-glink-3.s, ld-powerpc/aix-glink-3a.s,
ld-powerpc/aix-glink-3b.s, ld-powerpc/aix-glink-3.dd,
ld-powerpc/aix-glink-3-32.d, ld-powerpc/aix-glink-3-64.d: New tests.
* ld-powerpc/aix52.exp: Run them. Move the lineno tests to maintain
alphabetical order.
bfd/ 2009-06-02 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c (elf_i386_check_relocs): Increment got.refcount for R_386_GOT32/R_386_GOTOFF relocations against STT_GNU_IFUNC symbol. (elf_i386_allocate_dynrelocs): Set got.refcount to 0 if local STT_GNU_IFUNC definition is used. (elf_i386_relocate_section): Handle got.offset != -1 for R_386_GOT32/R_386_GOTOFF relocations against STT_GNU_IFUNC symbol. * elf64-x86-64.c (elf64_x86_64_check_relocs): Increment got.refcount for R_X86_64_GOTPCREL/R_X86_64_GOTPCREL64 relocations against STT_GNU_IFUNC symbol. (elf64_x86_64_allocate_dynrelocs): Set got.refcount to 0 if local STT_GNU_IFUNC definition is used. (elf64_x86_64_relocate_section): Handle got.offset != -1 for R_X86_64_GOTPCREL/R_X86_64_GOTPCREL64 relocations against STT_GNU_IFUNC symbol. ld/testsuite/ 2009-06-02 H.J. Lu <hongjiu.lu@intel.com> * ld-ifunc/ifunc-5-i386.d: Renamed to ... * ld-ifunc/ifunc-5a-i386.d: This. * ld-ifunc/ifunc-5-x86-64.d: Renamed to ... * ld-ifunc/ifunc-5a-x86-64.d: This. * ld-ifunc/ifunc-5b-i386.d: New. * ld-ifunc/ifunc-5b-x86-64.d: Likewise. * ld-ifunc/ifunc-6a-i386.d: Likewise. * ld-ifunc/ifunc-6a-x86-64.d: Likewise. * ld-ifunc/ifunc-6b-i386.d: Likewise. * ld-ifunc/ifunc-6b-x86-64.d: Likewise. * ld-ifunc/ifunc-6-i386.s: Likewise. * ld-ifunc/ifunc-6-x86-64.s: Likewise. * ld-ifunc/ifunc-7a-i386.d: Likewise. * ld-ifunc/ifunc-7a-x86-64.d: Likewise. * ld-ifunc/ifunc-7b-i386.d: Likewise. * ld-ifunc/ifunc-7b-x86-64.d: Likewise. * ld-ifunc/ifunc-7-i386.s: Likewise. * ld-ifunc/ifunc-7-x86-64.s: Likewise.
2009-06-02 17:31:42 +00:00
2009-06-02 H.J. Lu <hongjiu.lu@intel.com>
* ld-ifunc/ifunc-5-i386.d: Renamed to ...
* ld-ifunc/ifunc-5a-i386.d: This.
* ld-ifunc/ifunc-5-x86-64.d: Renamed to ...
* ld-ifunc/ifunc-5a-x86-64.d: This.
* ld-ifunc/ifunc-5b-i386.d: New.
* ld-ifunc/ifunc-5b-x86-64.d: Likewise.
* ld-ifunc/ifunc-6a-i386.d: Likewise.
* ld-ifunc/ifunc-6a-x86-64.d: Likewise.
* ld-ifunc/ifunc-6b-i386.d: Likewise.
* ld-ifunc/ifunc-6b-x86-64.d: Likewise.
* ld-ifunc/ifunc-6-i386.s: Likewise.
* ld-ifunc/ifunc-6-x86-64.s: Likewise.
* ld-ifunc/ifunc-7a-i386.d: Likewise.
* ld-ifunc/ifunc-7a-x86-64.d: Likewise.
* ld-ifunc/ifunc-7b-i386.d: Likewise.
* ld-ifunc/ifunc-7b-x86-64.d: Likewise.
* ld-ifunc/ifunc-7-i386.s: Likewise.
* ld-ifunc/ifunc-7-x86-64.s: Likewise.
bfd/ 2009-06-01 H.J. Lu <hongjiu.lu@intel.com> PR ld/10205 * elf32-i386.c (elf_howto_table): Add R_386_IRELATIVE. (elf_i386_reloc_type_lookup): Likewise. (R_386_tls): Removed. (R_386_irelative): New. (R_386_vt_offset): Updated. (elf_i386_rtype_to_howto): Likewise. (elf_i386_link_hash_table): Add igotplt, iplt and irelplt. (elf_i386_link_hash_table_create): Initialize igotplt, iplt and irelplt. (elf_i386_check_relocs): Handle STT_GNU_IFUNC symbol first. (elf_i386_adjust_dynamic_symbol): Likewise. (elf_i386_allocate_dynrelocs): Likewise. (elf_i386_relocate_section): Likewise. (elf_i386_size_dynamic_sections): Set up .iplt and .igot.plt sections. (elf_i386_finish_dynamic_symbol): When building a static executable, use .iplt, .igot.plt and .rel.iplt sections for STT_GNU_IFUNC symbols. Generate R_386_IRELATIVE relocation for locally defined STT_GNU_IFUNC symbol. * elf64-x86-64.c (x86_64_elf_howto): Add R_X86_64_IRELATIVE. (x86_64_reloc_map): Likewise. (R_X86_64_standard): Updated. (elf64_x86_64_link_hash_table): Add igotplt, iplt and irelplt. (elf64_x86_64_link_hash_table_create): Initialize igotplt, iplt and irelplt. (elf64_x86_64_check_relocs): Handle STT_GNU_IFUNC symbol first. (elf64_x86_64_adjust_dynamic_symbol): Likewise. (elf64_x86_64_allocate_dynrelocs): Likewise. (elf64_x86_64_relocate_section): Likewise. (elf64_x86_64_size_dynamic_sections): Set up .iplt and .igot.plt sections. (elf64_x86_64_finish_dynamic_symbol): When building a static executable, use .iplt, .igot.plt and .rela.iplt sections for STT_GNU_IFUNC symbols. Generate R_X86_64_IRELATIVE relocation for locally defined STT_GNU_IFUNC symbol. * reloc.c (BFD_RELOC_386_IRELATIVE): New. (BFD_RELOC_X86_64_IRELATIVE): Likewise. * bfd-in2.h: Regenerated. * libbfd.h: Likewise. include/elf/ 2009-06-01 H.J. Lu <hongjiu.lu@intel.com> PR ld/10205 * i386.h (R_386_IRELATIVE): New. * x86-64.h (R_X86_64_IRELATIVE): Likewise. ld/testsuite/ 2009-06-01 H.J. Lu <hongjiu.lu@intel.com> PR ld/10205 * ld-ifunc/ifunc.exp (contains_irelative_reloc): New. Use it on executable and shared library. Run *.d. * ld-ifunc/lib.c: Add a hidden alias, __GI_library_func2, for library_func2. (library_func): New. * ld-ifunc/ifunc-1-x86.d: New. * ld-ifunc/ifunc-1-x86.s: Likewise. * ld-ifunc/ifunc-2-i386.d: Likewise. * ld-ifunc/ifunc-2-i386.s: Likewise. * ld-ifunc/ifunc-2-x86-64.d: Likewise. * ld-ifunc/ifunc-2-x86-64.s: Likewise. * ld-ifunc/ifunc-3a-x86.d: Likewise. * ld-ifunc/ifunc-3b-x86.d: Likewise. * ld-ifunc/ifunc-3-x86.s: Likewise. * ld-ifunc/ifunc-4-x86.d: Likewise. * ld-ifunc/ifunc-4-x86.s: Likewise. * ld-ifunc/ifunc-5-i386.d: Likewise. * ld-ifunc/ifunc-5-i386.s: Likewise. * ld-ifunc/ifunc-5-x86-64.d: Likewise. * ld-ifunc/ifunc-5-x86-64.s: Likewise.
2009-06-01 13:11:52 +00:00
2009-06-01 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10205
* ld-ifunc/ifunc.exp (contains_irelative_reloc): New.
Use it on executable and shared library.
Run *.d.
* ld-ifunc/lib.c: Add a hidden alias, __GI_library_func2, for
library_func2.
(library_func): New.
* ld-ifunc/ifunc-1-x86.d: New.
* ld-ifunc/ifunc-1-x86.s: Likewise.
* ld-ifunc/ifunc-2-i386.d: Likewise.
* ld-ifunc/ifunc-2-i386.s: Likewise.
* ld-ifunc/ifunc-2-x86-64.d: Likewise.
* ld-ifunc/ifunc-2-x86-64.s: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
* ld-ifunc/ifunc-3b-x86.d: Likewise.
* ld-ifunc/ifunc-3-x86.s: Likewise.
* ld-ifunc/ifunc-4-x86.d: Likewise.
* ld-ifunc/ifunc-4-x86.s: Likewise.
* ld-ifunc/ifunc-5-i386.d: Likewise.
* ld-ifunc/ifunc-5-i386.s: Likewise.
* ld-ifunc/ifunc-5-x86-64.d: Likewise.
* ld-ifunc/ifunc-5-x86-64.s: Likewise.
2009-05-27 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/non-c-lang-syms.c: New dump test source file.
* ld-pe/non-c-lang-syms.d: New dump test pattern file.
* ld-pe/pe.exp: Run new "foreign symbol" test.
2009-05-26 Nathan Sidwell <nathan@codesourcery.com>
* ld-powerpc/vxworks-relax-2.s: New.
* ld-powerpc/vxworks-relax-2.rd: New.
* ld-powerpc/powerpc.exp: Add it.
2009-05-22 Hans-Peter Nilsson <hp@axis.com>
* ld-scripts/rgn-over7.d: Adjust expected message for recent change.
ld/ * emultempl/armelf.em (fix_cortex_a8): New. (arm_elf_before_allocation): Call bfd_elf32_arm_set_cortex_a8_fix. (arm_elf_create_output_section_statements): Add fix_cortex_a8 to bfd_elf32_arm_set_target_relocs. (OPTION_FIX_CORTEX_A8, OPTION_NO_FIX_CORTEX_A8): New. (PARSE_AND_LIST_LONGOPTS): Add [no-]fix-cortex-a8 options. (PARSE_AND_LIST_OPTIONS): Add [no-]fix-cortex-a8 options. (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_[NO_]FIX_CORTEX_A8. * ld.texinfo (--[no-]fix-cortex-a8): Briefly document new options. bfd/ * elf32-arm.c (THUMB16_BCOND_INSN, THUMB32_INSN, THUMB32_B_INSN): New macros. (elf32_arm_stub_a8_veneer_b_cond, elf32_arm_stub_a8_veneer_b) (elf32_arm_stub_a8_veneer_blx): New stub sequences. (elf32_arm_stub_type): Add arm_stub_a8_veneer_b_cond, arm_stub_a8_veneer_b and arm_stub_a8_veneer_blx. (elf32_arm_stub_hash_entry): Add target_addend, orig_insn fields. (a8_erratum_fix, a8_erratum_reloc): New structs. (elf32_arm_link_hash_table): Add a8_erratum_fixes, num_a8_erratum_fixes, fix_cortex_a8 fields. (elf32_arm_link_hash_table_create): Zero fix_cortex_a8. (elf32_arm_add_stub): Split into two parts, creating... (elf32_arm_create_or_find_stub_sec): New function. (elf32_arm_final_link_relocate): Add forward declaration. (arm_build_one_stub): Add support for THUMB32_TYPE, Thumb-2 relocations, multiple relocations per stub. (find_stub_size_and_template): New (using parts of arm_size_one_stub). (arm_size_one_stub): Use find_stub_size_and_template. (a8_reloc_compare): New. (find_thumb_glue): Add forward declaration. (cortex_a8_erratum_scan): New. (elf32_arm_size_stubs): Add Cortex-A8 erratum workaround support. (bfd_elf32_arm_set_cortex_a8_fix): New. (bfd_elf32_arm_set_target_relocs): Add fix_cortex_a8 argument. (arm_map_one_stub): Add THUMB32_TYPE support. (a8_branch_to_stub_data): New. (make_branch_to_a8_stub): New. (elf32_arm_write_section): Add Cortex-A8 erratum workaround support. * bfd-in.h (bfd_elf32_arm_set_cortex_a8_fix): New. (bfd_elf32_arm_set_target_relocs): Add argument for controlling Cortex-A8 erratum workaround. * bfd-in2.h: Regenerate. ld/testsuite/ * ld-arm/cortex-a8-arm-target.s: New. * ld-arm/cortex-a8-thumb-target.s: New. * ld-arm/cortex-a8-fix-b-rel.s: New. * ld-arm/cortex-a8-fix-b-rel-arm.d: New. * ld-arm/cortex-a8-fix-b-rel-thumb.d: New. * ld-arm/cortex-a8-fix-b.s: New. * ld-arm/cortex-a8-fix-b.d: New. * ld-arm/cortex-a8-fix-bl-rel.s: New. * ld-arm/cortex-a8-fix-bl-rel-arm.d: New. * ld-arm/cortex-a8-fix-bl-rel-thumb.d: New. * ld-arm/cortex-a8-fix-bl.s: New. * ld-arm/cortex-a8-fix-bl.d: New. * ld-arm/cortex-a8-fix-bcc-rel.s: New. * ld-arm/cortex-a8-fix-bcc-rel-thumb.d: New. * ld-arm/cortex-a8-fix-bcc.s: New. * ld-arm/cortex-a8-fix-bcc.d: New. * ld-arm/cortex-a8-fix-blx-rel.s: New. * ld-arm/cortex-a8-fix-blx-rel-arm.d: New. * ld-arm/cortex-a8-fix-blx-rel-thumb.d: New. * ld-arm/cortex-a8-fix-blx.s: New. * ld-arm/cortex-a8-fix-blx.d: New. * ld-arm/arm-elf.exp: Add new tests.
2009-05-22 11:58:45 +00:00
2009-05-22 Julian Brown <julian@codesourcery.com>
* ld-arm/cortex-a8-arm-target.s: New.
* ld-arm/cortex-a8-thumb-target.s: New.
* ld-arm/cortex-a8-fix-b-rel.s: New.
* ld-arm/cortex-a8-fix-b-rel-arm.d: New.
* ld-arm/cortex-a8-fix-b-rel-thumb.d: New.
* ld-arm/cortex-a8-fix-b.s: New.
* ld-arm/cortex-a8-fix-b.d: New.
* ld-arm/cortex-a8-fix-bl-rel.s: New.
* ld-arm/cortex-a8-fix-bl-rel-arm.d: New.
* ld-arm/cortex-a8-fix-bl-rel-thumb.d: New.
* ld-arm/cortex-a8-fix-bl.s: New.
* ld-arm/cortex-a8-fix-bl.d: New.
* ld-arm/cortex-a8-fix-bcc-rel.s: New.
* ld-arm/cortex-a8-fix-bcc-rel-thumb.d: New.
* ld-arm/cortex-a8-fix-bcc.s: New.
* ld-arm/cortex-a8-fix-bcc.d: New.
* ld-arm/cortex-a8-fix-blx-rel.s: New.
* ld-arm/cortex-a8-fix-blx-rel-arm.d: New.
* ld-arm/cortex-a8-fix-blx-rel-thumb.d: New.
* ld-arm/cortex-a8-fix-blx.s: New.
* ld-arm/cortex-a8-fix-blx.d: New.
* ld-arm/arm-elf.exp: Add new tests.
2009-05-22 Nathan Sidwell <nathan@codesourcery.com>
* ld-scripts/rgn-at4.t: New.
* ld-scripts/rgn-at4.d: New.
2009-05-21 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/aligncomm-1.c (_alloca): Add dummy definition to
satisfy final link on Windows targets when using gcc-3.
* ld-pe/aligncomm-2.c (_alloca): Likewise.
* ld-pe/aligncomm-3.c (_alloca): Likewise.
* ld-pe/aligncomm-4.c (_alloca): Likewise.
2009-05-20 Dave Korn <dave.korn.cygwin@gmail.com>
* lib/ld-lib.exp (run_ld_link_tests): Filter test names against
runtests list.
==> bfd/ChangeLog <== 2009-05-19 Dave Korn <dave.korn.cygwin@gmail.com> * cofflink.c (process_embedded_commands): Ignore "-aligncomm". ==> gas/ChangeLog <== 2009-05-19 Dave Korn <dave.korn.cygwin@gmail.com> * NEWS: Mention new feature. * config/obj-coff.c (obj_coff_common_parse): New function. (obj_coff_comm): Likewise. (coff_pseudo_table): Override default ".comm" definition on PE. * doc/as.texinfo: Document new feature. ==> gas/testsuite/ChangeLog <== 2009-05-19 Dave Korn <dave.korn.cygwin@gmail.com> * gas/pe/: New directory for PE format-specific tests. * gas/pe/aligncomm-a.d: New test pattern file. * gas/pe/aligncomm-a.s: New test source file. * gas/pe/aligncomm-b.d: New test pattern file. * gas/pe/aligncomm-b.s: New test source file. * gas/pe/aligncomm-c.d: New test pattern file. * gas/pe/aligncomm-c.s: New test source file. * gas/pe/aligncomm-d.d: New test pattern file. * gas/pe/aligncomm-d.s: New test source file. * gas/pe/pe.exp: New test control script. * lib/gas-defs.exp (is_pecoff_format): New function. ==> ld/ChangeLog <== 2009-05-19 Dave Korn <dave.korn.cygwin@gmail.com> * NEWS: Mention new feature. * deffile.h (def_file_aligncomm): Add new struct definition. (def_file): Add new def_file_aligncomm member. * deffilep.y (%token): Add new ALIGNCOMM token. (command): Add production rule for ALIGNCOMM. (def_file_free): Free any chained def_file_aligncomm structs. (diropts[]): Add entry for '-aligncomm' .drectve command. (def_aligncomm): New grammar function. * ld.texinfo: Document new feature. * pe-dll.c (process_def_file): Rename from this ... (process_def_file_and_drectve): ... to this, updating all callers, and process any aligncomms chained to the def file after scanning all .drectve sections. (generate_edata): Updated to match. (pe_dll_build_sections): Likewise. ==> ld/testsuite/ChangeLog <== 2009-05-19 Dave Korn <dave.korn.cygwin@gmail.com> * ld-pe/aligncomm-1.c: New test source file. * ld-pe/aligncomm-2.c: Likewise. * ld-pe/aligncomm-3.c: Likewise. * ld-pe/aligncomm-4.c: Likewise. * ld-pe/aligncomm.d: New test pattern file. * ld-pe/direct.exp: Deleted, and content moved into ... * ld-pe/pe-run.exp: ... New common file for all PE run tests. * ld-pe/vers-script.exp: Deleted, and content merged into ... * ld-pe/pe-compile.exp: ... New common file for PE tests needing a compiler, adding aligned common tests. * ld-pe/pe.exp: Update header comment.
2009-05-19 16:08:08 +00:00
2009-05-19 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/aligncomm-1.c: New test source file.
* ld-pe/aligncomm-2.c: Likewise.
* ld-pe/aligncomm-3.c: Likewise.
* ld-pe/aligncomm-4.c: Likewise.
* ld-pe/aligncomm.d: New test pattern file.
* ld-pe/direct.exp: Deleted, and content moved into ...
* ld-pe/pe-run.exp: ... New common file for all PE run tests.
* ld-pe/vers-script.exp: Deleted, and content merged into ...
* ld-pe/pe-compile.exp: ... New common file for PE tests needing
a compiler, adding aligned common tests.
* ld-pe/pe.exp: Update header comment.
2009-05-18 18:01:02 +00:00
2009-05-17 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
* ld-pe/exports.d: New file.
* ld-pe/exports.s: New file.
* ld-pe/pe.exp: New test for empty export table.
2009-05-16 Alan Modra <amodra@bigpond.net.au>
* ld-elf/orphan3.d, * ld-elf/orphan3a.s, * ld-elf/orphan3b.s,
* ld-elf/orphan3c.s, * ld-elf/orphan3d.s, * ld-elf/orphan3e.s,
* ld-elf/orphan3f.s: Increase section size to 16.
* ld-pe/orphan.d, * ld-pe/orphana.s, * ld-pe/orphanb.s,
* ld-pe/orphand.s, * ld-pe/orphane.s: Likewise.
2009-05-15 Alan Modra <amodra@bigpond.net.au>
* ld-elf/orphan3.d, * ld-elf/orphan3a.s, * ld-elf/orphan3b.s,
* ld-elf/orphan3c.s, * ld-elf/orphan3d.s, * ld-elf/orphan3e.s,
* ld-elf/orphan3f.s: New test.
* ld-pe/orphan.d, * ld-pe/orphana.s, * ld-pe/orphanb.s,
* ld-pe/orphand.s, * ld-pe/orphane.s: New test.
* ld-pe/direct.exp: Use is_pecoff_format.
* ld-pe/longsecn.exp: Delete.
* ld-pe/pe.exp: Run new test and longsecn tests.
2009-05-15 Andrew Stubbs <ams@codesourcery.com>
Paul Brook <paul@codesourcery.com>
* ld-arm/arm-elf.exp: Add unwind-5.
* ld-arm/discard-unwind.ld: New file.
* ld-arm/unwind-5.d: New test.
* ld-arm/unwind-5.s: New test.
2009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
* ld-spu/icache1.d: Update for compact stubs.
2009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
* ld-spu/icache1.d: Update all addresses to accomodate icache
buffer shifted down 0x800 bytes.
2009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
* ld-spu/icache.d: Update file offsets.
* ld-spu/ovl.d: Likewise.
* ld-spu/ovl1.d: Likewise.
2009-05-14 Alan Modra <amodra@bigpond.net.au>
* ld-spu/icache1.d: Update for changed overlay manager placement.
* ld-spu/ovl.d: Likewise.
* ld-spu/ovl2.d: Likewise.
2009-05-05 Paul Brook <paul@codesourcery.com>
* ld-arm/arm.ld: Add .ARM.exidx and .ARM.extab.
* ld-arm/arm-elf.exp: Add unwind-[1-4].
* ld-arm/unwind-1.d: New test.
* ld-arm/unwind-1.s: New test.
* ld-arm/unwind-2.d: New test.
* ld-arm/unwind-2.s: New test.
* ld-arm/unwind-3.d: New test.
* ld-arm/unwind-3.s: New test.
* ld-arm/unwind-4.d: New test.
* ld-arm/unwind-4.s: New test.
2009-05-01 Julian Brown <julian@codesourcery.com>
* ld-arm/arm-elf.exp (armeabitests): Add thumb2-bl-blx-interwork test.
* ld-arm/thumb2-bl-blx-interwork.s: New.
* ld-arm/thumb2-bl-blx-interwork.d: New.
include/elf 2009-04-30 Nick Clifton <nickc@redhat.com> * common.h (STT_GNU_IFUNC): Define. elfcpp 2009-04-30 Nick Clifton <nickc@redhat.com> * (enum STT): Add STT_GNU_IFUNC. gas 2009-04-30 Nick Clifton <nickc@redhat.com> * config/obj-elf.c (obj_elf_type): Add support for a gnu_indirect_function type. * config/tc-i386.c (tc_i386_fix_adjustable): Do not adjust fixups against indirect function symbols. * doc/as.texinfo (.type): Document the support for the gnu_indirect_function symbol type. * NEWS: Mention the new feature. gas/testsuite 2009-04-30 Nick Clifton <nickc@redhat.com> * gas/elf/elf.exp: Extend type test to include an ifunc symbol. Provide an alternative test for targets which do not support ifunc symbols. (type.s): Add entry for an ifunc symbol. (type.e): Add ifunc entry to expected symbol dump. (section2.e-armelf): Add entry for ifunc symbol. (type-noifunc.s): New file. (type-noifunc.e): New file. bfd/ 2009-04-30 Nick Clifton <nickc@redhat.com> * elf-bfd.h (struct bfd_elf_section_data): Add indirect_relocs section pointer. (struct elf_obj_data): Add has_ifunc_symbols boolean. * elf.c (swap_out_syms): Convert BSF_GNU_INDIRECT_FUNCTION flags into a STT_GNU_IFUNC symbol type. (_bfd_elf_is_function_type): Accept STT_GNU_IFUNC as a function type. (_bfd_elf_set_osabi): Set the osasbi field to ELFOSABI_LINUX if the binary contains ifunc symbols. * elfcode.h (elf_slurp_symbol_table): Translate the STT_GNU_IFUNC symbol type into a BSF_GNU_INDIRECT_FUNCTION flag. * elf32-i386.c (is_indirect_function): New function. (elf_i386_check_relocs): Create an ifunc output section. (allocate_dynrelocs): Create dynamic relocs in the ifunc output section if necessary. (elf_i386_relocate_section): Emit a reloc against an ifunc symbol if necessary. (elf_i386_add_symbol_hook): New function. Set the has_ifunc_symbols field of the elf_obj_data structure if an ifunc symbol is encountered. (elf_backend_post_process_headers): Define. (elf_backend_add_symbol_hook): Define. (elf_i386_post_process_headers): Rename to elf_i388_fbsd_post_process_headers. * elf64-x86_64.c (IS_X86_64_PCREL_TYPE): New macro. (is_indirect_function): New function. (elf64_x86_64_check_relocs): Create an ifunc output section. (allocate_dynrelocs): Create dynamic relocs in the ifunc output section if necessary. (elf64_x86_64_relocate_section): Emit a reloc against an ifunc symbol if necessary. (elf_i386_add_symbol_hook): Set the has_ifunc_symbols field of the elf_obj_data structure if an ifunc symbol is encountered. (elf_backend_post_process_headers): Define. * elflink.c (_bfd_elf_adjust_dynamic_symbol): Always create a PLT if we have ifunc symbols to handle. (get_ifunc_reloc_section_name): New function. Computes the name for an ifunc section. (_bfd_elf_make_ifunc_reloc_section): New function. Creates a section to hold ifunc relocs. * syms.c (BSF_GNU_INDIRECT_FUNCTION): Define. (bfd_print_symbol_vandf): Handle ifunc symbols. (bfd_decode_symclass): Likewise. * bfd-in2.h: Regenerate. binutils 2009-04-30 Nick Clifton <nickc@redhat.com> * readelf.c (dump_relocations): Display a relocation against an ifunc symbol as if it were a function invocation. (get_symbol_type): Handle STT_GNU_IFUNC. ld 2009-04-30 Nick Clifton <nickc@redhat.com> * NEWS: Mention support for IFUNC symbols. ld/testsuite 2009-04-30 Nick Clifton <nickc@redhat.com> * ld-ifunc: New directory. * ld-ifunc/ifunc.exp: New file: Run the IFUNC tests. * ld-ifunc/prog.c: New file. * ld-ifunc/lib.c: New file.
2009-04-30 15:47:13 +00:00
2009-04-30 Nick Clifton <nickc@redhat.com>
* ld-ifunc: New directory.
* ld-ifunc/ifunc.exp: New file: Run the IFUNC tests.
* ld-ifunc/prog.c: New file.
* ld-ifunc/lib.c: New file.
2009-04-30 Joseph Myers <joseph@codesourcery.com>
* ld-arm/movw-shared-1.d, ld-arm/movw-shared-1.s,
ld-arm/movw-shared-2.d, ld-arm/movw-shared-2.s,
ld-arm/movw-shared-3.d, ld-arm/movw-shared-3.s,
ld-arm/movw-shared-4.d, ld-arm/movw-shared-4.s: New tests.
* ld-arm/arm-elf.exp: Run these new tests.
2009-04-29 Chris Demetriou <cgd@google.com>
* ld-elfvers/vers.exp (vers4b): New test to verify that
--no-export-dynamic undoes --export-dynamic.
2009-04-28 Nathan Sidwell <nathan@codesourcery.com>
* ld-i386/vxworks1-lib.dd: Adjust expected disassembly.
* ld-i386/vxworks1.dd: Adjust expected disassembly.
* ld-i386/vxworks1-lib.rd: Sections are swapped.
2009-04-22 Christophe Lyon <christophe.lyon@st.com>
PR9743
* ld-arm/arm-call.d: Update expected result.
* ld-arm/arm-pic-veneer.d: Likewise.
* ld-arm/thumb2-b-interwork.d: Likewise.
2009-04-22 Nathan Sidwell <nathan@codesourcery.com>
* ld-scripts/rgn-at1.d: Cope with larger padding on sections.
* ld-scripts/rgn-at2.d: Likewise.
* ld-scripts/rgn-at3.d: Likewise.
2009-04-21 Daniel Jacobowitz <dan@codesourcery.com>
* ld-arm/farcall-mix.d, ld-arm/farcall-mix2.d,
ld-arm/farcall-group-size2.d, ld-arm/farcall-group.d,
ld-arm/farcall-mixed-lib.d: Update for linker changes.
2009-04-17 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/arm-elf.exp: Add new test farcall-mixed-lib.
* ld-arm/farcall-mixed-lib.d: Update expected output.
* ld-arm/farcall-mixed-lib1.s: New file.
* ld-arm/farcall-mixed-lib2.s: New file.
bfd/ * aout-adobe.c (aout_32_bfd_define_common_symbol): Define. * aout-target.h (MY_bfd_define_common_symbol): Likewise. * aout-tic30.c (MY_bfd_define_common_symbol): Likewise. * binary.c (binary_bfd_define_common_symbol): Likewise. * bout.c (b_out_bfd_define_common_symbol): Likewise. * coff-alpha.c (_bfd_ecoff_bfd_define_common_symbol): Likewise. * coff-mips.c (_bfd_ecoff_bfd_define_common_symbol): Likewise. * coffcode.h (coff_bfd_define_common_symbol): Likewise. * elfxx-target.h (bfd_elfNN_bfd_define_common_symbol): Likewise. * i386msdos.c (msdos_bfd_define_common_symbol): Likewise. * i386os9k.c (os9k_bfd_define_common_symbol): Likewise. * ieee.c (ieee_bfd_define_common_symbol): Likewise. * ihex.c (ihex_bfd_define_common_symbol): Likewise. * libbfd-in.h (_bfd_nolink_bfd_define_common_symbol): Likewise. * mach-o.c (bfd_mach_o_bfd_define_common_symbol): Likewise. * mmo.c (mmo_bfd_define_common_symbol): Likewise. * nlm-target.h (nlm_bfd_define_common_symbol): Likewise. * oasys.c (oasys_bfd_define_common_symbol): Likewise. * pef.c (bfd_pef_bfd_define_common_symbol): Likewise. * ppcboot.c (ppcboot_bfd_define_common_symbol): Likewise. * som.c (som_bfd_define_common_symbol): Likewise. * srec.c (srec_bfd_define_common_symbol): Likewise. * tekhex.c (tekhex_bfd_define_common_symbol): Likewise. * versados.c (versados_bfd_define_common_symbol): Likewise. * vms.c (vms_bfd_define_common_symbol): Likewise. * xcoff-target.h (_bfd_xcoff_bfd_define_common_symbol): Likewise. * xsym.c (bfd_sym_bfd_define_common_symbol): Likewise. * coff-rs6000.c (rs6000coff_vec): Add _bfd_xcoff_define_common_symbol. (pmac_xcoff_vec): Likewise. * coff64-rs6000.c (rs6000coff64_vec): Likewise. (aix5coff64_vec): Likewise. * linker.c (bfd_generic_define_common_symbol): New function. * targets.c (BFD_JUMP_TABLE_LINK): Add NAME##_bfd_define_common_symbol. (_bfd_define_common_symbol): New field. * libcoff-in.h (_bfd_xcoff_define_common_symbol): Declare. * xcofflink.c (_bfd_xcoff_define_common_symbol): New function. (xcoff_build_ldsyms): Don't set XCOFF_DEF_REGULAR for common symbols here. * bfd-in2.h: Regenerate. * libbfd.h: Likewise. * libcoff.h: Likewise. ld/ * ldlang.c (lang_one_common): Use bfd_define_common_symbol. ld/testsuite/ * ld-powerpc/aix-export-2.s, ld-powerpc/aix-export-2.nd: New test. * ld-powerpc/aix52.exp: Run it.
2009-04-16 23:07:00 +00:00
2009-04-16 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-export-2.s, ld-powerpc/aix-export-2.nd: New test.
* ld-powerpc/aix52.exp: Run it.
2009-04-16 Alan Modra <amodra@bigpond.net.au>
* ld-libs/lib-1.s: Use "==" instead of ".set".
* ld-libs/lib-2.s: Likewise.
* ld-scripts/defined.s: Likewise.
2009-04-15 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/arm-elf.exp: Add 1 more test to check undef weak
reference with PLT in ARM mode.
* ld-arm/thumb2-bl-undefweak1.d, ld-arm/thumb2-bl-undefweak1.s:
New files.
2009-04-08 H.J. Lu <hongjiu.lu@intel.com>
* ld-i386/abs.d: Add --32 for assembler and -melf_i386 for
linker.
2009-04-03 Nathan Sidwell <nathan@codesourcery.com>
* ld-scripts/rgn-at.s: Use explicit .section pseudos.
2009-04-03 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/image_size.d (#target): Also run test on Cygwin and x86_64
MinGW targets.
2009-04-03 Nathan Sidwell <nathan@codesourcery.com>
* ld-scripts/rgn-at.exp: New.
* ld-scripts/rgn-at.s: New.
* ld-scripts/rgn-at1.d: New.
* ld-scripts/rgn-at1.t: New.
* ld-scripts/rgn-at2.d: New.
* ld-scripts/rgn-at2.t: New.
* ld-scripts/rgn-at3.d: New.
* ld-scripts/rgn-at3.t: New.
2009-04-03 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/export_dynamic_warning.s: Make dummy code portable.
2009-04-02 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/export_dynamic_warning.d (#warning): Fix regex pattern.
2009-04-02 Dave Korn <dave.korn.cygwin@gmail.com>
PR ld/6744
* ld-pe/export_dynamic_warning.d: New test control file.
* ld-pe/export_dynamic_warning.s: New test source file.
* ld-pe/pe.exp: Also run export_dynamic_warning dump test.
2009-04-02 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/farcall-thumb-thumb-pic-veneer.d: Update expected
results.
* ld-arm/farcall-thumb-thumb.d: Likewise.
2009-04-02 Nick Clifton <nickc@redhat.com>
PR 9987
* lib/ld-lib.exp (check_gc_sections_available): Do not run garbage
collection tests for cygwin targets.
2009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-gc-1.nd: New test.
* ld-powerpc/aix52.exp: Run it.
2009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-rel-1.s, ld-powerpc/aix-rel-1.od: New test.
* ld-powerpc/aix52.exp: Run it.
2009-04-01 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-cygwin/exe-export.exp: Add "-lkernel32" when linking test exe.
* ld-cygwin/testexe.c (testexe_main): Indicate whether global_a
was set to correct final value using error return status.
(testexe_dummy): Dummy function calls an import from kernel32.dll
to ensure it is mapped into the process space at runtime.
2009-04-01 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/arm-elf.exp: BE8 tests expect the same output as the
default ones.
* ld-arm/arm-be8.d: Print opcodes in little endian.
* ld-arm/farcall-thumb-arm-be8.d: Removed useless expected result.
* ld-arm/farcall-arm-arm-be8.d: Likewise.
2009-03-25 Hans-Peter Nilsson <hp@axis.com>
* ld-cris/tls-e-dtpoffd3.d, ld-cris/tls-e-tpoffcomm1.d,
ld-cris/tls-e-tpoffcomm1.s: New tests.
2009-03-24 Hans-Peter Nilsson <hp@axis.com>
* ld-cris/tls-commx.s, ld-cris/tls-dso-dtpoffd2.d,
ld-cris/tls-dso-dtpoffd4.d, ld-cris/tls-dtpoffdx.s,
ld-cris/tls-e-dtpoffd1.d: New tests.
* ld-cris/tls-e-20.d, ld-cris/tls-e-20a.d, ld-cris/tls-e-21.d,
ld-cris/tls-e-80.d, ld-cris/tls-gd-3.d, ld-cris/tls-gd-3h.d,
ld-cris/tls-global-74.d, ld-cris/tls-ldgde-14.d,
ld-cris/tls-ldgde-15.d, ld-cris/tls-legd-16.d,
ld-cris/tls-legd-17.d, ld-cris/tls-local-57.d,
ld-cris/tls-local-58.d, ld-cris/tls-local-59.d: Adjust for BFD
change in link-time known GOT contents for GD relocations.
2009-03-20 H.J. Lu <hongjiu.lu@intel.com>
PR ld/9970
* ld-pie/pie.exp: Use -fpie to compile. Run *.d tests.
* ld-pie/start.d: New.
* ld-pie/start.s: Likewise.
2009-03-18 H.J. Lu <hongjiu.lu@intel.com>
PR ld/6766
* ld-undefined/dummy.s: New.
* ld-undefined/entry-1.d: Likewise.
* ld-undefined/entry-2.d: Likewise.
* ld-undefined/entry-3.d: Likewise.
* ld-undefined/entry-4.d: Likewise.
* ld-undefined/entry-5.d: Likewise.
* ld-undefined/entry-6.d: Likewise.
* ld-undefined/entry.exp: Likewise.
* ld-undefined/entry.s: Likewise.
2009-03-17 Alan Modra <amodra@bigpond.net.au>
* ld-spu/icache1.d: Update for fixed set_id, new manager entry, and
reduced data.
2009-03-17 Alan Modra <amodra@bigpond.net.au>
* config/default.exp (get_link_files): Replace double dollars with
single dollars.
2009-03-17 Alan Modra <amodra@bigpond.net.au>
* ld-bootstrap/bootstrap.exp: Use DO_COMPARE. Remove unnecessary
cleanup and log output.
2009-03-16 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-bootstrap/bootstrap.exp: Also pass '-liconv' to linker when
linking statically on Cygwin, necessitated by '-lintl'.
2009-03-15 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-auto-import/auto-import.exp: Add missing dll entrypoint.
include/coff/ * xcoff.h (XCOFF_EXPALL, XCOFF_EXPFULL): New flags. (xcoff_loader_info): Add auto_export_flags. bfd/ * bfd-in.h (bfd_xcoff_size_dynamic_sections): Replace the bfd_boolean export_defineds parameter with an unsigned int auto_export_flags parameter. * bfd-in2.h: Regenerate. * xcofflink.c (xcoff_archive_contains_shared_object_p): New function, split out from xcoff_build_ldsyms. (xcoff_covered_by_expall_p): New function. (xcoff_auto_export_p): New function, split out from xcoff_build_ldsyms but with extra code to handle -bexpfull and -bexpall. (xcoff_mark_auto_exports): New function. (xcoff_build_ldsyms): Use xcoff_auto_export_p to decide whether a function should be automatically exported. (bfd_xcoff_size_dynamic_sections): Replace the export_defineds parameter with an auto_export_flags parameter. Update ldinfo accordingly. Use xcoff_mark_auto_exports to mark all automatically- exported symbols. ld/ * emultempl/aix.em (auto_export_flags): New variable. (explicit_auto_export_flags): Likewise. (OPTION_EXPALL, OPTION_EXPFULL): New enum values. (OPTION_NOEXPALL, OPTION_NOEXPFULL): Likewise. (gld${EMULATION_NAME}_add_options): Add -bexpall, -bexpfull, -bnoexpall and -bnoexpfull. (gld${EMULATION_NAME}_handle_option): Handle them. (gld${EMULATION_NAME}_before_allocation): Update the call to bfd_size_dynamic_sections. ld/testsuite/ * ld-powerpc/aix-export-1-all.dd, ld-powerpc/aix-export-1-full.dd, ld-powerpc/aix-export-1a.s, ld-powerpc/aix-export-1b.s: New tests. * ld-powerpc/aix52.exp: Run them.
2009-03-14 09:35:46 +00:00
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-export-1-all.dd, ld-powerpc/aix-export-1-full.dd,
ld-powerpc/aix-export-1a.s, ld-powerpc/aix-export-1b.s: New tests.
* ld-powerpc/aix52.exp: Run them.
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-gc-1.s, ld-powerpc/aix-gc-1.ex,
ld-powerpc/aix-gc-1-32.dd, ld-powerpc/aix-gc-1-64.dd,
ld-powerpc/aix-weak-1-gcdso.dnd, ld-powerpc/aix-weak-1-gcdso.hd,
ld-powerpc/aix-weak-1-gcdso.nd: New tests.
* ld-powerpc/aix52.exp: Run them.
include/coff/ * internal.h (C_AIX_WEAKEXT): New macro. (C_WEAKEXT): Use the GNU definition in the generic part of the file, and conditionally reset it to C_AIX_WEAKEXT in the XCOFF part of the file. (CSECT_SYM_P): New macro. * xcoff.h (L_WEAK): Define. (EXTERN_SYM_P): New macro. bfd/ * coffcode.h (coff_pointerize_aux_hook): Update CSECT_SYM_P to check whether a symbol has csect information. (coff_print_aux): Likewise. * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Handle auxillary csect information for C_AIX_WEAKEXT too. (_bfd_xcoff_swap_aux_out): Likewise. (xcoff_reloc_type_br): Handle defweak symbols too. * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Handle auxillary csect information for C_AIX_WEAKEXT too. (_bfd_xcoff64_swap_aux_out): Likewise. (xcoff64_reloc_type_br): Handle defweak symbols too. * coffgen.c (coff_print_symbol): Handle auxillary function information for C_AIX_WEAKEXT too. * xcofflink.c (_bfd_xcoff_canonicalize_dynamic_symtab): Set BSF_WEAK instead of BSF_GLOBAL if the L_WEAK flag is set. (xcoff_dynamic_definition_p): New function. (xcoff_link_add_dynamic_symbols): Use it to decide whether ldsym defines h. Don't change h if ldsym isn't the definition. Otherwise, always take the symbol class from the ldsym. Use weak bfd symbol types for weak ldsyms. (xcoff_link_add_symbols): Use CSECT_SYM_P and EXTERN_SYM_P. Fix the check for whether a definition is from a shared object. Allow redefinitions of weak symbols. (xcoff_link_check_ar_symbols): Use EXTERN_SYM_P. (xcoff_keep_symbol_p): Likewise. (bfd_xcoff_size_dynamic_sections): Use CSECT_SYM_P. (xcoff_link_input_bfd): Use CSECT_SYM_P and EXTERN_SYM_P. Add .loader entries for C_AIX_WEAKEXT as well as C_EXT symbols, but mark them as L_WEAK. (xcoff_write_global_symbol): Treat weak symbols as C_AIX_WEAKEXT instead of C_EXT if C_AIX_WEAKEXT == C_WEAKEXT. gas/ * config/tc-ppc.c (ppc_frob_symbol): Add csect information for C_AIX_WEAKEXT too. ld/testsuite/ * ld-powerpc/aix-glink-2a.s, ld-powerpc/aix-glink-2a.ex, ld-powerpc/aix-glink-2b.s, ld-powerpc/aix-glink-2c.s, ld-powerpc/aix-glink-2c.ex, ld-powerpc/aix-glink-2d.s, ld-powerpc/aix-glink-2-32.dd, ld-powerpc/aix-glink-2-64.dd, ld-powerpc/aix-weak-1a.s, ld-powerpc/aix-weak-1b.s, ld-powerpc/aix-weak-1-rel.hd, ld-powerpc/aix-weak-1-rel.nd, ld-powerpc/aix-weak-1-dso.hd, ld-powerpc/aix-weak-1-dso.nd, ld-powerpc/aix-weak-1-dso.dnd, ld-powerpc/aix-weak-1.ex, ld-powerpc/aix-weak-2a.s, ld-powerpc/aix-weak-2a.ex, ld-powerpc/aix-weak-2a.nd, ld-powerpc/aix-weak-2b.s, ld-powerpc/aix-weak-2b.nd, ld-powerpc/aix-weak-2c.s, ld-powerpc/aix-weak-2c.ex, ld-powerpc/aix-weak-2c.nd, ld-powerpc/aix-weak-2c.od, ld-powerpc/aix-weak-3a.s, ld-powerpc/aix-weak-3a.ex, ld-powerpc/aix-weak-3b.s, ld-powerpc/aix-weak-3b.ex, ld-powerpc/aix-weak-3-32.d, ld-powerpc/aix-weak-3-32.dd, ld-powerpc/aix-weak-3-64.d, ld-powerpc/aix-weak-3-64.dd: New tests. * ld-powerpc/aix52.exp: Run them. Replace tmp/aix-* with tmp/aix64-* in 64-bit ld options.
2009-03-14 09:34:27 +00:00
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-glink-2a.s, ld-powerpc/aix-glink-2a.ex,
ld-powerpc/aix-glink-2b.s, ld-powerpc/aix-glink-2c.s,
ld-powerpc/aix-glink-2c.ex, ld-powerpc/aix-glink-2d.s,
ld-powerpc/aix-glink-2-32.dd, ld-powerpc/aix-glink-2-64.dd,
ld-powerpc/aix-weak-1a.s, ld-powerpc/aix-weak-1b.s,
ld-powerpc/aix-weak-1-rel.hd, ld-powerpc/aix-weak-1-rel.nd,
ld-powerpc/aix-weak-1-dso.hd, ld-powerpc/aix-weak-1-dso.nd,
ld-powerpc/aix-weak-1-dso.dnd, ld-powerpc/aix-weak-1.ex,
ld-powerpc/aix-weak-2a.s, ld-powerpc/aix-weak-2a.ex,
ld-powerpc/aix-weak-2a.nd, ld-powerpc/aix-weak-2b.s,
ld-powerpc/aix-weak-2b.nd, ld-powerpc/aix-weak-2c.s,
ld-powerpc/aix-weak-2c.ex, ld-powerpc/aix-weak-2c.nd,
ld-powerpc/aix-weak-2c.od, ld-powerpc/aix-weak-3a.s,
ld-powerpc/aix-weak-3a.ex, ld-powerpc/aix-weak-3b.s,
ld-powerpc/aix-weak-3b.ex, ld-powerpc/aix-weak-3-32.d,
ld-powerpc/aix-weak-3-32.dd, ld-powerpc/aix-weak-3-64.d,
ld-powerpc/aix-weak-3-64.dd: New tests.
* ld-powerpc/aix52.exp: Run them. Replace tmp/aix-* with
tmp/aix64-* in 64-bit ld options.
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-no-dup-syms-1a.s, ld-powerpc/aix-no-dup-syms-1b.s,
ld-powerpc/aix-no-dup-syms-1.ex, ld-powerpc/aix-no-dup-syms-1.im,
ld-powerpc/aix-no-dup-syms-1-dso.dnd,
ld-powerpc/aix-no-dup-syms-1-dso.drd,
ld-powerpc/aix-no-dup-syms-1-dso.nd,
ld-powerpc/aix-no-dup-syms-1-dso.rd,
ld-powerpc/aix-no-dup-syms-1-rel.nd,
ld-powerpc/aix-no-dup-syms-1-rel.rd: New tests.
* ld-powerpc/aix52.exp: Run them.
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-abs-branch-1.nd,
ld-powerpc/aix-abs-reloc-1.nd: New tests.
* ld-powerpc/aix52.exp: Run them.
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-lineno-1.s, ld-powerpc/aix-lineno-1.txt,
ld-powerpc/aix-lineno-1a.dd, ld-powerpc/aix-lineno-1a.nd,
ld-powerpc/aix-lineno-1b.dd, ld-powerpc/aix-lineno-1b.nd: New tests.
* ld-powerpc/aix52.exp: Run them. Copy aix-lineno-1.txt to tmpdir.
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-toc-1.ex, ld-powerpc/aix-toc-1a.s,
ld-powerpc/aix-toc-1b.s, ld-powerpc/aix-toc-1-32.dd,
ld-powerpc/aix-toc-1-64.dd: New tests.
* ld-powerpc/aix52.exp: Run them.
include/coff/ * xcoff.h (XCOFF_CALLED, XCOFF_IMPORT): Update comments. (XCOFF_WAS_UNDEFINED): New flag. (xcoff_link_hash_table): Add an "rtld" field. bfd/ * coff-rs6000.c (xcoff_ppc_relocate_section): Report relocations against undefined symbols if the symbol's XCOFF_WAS_UNDEFINED flag is set. Assert that all undefined symbols are either imported or defined by a dynamic object. * coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise. * xcofflink.c (xcoff_link_add_symbols): Extend function-symbol handling to all relocations. Only set XCOFF_CALLED for function symbols. (xcoff_find_function): New function, split out from... (bfd_xcoff_export_symbol) ...here. (xcoff_set_import_path): New function, split out from... (bfd_xcoff_import_symbol): ...here. Remove assertion for old meaning of XCOFF_CALLED. (xcoff_mark_symbol): If we mark an undefined and unimported symbol, find some way of defining it. If the symbol is a function descriptor, fill in its definition automatically. If the symbol is a function, mark its descriptor and allocate room for global linkage code. Otherwise mark the symbol as implicitly imported. Move the code for creating function descriptors from... (xcoff_build_ldsyms): ...here. Use XCOFF_WAS_UNDEFINED to check for symbols that were implicitly defined. (xcoff_mark): Don't count any dynamic relocations against function symbols. (bfd_xcoff_size_dynamic_sections): Save the rtld parameter in the xcoff link info. (xcoff_link_input_bfd): Remove handling of undefined and unexported symbols. ld/ * emultempl/aix.em (gld${EMULATION_NAME}_handle_option): Make -berok and -bernotok control link_info.unresolved_syms_in_objects and link_info.unresolved_syms_in_shared_libs instead of force_make_executable. ld/testsuite/ * ld-powerpc/aix-glink-1.ex, ld-powerpc/aix-glink-1.s, ld-powerpc/aix-glink-1-32.dd, ld-powerpc/aix-glink-1-64.dd, ld-powerpc/aix-glink-1-32.d, ld-powerpc/aix-glink-1-64.d: New tests. * ld-powerpc/aix52.exp: Run them.
2009-03-14 09:17:32 +00:00
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-glink-1.ex, ld-powerpc/aix-glink-1.s,
ld-powerpc/aix-glink-1-32.dd, ld-powerpc/aix-glink-1-64.dd,
ld-powerpc/aix-glink-1-32.d, ld-powerpc/aix-glink-1-64.d: New tests.
* ld-powerpc/aix52.exp: Run them.
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-abs-branch-1.im, ld-powerpc/aix-abs-branch-1.ex,
ld-powerpc/aix-abs-branch-1.s,
ld-powerpc/aix-abs-branch-1.dd: New test.
* ld-powerpc/aix52.exp: Run it.
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-abs-reloc-1.ex, ld-powerpc/aix-abs-reloc-1.im,
ld-powerpc/aix-abs-reloc-1.od, ld-powerpc/aix-abs-reloc-1.s: New test.
* ld-powerpc/aix52.exp: Run it.
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* ld-powerpc/aix-core-sec-1.s, ld-powerpc/aix-core-sec-1.ex,
ld-powerpc/aix-core-sec-1.hd, ld-powerpc/aix-core-sec-2.s,
ld-powerpc/aix-core-sec-2.ex, ld-powerpc/aix-core-sec-2.hd,
ld-powerpc/aix-core-sec-3.s, ld-powerpc/aix-core-sec-3.ex,
ld-powerpc/aix-core-sec-3.hd: New tests.
* ld-powerpc/aix52.exp: New harness.
2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
* lib/ld-lib.exp (ar_simple_create): Add an "aropts" parameter.
(run_ld_link_tests): Treat the second list element as "ar" options
when creating an archive. Don't run the linker in this case.
(run_cc_link_tests): Likewise.
2009-03-13 Nick Clifton <nickc@redhat.com>
* lib/ld-lib.exp (run_dump_test): Add verbose to list of globals.
Replace call to verbose_eval with a test of verbose level. If
greater than 2 always dump the contents of the dumpfile. If equal
to 2 only dump the contents if the regexp diff failed.
(proc verbose_eval): Delete.
2009-03-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* ld-elf/empty2.d: Remove xfail for hppa*-*-*.
* ld-elf/merge.d: Change xfail for hppa to hppa*64*-*-*.
2009-03-05 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/arm-elf.exp: Add new farcall-group-limit test.
* ld-arm/farcall-group-limit.d: New file.
* ld-arm/farcall-group3.s: New file.
* ld-arm/farcall-group4.s: New file.
2009-03-05 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/arm-elf.exp: Add 2 more tests to check long branch stubs
in PLT context.
* ld-arm/farcall-mixed-app-v5.d: New file.
* ld-arm/farcall-mixed-app.d: Likewise.
* ld-arm/farcall-mixed-app.r: Likewise.
* ld-arm/farcall-mixed-app.s: Likewise.
* ld-arm/farcall-mixed-app.sym: Likewise.
* ld-arm/farcall-mixed-lib.d: Likewise.
* ld-arm/farcall-mixed-lib.r: Likewise.
include/elf/ * ppc.h (R_PPC_TLSGD, R_PPC_TLSLD): Add new relocs. * ppc64.h (R_PPC64_TLSGD, R_PPC64_TLSLD): Add new relocs. bfd/ * reloc.c (BFD_RELOC_PPC_TLSGD, BFD_RELOC_PPC_TLSLD): New. * section.c (struct bfd_section): Add has_tls_get_addr_call. (BFD_FAKE_SECTION): Init new flag. * ecoff.c (bfd_debug_section): Likewise. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. * elf32-ppc.c (ppc_elf_howto_raw): Add R_PPC_TLSGD and R_PPC_TLSLD. (ppc_elf_reloc_type_lookup): Handle new relocs. (ppc_elf_check_relocs): Set has_tls_get_addr_call on finding such without marker relocs. (ppc_elf_tls_optimize): Allow out-of-order __tls_get_addr relocs if section has no old-style calls. (ppc_elf_relocate_section): Set tls_mask for non-tls relocs too. Don't try to optimize new-style __tls_get_addr call when handling arg setup relocs. Instead do so for R_PPC_TLSGD and R_PPC_TLSLD relocs. * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_TLSGD, R_PPC64_TLSLD. (ppc64_elf_reloc_type_lookup): Handle new relocs. (ppc64_elf_check_relocs): Set has_tls_get_addr_call on finding such without marker relocs. (ppc64_elf_tls_optimize): Allow out-of-order __tls_get_addr relocs if section has no old-style calls. Set toc_ref for new relocs as appropriate. (ppc64_elf_relocate_section): Set tls_mask for non-tls relocs too. Don't try to optimize new-style __tls_get_addr call when handling arg setup relocs. Instead do so for R_PPC_TLSGD and R_PPC_TLSLD relocs. gas/ * config/tc-ppc.c (ppc_elf_suffix): Error if ppc32 tls got relocs have non-zero addend. (md_assemble): Parse args of __tls_get_addr calls. (md_apply_fix): Handle BFD_RELOC_PPC_TLSGD and BFD_RELOC_PPC_TLSLD. ld/testsuite/ * ld-powerpc/tlsmark.s, * ld-powerpc/tlsmark.d: New test. * ld-powerpc/tlsmark32.s, * ld-powerpc/tlsmark32.d: New test. * ld-powerpc/powerpc.exp: Run them.
2009-03-04 05:50:50 +00:00
2009-03-04 Alan Modra <amodra@bigpond.net.au>
* ld-powerpc/tlsmark.s, * ld-powerpc/tlsmark.d: New test.
* ld-powerpc/tlsmark32.s, * ld-powerpc/tlsmark32.d: New test.
* ld-powerpc/powerpc.exp: Run them.
2009-03-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
* ld-scripts/regions-alias-1.t: New file.
* ld-scripts/regions-alias-2.t: New file.
* ld-scripts/regions-alias-3.t: New file.
* ld-scripts/regions-alias-4.t: New file.
* ld-scripts/script.exp: Run region alias tests.
2009-02-27 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/pe.exp: Disable auto-import when linking on Cygwin.
2009-02-26 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/arm-elf.exp: Add 3 tests for the 3 new stubs.
* ld-arm/farcall-thumb-arm-pic-veneer.d: New expected result, the
test is now expected to pass.
* ld-arm/farcall-thumb-thumb-m-pic-veneer.d: Likewise.
* ld-arm/farcall-thumb-thumb-pic-veneer.d: Likewise.
2009-02-25 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/thumb2-bl-as-thumb1-bad-noeabi.d: Update expected result,
as stubs are now generated and the end of the .text section.
* ld-arm/thumb2-bl-bad-noeabi.d: Likewise.
2009-02-24 Daniel Jacobowitz <dan@codesourcery.com>
* ld-arm/farcall-arm-thumb-blx-pic-veneer.d,
ld-arm/farcall-arm-thumb-pic-veneer.d,
ld-arm/farcall-thumb-thumb-blx-pic-veneer.d: Update for fixed
Thumb PIC stub.
2009-02-24 Joseph Myers <joseph@codesourcery.com> bfd/ * elf32-arm.c (PREV_SEC): Update comment. (group_sections): Rename argument to stubs_always_after_branch. Reverse the list and place stubs at the end of input sections. Undefine NEXT_SEC. (elf32_arm_size_stubs): Update to use stubs_always_after_branch. ld/ * ld.texinfo (ARM): Document changed meaning of --stub-group-size. * emultempl/armelf.em (hook_in_stub): Insert after the input section. (elf32_arm_add_stub_section): Update comment. (PARSE_AND_LIST_OPTIONS): Update help for --stub-group-size. 2009-02-24 Daniel Jacobowitz <dan@codesourcery.com> ld/testsuite/ * ld-arm/arm-elf.exp (armeabitests): Update duplicate test names. Use normal output files for big-endian. * ld-arm/farcall-arm-arm-be.d, ld-arm/farcall-thumb-arm-be.d: Delete. * ld-arm/farcall-arm-arm-be8.d, ld-arm/farcall-arm-arm-pic-veneer.d, ld-arm/farcall-arm-arm.d, ld-arm/farcall-arm-thumb-blx-pic-veneer.d, ld-arm/farcall-arm-thumb-blx.d, ld-arm/farcall-arm-thumb-pic-veneer.d, ld-arm/farcall-arm-thumb.d, ld-arm/farcall-group-size2.d, ld-arm/farcall-group.d, ld-arm/farcall-mix.d, ld-arm/farcall-mix2.d, ld-arm/farcall-thumb-arm-be8.d, ld-arm/farcall-thumb-arm-blx-pic-veneer.d, ld-arm/farcall-thumb-arm-blx.d, ld-arm/farcall-thumb-arm-short.d, ld-arm/farcall-thumb-arm.d, ld-arm/farcall-thumb-thumb-blx-pic-veneer.d, ld-arm/farcall-thumb-thumb-blx.d, ld-arm/farcall-thumb-thumb-m.d, ld-arm/farcall-thumb-thumb.d, ld-arm/thumb2-bl-as-thumb1-bad.d, ld-arm/thumb2-bl-bad.d: Update for moved stubs.
2009-02-24 22:43:10 +00:00
2009-02-24 Daniel Jacobowitz <dan@codesourcery.com>
* ld-arm/arm-elf.exp (armeabitests): Update duplicate test names.
Use normal output files for big-endian.
* ld-arm/farcall-arm-arm-be.d, ld-arm/farcall-thumb-arm-be.d: Delete.
* ld-arm/farcall-arm-arm-be8.d, ld-arm/farcall-arm-arm-pic-veneer.d,
ld-arm/farcall-arm-arm.d, ld-arm/farcall-arm-thumb-blx-pic-veneer.d,
ld-arm/farcall-arm-thumb-blx.d, ld-arm/farcall-arm-thumb-pic-veneer.d,
ld-arm/farcall-arm-thumb.d, ld-arm/farcall-group-size2.d,
ld-arm/farcall-group.d, ld-arm/farcall-mix.d, ld-arm/farcall-mix2.d,
ld-arm/farcall-thumb-arm-be8.d,
ld-arm/farcall-thumb-arm-blx-pic-veneer.d,
ld-arm/farcall-thumb-arm-blx.d, ld-arm/farcall-thumb-arm-short.d,
ld-arm/farcall-thumb-arm.d,
ld-arm/farcall-thumb-thumb-blx-pic-veneer.d,
ld-arm/farcall-thumb-thumb-blx.d, ld-arm/farcall-thumb-thumb-m.d,
ld-arm/farcall-thumb-thumb.d, ld-arm/thumb2-bl-as-thumb1-bad.d,
ld-arm/thumb2-bl-bad.d: Update for moved stubs.
2009-02-23 Daniel Jacobowitz <dan@codesourcery.com>
* ld-arm/arm-elf.exp (armeabitests): Run new tests. Correct BE8 output
filename.
* ld-arm/farcall-arm-arm-be.d, ld-arm/farcall-thumb-arm-be.d: New.
2009-02-23 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/arm-elf.exp: Add new farcall-thumb-arm-be8 test.
* ld-arm/farcall-thumb-arm-be8.d: New expected result.
* ld-arm/farcall-arm-arm-be8.d: Replace wildcards by instructions.
2009-02-23 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/arm-elf.exp: Rewrite non-EABI variants of
thumb2-bl-as-thumb1-bad and thumb2-bl-bad tests, which now
pass. farcall-thumb-thumb now passes in EABI mode.
* ld-arm/farcall-thumb-arm-pic-veneer.d: Fixed name, source, as
and ld flags to match intended test.
* ld-arm/farcall-thumb-arm.d: New expected result.
* ld-arm/farcall-thumb-thumb-m.d: Likewise.
* ld-arm/farcall-thumb-thumb-m-pic-veneer.d: Fixed name and ld
flags.
* ld-arm/farcall-thumb-thumb-pic-veneer.d: Likewise.
* ld-arm/farcall-thumb-thumb.d: New expected result, this test is
now expected to pass.
* ld-arm/thumb2-bl-as-thumb1-bad-noeabi.d: Likewise.
* ld-arm/thumb2-bl-bad-noeabi.d: Likewise.
* ld-arm/thumb2-bl-as-thumb1-bad.d: Update addresses according to
new use.
* ld-arm/thumb2-bl-as-thumb1-bad.s: Update comment.
bfd/ChangeLog * coff-alpha.c (alpha_ecoff_backend_data): Initialise fields which control long section name handling with ECOFF_NO_LONG_SECTION_NAMES. * coff-mips.c (mips_ecoff_backend_data): Likewise. * coff-rs6000.c (bfd_xcoff_backend_data): Initialise fields which control long section name handling with XCOFF_NO_LONG_SECTION_NAMES. (bfd_pmac_xcoff_backend_data): Likewise. * coff64-rs6000.c (bfd_xcoff_backend_data): Likewise. (bfd_xcoff_aix5_backend_data): Likewise. (xcoff64_write_object_contents): Delete unused long_section_names local variable. * coff-sh.c (bfd_coff_small_swap_table): Initialise long section name members using COFF_DEFAULT_LONG_SECTION_NAMES and make entire struct non-const. * coffcode.h (documentation): Update to describe long section names. (COFFLONGSECTIONCATHELPER): New helper macro. (BLANKOR1TOODD): Likewise. (COFF_ENABLE_LONG_SECTION_NAMES): Likewise. (COFF_LONG_SECTION_NAMES_SETTER): Likewise. (COFF_DEFAULT_LONG_SECTION_NAMES): Likewise. (bfd_coff_set_long_section_names_allowed): New function. (bfd_coff_set_long_section_names_disallowed): Likewise. (struct bfd_coff_backend_data): Add new backend hook function pointer _bfd_coff_set_long_section_names. (bfd_coff_set_long_section_names): New backend hook. (coff_write_object_contents): Only generate long section names if bfd_coff_long_section_names() indicates they are currently enabled. (bfd_coff_std_swap_table): Make non-const, and initialise long section name fields using COFF_DEFAULT_LONG_SECTION_NAMES. (ticoff0_swap_table): Likewise to both. (ticoff1_swap_table): Again, likewise to both. * coffgen.c (make_a_section_from_file): Allow long section names as inputs even if not currently allowed for outputs. * ecoff.c (_bfd_ecoff_no_long_sections): New function. * efi-app-ia32.c (COFF_LONG_SECTION_NAMES): Define to 0, not blank. * efi-app-ia64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-app-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-bsdrv-ia32.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-bsdrv-ia64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-bsdrv-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-rtdrv-ia32.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-rtdrv-ia64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-rtdrv-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-arm.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-i386.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-mcore.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-mips.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-ppc.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-sh.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise. * libcoff-in.h: Update copyright year to cause updated copyright year in generated libcoff.h, and fix typo. * libcoff.h: Regenerated. * libecoff.h (ECOFF_NO_LONG_SECTION_NAMES): New macro. (_bfd_ecoff_no_long_sections): Add prototype. * libxcoff.h (XCOFF_NO_LONG_SECTION_NAMES): New macro. * pe-mips.c (COFF_LONG_SECTION_NAMES): Define empty if not already defined by an including .c file. * ticoff.h (ticoff0_swap_table): Make non-const, and initialise long section name fields using COFF_DEFAULT_LONG_SECTION_NAMES. (ticoff1_swap_table): Likewise to both. ld/ChangeLog * ld.texinfo: Update to mention long section name options. * NEWS: Mention new behaviour and command-line options. * pe-dll.c (pe_use_coff_long_section_names): New global variable. (pe_output_file_set_long_section_names): New function. (pe_dll_build_sections): Call it on output BFDs. (pe_exe_build_sections): Likewise. (pe_dll_fill_sections): Likewise. (pe_exe_fill_sections): Likewise. * pe-dll.h (pe_use_coff_long_section_names): Declare extern. (pe_output_file_set_long_section_names): Add prototype. * pep-dll.c (pe_use_coff_long_section_names): Define pep_ alias. (pe_output_file_set_long_section_names): Likewise. * pep-dll.h (pep_use_coff_long_section_names): Declare extern. (pep_output_file_set_long_section_names): Add prototype. * pe.em (OPTION_ENABLE_LONG_SECTION_NAMES): New getopt value macro. (OPTION_DISABLE_LONG_SECTION_NAMES): Likewise. (gld${EMULATION_NAME}_add_options): Add new options to xtra_long[]. (gld_${EMULATION_NAME}_list_options): Describe them. (gld${EMULATION_NAME}_handle_option): Set or clear global pe_use_coff_long_section_names flag when options recognised. (gld_${EMULATION_NAME}_after_open): En/disable long section names for main output bfd by calling pe_output_file_set_long_section_names. * pep.em (enum options): Extend enum with new getopt option values. (gld${EMULATION_NAME}_add_options): Add new options to xtra_long[]. (gld_${EMULATION_NAME}_list_options): Describe them. (gld${EMULATION_NAME}_handle_option): Set or clear global pe_use_coff_long_section_names flag when options recognised. (gld_${EMULATION_NAME}_after_open): En/disable long section names for main output bfd by calling pep_output_file_set_long_section_names. ld/testsuite/ChangeLog * ld-pe/longsecn-1.d: New test file. * ld-pe/longsecn-2.d: Likewise. * ld-pe/longsecn-3.d: Likewise. * ld-pe/longsecn-4.d: Likewise. * ld-pe/longsecn-5.d: Likewise. * ld-pe/longsecn.d: Likewise. * ld-pe/longsecn.exp: New test control script. * ld-pe/longsecn.s: New test source file.
2009-02-18 18:23:08 +00:00
2009-18-02 Dave Korn <dave.korn.cygwin@gmail.com>
* ld-pe/longsecn-1.d: New test file.
* ld-pe/longsecn-2.d: Likewise.
* ld-pe/longsecn-3.d: Likewise.
* ld-pe/longsecn-4.d: Likewise.
* ld-pe/longsecn-5.d: Likewise.
* ld-pe/longsecn.d: Likewise.
* ld-pe/longsecn.exp: New test control script.
* ld-pe/longsecn.s: New test source file.
2009-02-18 Christophe Lyon <christophe.lyon@st.com>
* ld-arm/farcall-arm-arm-pic-veneer.d,
ld-arm/farcall-arm-thumb-blx-pic-veneer.d,
ld-arm/farcall-arm-thumb-pic-veneer.d,
ld-arm/farcall-thumb-arm-blx-pic-veneer.d,
ld-arm/farcall-thumb-thumb-blx-pic-veneer.d: Fix expected stub
target.
2009-02-06 Joseph Myers <joseph@codesourcery.com>
* lib/ld-lib.exp (check_gc_sections_available): Return 0 for
*-*-mingw*.
2009-02-05 Joseph Myers <joseph@codesourcery.com>
* ld-arm/arm-elf.exp (armeabitests): Restore thumb2-b-interwork.
M68K TLS support. ld/testsuite/ * ld-m68k/got-multigot-12-13-14-34-35-ok.d: Update. * ld-m68k/got-multigot-14-ok.d: Update. * ld-m68k/m68k-got.exp: Update. * ld-m68k/got-negative-12-13-14-34-ok.d: Update. * ld-m68k/got-negative-14-ok.d: Update. * ld-m68k/tls-gd-1.d, ld-m68k/tls-gd-2.d: New tests. * ld-m68k/tls-gd-ie-1.d, ld-m68k/tls-ie-1.d: New tests. * ld-m68k/tls-ld-1.d, ld-m68k/tls-ld-2.d: New tests. * ld-m68k/tls-ld-1.s, ld-m68k/tls-ld-2.s, ld-m68k/tls-le-1.s: New test sources. * ld-m68k/tls-no-1.s, ld-m68k/tls-gd-ie-1.s, ld-m68k/tls-gd-1.s: New test sources. * ld-m68k/tls-gd-2.s, ld-m68k/tls-ie-1.s: New test sources. * ld-m68k/m68k.exp: Run new tests. (merge isa-a isa-a:nodiv): Fix. gas/testsuite/ * gas/m68k/tls-gd-3.d, gas/m68k/tls-gd-3.s: New test. * gas/m68k/all.exp: Run it. gas/ * config/m68k-parse.h (enum pic_relocation): Add values for TLS relocations. * config/m68k-parse.y (yylex): Parse TLS relocations. * config/tc-m68k.c (m68k_elf_cons): New static function. (md_pseudo_table): Use it. (get_reloc_code, tc_m68k_fix_adjustable, tc_gen_reloc): Handle TLS relocations. (md_apply_fix): Fix to set thread local flag. (m68k_elf_suffix): New static function; helper for m68k_elf_cons. include/elf/ * m68k.h: Map TLS relocations to numbers. bfd/ * bfd-in2.h: Regenerate. * elf32-m68k.c: Handle 2-slot GOT entries. Rename variables and fields from n_entries to n_slots where appropriate, update comments. (HOWTO): Add TLS relocations. (reloc_map): Map BFD_RELOC_68K_TLS_* to R_68K_TLS_*. (enum elf_m68k_got_offset_size): New enum. (struct elf_m68k_got_entry.type): Move field to ... (struct elf_m68k_got_entry_key): ... here. Update all uses. (elf_m68k_reloc_got_type, elf_m68k_reloc_got_offset_size): New static functions. (elf_m68k_reloc_got_n_entries, elf_m68k_reloc_tls_p): New static functions. (struct elf_m68k_got): merge rel_8o_n_entries and rel_8o_16o_n_entries fields into n_entries array. Update comments. (elf_m68k_init_got): Simplify, update all uses. (elf_m68k_init_got_entry_key): Handle R_68K_TLS_LDM32 reloc, update. (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT): Adjust to handle 2-slot GOT entries; update name, update all uses. (ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): Ditto. (elf_m68k_get_got_entry): Update. (elf_m68k_update_got_entry_type): Rewrite to handle TLS GOT entries, simplify. (elf_m68k_remove_got_entry_type): Simplify. (elf_m68k_add_entry_to_got, elf_m68k_can_merge_gots_1): Update. (elf_m68k_can_merge_gots): Update. (elf_m68k_merge_gots_1, elf_m68k_merge_gots): Update. (struct elf_m68k_finalize_got_offsets_arg): Rewrite to handle 2-slot GOT entries, simplify. (elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Same. (struct elf_m68k_partition_multi_got_arg): Add slots_relas_diff field, remove obsoleted local_n_entries field. (elf_m68k_partition_multi_got_2): New static function. (elf_m68k_partition_multi_got_1, elf_m68k_partition_multi_got): Use it; update. (elf_m68k_remove_got_entry_type): Update. (elf_m68k_install_rela, dtpoff_base, tpoff): New static functions. (elf_m68k_check_relocs): Handle TLS relocations. Remove unnecessary update of sgot->size and srelgot->size. (elf_m68k_gc_sweep_hook): Update. (elf_m68k_install_rela, dtpoff_base, tpoff): New static functions. (elf_m68k_relocate_section, elf_m68k_finish_dynamic_symbol): Handle TLS relocations. * reloc.c (BFD_RELOC_68K_TLS_*): Declare TLS relocations. * libbfd.h (bfd_reloc_code_real_names): Add BFD_RELOC_68K_TLS_*.
2009-02-03 14:36:47 +00:00
2009-02-03 Maxim Kuvyrkov <maxim@codesourcery.com>
* ld-m68k/got-multigot-12-13-14-34-35-ok.d: Update.
* ld-m68k/got-multigot-14-ok.d: Update.
* ld-m68k/m68k-got.exp: Update.
* ld-m68k/got-negative-12-13-14-34-ok.d: Update.
* ld-m68k/got-negative-14-ok.d: Update.
* ld-m68k/tls-gd-1.d, ld-m68k/tls-gd-2.d: New tests.
* ld-m68k/tls-gd-ie-1.d, ld-m68k/tls-ie-1.d: New tests.
* ld-m68k/tls-ld-1.d, ld-m68k/tls-ld-2.d: New tests.
* ld-m68k/tls-ld-1.s, ld-m68k/tls-ld-2.s, ld-m68k/tls-le-1.s:
New test sources.
* ld-m68k/tls-no-1.s, ld-m68k/tls-gd-ie-1.s, ld-m68k/tls-gd-1.s:
New test sources.
* ld-m68k/tls-gd-2.s, ld-m68k/tls-ie-1.s: New test sources.
* ld-m68k/m68k.exp: Run new tests.
(merge isa-a isa-a:nodiv): Fix.
2009-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
* ld-elf/eh-group2.s: New `.cfi_lsda' referencing `.gcc_except_table'.
* ld-elf/eh-group.exp: New test and conditional defininiton of `ELF64'.
2009-01-29 Nick Clifton <nickc@redhat.com>
* lib/ld-lib.exp (check_gc_sections_available): Add MeP to list of
targets which do not support garbage collection.
* ld-srec/srec.exp (run_srec_test): Expect tests to fail for MeP.
* ld-elf/group8a.d: Likewise.
* ld-elf/group8b.d: Likewise.
* ld-elf/group9a.d: Likewise.
* ld-elf/group9b.d: Likewise.
2009-01-27 Hans-Peter Nilsson <hp@axis.com>
* ld-cris/tls-tbss64.s, ld-cris/tls-e-80.d: New test.
* ld-cris/tls-e-20.d, ld-cris/tls-e-20a.d, ld-cris/tls-e-22.d,
ld-cris/tls-ldgde-14.d, ld-cris/tls-ldgde-15.d,
ld-cris/tls-ldgdex-14.d, ld-cris/tls-ldgdex-15.d: Adjust for
change in relocation values.
* ld-cris/weakhiddso.d, ld-cris/weakhid.s: New test.
2009-01-26 Nathan Sidwell <nathan@codesourcery.com>
* ld-powerpc/powerpc.exp: Add vxworks relax testcase.
* ld-powerpc/vxworks-relax.s, ld-powerpc/vxworks-relax.rd: New.
* ld-powerpc/vxworks1.ld: Add .pad and .far input sections.
* ld-powerpc/vxworks1.rd: Correct regexp for undefined symbols.
2009-01-26 Andrew Stubbs <ams@codesourcery.com> gas/ * config/tc-arm.c (attributes_set_explicitly): New array. (s_arm_eabi_attribute): Check return value from s_vendor_attribute. (cpu_arch): Add ARM_ARCH_V5T. (aeabi_set_attribute_int): New function. (aeabi_set_attribute_string): New function. (aeabi_set_public_attributes): Set attributes according to the user's intentions, rather than the actual state of the binary. Use aeabi_set_attribute_int and aeabi_set_attribute_string instead of bfd_elf_add_proc_attr_int and bfd_elf_add_proc_attr_string. Support WMMXv2. Use attribute names instead of numbers. * read.c (s_vendor_attribute): Change return type to int. Return the tag number that was set. * read.h (s_vendor_attribute): Change return type to int. gas/testsuite/ * gas/arm/attr-cpu-directive.d: New file. * gas/arm/attr-cpu-directive.s: New file. * gas/arm/attr-default.d: New file. * gas/arm/attr-march-all.d: New file. * gas/arm/attr-march-armv1.d: New file. * gas/arm/attr-march-armv2.d: New file. * gas/arm/attr-march-armv2a.d: New file. * gas/arm/attr-march-armv2s.d: New file. * gas/arm/attr-march-armv3.d: New file. * gas/arm/attr-march-armv3m.d: New file. * gas/arm/attr-march-armv4.d: New file. * gas/arm/attr-march-armv4t.d: New file. * gas/arm/attr-march-armv4txm.d: New file. * gas/arm/attr-march-armv4xm.d: New file. * gas/arm/attr-march-armv5.d: New file. * gas/arm/attr-march-armv5t.d: New file. * gas/arm/attr-march-armv5te.d: New file. * gas/arm/attr-march-armv5tej.d: New file. * gas/arm/attr-march-armv5texp.d: New file. * gas/arm/attr-march-armv5txm.d: New file. * gas/arm/attr-march-armv6-m.d: New file. * gas/arm/attr-march-armv6.d: New file. * gas/arm/attr-march-armv6j.d: New file. * gas/arm/attr-march-armv6k.d: New file. * gas/arm/attr-march-armv6kt2.d: New file. * gas/arm/attr-march-armv6t2.d: New file. * gas/arm/attr-march-armv6z.d: New file. * gas/arm/attr-march-armv6zk.d: New file. * gas/arm/attr-march-armv6zkt2.d: New file. * gas/arm/attr-march-armv6zt2.d: New file. * gas/arm/attr-march-armv7-a.d: New file. * gas/arm/attr-march-armv7-m.d: New file. * gas/arm/attr-march-armv7-r.d: New file. * gas/arm/attr-march-armv7.d: New file. * gas/arm/attr-march-armv7a.d: New file. * gas/arm/attr-march-armv7m.d: New file. * gas/arm/attr-march-armv7r.d: New file. * gas/arm/attr-march-iwmmxt.d: New file. * gas/arm/attr-march-iwmmxt2.d: New file. * gas/arm/attr-march-xscale.d: New file. * gas/arm/attr-mcpu.d: New file. * gas/arm/attr-mfpu-arm1020e.d: New file. * gas/arm/attr-mfpu-arm1020t.d: New file. * gas/arm/attr-mfpu-arm1136jf-s.d: New file. * gas/arm/attr-mfpu-arm1136jfs.d: New file. * gas/arm/attr-mfpu-arm7500fe.d: New file. * gas/arm/attr-mfpu-fpa.d: New file. * gas/arm/attr-mfpu-fpa10.d: New file. * gas/arm/attr-mfpu-fpa11.d: New file. * gas/arm/attr-mfpu-fpe.d: New file. * gas/arm/attr-mfpu-fpe2.d: New file. * gas/arm/attr-mfpu-fpe3.d: New file. * gas/arm/attr-mfpu-maverick.d: New file. * gas/arm/attr-mfpu-neon-fp16.d: New file. * gas/arm/attr-mfpu-neon.d: New file. * gas/arm/attr-mfpu-softfpa.d: New file. * gas/arm/attr-mfpu-softvfp+vfp.d: New file. * gas/arm/attr-mfpu-softvfp.d: New file. * gas/arm/attr-mfpu-vfp.d: New file. * gas/arm/attr-mfpu-vfp10-r0.d: New file. * gas/arm/attr-mfpu-vfp10.d: New file. * gas/arm/attr-mfpu-vfp3.d: New file. * gas/arm/attr-mfpu-vfp9.d: New file. * gas/arm/attr-mfpu-vfpv2.d: New file. * gas/arm/attr-mfpu-vfpv3-d16.d: New file. * gas/arm/attr-mfpu-vfpv3.d: New file. * gas/arm/attr-mfpu-vfpxd.d: New file. * gas/arm/attr-order.d: Update Tag_ARM_ISA_use and Tag_THUMB_ISA_use. * gas/arm/attr-override-cpu-directive.d: New file. * gas/arm/attr-override-cpu-directive.s: New file. * gas/arm/attr-override-mcpu.d: New file. * gas/arm/attr-override-mcpu.s: New file. * gas/arm/blank.s: New file. * gas/arm/eabi_attr_1.d: Update Tag_ARM_ISA_use and Tag_THUMB_ISA_use. ld/testsuite/ * ld-arm/attr-merge-3.attr: Update following gas change. * ld-arm/attr-merge-2.attr: Update Tag_ARM_ISA_use and Tag_THUMB_ISA_use following gas changes. * ld-arm/attr-merge-4.attr: Likewise. * ld-arm/attr-merge-5.attr: Likewise. * ld-arm/attr-merge-arch-1.attr: Likewise. * ld-arm/attr-merge-arch-2.attr: Likewise. * ld-arm/attr-merge-unknown-2.d: Likewise. * ld-arm/attr-merge-unknown-2r.d: Likewise. * ld-arm/attr-merge-unknown-3.d: Likewise. * ld-arm/attr-merge-wchar-00-nowarn.d: Likewise. * ld-arm/attr-merge-wchar-00.d: Likewise. * ld-arm/attr-merge-wchar-02-nowarn.d: Likewise. * ld-arm/attr-merge-wchar-02.d: Likewise. * ld-arm/attr-merge-wchar-04-nowarn.d: Likewise. * ld-arm/attr-merge-wchar-04.d: Likewise. * ld-arm/attr-merge-wchar-20-nowarn.d: Likewise. * ld-arm/attr-merge-wchar-20.d: Likewise. * ld-arm/attr-merge-wchar-22-nowarn.d: Likewise. * ld-arm/attr-merge-wchar-22.d: Likewise. * ld-arm/attr-merge-wchar-24-nowarn.d: Likewise. * ld-arm/attr-merge-wchar-40-nowarn.d: Likewise. * ld-arm/attr-merge-wchar-40.d: Likewise. * ld-arm/attr-merge-wchar-42-nowarn.d: Likewise. * ld-arm/attr-merge-wchar-44-nowarn.d: Likewise. * ld-arm/attr-merge-wchar-44.d: Likewise. * ld-arm/attr-merge.attr: Likewise.
2009-01-26 14:36:43 +00:00
2009-01-26 Andrew Stubbs <ams@codesourcery.com>
* ld-arm/attr-merge-3.attr: Update following gas change.
* ld-arm/attr-merge-2.attr: Update Tag_ARM_ISA_use and
Tag_THUMB_ISA_use following gas changes.
* ld-arm/attr-merge-4.attr: Likewise.
* ld-arm/attr-merge-5.attr: Likewise.
* ld-arm/attr-merge-arch-1.attr: Likewise.
* ld-arm/attr-merge-arch-2.attr: Likewise.
* ld-arm/attr-merge-unknown-2.d: Likewise.
* ld-arm/attr-merge-unknown-2r.d: Likewise.
* ld-arm/attr-merge-unknown-3.d: Likewise.
* ld-arm/attr-merge-wchar-00-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-00.d: Likewise.
* ld-arm/attr-merge-wchar-02-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-02.d: Likewise.
* ld-arm/attr-merge-wchar-04-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-04.d: Likewise.
* ld-arm/attr-merge-wchar-20-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-20.d: Likewise.
* ld-arm/attr-merge-wchar-22-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-22.d: Likewise.
* ld-arm/attr-merge-wchar-24-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-40-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-40.d: Likewise.
* ld-arm/attr-merge-wchar-42-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-44-nowarn.d: Likewise.
* ld-arm/attr-merge-wchar-44.d: Likewise.
* ld-arm/attr-merge.attr: Likewise.
2009-01-21 Alan Modra <amodra@bigpond.net.au>
* ld-spu/icache1.d: Add --non-ia-text to ld options.
2009-01-19 Hans-Peter Nilsson <hp@axis.com>
* ld-cris/expdref3.s, ld-cris/expdref4.s, ld-cris/weakref3.d,
ld-cris/weakref4.d: New tests.
* ld-cris/libdso-15b.d: Adjust for recent weakref fix.
2009-01-19 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/group9.s: Replace .byte with .long.
2009-01-19 Andrew Stubbs <ams@codesourcery.com>
* ld-arm/arm-elf.exp (armeabitests): Add EABI attribute merging 3,
EABI attribute merging 4, and EABI attribute merging 5,
EABI attribute arch merging 1, EABI attribute arch merging 1 reversed,
EABI attribute arch merging 2, EABI attribute arch merging 2 reversed.
Add attr-merge-unknown-1, attr-merge-unknown-2, attr-merge-unknown-2r,
and attr-merge-unknown-3 dump tests.
* ld-arm/arch-v6.s: New file.
* ld-arm/arch-v6k.s: New file.
* ld-arm/arch-v6t2.s: New file.
* ld-arm/attr-merge-3.attr: New file.
* ld-arm/attr-merge-3a.s: New file.
* ld-arm/attr-merge-3b.s: New file.
* ld-arm/attr-merge-4.attr: New file.
* ld-arm/attr-merge-4a.s: New file.
* ld-arm/attr-merge-4b.s: New file.
* ld-arm/attr-merge-5.attr: New file.
* ld-arm/attr-merge-5.s: New file.
* ld-arm/attr-merge-arch-1.attr: New file.
* ld-arm/attr-merge-arch-2.attr: New file.
* ld-arm/attr-merge-unknown-1.d: New file.
* ld-arm/attr-merge-unknown-1.s: New file.
* ld-arm/attr-merge-unknown-2.d: New file.
* ld-arm/attr-merge-unknown-2.s: New file.
* ld-arm/attr-merge-unknown-2r.d: New file.
* ld-arm/attr-merge-unknown-3.d: New file.
* ld-arm/blank.s: New file.
2009-01-16 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/textaddr1.d: New.
* ld-elf/textaddr2.d: Likewise.
2009-01-14 H.J. Lu <hongjiu.lu@intel.com>
PR ld/9727
* ld-elf/group8.s: New.
* ld-elf/group8a.d: Likewise.
* ld-elf/group8b.d: Likewise.
* ld-elf/group9.s: Likewise.
* ld-elf/group9a.d: Likewise.
* ld-elf/group9b.d: Likewise.
2009-01-13 Alan Modra <amodra@bigpond.net.au>
* ld-spu/icache1.s: New file.
* ld-spu/icache1.d: New file.
2009-01-13 Alan Modra <amodra@bigpond.net.au>
* ld-elf/elf.exp: Save and restore LDFLAGS.
* ld-scripts/default-script.exp: Likewise.
* ld-scripts/empty-orphan.exp: Likewise, and add to LDFLAGS rather
than replacing.
* ld-scripts/include.exp: Set --local-store for SPU.
bfd/ * elf32-spu.c (struct spu_link_hash_table): Add init, line_size_log2, num_lines_log2. (struct got_entry): Add br_addr. (struct call_info): Add priority. (struct function_info): Add lr_store and sp_adjust. (spu_elf_setup): Init line_size_log2 and num_lines_log2. (spu_elf_find_overlays): For soft-icache, mark any section within cache area as an overlay, and check that no other overlays exist. Look up icache overlay manager entry sym. (BRA_STUBS, BRA, BRASL): Define. (enum _stub_type): Replace ovl_stub with call_ovl_stub and br*_ovl_stub. (needs_ovl_stub): Adjust for soft-icache. Return priority encoded in branch insn. (count_stub, build_stub): Support soft-icache. (build_spuear_stubs, process_stubs): Adjust build_stub call. (spu_elf_size_stubs): Size soft-icache stubs. (overlay_index): New function. (spu_elf_build_stubs): Make static. Support soft-icache. (spu_elf_check_vma): Don't turn off auto_overlay if soft-icache. (find_function_stack_adjust): Save lr store and stack adjust insn offsets. (maybe_insert_function): Adjust find_function_stack_adjust call. (mark_functions_via_relocs): Retrieve priority. (remove_cycles): Only warn about pruned arcs when stack_analysis. (sort_calls): Sort by priority first. (mark_overlay_section): Ignore .ovl.init. (sum_stack): Only print when stack_analysis. (print_one_overlay_section): New function, extracted from.. (spu_elf_auto_overlay): ..here. Support soft-icache overlays. (spu_elf_stack_analysis): Only print when htab->stack_analysis. (spu_elf_final_link): Call spu_elf_stack_analysis for lrlive analysis. Call spu_elf_build_stubs. (spu_elf_relocate_section): For soft-icache encode overlay index into addresses. (spu_elf_output_symbol_hook): Support soft-icache. (spu_elf_modify_program_headers: Likewise. * elf32-spu.h (struct spu_elf_params): Add lrlive_analysis. Rename num_regions to num_lines. Add line_size and max_branch. (enum _ovly_flavour): Add ovly_soft_icache. (spu_elf_build_stubs): Delete. gas/ * config/tc-spu.c (md_pseudo_table): Add "brinfo". (brinfo): New var. (md_assemble): Poke brinfo into branch instructions. (spu_brinfo): New function. (md_apply_fix): Don't assume insn fields start off at zero, mask them to remove possible brinfo. ld/ * emultempl/spuelf.em (params): Init new fields. (num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars. (spu_place_special_section): Adjust placement for soft-icache. Pad soft-icache section to a fixed size. Clear addr_tree. (spu_elf_load_ovl_mgr): Support soft-icache. Map overlay manager sections a little more intelligently. (gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs. (OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS. (OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define. (OPTION_SPU_LRLIVE): Define. (PARSE_AND_LIST_LONGOPTS): Add new soft-icache options. (PARSE_AND_LIST_OPTIONS): Likewise. (PARSE_AND_LIST_ARGS_CASES): Handle them. * emultempl/spu_icache.S: Dummy file. * emultempl/spu_icache.o_c: Regenerate. * Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c. (spu_icache.o_c): Add rule to build. (CLEANFILES): Zap temp files. (EXTRA_DIST): Add spu_icache.o_c. * Makefile.in: Regenerate. ld/testsuite/ * ld-spu/ovl.d: Allow for absolute branches in stubs. * ld-spu/ovl2.d: Likewise.
2009-01-12 00:23:58 +00:00
2009-01-12 Alan Modra <amodra@bigpond.net.au>
* ld-spu/ovl.d: Allow for absolute branches in stubs.
* ld-spu/ovl2.d: Likewise.
2009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
* ld-elf/linkoncerdiff.d, ld-elf/linkoncerdiff1.s,
ld-elf/linkoncerdiff2.s: New.
2009-01-07 Hans-Peter Nilsson <hp@axis.com>
* ld-cris/tls-e-20.d, ld-cris/tls-e-20a.d, ld-cris/tls-e-21.d,
ld-cris/tls-e-23.d, ld-cris/tls-e-66.d, ld-cris/tls-gd-3.d,
ld-cris/tls-gd-3h.d, ld-cris/tls-global-74.d,
ld-cris/tls-ie-8e1.d, ld-cris/tls-ldgde-14.d,
ld-cris/tls-ldgde-15.d, ld-cris/tls-le-12.d, ld-cris/tls-le-13.d,
ld-cris/tls-le-13s.d, ld-cris/tls-legd-16.d,
ld-cris/tls-legd-17.d, ld-cris/tls-legdx-16.d,
ld-cris/tls-legdx-17.d, ld-cris/tls-leie-18.d,
ld-cris/tls-leie-19.d, ld-cris/tls-local-57.d,
ld-cris/tls-local-58.d, ld-cris/tls-local-59.d: Adjust for
relocation value now offset by negative program TLS block size.
* ld-cris/tls-le-12s.d: Ditto. Move 128-byte tls-data to last.
Adjust accordingly.
* ld-cris/tls-le-12s.s: Use movs, not movu, for sign-extended
always-negative relocation.
* ld-cris/tls-tprelm.s: Move filler data to after symbol for
tested relocation.
* ld-cris/tls-ok-36.d: Adjust accordingly.
2009-01-03 04:53:47 +00:00
2009-01-03 Hans-Peter Nilsson <hp@axis.com>
* ld-cris/tls-js1.d: New test.
2009-01-02 H.J. Lu <hongjiu.lu@intel.com>
PR ld/9679
* ld-elf/pr9679-1.c: New.
* ld-elf/pr9679-2.c: Likewise.
* ld-elf/pr9679.rd: Likewise.
* ld-elf/shared.exp (build_tests): Add test for libpr9679.so.
2009-01-02 H.J. Lu <hongjiu.lu@intel.com>
2008-12-23 19:10:25 +00:00
PR ld/9676
* ld-elf/pr9676-1.c: New.
* ld-elf/pr9676-2.c: Likewiswe.
* ld-elf/pr9676-3.c: Likewiswe.
* ld-elf/pr9676-4.c: Likewiswe.
* ld-elf/pr9676.rd: Likewiswe.
* ld-elf/shared.exp (build_tests): Add tests for libpr9676-1.a,
libpr9676-2.a, libpr9676-3.so, libpr9676-4.so and
libpr9676-4a.so.
* lib/ld-lib.exp (ar_simple_create): New.
(run_ld_link_tests): Support archive.
(run_cc_link_tests): Likewiswe.
2008-12-23 09:01:51 +00:00
For older changes see ChangeLog-2008
2004-01-02 11:16:21 +00:00
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End: