aboutsummaryrefslogtreecommitdiff
path: root/ld
AgeCommit message (Collapse)AuthorFilesLines
2005-02-21 * config.in: Regenerate.Alan Modra3-108/+103
* configure: Regenerate.
2005-02-21 * lib/ld-lib.exp (run_dump_test): Don't require a dump program ifAlan Modra2-81/+78
#warning given. Rearrange to allow $program to remain unset. Don't allow gas errors. Append objcopy_as_link output to that from the linker before testing against expected output. Fail the test if warning not found when expected. Conversely fail the test if ld errors or warnings given when not expected.
2005-02-21gas/Alan Modra3-2/+7
* read.c (address_bytes): New function. (TC_ADDRESS_BYTES): Default for BSD_ASSEMBLER to address_bytes. (potable): Add "dc.a". (cons_worker): Handle "dc.a". * doc/internals.texi (TC_ADDRESS_BYTES): Document. ld/testsuite/ * ld-elf/exclude1.s: Use ".dc.a". * ld-elfvsb/hidden2.s: Likewise.
2005-02-21 * ld-elf/warn1.d: Specify -Ttext.Alan Modra7-7/+49
* ld-scripts/align.exp (align2a, align2b: Don't run on aout targets. * ld-scripts/align2.t: Discard all but .text and .data. * ld-scripts/align2a.d: Accept non-readonly for coff. * ld-scripts/align2b.d: Likewise. * lib/ld-lib.exp (is_aout_format): New function.
2005-02-18 * ld-scripts/align2a.d: Don't assume anything about sectionAlan Modra3-8/+12
padding or alignment, or max page size. Allow 64-bit addresses. * ld-scripts/align2b.d: Likewise.
2005-02-17 * ldexp.c (assigning_to_dot): New global flag.Zack Weinberg11-8/+82
(fold_name): If assigning_to_dot is true, object immediately to an undefined symbol. (exp_fold_tree): Set and clear assigning_to_dot around the recursive call to exp_fold_tree to process the right-hand side of an assignment to the location counter. testsuite: * ld-scripts/align.exp: Rename existing "ALIGN" test to "align1". Add dump tests "align2a", "align2b", "align2c". * ld-scripts/align2.t, ld-scripts/align2a.s, ld-scripts/align2a.d * ld-scripts/align2b.s, ld-scripts/align2b.d * ld-scripts/align2c.s, ld-scripts/align2c.d: New files.
2005-02-17bfd/ChangeLog:Alexandre Oliva28-85/+35
* elf32-frv.c (elf32_frv_relocate_section): Remove warning from uninitialized check_segment[1] in TLSMOFF case. Reported by Alan Modra. (elf32_frv_relocate_section): Improve errors and warnings. ld/testsuite/ChangeLog: * ld-frv/fdpic-static-6.d: Update. * ld-frv/fdpic*.d: Remove explicit -mfdpic from #as. Update spelling of errors and warnings.
2005-02-172005-02-17 Paul Brook <paul@codesourcery.com>Paul Brook2-1/+7
* scripttempl/armbpabi.sc: Add dummy name to version block.
2005-02-17 * ldexp.c (new_abs): Init new.str.Alan Modra2-1/+6
2005-02-16 * configure.in (AC_CHECK_FUNCS): Add glob.Mark Mitchell4-2/+20
* configure: Regenerated. * emultempl/elf32.em (<glob.h>): Do not include if HAVE_GLOB is not defined. (gld${EMULATION_NAME}_parse_ld_so_conf_include): Do not use glob if HAVE_GLOB is not defined.
2005-02-16 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): DefineKaz Kojima2-1/+10
lib_path if NATIVE is yes.
2005-02-16bfd/Alan Modra2-24/+15
* elf64-ppc.c (ppc64_elf_edit_toc): Skip toc if size is zero. Skip toc reloc adjust if reloc_count is zero. ld/ * emultempl/ppc64elf.em (ppc_create_output_section_statements): Make an error creating fake bfd fatal. (ppc_before_allocation): Continue on after errors. (gld${EMULATION_NAME}_finish): Likewise.
2005-02-15bfd/:Maciej W. Rozycki6-0/+715
2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16 reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel. (elf_mips16_gprel_howto): Likewise. Redefine src_mask and dst_mask. (mips16_gprel_reloc): Remove bit shuffling; call _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() and _bfd_mips16_elf_reloc_shuffle() instead. (mips16_reloc_map): New reloc map for MIPS16 relocs. (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 relocs. (mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from elf_mips16_howto_table_rel. * elf64-mips.c (mips16_elf64_howto_table_rel): New array for MIPS16 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel. (elf_mips16_gprel_howto): Likewise. Redefine src_mask and dst_mask. (mips16_elf64_howto_table_rela): New array for MIPS16 RELA reloc howtos. Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (mips16_gprel_reloc): Remove bit shuffling; call _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() and _bfd_mips16_elf_reloc_shuffle() instead. (mips16_reloc_map): New reloc map for MIPS16 relocs. (bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 relocs. (mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel. * elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel. (elf_mips16_gprel_howto): Likewise. Redefine src_mask and dst_mask. (mips16_gprel_reloc): Remove bit shuffling; call _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() and _bfd_mips16_elf_reloc_shuffle() instead. (mips16_reloc_map): New reloc map for MIPS16 relocs. (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 relocs. (mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from elf_mips16_howto_table_rela or elf_mips16_howto_table_rel. * elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to handle bit shuffling for MIPS16 relocs. (_bfd_mips16_elf_reloc_shuffle): Likewise. (_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle(). (_bfd_mips_elf_generic_reloc): Likewise. (mips_elf_calculate_relocation): Likewise. Handle R_MIPS16_HI16 and R_MIPS16_LO16. (mips_elf_obtain_contents): Remove bit shuffling. (mips_elf_perform_relocation): Likewise; call _bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle() instead. (_bfd_mips_elf_relocate_section): Likewise. Handle R_MIPS16_HI16 and R_MIPS16_LO16. * elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare. (_bfd_mips16_elf_reloc_shuffle): Likewise. * reloc.c (BFD_RELOC_MIPS16_HI16): New reloc. (BFD_RELOC_MIPS16_HI16_S): Likewise. (BFD_RELOC_MIPS16_LO16): Likewise. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. gas/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * config/tc-mips.c (reloc_needs_lo_p): Handle BFD_RELOC_MIPS16_HI16_S. (fixup_has_matching_lo_p): Handle BFD_RELOC_MIPS16_LO16. (append_insn): Add BFD_RELOC_MIPS16_GPREL, BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16 to relocs to suppress overflow complaints on. (mips16_ip): Resolve BFD_RELOC_MIPS16_HI16_S, BFD_RELOC_MIPS16_HI16 and BFD_RELOC_MIPS16_LO16 for constants. Call my_getSmallExpression() to parse percent operators. (percent_op_match, mips_percent_op): Separate definitions. (mips16_percent_op): Define percent operators for the MIPS16 mode. (parse_relocation): Handle the MIPS16 mode using mips16_percent_op. (md_apply_fix3): Handle BFD_RELOC_MIPS16_HI16, BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16. gas/testsuite/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * gas/mips/mips16-hilo.d: New test for the R_MIPS16_HI16 and R_MIPS16_LO16 relocs. * gas/mips/mips16-hilo-n32.d: Likewise, for the n32 ABI. * gas/mips/mips16-hilo.s: Source for the new tests. * gas/mips/mips.exp: Run the new tests. include/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * elf/mips.h (R_MIPS16_GOT16): New reloc code. (R_MIPS16_CALL16): Likewise. (R_MIPS16_HI16): Likewise. (R_MIPS16_LO16): Likewise. (R_MIPS16_min): New fake reloc code. (R_MIPS16_max): Likewise. ld/testsuite/: 2005-02-15 Nigel Stephens <nigel@mips.com> Maciej W. Rozycki <macro@mips.com> * ld-mips-elf/mips16-hilo.d: New test for the R_MIPS16_HI16 and R_MIPS16_LO16 relocs. * ld-mips-elf/mips16-hilo-n32.d: Likewise, for the n32 ABI. * ld-mips-elf/mips16-hilo.s: Auxiliary source for the new tests. * ld-mips-elf/mips-elf.exp: Run the new tests.
2005-02-15(YY_NO_UNPUT): Define so that the yy_unput function is not declared. It is notNick Clifton2-0/+8
used and its presence causes a compile time warning.
2005-02-14 * ld-sparc/sparc.exp: Enable on Solaris. Disable 32-bit testsEric Botcazou2-3/+11
on sparc64-elf.
2005-02-14gas/Jan Beulich5-8/+30
2005-02-13 Jan Beulich <jbeulich@novell.com> * config/tc-ia64.c (md_parse_option): Handle -xnone and -xdebugn. (md_show_usage): Add -xnone, -xdebugn, and -xdebugx. Relocate default indicator. (ia64_init): Set md.detect_dv. (ia64_start_line): New static variable warned. Warn only once when encountering explicit stops in automatic mode. * doc/c-ia64.texi: Describe -xnone, -xdebugn, and -xdebugx. * NEWS: Mention new default mode. gas/testsuite/ 2005-02-13 Jan Beulich <jbeulich@novell.com> * gas/ia64/label.l: Adjust line numbers. * gas/ia64/label.s: Add .explicit. * gas/ia64/nop_x.s: Likewise. * gas/ia64/opc-a.d: Add assembler option -xnone. * 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/opc-x.d: Likewise. * gas/ia64/pseudo.d: Likewise. * gas/ia64/regs.d: Likewise. * gas/ia64/tls.d: Likewise. * gas/ia64/unwind-err.l: Adjust line numbers. * gas/ia64/unwind-err.s: Remove explicit stops. ld/testsuite/ 2005-02-13 Jan Beulich <jbeulich@novell.com> * ld-elfvers/vers.exp (as_options): New. Set to -x for ia64. (build_binary): Pass as_options to ld_assemble. (test_ldfail): Likewise. (build_exec): Likewise. Pass as_options to run_ld_link_tests. * ld-ia64/tlsbin.s: Add .explicit. * ld-ia64/tlsbinpic.s: Likewise. * ld-ia64/tlspic1.s: Likewise.
2005-02-14 * ld-sparc/tlssunnopic32.rd: Adjust for .dynsym changes.Eric Botcazou3-47/+47
* ld-sparc/tlssunpic32.rd: Likewise.
2005-02-13 * ld-elf/warn1.d: Do not run on sparc64-*-solaris2*.Eric Botcazou2-0/+5
2005-02-11 * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed):Zack Weinberg2-5/+18
If st.st_ino is zero, do not treat the library as a duplicate.
2005-02-11Fix typo.Andreas Schwab1-1/+1
2005-02-112005-02-11 Paul Brook <paul@codesourcery.com>Paul Brook2-1/+5
* ld-elf/symbol1w.s: Avoid usung @function syntax.
2005-02-11 * ld-elfvsb/hidden2.s: Replace .word with .long.Alan Modra2-1/+5
2005-02-102005-02-10 Paul Brook <paul@codesourcery.com>Paul Brook4-0/+25
* elflink.c (bfd_elf_record_link_assignment): Make hidden and internal symbols local. (elf_link_renumber_hash_table_dynsyms): Ignore local symbols. (elf_link_renumber_local_hash_table_dynsyms): New function. (_bfd_elf_link_renumber_dynsyms): Number local dynamic symbols. ld/testsuite/ * ld-elfvsb/hidden2.s: New file * ld-elfvsb/hidden2.d: New file * ld-elfvsb/hidden2.ld: New file
2005-02-10 * bfd-in.h (BFD_LINKER_CREATED): Define.Jakub Jelinek3-0/+9
* bfd-in2.h: Rebuilt. * elflink.c (bfd_elf_size_dynamic_sections): Disregard BFD_LINKER_CREATED bfds when determining input bfds without .note.GNU-stack section. * emultempl/hppaelf.em (hppaelf_create_output_section_statements): Set BFD_LINKER_CREATED on the stubs bfd. * emultempl/ppc64elf.em (ppc_create_output_section_statements): Likewise.
2005-02-10 * scripttempl/armbpabi.sc (VERSION): Make special section symbolsMark Mitchell2-5/+38
local. (Image$$ER_RO$$Base): Define whenever RELOCATING. (Image$$ER_RO$$Limit): Likewise. (SHT$$INIT_ARRAY$$Base): Likewise. (SHT$$INIT_ARRAY$$Limit): Likeise.
2005-02-10 * emultempl/beos.em: Remove #if 0 and #if 1 blocks.Ben Elliston2-27/+4
2005-02-08 * configure.tgt (mips64*el-*-linux-gnu*): Define targ_extra_libpathRichard Sandiford2-0/+8
to include o32 and n64 emulations. (mips64*-*-linux-gnu*): Likewise.
2005-02-08 * ldmain.c (warning_callback, warning_find_reloc): PrependHans-Peter Nilsson2-5/+11
"warning: " to warning messages.
2005-02-07bfd/ChangeLog:Alexandre Oliva2-1/+5
* elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove special handling for *ABS*/*UND* sections. (elf32_frv_relocate_section): Move zero-addend-required error... (_frv_emit_got_relocs_plt_entries): ... here. Report error for missing needed TLS section. ld/testsuite/ChangeLog: * ld-frv/fdpic-shared-8-fail.d: Tweak error messages.
2005-02-07 * ld-cris/libdso-13.d: Adjust for being identified as warning.Hans-Peter Nilsson2-11/+15
2005-02-07 * ld-cris/globsymw2.s: New file.Hans-Peter Nilsson4-0/+42
* ld-cris/warn3.d, ld-cris/warn4.d: New tests.
2005-02-07 * ld-discard/extern.d, ld-discard/start.d, ld-discard/static.d:Hans-Peter Nilsson4-3/+12
Adjust for being identified as warnings.
2005-02-07 * ld-cris/stabs1.s: New file.Hans-Peter Nilsson6-0/+58
* ld-cris/undef2.d, ld-cris/undef3.d: New tests.
2005-02-07 * ld-cris/stabs1.s: New file.Hans-Peter Nilsson4-0/+41
* ld-cris/undef2.d, ld-cris/undef3.d: New tests.
2005-02-07 * ld-elf/start.s, ld-elf/symbolref.s, ld-elf/symbol1w.s,Hans-Peter Nilsson5-0/+33
ld-elf/warn1.d: New test.
2005-02-07 * lib/ld-lib.exp: Support new directive "warning".Hans-Peter Nilsson2-6/+42
2005-02-03bfd/Alan Modra2-12/+11
* elflink.c (bfd_elf_record_link_assignment): Do "provide" symbol lookup here. Set to new before calling bfd_link_repair_undef_list. (elf_smash_syms): Check that u.undef.weak isn't the not_needed bfd. ld/ emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment): Don't look up symbol for etree_provide here.
2005-02-02 * emulparams/elf32bmip.sh (TEXT_DYNAMIC): Always set.Daniel Jacobowitz2-1/+5
2005-02-02 * ld-mips-elf/eh-frame3.d, ld-mips-elf/eh-frame4.d: Move commentsDaniel Jacobowitz4-9/+21
after test commands. * ld-mips-elf/mips-elf.exp: Skip multi-got-1 on non-GNU/Linux systems.
2005-02-01Add a description of how to access linker script defined variables from sourceNick Clifton2-1/+115
code.
2005-02-01bfd/Alan Modra3-4/+9
* elf64-ppc.c (func_desc_adjust): Move code creating func desc sym to.. (make_fdh): ..here. New function. Don't set BSF_OBJECT for undefined syms. (struct add_symbol_adjust_data): New. (add_symbol_adjust): Make an undefweak func desc for old ABI objects to link with --as-needed shared libs. Return fail status. Don't adjust old ABI func entry sym to weak if func desc syms isn't defined. (ppc64_elf_check_directives): Adjust call to add_symbol_adjust, and return status. ld/testsuite/ * ld-powerpc/tlsso.r: Update. * ld-powerpc/tlstocso.r: Update.
2005-02-01include/Alan Modra2-2/+7
* bfdlink.h (bfd_link_repair_undef_list): Declare. bfd/ * elf64-ppc.c (ppc64_elf_check_directives): Move undefs list fixup.. * linker.c (bfd_link_repair_undef_list): ..to new function, but don't remove anything but new and undefweak. * elflink.c (_bfd_elf_link_create_dynamic_sections): Override any existing _DYNAMIC. (_bfd_elf_create_dynamic_sections): Formatting. (bfd_elf_record_link_assignment): Call bfd_link_repair_undef_list. (_bfd_elf_merge_symbol): Don't handle as-needed syms here. (struct elf_smash_data): New. (elf_smash_syms): New function. (elf_link_add_object_symbols): Call elf_smash_syms. Don't add unneeded dynamic objects to loaded list. (elf_link_output_extsym): Don't handle as-needed here. Strip bfd_link_hash_new symbols. * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't delref when dynindx is already -1. * elf64-alpha.c (elf64_alpha_output_extsym): Strip bfd_link_hash_new symbols. * elfxx-mips.c (mips_elf_output_extsym): Likewise. ld/ * ld.texinfo: Clarify --as-needed operation.
2005-01-31 * ld-mips-elf/elf-rel-got-n32.d, ld-mips-elf/elf-rel-got-n64-linux.d,Daniel Jacobowitz12-8225/+8234
ld-mips-elf/elf-rel-got-n64.d, ld-mips-elf/elf-rel-xgot-n32.d, ld-mips-elf/elf-rel-xgot-n64-linux.d, ld-mips-elf/elf-rel-xgot-n64.d, ld-mips-elf/jalbal.d: Force big-endian. * ld-mips-elf/multi-got-1.d: Make more flexible. * ld-mips-elf/rel32-n32.d, ld-mips-elf/rel32-o32.d, ld-mips-elf/rel64.d: Update offsets.
2005-01-31 * ld-elf/group1.d: Accept OBJECT symbols.Daniel Jacobowitz2-2/+6
2005-01-31 * elf-bfd.h (elf_backend_data): Add elf_backend_eh_frame_address_size.Richard Sandiford6-0/+504
(_bfd_elf_eh_frame_address_size): Declare. * elfxx-target.h (elf_backend_eh_frame_address_size): Define a default. (elfNN_bed): Initialize elf_backend_eh_frame_address_size. * elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Declare. (elf_backend_eh_frame_address_size): Define. * elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): New function. * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Get the address size from the new backend hook. (_bfd_elf_write_section_eh_frame): Likewise. (_bfd_elf_eh_frame_address_size): New function.
2005-01-312005-01-31 Andrew Cagney <cagney@gnu.org>Andrew Cagney2-99/+120
* gettext.m4: Only set ENABLE_NLS when gettext is present.
2005-01-31Update reported copyright dates.Nick Clifton2-14/+18
2005-01-31Remove obsolete targetsNick Clifton2-2/+5
2005-01-28 * bfd/bin-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.Julian Brown4-1/+39
* bfd/bin-in2.h (bfd_elf32_arm_set_target_relocs): Update prototype. * bfd/elf32-arm.c (elf32_arm_link_hash_table): Add fix_v4bx flag. (bfd_elf32_arm_set_target_relocs): Add formal parameter fix_v4bx for passing flag value from ld. Set flag value in global hash table entry. (elf32_arm_final_link_relocate): Add code to implement R_ARM_V4BX relocation. * ld/emultempl/armelf.em (fix_v4bx): New variable. (arm_elf_create_output_section_statements): Communicate fix_v4bx flag value to bfd. (PARSE_AND_LIST_PROLOGUE): Add option token OPTION_FIX_V4BX. (PARSE_AND_LIST_LONGOPTS): Add option --fix-v4bx. (PARSE_AND_LIST_OPTIONS): Add option --fix-v4bx. (PARSE_AND_LIST_ARGS_CASES): Add option OPTION_FIX_V4BX. * ld/NEWS: Mention --fix-v4bx. * ld/ld.texinfo: Document --fix-v4bx.
2005-01-28gas/Jan Beulich5-31/+36
2005-01-28 Jan Beulich <jbeulich@novell.com> * config/tc-ia64.c (ia64_estimate_size_before_relax): Allocate space for personality routine pointer only if there is one. (ia64_convert_frag): Likewise. (generate_unwind_image): Likewise. ld/testsuite/ 2005-01-28 Jan Beulich <jbeulich@novell.com> * ld/ia64/tlsbin.[rt]d: Widen expected offset/size ranges. * ld/ia64/tlspic.[rt]d: Likewise.