aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite
AgeCommit message (Collapse)AuthorFilesLines
2005-08-15Adjust for dynamic sym changes.Alan Modra121-5442/+5342
2005-08-15 * ld-elf/empty.s: Define "start".Alan Modra6-5/+14
* ld-elf/merge2.d: xfail arc-*-* and dlx-*-*. * ld-scripts/empty-aligned.s: No .data section. * ld-scripts/empty-aligned.t: Discard most sections. * ld-scripts/empty-aligned.d: Adjust.
2005-08-12 * ld-cris/expdyn1.s (expobj): Set size here, at definition...Hans-Peter Nilsson6-6/+10
* ld-cris/pv32.s: ...not here. * ld-cris/expdyn1.d, ld-cris/libdso-12.d, ld-cris/locref1.d: Adjust for expobj size being set at definition.
2005-08-11 * ld-cris/v32-ba-1.d: Regexpize to adjust for symbol change.Hans-Peter Nilsson2-1/+5
2005-08-08 * ld-arm/mixed-app.sym: Expact _stack to be in the ABS section.Richard Earnshaw5-12/+19
* ld-arm/mixed-lib.sym: Likewise. * tls-lib.d: Use a regexp for the address locations. * tls-lib.r: Likewise.
2005-08-03bfd/H.J. Lu4-14/+40
2005-08-03 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c (elf_howto_table): Undo the overflow change for R_386_PC16 made on 2005-07-18. * elf64-x86-64.c (x86_64_elf_howto_table): Undo the overflow change for R_X86_64_PC16 made on 2005-07-18. ld/testsuite/ 2005-08-03 H.J. Lu <hongjiu.lu@intel.com> * ld-i386/pcrel16.d: Updated. * ld-i386/pcrel16.s: Likewise. * ld-x86-64/pcrel16.d: Likewise.
2005-08-01 * elfxx-mips.c (mips_mach_extends_p): Treat MIPS64 as an extensionRichard Sandiford2-0/+7
of MIPS32 and MIPS64r2 as an extension of MIPS32r2.
2005-07-27 * lib/ld-lib.exp (run_ld_link_exec_tests): Add new parameterBen Elliston3-11/+22
${targets_to_xfail} that is applied for each test item. * ld-elf/elf.exp: Pass *-*-netbsdelf* as an xfailed target.
2005-07-27 * ld-elfweak/size2a.s: Extend test to check size for two weaks.Alan Modra4-1/+22
* ld-elfweak/size2b.s: Likewise. * ld-elfweak/size2.d: Update.
2005-07-18bfd/Jan Beulich13-0/+81
2005-07-18 Jan Beulich <jbeulich@novell.com> * elf32-i386.c (elf_howto_table): Adjust overflow complaint handler for R_386_PC16. * elf64-x86-64.c (x86_64_elf_howto_table): Adjust overflow complaint handler for R_X86_64_PC16, R_X86_64_8, and R_X86_64_DTPOFF. ld/testsuite/ 2005-07-18 Jan Beulich <jbeulich@novell.com> * ld-i386/abs.s, ld-i386/zero.s, ld-i386/abs.d, ld-x86-64/abs.d, ld-i386/pcrel16.s, ld-i386/pcrel16.d, ld-x86-64/pcrel16.d, ld-i386/pcrel8.s, ld-i386/pcrel8.d, ld-x86-64/pcrel8.d: New. * ld-i386/i386.exp, ld-x86-64/x86-64.exp: Run new tests.
2005-07-142005-07-14 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-19/+12
* lib/ld-lib.exp (run_ld_link_exec_tests): Ignore assembler warnings.
2005-07-142005-07-14 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-2/+6
* lib/ld-lib.exp (run_ld_link_exec_tests): Update comments.
2005-07-142005-07-14 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu9-0/+236
* ld-elf/elf.exp (array_tests): New. Call run_ld_link_exec_tests with array_tests. * ld-elf/fini.c: New file. * ld-elf/fini.out: Likewise. * ld-elf/init.c: Likewise. * ld-elf/init.out: Likewise. * ld-elf/preinit.c: Likewise. * ld-elf/preinit.out: Likewise. * lib/ld-lib.exp (run_ld_link_exec_tests): New.
2005-07-12 * ld-powerpc/sdalib.s (lib_var): Size it.Alan Modra2-0/+5
2005-07-082005-07-08 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu8-46/+52
* ld-ia64/tlsbin.rd: Update for empty section removal change. * ld-ia64/tlsbin.sd: Likewise. * ld-ia64/tlspic.dd: Likewise. * ld-ia64/tlspic.rd: Likewise. * ld-ia64/tlspic.sd: Likewise. * ld-x86-64/tlspic.dd: Likewise. * ld-x86-64/tlspic.rd: Likewise.
2005-07-08 * ld-cris/pv32.s: Give expobj a size.Alan Modra38-477/+512
* ld-cris/pv32-1.d: Update. * ld-alpha/tlsbin.dd: Update for empty section removal change. * ld-alpha/tlsbin.sd: Likewise. * ld-alpha/tlsbin.td: Likewise. * ld-alpha/tlsbinr.dd: Likewise. * ld-alpha/tlsbinr.rd: Likewise. * ld-alpha/tlspic.dd: Likewise. * ld-alpha/tlspic.rd: Likewise. * ld-alpha/tlspic.sd: Likewise. * ld-alpha/tlspic.td: Likewise. * ld-arm/tls-lib.d: Likewise. * ld-arm/tls-lib.r: Likewise. * ld-cris/gotplt2.d: Likewise. * ld-cris/gotplt3.d: Likewise. * ld-cris/hiddef1.d: Likewise. * ld-cris/libdso-10.d: Likewise. * ld-cris/libdso-11.d: Likewise. * ld-cris/libdso-12.d: Likewise. * ld-cris/libdso-14.d: Likewise. * ld-cris/libdso-2.d: Likewise. * ld-i386/tlsnopic.dd: Likewise. * ld-i386/tlsnopic.rd: Likewise. * ld-i386/tlsnopic.sd: Likewise. * ld-i386/tlspic.rd: Likewise. * ld-mmix/bpo-10.d: Likewise. * ld-mmix/bpo-22.d: Likewise. * ld-mmix/sec-7m.d: Likewise. * ld-powerpc/tlsexe.r: Likewise. * ld-powerpc/tlsexetoc.r: Likewise. * ld-powerpc/tlsso.g: Likewise. * ld-powerpc/tlsso.r: Likewise. * ld-powerpc/tlsso32.d: Likewise. * ld-powerpc/tlsso32.g: Likewise. * ld-powerpc/tlsso32.r: Likewise. * ld-powerpc/tlstocso.g: Likewise. * ld-powerpc/tlstocso.r: Likewise.
2005-06-23 * ld-elfweak/size_foo.c (foo): Fix warning about implicit returnAndreas Schwab2-0/+6
type.
2005-06-10 * ld-cris/libdso-10.d: Adjust for elf.sc .bss change.Alan Modra4-20/+21
* ld-cris/libdso-2.d: Likewise. * ld-mmix/loc6.d: Likewise.
2005-06-10 * ld-scripts/empty-aligned.t: Adjust alignment expressions soAlan Modra3-6/+25
that no .text? section is kept. Also check setting vma and lma. * ld-scripts/empty-aligned.d: Update.
2005-06-09 * ld-scripts/empty-aligned.d: Adjust.Alan Modra2-1/+7
2005-06-05ld/H.J. Lu4-23/+25
2005-06-05 H.J. Lu <hongjiu.lu@intel.com> * ldexp.c (exp_mark_used_section): Set SEC_KEEP on current section only if the symbol will be defined. ld/testsuite/ 2005-06-05 H.J. Lu <hongjiu.lu@intel.com> * ld-cris/hiddef1.d: Undo the last change. * ld-cris/libdso-10.d: Likewise. * ld-cris/libdso-2.d: Likewise.
2005-06-042005-06-04 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu4-19/+29
* ld-cris/hiddef1.d: Updated. * ld-cris/libdso-10.d: Likewise. * ld-cris/libdso-2.d: Likewise.
2005-06-02 * ld-powerpc/powerpc.exp (ppcelftests): Assemble sda test with -a32.Alan Modra2-3/+7
2005-06-01ld:Zack Weinberg5-16/+44
* ldlang.c (entry_symbol_default): New file-scope global. (lang_finish): Use it, not a hardwired "start". (lang_default_entry): Set it. * ldlang.h: Declare lang_default_entry. * emultempl/beos.em, emultempl/pe.em: Use lang_default_entry, not lang_add_entry, to override default entry point symbol. ld/testsuite: * ld-scripts/align.exp: Mark align1 XFAIL on PECOFF targets. * ld-scripts/data.exp: Mark data UNSUPPORTED on a.out targets. * ld-scripts/provide.exp, ld-scripts/size.exp: Mark all tests UNSUPPORTED on a.out targets. Tidy.
2005-05-27 * config/default.exp (CC): Use find_gcc.Mark Mitchell2-5/+18
(CFLAGS): Define, if no definition is provided. (CXX): Likewise. (CXXFLAGS): Likewise.
2005-05-252005-05-24 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu3-2/+5
* ld-mmix/bpo-6.d: Updated. * ld-mmix/bpo-19.d: Likewise.
2005-05-22 * ld-elfweak/dsow.dsym: Adjust for non-zero ST_OTHER.Richard Henderson4-5/+12
* ld-elfweak/weak.dsym: Likewise. * ld-selective/selective.exp: Don't test alpha.
2005-05-20bfd/Daniel Jacobowitz5-0/+25
* bfd/elf32-ppc.c (struct ppc_elf_link_hash_entry): Add new field has_sda_refs. (ppc_elf_copy_indirect_symbol): Copy has_sda_refs. (ppc_elf_check_relocs): Set has_sda_refs. (ppc_elf_adjust_dynamic_symbol): Check has_sda_refs before eliminating copy relocations. Use has_sda_refs to place variables in .sbss. (ppc_elf_finish_dynamic_symbol): Use has_sda_refs to place variables in .sbss. ld/testsuite/ * ld-powerpc/sdalib.s, ld-powerpc/sdadyn.s, ld-powerpc/sdadyn.d: New files. * ld-powerpc/powerpc.exp: Run the new test.
2005-05-20 * ld-undefined/undefined.exp: Revert xfail for xtensa-*-*.Bob Wilson2-2/+4
2005-05-18include/elf:Zack Weinberg1-1/+1
* arm.h: Import complete list of official relocation names and numbers from AAELF. Define FAKE_RELOCs for old names. Remove a few old names no longer used anywhere. bfd: * elf32-arm.c: Wherever possible, use official reloc names from AAELF. (elf32_arm_howto_table, elf32_arm_tls_gd32_howto) (elf32_arm_tls_ldo32_howto, elf32_arm_tls_ldm32_howto) (elf32_arm_tls_le32_howto, elf32_arm_tls_ie32_howto) (elf32_arm_vtinherit_howto, elf32_arm_vtentry_howto) (elf32_arm_pc11_howto, elf32_arm_thm_pc9_howto, elf32_arm_got_prel) (elf32_arm_r_howto): Replace with elf32_arm_howto_table_1, elf32_arm_howto_table_2, and elf32_arm_howto_table_3. Add many new relocations from AAELF. (elf32_arm_howto_from_type): Update to match. (elf32_arm_reloc_map): Add entries for R_ARM_THM_JUMP24, R_ARM_THM_JUMP11, R_ARM_THM_JUMP19, R_ARM_THM_JUMP8, R_ARM_THM_JUMP6, R_ARM_GNU_VTINHERIT, and R_ARM_GNU_VTENTRY. (elf32_arm_reloc_type_lookup): Use elf32_arm_howto_from_type. (elf32_arm_final_link_relocate): Add support for R_ARM_THM_JUMP24, R_ARM_THM_JUMP19, R_ARM_THM_JUMP6. Remove case entries redundant with default. * reloc.c: Reorganize ARM relocations. Add Thumb assembler-internal relocations BFD_RELOC_ARM_T32_OFFSET_U8, BFD_RELOC_ARM_T32_OFFSET_IMM, BFD_RELOC_ARM_T32_IMMEDIATE. Add visible relocations BFD_RELOC_THUMB_PCREL_BRANCH7, BFD_RELOC_THUMB_BRANCH20, BFD_RELOC_THUMB_BRANCH25. Delete unused relocations BFD_RELOC_ARM_GOT12, BFD_RELOC_ARM_COPY. * bfd-in2.h, libbfd.h: Regenerate. opcodes: * arm-dis.c (thumb_opcodes): Add disassembly for V6T2 16-bit instructions. Adjust disassembly of some opcodes to match unified syntax. (thumb32_opcodes): New table. (print_insn_thumb): Rename print_insn_thumb16; don't handle two-halfword branches here. (print_insn_thumb32): New function. (print_insn): Choose among print_insn_arm, print_insn_thumb16, and print_insn_thumb32. Be consistent about order of halfwords when printing 32-bit instructions. gas: * hash.c (hash_lookup): Add len parameter. All callers changed. (hash_find_n): New interface. * hash.h: Prototype hash_find_n. * sb.c: Include as.h. (scrub_from_sb, sb_to_scrub, scrub_position): New statics. (sb_scrub_and_add_sb): New interface. * sb.h: Prototype sb_scrub_and_add_sb. * input-scrub.c (input_scrub_include_sb): Use sb_scrub_and_add_sb. * config/tc-arm.h (TC_FORCE_RELOCATION_LOCAL): Remove reference to BFD_RELOC_ARM_GOT12 which is never generated. * config/tc-arm.c: Rewrite, adding Thumb-2 support. gas/testsuite: * gas/arm/arm.exp: Convert all existing "gas_test" tests to "run_dump_test" tests. Run more tests unconditionally. Run new tests. * gas/arm/arch4t.s, gas/arm/arch6zk.s, gas/arm/arm3.s, gas/arm/arm6.s * gas/arm/arm7dm.s, gas/arm/bignum1.s, gas/arm/float.s * gas/arm/immed.s, gas/arm/iwmmxt.s, gas/arm/offset.s, gas/arm/thumb.s: Adjust to work as a dump test. * gas/arm/arch4t.d, gas/arm/arch6zk.d, gas/arm/arm3.d, gas/arm/arm6.d * gas/arm/arm7dm.d, gas/arm/bignum1.d, gas/arm/float.d * gas/arm/immed.d, gas/arm/iwmmxt.d, gas/arm/offset.d, gas/arm/thumb.d: New files. * gas/arm/armv1-bad.l, gas/arm/armv1-bad.s: Remove tests for diagnostics that don't happen in the first pass anymore. * gas/arm/iwmmxt-bad.l, gas/arm/r15-bad.l, gas/arm/req.l * gas/arm/vfp-bad.l: Update expected diagnostics. * gas/arm/pic.d: Update expected reloc name. * gas/arm/thumbv6.d: CPY no longer appears in disassembly. * gas/arm/r15-bad.s: Avoid two-argument mul. * gas/arm/req.s: Adjust comments. * gas/arm/maverick.d, gas/arm/maverick.s: Avoid inappropriate use of PC. * gas/arm/macro-1.d, gas/arm/macro1.s * gas/arm/t16-bad.l, gas/arm/t16-bad.s * gas/arm/tcompat.d, gas/arm/tcompat.s * gas/arm/tcompat2.d, gas/arm/tcompat2.s * gas/arm/thumb32.d, gas/arm/thumb32.s New test pair. ld/testsuite: * ld-arm/mixed-app.d: Adjust expected disassembly a little.
2005-05-17bfd/H.J. Lu5-0/+66
2005-05-17 H.J. Lu <hongjiu.lu@intel.com> PR 797 * elf32-i386.c (elf_i386_size_dynamic_sections): Also remove empty sdynbss section. * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise. ld/ 2005-05-17 H.J. Lu <hongjiu.lu@intel.com> PR 797 * ldexp.c (exp_fold_tree_1): Renamed from exp_fold_tree and take take a bfd_boolean, mark_used. Ignore assert failure if mark_used is TRUE. (exp_fold_tree) Call exp_fold_tree_1 with mark_used == FALSE. (exp_fold_tree_no_dot): Updated to take a bfd_boolean, mark_used and pass down. (fold_unary): Likewise. (fold_binary): Likewise. (fold_trinary): Likewise. (exp_binop): Add FALSE to call to exp_fold_tree_no_dot. (exp_trinop): Likewise. (exp_unop): Likewise. (exp_nameop): Likewise. (exp_get_vma): Likewise. (exp_get_fill): Likewise. (exp_get_abs_int): Likewise. (fold_name): Likewise. Set SEC_KEEP in output section flags. (exp_mark_used_section): New. * ldexp.h (exp_mark_used_section): New. * ldlang.c (lang_output_section_statement_lookup_1): Set the ignored field to FALSE. (lang_mark_used_section_1): New. (lang_mark_used_section): Call lang_mark_used_section_1. (strip_excluded_output_sections): Call lang_mark_used_section and check for unused sections. (lang_size_sections_1): Skip an output section if it should be ignored. (lang_do_assignments_1): Likewise. (lang_process): Don't call lang_mark_used_section here. * ldlang.h (lang_output_section_statement_type): Change all_input_readonly to bitfield. Add ignored. ld/testsuite/ 2005-05-17 H.J. Lu <hongjiu.lu@intel.com> PR 797 * empty-aligned.d: New file. * empty-aligned.exp: Likewise. * empty-aligned.s: Likewise. * empty-aligned.t: Likewise.
2005-05-12Update FSF addressesNick Clifton69-69/+69
2005-05-11 * ld-undefined/undefined.exp: xfail xtensa-*-*.Bob Wilson2-0/+6
2005-05-07bfd/Alan Modra7-31/+42
* elf-bfd.h (struct elf_backend_data): Remove got_symbol_offset. * elfxx-target.h (elf_backend_got_symbol_offset): Delete. * elflink.c (_bfd_elf_create_got_section): Use zero in place of got_symbol_offset. * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Likewise. * elf32-frv.c (_frv_create_got_section): Likewise. * elf32-i370.c (i370_elf_finish_dynamic_sections): Delete ppc code. (elf_backend_got_symbol_offset): Don't define. * elf64-ppc.c (elf_backend_got_symbol_offset): Don't define. * elf32-ppc.c (struct ppc_elf_link_hash_table): Add got_header_size and got_gap. (ppc_elf_create_got): Tidy. (ppc_elf_create_dynamic_sections): Don't set SEC_IN_MEMORY for .plt. (ppc_elf_check_relocs): Reduce string comparisons by using elf.hgot. (ppc_elf_gc_sweep_hook): Likewise. (ppc_elf_relocate_section): Likewise. (ppc_elf_finish_dynamic_symbol): Likewise. (allocate_got): New function. (allocate_dynrelocs): Use allocate_got. (ppc_elf_size_dynamic_sections): Likewise. Delay tlsld_got allocation so that local got can refcount it. Set got_header_size. (ppc_elf_relocate_section): Use value of elf.hgot rather than hard- coded 4. (ppc_elf_finish_dynamic_sections): Likewise. (elf_backend_got_symbol_offset): Don't define. (elf_backend_got_header_size): Ditto. ld/testsuite/ * ld-powerpc/tlsexe32.d: Update for changed got layout. * ld-powerpc/tlsexe32.g: Likewise. * ld-powerpc/tlsexe32.r: Likewise. * ld-powerpc/tlsso32.d: Likewise. * ld-powerpc/tlsso32.g: Likewise. * ld-powerpc/tlsso32.r: Likewise.
2005-05-06Update the address and phone number of the FSF organization in the GPL noticesNick Clifton1-17/+76
2005-05-05Replace linux-gnu with linux-* to allow for versions of Linux which do not useNick Clifton3-6/+12
glibc.
2005-05-052005-05-05 Paul Brook <paul@codesourcery.com>Paul Brook6-0/+33
gas/testsuite/ * lib/gas-defs.exp (regexp_diff): Pass test if last line is "#...". ld/testsuite/ * lib/ld-lib.exp (regexp_diff): Pass test if last line is "#...". * ld-elfweak/elfweak.exp: Run size2.d. * ld-elfwaek/size2.d: New file. * ld-elfwaek/size2a.s: New file. * ld-elfwaek/size2b.s: New file.
2005-04-26* ld-fastcall/fastcall.exp: Don't run on i*86-*-openbsd*.Mark Kettenis2-1/+3
2005-04-26* ld-srec/srec.exp (run_srec_test): Deal with ProPolice onMark Kettenis2-1/+13
*-*-openbsd*.
2005-04-25bfd/H.J. Lu4-3/+9
2005-04-25 H.J. Lu <hongjiu.lu@intel.com> PR 858 * elflink.c (elf_link_input_bfd): Make non-debugging reference to discarded section an error. ld/testsuite/ 2005-04-25 H.J. Lu <hongjiu.lu@intel.com> * ld-discard/extern.d: Expect error. * ld-discard/start.d: Likewise. * ld-discard/static.d: Likewise.
2005-04-19bfd/Alan Modra2-4/+5
* elf32-ppc.c (ppc_elf_check_relocs): Don't bother with dynamic relocs in non-SEC_ALLOC sections. (ppc_elf_gc_sweep_hook): Likewise. (ppc_elf_relax_section): Likewise. (ppc_elf_relocate_section): Likewise. ld/testsuite/ * ld-powerpc/reloc.d: Update to suit removal of non-alloc relocs.
2005-04-15 * ld-d10v/default_layout.d: Update for unused section removal.Alan Modra2-5/+5
2005-04-132005-04-14 David S. Miller <davem@davemloft.net>Jakub Jelinek16-37/+976
bfd/ Add TLS support for 64-bit Sparc ELF. * elf64-sparc.c (sparc64_elf_dyn_relocs, sparc64_elf_link_hash_entry, sparc64_elf_obj_tdata): New structs. (GOT_UNKNOWN, GOT_NORMAL, GOT_TLD_GD, GOT_TLD_IE, sparc64_elf_hash_entry, sparc64_elf_tdata, sparc64_elf_local_got_tls_type): New defines. (sparc64_elf_mkobject): New function. (sparc64_elf_link_hash_table): Add members for dynamic linker sections PLT, RELPLT, DYNBSS, and RELBSS. Add tls_ldm_got uion to track TLS GOT references. Add sym_sec to cache mappings from local sym to section. (link_hash_newfunc): New function. (sparc64_elf_bfd_link_hash_table_create): Rename to sparc64_elf_link_hash_table_create for consistency. Pass link_hash_newfunc to _bfd_elf_link_hash_table_init. (sparc64_elf_create_dynamic_sections): Initialize new section members of sparc64_elf_link_hash_table. Only init srelbss if not-shared. (sparc64_elf_copy_indirect_symbol, sparc64_elf_tls_transition): New functions. (SPARC_NOP): Define. (sparc64_elf_build_plt, sparc64_elf_plt_entry_offset, sparc64_elf_plt_ptr_offset): Delete. (sparc64_plt_entry_build): New function to build PLT entries gradually instread of all at once at the end of linking. (sparc64_elf_check_relocs): Delete dynobj, sgot, and srelgot local vars. Get them from sparc64_elf_hash_table instead. Check early on if r_symndx is in bounds. Handle TLS transitions. Account for TLS GOT references and DF_STATIC_TLS, as needed. For TLS relocs, record the tls_type in either sparc64_elf_local_got_tls_type or sparc64_elf_hash_entry as appropriate. For R_SPARC_TLS_{GD,LDM}_CALL, emit a reference to the __tls_get_addr symbol. For PLT relocs, track references via h->plt.refcount. When R_SPARC_{PC10,PC22,PC_HH22,PC_HM10, PC_LM22} and h not-NULL, set h->non_got_ref. For global data symbol references, count the number of relocations needed for that symbol. For default switch case, don't error, this lets the TLS relocs not explicitly handled by this function get accepted. (sparc64_elf_gc_mark_hook, sparc64_gc_sweep_hook): New functions. (sparc64_elf_adjust_dynamic_symbol): Remove dynobj local var, get it from sparc64_elf_hash_table. Store the real PLT offset in h->plt.offset, and build PLT entries one at a time. Also get .dynbss section pointer from htab. (allocate_dynrelocs, readonly_dynrelocs, sparc64_omit_section_dynsym): New functions. (sparc64_elf_omit_section_dynsym): Use these new functions as helpers. (dtpoff_base, tpoff): New functions. (sparc64_elf_relocate_section): Kill dynobj, sgot, and splt locals, get them from sparc64_elf_hash_table. Handle TLS relocations and refcounting in main relocation loop. (sparc64_elf_finish_dynamic_symbol): Use sparc64_elf_link_hash_table. Build PLT entries as we see them. Handle TLS GOT relocations. (sparc64_elf_finish_dynamic_sections): Get sgot and dynobj from sparc64_elf_hash_table. Initialize only PLT header not all entries since we not build PLT entries one by one. (elf_backend_copy_indirect_symbol, bfd_elf64_mkobject, elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook, elf_backend_can_gc_sections, elf_backend_can_refcount): Define. ld/testsuite/ * ld-selective/sel-dump.exp: Do not exclude sparc64-*. * ld-selective/selective.exp: Likewise. * ld-sparc/sparc.exp: Add {32,64}-bit prefix to test names so we know which one is failing. Run sparc64 TLS tests on multi-arch sparc platforms. * ld-sparc/tls64.sd, ld-sparc/tlssunbin64.dd, ld-sparc/tlssunbin64.rd, ld/testsuite/ld-sparc/tlssunbin64.sd, ld-sparc/tlssunbin64.td, ld-sparc/tlssunnopic64.dd, ld-sparc/tlssunnopic64.rd, ld-sparc/tlssunnopic64.sd, ld-sparc/tlssunpic64.dd, ld-sparc/tlssunpic64.rd, ld-sparc/tlssunpic64.sd, ld-sparc/tlssunpic64.td): Update now that sparc64 ELF does support TLS.
2005-04-13bfd/H.J. Lu3-0/+22
2005-04-13 Daniel Jacobowitz <dan@codesourcery.com> * elflink.c (elf_link_input_bfd): Update check for removed sections. ld/testsuite/ 2005-04-13 H.J. Lu <hongjiu.lu@intel.com> * ld-elf/empty.d: New file. * ld-elf/empty.s: Likewise.
2005-04-112005-04-11 David S. Miller <davem@davemloft.net>Jakub Jelinek5-27/+34
* elf32-sparc.c (elf32_sparc_relocate_section, R_SPARC_TLS_LDO_{HIX22,LOX10}): When not shared, transition to R_SPARC_TLS_LE_{HIX22,LOX10}. (elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_HIX22): Only xor relocation with 0xffffffff if R_SPARC_TLS_LE_HIX22. (elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_LOX10): Only or 0x1c00 into relocation if R_SPARC_TLS_LE_HIX22. * ld-sparc/tlssunbin32.dd: Update for TLS relocation fixes. * ld-sparc/tlssunbin32.rd: Likewise. * ld-sparc/tlssunbin32.sd: Likewise. * ld-sparc/tlssunpic32.dd: Likewise.
2005-03-30 * bfd/bfd-in.h (bfd_elf32_is_arm_mapping_symbol_name): Add prototype.Julian Brown4-6/+13
* bfd/bfd-in2.h: Regenerate. * bfd/elf32-arm.c (elf32_arm_is_target_special_symbol): Rename call to bfd_elf32_is_arm_mapping_symbol_name. (elf32_arm_output_symbol_hook): Likewise. (arm_elf_find_function): Likewise, and include STT_NOTYPE in test for mapping symbols. (is_arm_mapping_symbol_name): Function moved from here... * bfd/cpu-arm.c (bfd_elf32_is_arm_mapping_symbol_name): ...to here, renamed and made global. * gas/config/tc-arm.c (mapping_state): Change documentation in function comment to cross-reference spec instead. Change type of mapping symbols to BSF_NO_TYPE. (arm_adjust_symtab): Don't change type of mapping symbols here. * gas/testsuite/gas/arm/mapping.d: Update expected output. * ld/testsuite/ld-arm/arm-app-abs32.d: Likewise. * ld/testsuite/ld-arm/arm-app.d: Likewise. * ld/testsuite/ld-arm/mixed-app.d: Likewise.
2005-03-29bfd/Daniel Jacobowitz10-2/+127
* bfd-in2.h, libbfd.h: Regenerated. * reloc.c: Add ARM TLS relocations. * elf32-arm.c (elf32_arm_howto_table): Add dynamic TLS relocations. (elf32_arm_tls_gd32_howto, elf32_arm_tls_ldo32_howto) (elf32_arm_tls_ldm32_howto, elf32_arm_tls_le32_howto) (elf32_arm_tls_ie32_howto): New. (elf32_arm_howto_from_type): Support TLS relocations. (elf32_arm_reloc_map): Likewise. (elf32_arm_reloc_type_lookup): Likewise. (TCB_SIZE): Define. (struct elf32_arm_obj_tdata): New. (elf32_arm_tdata, elf32_arm_local_got_tls_type): Define. (elf32_arm_mkobject): New function. (struct elf32_arm_relocs_copied): Add pc_count. (elf32_arm_hash_entry, GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD) (GOT_TLS_IE): Define. (struct elf32_arm_link_hash_table): Add tls_ldm_got. (elf32_arm_link_hash_newfunc): Initialize tls_type. (elf32_arm_copy_indirect_symbol): Copy pc_count and tls_type. (elf32_arm_link_hash_table_create): Initialize tls_ldm_got. (dtpoff_base, tpoff): New functions. (elf32_arm_final_link_relocate): Handle TLS relocations. (IS_ARM_TLS_RELOC): Define. (elf32_arm_relocate_section): Warn about TLS mismatches. (elf32_arm_gc_sweep_hook): Handle TLS relocations and pc_count. (elf32_arm_check_relocs): Detect invalid symbol indexes. Handle TLS relocations and pc_count. (elf32_arm_adjust_dynamic_symbol): Check non_got_ref. (allocate_dynrelocs): Handle TLS. Bind REL32 relocs to local calls. (elf32_arm_size_dynamic_sections): Handle TLS. (elf32_arm_finish_dynamic_symbol): Likewise. (bfd_elf32_mkobject): Define. gas/ * config/tc-arm.c (arm_parse_reloc): Add TLS relocations. (md_apply_fix3): Mark TLS symbols. (tc_gen_reloc): Handle TLS relocations. (arm_fix_adjustable): Ignore TLS relocations. (s_arm_elf_cons): Support expressions after decorated symbols. gas/testuite/ * gas/arm/tls.s, gas/arm/tls.d: New files. * gas/arm/arm.exp: Run TLS test. include/elf/ * arm.h: Add TLS relocations. ld/testsuite/ * ld-arm/tls-lib.s, ld-arm/tls-lib.d, ld-arm/tls-lib.r, ld-arm/tls-app.s, ld-arm/tls-app.d, ld-arm/tls-app.r: New files. * ld-arm/arm-lib.ld, ld-arm/arm-dyn.ld: Increase data segment alignment. * ld-arm/arm-elf.exp: Run TLS tests.
2005-03-28gas/H.J. Lu2-2/+7
2005-03-28 David Mosberger <davidm@hpl.hp.com> H.J. Lu <hongjiu.lu@intel.com> PR 803 NEWS: Mention "-mtune=[itanium1|itanium2]". * config/tc-ia64.c (md): Add tune. (md_parse_option): Accepted "-mtune=[itanium1|itanium2]". (md_show_usage): Add "-mtune=[itanium1|itanium2]". (extra_goodness): Prefer M- and I-unit NOPs for itanium2. F and B unit NOPs are discouraged for McKinley-derived cores. (md_begin): Don't hardcode the "extra_goodness()" function in the comment... (ia64_init): Set md.tune to itanium2. * doc/as.texinfo: Add -mtune=[itanium1|itanium2]". * doc/c-ia64.texi: Likewise. gas/testsuite/ 2005-03-28 H.J. Lu <hongjiu.lu@intel.com> PR 803 * gas/ia64/dv-imply.d: Pass -mtune=itanium1 to as. * gas/ia64/dv-mutex.d : Likewise. * gas/ia64/dv-safe.d: Likewise. * gas/ia64/dv-srlz.d.nop: Likewise. * gas/ia64/ldxmov-1.d: Likewise. * gas/ia64/opc-b.d: Likewise. * gas/ia64/opc-f.d: Likewise. * gas/ia64/opc-i.d: Likewise. * gas/ia64/opc-m.d: Likewise. * gas/ia64/operand-or.d: Likewise. * gas/ia64/pcrel.d: Likewise. * gas/ia64/pseudo.d: Likewise. * gas/ia64/tls.d: Likewise. ld/testsuite/ 2005-03-28 H.J. Lu <hongjiu.lu@intel.com> PR 803 * ld-ia64/ia64.exp: Pass -mtune=itanium1 to as.
2005-03-24 * config/default.exp: Do not load libpath.exp if it does notMark Mitchell2-3/+21
exist. (CC): Provide fallback definition. (CFLAGS): Likewise. (CXX): Likewise. (CXXFLAGS): Likewise.
2005-03-242005-03-24 Eric Christopher <echristo@redhat.com>Eric Christopher4-11/+17
* elfxx-mips.c: Revert previous patch. 2005-03-24 Eric Christopher <echristo@redhat.com> * ld-mips-elf/rel32-n32.d: Revert changes. * ld-mips-elf/rel32-o32.d: Ditto. * ld-mips-elf/rel64.d: Ditto.