aboutsummaryrefslogtreecommitdiff
path: root/ld/ld.texinfo
AgeCommit message (Collapse)AuthorFilesLines
2009-05-27 bfd/Nathan Sidwell1-1/+4
* elf32-ppc.c (ppc_elf_relax_section): Work with a partial link. * bout.c (b_out_bfd_relax_section): Reject relocatable links. * elf32-m10300.c (mn10300_elf_relax_section): Likewise. * elf32-avr.c (elf32_avr_relax_section): Likewise. * elf32-frv.c (elf32_avr_relax_section): Likewise. * elf32-xtensa.c (elf_xtensa_relax_section): Likewise. * elf64-mmix.c (mmix_elf_relax_section): Likewise. * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise. * elfxx-sparc.c (_bfd_sparc_elf_relax_section): Likewise. * reloc.c (bfd_generic_relax_section): Likewise. * reloc16.c (bfd_coff_reloc16_relax_section): Likewise. * vms.c (vms_bfd_relax_section): Likewise. ld/ * ldmain.c (main): Don't reject --relax -r. * ld.texinfo (PowerPC ELF32): Document behaviour of relaxing partial links. ld/testsuite/ * ld-powerpc/vxworks-relax-2.s: New. * ld-powerpc/vxworks-relax-2.rd: New. * ld-powerpc/powerpc.exp: Add it.
2009-05-22 ld/Julian Brown1-0/+7
* 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-19==> bfd/ChangeLog <==Dave Korn1-0/+11
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-04bfd/ChangeLogDave Korn1-3/+16
* elflink.c (find_version_for_sym): Remove from here, ... * linker.c (bfd_find_version_for_sym): ... rename, replace here, make public and update all callers. * bfd-in2.h: Regenerate. ld/ChangeLog * NEWS: Mention new feature. * ld.texinfo (--version-script): Document extent of PE support. (WIN32): Mention --version-script. Extend auto-export description. * pe-dll.c (process_def_file): Use version script info to filter symbols from auto-export. * testsuite/ld-pe/vers-script-1.d: New file. * testsuite/ld-pe/vers-script-2.d: New file. * testsuite/ld-pe/vers-script-3.d: New file. * testsuite/ld-pe/vers-script-4.d: New file. * testsuite/ld-pe/vers-script-1.ver: New file. * testsuite/ld-pe/vers-script-2.ver: New file. * testsuite/ld-pe/vers-script-3.ver: New file. * testsuite/ld-pe/vers-script-4.ver: New file. * testsuite/ld-pe/vers-script-dll.c: New file. * testsuite/ld-pe/vers-script.exp: New test script.
2009-04-29[ld/ChangeLog]Chris Demetriou1-7/+11
2009-04-29 Chris Demetriou <cgd@google.com> * lexsup.c (option_values): Add OPTION_NO_EXPORT_DYNAMIC. (ld_options): Likewise. (parse_args): Likewise. * ld.texinfo: Document --no-export-dynamic. * NEWS: Mention --no-export-dynamic. [ld/testsuite/ChangeLog] 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-09 PR 9824Nick Clifton1-2/+48
* ld.texinfo (Output Section Constraint): New node. Documents the ONLY_IF_RO and ONLY_IF_RW constraints. (Symbolic Constants): New node. Documents the CONSTANT operator.
2009-04-08bfd/H.J. Lu1-0/+4
2009-04-08 H.J. Lu <hongjiu.lu@intel.com> * elflink.c (elf_link_add_object_symbols): Warn alternate ELF machine code. include/ 2009-04-08 H.J. Lu <hongjiu.lu@intel.com> * bfdlink.h (bfd_link_info): Add warn_alternate_em. ld/ 2009-04-08 H.J. Lu <hongjiu.lu@intel.com> * lexsup.c (option_values): Add OPTION_WARN_ALTERNATE_EM. (ld_options): Likewise. (parse_args): Likewise. * ld.texinfo: Document --warn-alternate-em. * NEWS: Mention --warn-alternate-em.
2009-04-07 * ld.texinfo (Output Section Address): Note that specifying anNick Clifton1-1/+2
address for an output section will only change the location counter if the output section is used.
2009-04-06 * ld.texinfo (-L): Mention that -L options do not affect how ldKazu Hirata1-1/+3
searches for a linker script unless -T option is specified. * ldfile.c (ldfile_find_command_file): Append the path obtained from the program name to the search path instead of prepending. Add a new parameter "default_only". Restrict the search to the default script location if the new parameter is true. (ldfile_open_command_file_1): New. (ldfile_open_command_file): Call ldfile_open_command_file_1. (ldfile_open_default_command_file): New.
2009-04-02ld/ChangeLogDave Korn1-0/+4
PR ld/6744 * ld.texinfo (--export-dynamic): Mention --export-all-symbols. * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse): Issue warning if --export-dynamic was passed on command-line. * emultempl/pep.em (gld_${EMULATION_NAME}_after_parse): Likewise. ld/testsuite/ChangeLog 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-03-14include/ChangeLogDave Korn1-0/+40
2009-03-12 Dave Korn <dave.korn.cygwin@gmail.com> * coff/internal.h (struct internal_extra_pe_aouthdr): Correct type of DllCharacteristics flags field to unsigned. * coff/pe.h (IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE, IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE, IMAGE_DLL_CHARACTERISTICS_NX_COMPAT, IMAGE_DLLCHARACTERISTICS_NO_ISOLATION, IMAGE_DLLCHARACTERISTICS_NO_SEH, IMAGE_DLLCHARACTERISTICS_NO_BIND, IMAGE_DLLCHARACTERISTICS_WDM_DRIVER, IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE): New macros to define flag bit values for DllCharacteristics field of PEAOUTHDR, PEPAOUTHDR. ld/ChangeLog 2009-03-12 Dave Korn <dave.korn.cygwin@gmail.com> Danny Smith <dannysmith@users.sourceforge.net> * emultmpl/pe.em (pe_dll_characteristics): New variable. (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT, OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND, OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE): New macros for options to set DllCharacteristics flag bits. (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg, nxcompat, no-isolation, no-seh, no-bind, wdmdriver, tsaware options. (init): Add DllCharacteristics field. (gld_${EMULATION_NAME}_list_options): List new options. (gld${EMULATION_NAME}_handle_option): Handle new options. * emultmpl/pep.em (pe_dll_characteristics): New variable. (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT, OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND, OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE): New macros for options to set DllCharacteristics flags. (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg, nxcompat,no-isolation, no-seh, no-bind, wdmdriver, tsaware options. (init): Add DllCharacteristics field. (gld_${EMULATION_NAME}_list_options): List new options. (gld${EMULATION_NAME}_handle_option): Handle new options. * ldtexinfo : Document dynamicbase, forceinteg, nxcompat, no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
2009-03-03 * emultempl/pe.em (debug_section_p): New bfd_map_over_sections hook.Dave Korn1-1/+7
(gld_${EMULATION_NAME}_after_open): Use it to iterate all sections of all input BFDs, looking for debug info. Enable long section names if any found. * emultempl/pe.em (debug_section_p): Likewise. (gld_${EMULATION_NAME}_after_open): Likewise. * NEWS: Retrospectively adjust news announcement. * ld.texinfo: Update documentation to mention new behaviour.
2009-03-02 * ldgram.y: Add support for REGION_ALIAS operator.Nick Clifton1-1/+160
* ldlang.c: Likewise. * ldlang.h: Likewise. * ldlex.l: Likewise. * NEWS: Mention the new feature. * ld.texinfo: Document the new feature. * 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-242009-02-24 Joseph Myers <joseph@codesourcery.com>Daniel Jacobowitz1-1/+1
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-242009-02-24 Sandra Loosemore <sandra@codesourcery.com>Sandra Loosemore1-62/+75
ld/ * ld.texinfo (Options): Correct typos in example. Recommend using joined forms of syntax for passing options with arguments from a driver. (-a): Use consistent syntax for documenting option arguments. Clean up indexing and markup. (-A/--architecture): Likewise. (-f/--auxiliary): Likewise. (-F/--filter): Likewise. (-fini): Likewise. (-G/--gpsize): Likewise. (-h/-soname):Likewise. (-init): Likewise. (-l/--library): Likewise. (-L/--library-path): Likewise. (-m): Likewise. (--defsym): Likewise. (-I/--dynamic-linker): Likewise. (-Map): Likewise. (--oformat): Likewise. (--retain-symbols-file): Likewise. (-rpath): Likewise. (-rpath-link): Likewise. (--sort-common): Likewise. (--sort-section): Likewise. (--split-by-file): Likewise. (--split-by-reloc): Likewise. (--sysroot): Likewise. (--section-start): Likewise. (-Tbss, -Tdata, -Ttext): Likewise. (-Ttext-segment): Likewise. (--version-script): Likewise. (--wrap): Likewise.
2009-02-18bfd/ChangeLogDave Korn1-0/+16
* 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-04 PR 9805Nick Clifton1-11/+24
* ld.texinfo (--allow-shlib-undefined): Correct description of default settings and tidy up the rest of the entry.
2009-02-03 PR 9797Nick Clifton1-4/+14
* ld.texinfo (Constants): Document the base-encoding suffixes supported in linker scripts.
2009-01-31binutils/Alan Modra1-3/+5
* NEWS: Mention --as-needed change. ld/ * ld.texinfo (--as-needed): Update. bfd/ * elflink.c (on_needed_list): New function. (elf_link_add_object_symbols): Link in --as-needed libs if they satisfy undefined symbols in other libs.
2009-01-26 * lexsup.c (parse_args): Set check_section_addresses to 1 or 0.Nathan Sidwell1-0/+3
* ld.h (args_type): Make check_section_addresses a char. ldlang.c (lang_process): Don't consider relocatable flag when checking for overlap. * ldmain.c (main): Default check_section_addresses to -1. Check it for relocatable links. * ld.texinfo (--check-sections): Update documentation.
2009-01-16ld/H.J. Lu1-0/+6
2009-01-16 H.J. Lu <hongjiu.lu@intel.com> * lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT. (ld_options): Add -Ttext-segment. (parse_args): Handle OPTION_TTEXT_SEGMENT. * ld.texinfo: Document -Ttext-segment. * NEWS: Mention -Ttext-segment. * scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START. (SHLIB_TEXT_START_ADDR): Likewise. ld/testsuite/ 2009-01-16 H.J. Lu <hongjiu.lu@intel.com> * ld-elf/textaddr1.d: New. * ld-elf/textaddr2.d: Likewise.
2009-01-082009-01-08 Kai Tietz <kai.tietz@onevision.com>Kai Tietz1-0/+7
* pe.em (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New. (gld..._add_options): Add new option --use-nul-prefixed-import-tables. (gld..._handle_option): Likewise. * pep.em: Same as for pe.em. * ld.texinfo: Add new option documentation for --use-nul-prefixed-import-tables. * pe-dll.c (pe_use_nul_prefixed_import_tables): New. (make_head): Make prefix leading zero prefix element for idata$4 and idata$5 dependent to new flag. (make_import_fixup_entry): Remove idata4/5 prefix. * pe-dll.h (pe_use_nul_prefixed_import_tables): New. * pep-dll.c (pe_use_nul_prefixed_import_tables): New. * pep-dll.h (pep_use_nul_prefixed_import_tables): New. * NEWS: Add new option.
2009-01-03 * NEWS: Mention new feature --exclude-modules-for-implib.Dave Korn1-1/+15
* ld.texinfo: Document new --exclude-modules-for-implib option. * pe-dll.c (exclude_list_struct): Change type member from int to new enumeration exclude_type. (pe_dll_add_excludes): Accept exclude_type instead of int param. (auto_export): Replace magic constants by exclude_type values and handle new choice EXCLUDEFORIMPLIB. (pe_dll_generate_implib): Accept a pointer to the link_info and iterate all input BFDs looking for EXCLUDEFORIMPLIB modules; re-open fresh BFDs for any found and link into import lib archive chain. * pe-dll.h (exclude_type): Add new enumerated type to replace magic constants previously used for exclude_list_struct type member. (pe_dll_add_excludes, pe_dll_generate_implib): Update prototypes. * pep-dll.h (exclude_type, pe_dll_add_excludes, pe_dll_generate_implib): Likewise to all the above. * emultempl/pe.em (OPTION_EXCLUDE_MODULES_FOR_IMPLIB): Define new getopts long option code for new --exclude-modules-for-implib option. (gld${EMULATION_NAME}_add_options): Add new entry to xtra_long[]. (gld_${EMULATION_NAME}_list_options): List usage for it. (gld${EMULATION_NAME}_handle_option): Use exclude_type enumerated values when calling pe_dll_add_excludes, and handle EXCLUDEFORIMPLIB. (gld_${EMULATION_NAME}_finish): Pass pointer to link_info when calling pe_dll_generate_implib. * emultempl/pep.em (options): Define new enumerated value for getopts long option code for new --exclude-modules-for-implib option. (gld${EMULATION_NAME}_add_options, gld_${EMULATION_NAME}_list_options, gld${EMULATION_NAME}_handle_option, gld_${EMULATION_NAME}_finish): Again, likewise to all the above.
2008-11-26include/Alan Modra1-1/+5
PR 7047 * bfdlink.h (struct bfd_elf_version_expr): Delete "symbol". Add "literal". bfd/ PR 7047 * configure.in: Bump version. * configure: Regenerate. * elflink.c (_bfd_elf_link_assign_sym_version): Continue matching against version nodes when a global match is a wildcard. Similarly continue matching on local wildcard matches, rather than only continuing for "*". Have any global wildcard match override a local wildcard match. Correct logic hiding unversioned symbol. (bfd_elf_size_dynamic_sections): Update for changes to struct bfd_elf_version_expr. ld/ PR 7047 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Update for changes to struct bfd_elf_version_expr. * ldlang.c (lang_vers_match, version_expr_head_hash): Likewise. (version_expr_head_eq, lang_finalize_version_expr_head): Likewise. (lang_register_vers_node): Likewise. (lang_new_vers_pattern): Likewise. Ensure "literal" is set when no glob chars found in "pattern". (realsymbol): Correct backslash quote logic. * ld.texinfo (VERSION): Warn about global wildcards.
2008-11-19Change documentation license to FDL v1.3Nick Clifton1-6/+8
2008-07-18bfd:Joseph Myers1-0/+8
* bfd-in.h (bfd_elf32_arm_set_target_relocs): Add new parameter. * bfd-in2.h: Regenerate. * elf32-arm.c (struct elf_arm_obj_tdata): Add field no_wchar_size_warning. (bfd_elf32_arm_set_target_relocs): Add new parameter no_wchar_warn. (elf32_arm_merge_eabi_attributes): Give a warning, not an error, for conflicting wchar_t attributes. Do not warn if --no-wchar-size-warning. Make diagnostic text more specific. ld: * ld.texinfo (--no-wchar-size-warning): Document new ARM option. * emultempl/armelf.em (no_wchar_size_warning): New. (arm_elf_create_output_section_statements): Pass no_wchar_size_warning to arm_elf_create_output_section_statements. (OPTION_NO_WCHAR_SIZE_WARNING): New. (PARSE_AND_LIST_LONGOPTS): Add no-wchar-size-warning. (PARSE_AND_LIST_OPTIONS): List --no-wchar-size-warning. (PARSE_AND_LIST_ARGS_CASES): Handle --no-wchar-size-warning. ld/testsuite: * ld-arm/attr-merge-wchar-0.s,ld-arm/attr-merge-wchar-2.s, ld-arm/attr-merge-wchar-4.s, ld-arm/attr-merge-wchar-00-nowarn.d, ld-arm/attr-merge-wchar-00.d, ld-arm/attr-merge-wchar-02-nowarn.d, ld-arm/attr-merge-wchar-02.d, ld-arm/attr-merge-wchar-04-nowarn.d, ld-arm/attr-merge-wchar-04.d, ld-arm/attr-merge-wchar-20-nowarn.d, ld-arm/attr-merge-wchar-20.d, ld-arm/attr-merge-wchar-22-nowarn.d, ld-arm/attr-merge-wchar-22.d, ld-arm/attr-merge-wchar-24-nowarn.d, ld-arm/attr-merge-wchar-24.d, ld-arm/attr-merge-wchar-40-nowarn.d, ld-arm/attr-merge-wchar-40.d, ld-arm/attr-merge-wchar-42-nowarn.d, ld-arm/attr-merge-wchar-42.d, ld-arm/attr-merge-wchar-44-nowarn.d, ld-arm/attr-merge-wchar-44.d: New. * ld-arm/arm-elf.exp: Run new tests.
2008-07-12Revert my last change since it has not been approved.Jie Zhang1-36/+0
2008-07-11 bfd/Jie Zhang1-0/+36
* elf.c (_bfd_elf_map_sections_to_segments): Don't put executable sections into the same segment with other read only sections if --sep-code. * elf32-bfin.c (elf32_bfin_code_in_l1): New variable. (elf32_bfin_data_in_l1): New variable. (elf32_bfin_final_write_processing): New. (elf32_bfin_special_sections[]): New. (elf_backend_final_write_processing): Define. (elf_backend_special_sections): Define. binutils/ * readelf.c (get_machine_flags): Deal with Blackfin specific flags. include/ * bfdlink.h (struct bfd_link_info): Add sep_code member variable. * elf/bfin.h (EF_BFIN_CODE_IN_L1): Define. (EF_BFIN_DATA_IN_L1): Define. ld/ * Makefile.am (eelf32bfin.c): Depend on bfin.em. (eelf32bfinfd.c): Likewise. * Makefile.in: Regenerate. * gen-doc.texi: Set Blackfin. * ld.texinfo: Document --sep-code and Blackfin specific options. * ldmain.c (main): Initialize link_info.sep_code. * lexsup.c (enum option_values): Add OPTION_SEP_CODE. (ld_options[]): Add --sep-code. (parse_args): Deal with --sep-code. * emulparams/bfin.sh (EXTRA_EM_FILE): Define. * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define. * emultempl/bfin.em: New file.
2008-07-06 * ld.texinfo (File Commands): Document that INCLUDE can be used inNathan Sidwell1-0/+3
several different places. * ldgram.y (statement, memory_spec, section): Allow INCLUDE. (memory, memory_spec_list): Simplify BNF (memory_spec_list_opt): New rule. * ldlex.l (INCLUDE): Recognize in EXPRESSION. testsuite/ * ld-scripts/include-1.d: New. * ld-scripts/include-1.t: New. * ld-scripts/include-data.t: New. * ld-scripts/include-mem.t: New. * ld-scripts/include-ram.t: New. * ld-scripts/include-sections.t: New. * ld-scripts/include-subdata.t: New. * ld-scripts/include.exp: New. * ld-scripts/include.s: New.
2008-06-16 * ld.texinfo (@node MMIX): For the __.MMIX.start. prefix, onlyHans-Peter Nilsson1-4/+4
mention it as being special for global symbols.
2008-06-07 * NEWS: Mention archive:path patterns.Alan Modra1-1/+25
* ld.texinfo: Likewise. * ldlang.c: Formatting throughout. (archive_path): Only assume "[A-Za-z]:" is a dos drive. (input_statement_is_archive_path): New function, extracted from.. (walk_wild): ..here. (walk_wild_consider_section): Match archive:path here too. (init_map_userdata, sort_def_symbol): Convert to ISO C. * ldmain.c (main): Set link_info.path_separator. * emultempl/spuelf.em (choose_target): Don't set it here.
2008-06-04 * ld.texinfo (Orphan Sections): Fix texi typo.Nick Clifton1-1/+1
2008-06-04 * lexsup.c (option_values): Add OPTION_NO_WARN_FATAL.Nick Clifton1-2/+4
(ld_options): Add entry for --no-fatal-warnings. (parse_args): Handle OPTION_NO_WARN_FATAL. * ld.texinfo (Options): Document new command line switch.
2008-05-31 PR ld/6430Nick Clifton1-6/+7
* testsuite/ld-elfcomm/elfcomm.exp (test_sort_common): Test the ascending/descending argument to the --sort-common command line option. * testsuite/ld-elfcomm/sort-common.s: New file. * ld.h (enum sort_order): New. * ldlang.c (lang_check: Fix comment. (lang_common): Sort commons in ascending or descending order. (lang_one_common): Likewise. * lexsup.c (ld_options): Have --sort-common take an option argument. (parse_args): Handle argument to --sort-common. * ld.texinfo (--sort-common): Document new optional argument. * NEWS: Mention new feature.
2008-05-28 ld/testsuite/Nick Clifton1-0/+4
* ld-arm/arm-elf.exp: Skip farcalls tests for non-ARM-EABI targets. * ld-arm/thumb2-bl-as-thumb1-bad-noeabi.d: New file. * ld-arm/thumb2-bl-bad-noeabi.d: Likewise. ld/ * ld.texinfo: State that farcalls stubs are supported for ARM-EABI only.
2008-05-21 Multi-GOT support for m68k.Nick Clifton1-0/+58
bfd/ * elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key, glist): New fields. (struct elf_m68k_got_entry_key, struct elf_m68k_got_entry, struct elf_m68k_got, struct elf_m68k_bfd2got_entry, struct elf_m68k_multi_got): New data structures. (struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p, allow_multigot_p, multi_got_): New fields. (elf_m68k_multi_got): New macro. (elf_m68k_link_hash_newfunc): Initialize new fields of struct elf_m68k_link_hash_entry. (elf_m68k_link_hash_table_create): Initialize new fields of struct elf_m68k_link_hash_table. (elf_m68k_link_hash_table_free): New static function implementing hook. (elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New static functions for struct elf_m68k_got. (elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash, elf_m68k_got_entry_eq): New static functions for struct elf_m68k_got_entry. (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT, ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros. (enum elf_m68k_get_entry_howto): New enum. (elf_m68k_get_got_entry, elf_m68k_update_got_entry_type, elf_m68k_remove_got_entry_type): New static functions for struct elf_m68k_got_entry. (elf_m68k_add_entry_to_got): New static function. (elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq, elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static functions for struct elf_m68k_bfd2got_entry. (struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1, elf_m68k_can_merge_gots): New traversal. (struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1, elf_m68k_merge_gots): Ditto. (struct elf_m68k_finalize_got_offsets_arg, elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto. (struct elf_m68k_partition_multi_got_arg, elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1, elf_m68k_partition_multi_got): Ditto. (elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static functions. (elf_m68k_copy_indirect_symbol): New static function implementing a hook. (elf_m68k_check_relocs): Update to add entries to multi-GOT. (elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT. (elf_m68k_always_size_sections): Assign BFDs to GOTs. (elf_m68k_relocate_section): Update to properly handle GOT relocations. (elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries of a global symbol. (bfd_elf_m68k_set_target_options): New function. (bfd_elf32_bfd_link_hash_table_free): Define hook. (bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link to skip generic calculation of GOT offsets. (elf_backend_copy_indirect_symbol): Define hook. * bfd-in.h (bfd_elf_m68k_set_target_options): Declare function. * bfd-in2.h: Regenerate. ld/ * configure.in (--enable-got): New option. Handle it. * configure: Regenerate. * config.in: Regenerate. * emultempl/m68kelf.em: (got_handling_target_default): New shell variable. (GOT_HANDLING_TARGET_DEFAULT): New macro. (GOT_HANDLING_DEFAULT): New macro. Initialize it from configure option if one was given. (got_handling): New static variable. (elf_m68k_create_output_section_statements): New static function implementing hook. (PARSE_AND_LIST_PROLOGUE): Define shell variable. (OPTION_GOT): New macro. (PARSE_AND_LIST_LONGOPTS): Define shell variable. Specify --got option. (got): New linker option. (PARSE_AND_LIST_OPTIONS): Define shell variable. Print help string for --got option. (PARSE_AND_LIST_ARGS_CASES): Define shell variable. Handle --got option. * ld.texinfo: Document --got=<type> option. * gen-doc.texi: Add M68K. * NEWS: Mention the new feature. ld/testsuite/ * ld-m68k/got-12.s: New file. * ld-m68k/got-13.s: New file. * ld-m68k/got-14.s: New file. * ld-m68k/got-15.s: New file. * ld-m68k/got-34.s: New file. * ld-m68k/got-35.s: New file. * ld-m68k/got-single-12-ok.d: New dump test. * ld-m68k/got-single-13-er.d: New dump test. * ld-m68k/got-negative-14-ok.d: New dump test. * ld-m68k/got-negative-15-er.d: New dump test. * ld-m68k/got-negative-12-13-14-34-ok.d: New dump test. * ld-m68k/got-negative-12-13-14-35-er.d: New dump test. * ld-m68k/got-multigot-14-ok.d: New dump test. * ld-m68k/got-multigot-15-er.d: New dump test. * ld-m68k/got-multigot-12-13-14-34-35-ok.d: New dump test. * ld-m68k/xgot-15.s: New source. * ld-m68k/got-xgot-15-ok.d: New test. * ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: New test. * ld-m68k/m68k.exp: Run new tests.
2008-05-21 PR ld/6430Nick Clifton1-5/+13
* ld.texinfo (--sort-common): Correct documentation to indicate that sorting is performed by alignment, not size, biggest alignment first.
2008-05-21 * ld.texinfo (ARM): Document --stub-group-size=N option.Nick Clifton1-8/+35
Move description of --pic-veneer option into the ARM section. * NEWS: Mention the support for long function calls.
2008-05-08 * ld.texinfo (PowerPC64 ELF64): Fix typo.Tom Tromey1-2/+2
2008-02-202008-02-20 Paul Brook <paul@codesourcery.com>Paul Brook1-0/+15
ld/ * emultempl/armelf.em (OPTION_FIX_V4BX_INTERWORKING): Define. (PARSE_AND_LIST_LONGOPTS): Add fix-v4bx-interworking. (PARSE_AND_LIST_OPTIONS): Ditto. (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_FIX_V4BX_INTERWORKING. * emulparams/armelf.sh (OTHER_TEXT_SECTIONS): Add .v4_bx. * emulparams/armelf_linux.sh (OTHER_TEXT_SECTIONS): Ditto. * emulparams/armnto.sh (OTHER_TEXT_SECTIONS): Ditto. * ld.texinfo: Document --fix-v4bx-interworking. ld/testsuite/ * ld-arm/armv4-bx.d: New test. * ld-arm/armv4-bx.s: New test. * ld-arm/arm.ld: Add .v4bx. * ld-arm/arm-elf.exp: Add armv4-bx. gas/testsuite/ * gas/arm/thumb.d: Exclude EABI targets. * gas/arm/arch4t.d: Exclude EABI targts. * gas/arm/v4bx.d: New test. * gas/arm/v4bx.s: New test. * gas/arm/thumb-eabi.d: New test. * gas/arm/arch4t-eabi.d: New test. gas/ * config/tc-arm.c (fix_v4bx): New variable. (do_bx): Generate V4BX relocations. (md_assemble): Allow bx on v4 codes when fix_v4bx. (md_apply_fix): Handle BFD_RELOC_ARM_V4BX. (tc_gen_reloc): Ditto. (OPTION_FIX_V4BX): Define. (md_longopts): Add fix-v4bx. (md_parse_option): Handle OPTION_FIX_V4BX. (md_show_usage): Document --fix-v4bx. * doc/c-arm.texi: Document --fix-v4bx. bfd/ * reloc.c: Add BFD_RELOC_ARM_V4BX. * elf32-arm.c (elf32_arm_reloc_map): Add BFD_RELOC_ARM_V4BX. (ARM_BX_GLUE_SECTION_NAME, ARM_BX_GLUE_SECTION_NAME): Define. (elf32_arm_link_hash_table): Add bx_glue_size and bx_glue_offset. Update comment for fix_v4bx. (elf32_arm_link_hash_table_create): Zero bx_glue_size and bx_glue_offset. (ARM_BX_VENEER_SIZE, armbx1_tst_insn, armbx2_moveq_insn, armbx3_bx_insn): New. (bfd_elf32_arm_allocate_interworking_sections): Allocate BX veneer section. (bfd_elf32_arm_add_glue_sections_to_bfd): Ditto. (bfd_elf32_arm_process_before_allocation): Record BX veneers. (record_arm_bx_glue, elf32_arm_bx_glue): New functions. (elf32_arm_final_link_relocate): Handle BX veneers. (elf32_arm_output_arch_local_syms): Output mapping symbol for .v4_bx. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate.
2008-01-25ld/Alan Modra1-4/+34
* ld.texinfo (INSERT): Describe. * ldgram.y (ldgram_in_script, ldgram_had_equals): Delete. (INSERT_K, AFTER, BEFORE): Add as tokens. (ifile_p1): Handle INSERT statements. (saved_script_handle, force_make_executable): Move to.. * ldmain.c: ..here. (previous_script_handle): New global var. * ldmain.h (saved_script_handle, force_make_executable): Declare. (previous_script_handle): Likewise. * ldlex.l (INSERT_K, AFTER, BEFORE): Add tokens. * lexsup.c (parge_args <-T>): Set previous_script_handle. * ldlang.c (lang_for_each_statement_worker): Handle insert statement. (map_input_to_output_sections, print_statement): Likewise. (lang_size_sections_1, lang_do_assignments_1): Likewise. (insert_os_after): New function, extracted from.. (lang_insert_orphan): ..here. (process_insert_statements): New function. (lang_process): Call it. (lang_add_insert): New function. * ldlang.h (lang_insert_statement_enum): New. (lang_insert_statement_type): New. (lang_statement_union_type): Add insert_statement. (lang_add_insert): Declare. ld/testsuite/ * ld-spu/ovl.lnk: Delete overlay. * ld-spu/ovl1.lnk: New file. * ld-spu/ovl2.lnk: New file. * ld-spu/ovl.d: Update. * ld-spu/ovl2.d: Update.
2008-01-11ld:Tristan Gingold1-2/+6
2008-01-11 Tristan Gingold <gingold@adacore.com> Eric Botcazou <ebotcazou@adacore.com> * ldlang.c (lang_end): Warns if the entry point is not found when --gc-sections. Emit an error if no root is specified when --gc-sections -r. * ld.texinfo (Options): Document that --gc-sections is compatible with -r and -q. * ldmain.c (main): Do not error out if -r and --gc-sections. * scripttempl/elf.sc: Emit ENTRY command only if relocating. ld/testsuite: 2008-01-11 Tristan Gingold <gingold@adacore.com> * lib/ld-lib.exp (check_gc_sections_available): Now available on VxWorks. * ld-gc: New directory for testing --gc-sections. * ld-gc/gc.c: New file. * ld-gc/gc.exp: New file. * ld-gc/noent.s: New file. * ld-gc/noent.d: New file.
2008-01-10 * ld.texinfo (--gc-sections): Describe linker behaviour.Alan Modra1-0/+10
2007-10-01PR linker/4844Nick Clifton1-5/+11
* genscript.sh: Add support for generating a .xa script for use with the --auto-import option. * ld.texinfo: Document the new behaviour of the --auto-import option. * ldint.texinfo: Document new script generation. * emulparams/i386pe.sh (GENERATE_AUTO_IMPORT): Define. * emulparams/i386pe_posix.sh (GENERATE_AUTO_IMPORT): Define. * emulparams/i386pep.sh (GENERATE_AUTO_IMPORT): Define. * emultemp/pe.em (..._get_script): Support the use of the auto import script. * scripttempl/pe.sc: Put the .rdata input sections into the .data output section when creating an auto import script. * scripttempl/pep.sc: Likewise.
2007-08-18 * ld.texinfo (Input Section Basics): Correct EXCLUDE_FILE example.Alan Modra1-1/+1
2007-07-25PR 4824Nick Clifton1-1/+5
* ld.texinfo (Options): Extend the description of the -O command line option.
2007-07-132007-07-13 Roland McGrath <roland@redhat.com>Roland McGrath1-12/+14
* emultempl/elf32.em (struct build_id_info): New type. (gld${EMULATION_NAME}_id_note_section_size): New function. (gld${EMULATION_NAME}_write_build_id_section): New function. (gld${EMULATION_NAME}_after_open): Use them. (DEFAULT_BUILD_ID_STYLE): Change to "sha1". * ld.texinfo (Options): Mention --build-id=sha1.
2007-07-092007-07-09 Roland McGrath <roland@redhat.com>Roland McGrath1-123/+145
* emultempl/elf32.em (gld${EMULATION_NAME}_add_option): Add --build-id. (gld${EMULATION_NAME}_handle_option): Handle --build-id. (gld${EMULATION_NAME}_list_options): List --build-id. (gld${EMULATION_NAME}_after_open): If --build-id was given, synthesize a ".note.gnu.build-id" section and cache it in elf_tdata. * ld.texinfo (Options): Describe --build-id. * NEWS: Mention --build-id.
2007-07-052007-07-05 Danny Smith <dannysmith@users.sourceforge.net>Danny Smith1-4/+4
* ld.texinfo (--heap): Replace 'amount' with 'number of bytes'. (--stack): Likewise. 2007-07-03 Matthias Klose <doko@ubuntu.com> * emultempl/spuelf.em (base_name): Correct backslash quoting. 2007-07-02 Alan Modra <amodra@bigpond.net.au> * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * config.in: Regenerate. * po/ld.pot: Regenerate. 2007-06-30 H.J. Lu <hongjiu.lu@intel.com> * aclocal.m4: Regenerated. * Makefile.in: Likewise. 2007-06-29 H.J. Lu <hongjiu.lu@intel.com> * NEWS: Remove a line with '*' only. 2007-06-29 Joseph Myers <joseph@codesourcery.com> * emulparams/armelf.sh (OTHER_SECTIONS): Remove .ARM.attributes. (ATTRS_SECTIONS): Define. * scripttempl/elf.sc, scripttempl/elf32sh-symbian.sc, scripttempl/elf_chaos.sc, scripttempl/elfi370.sc, scripttempl/elfxtensa.sc: Handle ATTRS_SECTIONS. 2006-06-29 M R Swami Reddy <MR.Swami.Reddy@nsc.com> * scripttemp/elf32cr16.sc: Default linker script. * emulparams/elf32cr16.sh: Emulation script. * emultempl/cr16elf.em: Emulation script. * Makefile.am: Add entry to make cr16 target. * Makefile.in: Regenerate. * configure.tgt: Specify default and other emulation parameters for cr16. * ChangeLog: Added CR16 target entry. * NEWS: Announce the support for the CR16 new target. 2007-06-27 Alan Modra <amodra@bigpond.net.au> * pe-dll.c: Rename uses of bfd.next to bfd.archive_next throughout. 2007-06-20 Alan Modra <amodra@bigpond.net.au> * emulparams/elf32_spu.sh (OTHER_SECTIONS): KEEP .note.spu_name. 2007-06-18 Nathan Sidwell <nathan@codesourcery.com> * ldlex.l, ldgram.y: Add ALIGNOF. * ldexp.c (exp_print_token, foldname): Likewise. * ld.texinfo: Likewise. 2007-06-18 Alan Modra <amodra@bigpond.net.au> * Makefile.am: Add eelf32_spu.o rule. * Makefile.in: Regenerate. * emultempl/spuelf.em: Revert last change. Instead use EMBEDSPU defined in Makefile for embedspu name. 2007-06-18 Alan Modra <amodra@bigpond.net.au> * emultempl/spuelf.em (embedded_spu_file): Deduce embedspu program name prefix from that of ld. 2007-06-14 H.J. Lu <hongjiu.lu@intel.com> * Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd. * acinclude.m4: Removed. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. 2007-06-14 Alan Modra <amodra@bigpond.net.au> * emultempl/spu_ovl.S: Don't trash lr on tail call from one overlay to another. * emultempl/spu_ovl.o: Regenerate. 2007-06-11 Bob Wilson <bob.wilson@acm.org> * emulparams/elf32xtensa.sh (OTHER_READONLY_SECTIONS): Add ONLY_IF_RO for .xt_except_table. (OTHER_RELRO_SECTIONS): New. 2007-06-11 Sterling Augustine <sterling@tensilica.com> Bob Wilson <bob.wilson@acm.org> * emultempl/xtensaelf.em (replace_insn_sec_with_prop_sec): Use renamed XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM. 2007-06-01 Noah Misch <noah@cs.caltech.edu> Alan Modra <amodra@bigpond.net.au> * ldlang.c (ldlang_add_file): Use input_bfds_tail. * ldmain.c (main): Init input_bfds_tail. Sort link_info initialization. 2007-05-29 Alan Modra <amodra@bigpond.net.au> * emultempl/spuelf.em (base_name): New function, split out from.. (embedded_spu_file) ..here. Pass -fPIC or -fpie to embedspu invocation if we deduce a shared lib or position independent executable build by looking at ctrbegin* linker input files. 2007-05-29 Alan Modra <amodra@bigpond.net.au> * emultempl/spu_ovl.S (__rv_pattern, __cg_pattern): Set symbol types and sizes. * emultempl/spu_ovl.o: Regenerate. 2007-05-24 Steve Ellcey <sje@cup.hp.com> * Makefile.in: Regnerate. * configure: Regenerate. * aclocal.m4: Regenerate. 2007-05-24 Nathan Sidwell <nathan@codesourcery.com> * ldlex.l: ASSERT is recognized in SCRIPT env. NAMES cannot contain commas in EXP env. * ldgram.y (extern_name_list): Push to EXP env, move body to ... (extern_name_list_body): ... here. (script_file, ifile_list): Reformat. (statement): Add ASSERT. 2007-05-22 Nick Clifton <nickc@redhat.com> * ld.texinfo: Use @copying around the copyright notice. * ldint.texinfo: Likewise. 2007-05-18 Richard Sandiford <richard@codesourcery.com> * emulparams/elf32ebmipvxworks.sh (OTHER_READONLY_SECTIONS) (OTHER_READWRITE_SECTIONS): Define. Add .rdata sections. 2007-05-16 Richard Sandiford <richard@codesourcery.com> * configure.in: Allow sysroots to be relocated under $prefix as well as $exec_prefix. * configure: Regenerate. 2007-05-14 Andreas Schwab <schwab@suse.de> * emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Handle null pattern. 2007-05-11 Alan Modra <amodra@bigpond.net.au> * emultempl/ppc32elf.em (plt_style): New variable. (old_plt): Delete. (ppc_after_open): Adjust ppc_elf_select_plt_layout call. (PARSE_AND_LIST_PROLOGUE): Define OPTION_NEW_PLT, renumber OPTION_OLD_PLT, OPTION_OLD_GOT and OPTION_STUBSYMS. (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add secure-plt. (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_NEW_PLT. * ld.texinfo (--secure-plt): Document. 2007-05-08 Alan Modra <amodra@bigpond.net.au> * ld.h (args_type, ld_config_type): Reorder fields. * ldmain.c (main): Don't initialise a bunch of vars we know are zero already. 2007-05-05 Anatoly Sokolov <aesok@post.ru> * multempl/avrelf.em (PARSE_AND_LIST_ARGS_CASES): Add new value for "--pmem-wrap-around". (PARSE_AND_LIST_OPTIONS): Describe new value for "--pmem-wrap-around". 2007-05-03 Bob Wilson <bob.wilson@acm.org> * scripttempl/elfxtensa.sc: Merge changes from elf.sc. 2007-05-03 Alan Modra <amodra@bigpond.net.au> * ld.texinfo (--no-warn-search-mismatch): Document. * ldfile.c (ldfile_try_open_bfd): Don't warn about skipping incompatible libraries if --no-warn-search-mismatch. * ld.h (args_type): Add warn_search_mismatch. * ldmain.c (main): Init it. * lexsup.c (enum option_values): Add OPTION_NO_WARN_SEARCH_MISMATCH. (ld_options): Add entry for --no-warn-search-mismatch. (parse_args): Handle OPTION_NO_WARN_SEARCH_MISMATCH. 2007-05-03 Alan Modra <amodra@bigpond.net.au> * scripttempl/elf.sc: Add .debug_pubtypes and .debug_ranges. 2007-05-01 Robert Millan <rmh@aybabtu.com> * ldlang.c (lang_check): Error on architecture mismatch. 2007-04-30 Alan Modra <amodra@bigpond.net.au> * ldmain.c (link_callbacks): Init info and minfo fields. * ldmisc.c (minfo): Do nothing if no map file. * emultempl/spuelf.em (stack_analysis, emit_stack_syms): New vars. (spu_after_open): Adjust spu_elf_create_sections call. (spu_before_allocation): Likewise for spu_elf_size_stubs. (OPTION_SPU_STACK_ANALYSIS, OPTION_SPU_STACK_SYMS): Define. (PARSE_AND_LIST_LONGOPTS): Add new entries. (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise. * gen-doc.texi: Add @set for SPU and other missing targets. * ld.texinfo: Update man page selection to match gen-doc.texi. Document SPU features. 2007-04-28 Alan Modra <amodra@bigpond.net.au> * ldcref.c (struct cref_hash_entry): Make "demangled" const. (cref_fill_array): Adjust for changed demangler. * ldlang.c (lang_one_common): Likewise. 2007-04-27 Nathan Froyd <froydnj@codesourcery.com> * emulparams/elf32_sparc.sh: Update comments. * emulparams/elf32bmip.sh: Likewise. * emulparams/elf32ppc.sh: Likewise. * emulparams/vxworks.sh: Likewise. 2007-04-27 Alan Modra <amodra@bigpond.net.au> Many files: Include sysdep.h first. Remove duplicate headers. * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. 2007-04-24 Alan Modra <amodra@bigpond.net.au> * Makefile.in: Regenerate. 2007-04-19 Alan Modra <amodra@bigpond.net.au> * ldcref.c (cref_fill_array): Call bfd_demangle rather than demangle. * ldlang.c (lang_one_common): Likewise. * ldmisc.c (vfinfo): Likewise. (demangle): Delete. * ldmisc.h (demangle): Delete. * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. 2007-04-18 Alan Modra <amodra@bigpond.net.au> * ldlang.h (enum section_type): Add overlay_section. * ldlang.c (lang_add_section): Handle flags for overlay_section as per normal_section. (lang_size_sections_1): When setting lma, detect overlays by os->sectype rather than by looking for overlapping vmas. (lang_enter_overlay_section): Use overlay_section type. (lang_leave_overlay): Set first overlay section to normal. 2007-04-14 Steve Ellcey <sje@cup.hp.com> * Makefile.am: Add ACLOCAL_AMFLAGS. * Makefile.in: Regenerate. 2007-04-12 Bob Wilson <bob.wilson@acm.org> * emulparams/elf32xtensa.sh (OTHER_SECTIONS): KEEP property sections. 2007-04-10 Richard Henderson <rth@redhat.com> * ldlang.c (relax_sections): Initialize and increment link_info.relax_trip. 2007-04-04 Paul Brook <paul@codesourcery.com> * configure.tgt: Loosen checks for arm uclinux eabi targets. 2007-04-02 H.J. Lu <hongjiu.lu@intel.com> PR ld/4090 * ldexp.h (node_type): Add lineno. * ldexp.c: Include "ldlex.h". (exp_intop): Set the lineno field from lineno. (exp_bigintop): Likewise. (exp_relop): Likewise. (exp_nameop): Likewise. (exp_binop): Set the lineno field from lineno of lhs. (exp_trinop): Likewise. (exp_unop): Set the lineno field from lineno of child. (exp_assop): Set the lineno field from lineno of src. (exp_provide): Likewise. (exp_assert): Set the lineno field from lineno of exp. (exp_get_abs_int): Set lineno from lineno of nonconstant expression when report problem. 2007-03-29 Richard Sandiford <richard@codesourcery.com> Daniel Jacobowitz <dan@codesourcery.com> * NEWS: Mention -l:foo. * ld.texinfo: Document it. * ldlang.c (new_afile): If a lang_input_file_is_l_enum entry as a name beginning with a coloh, convert it to a lang_input_file_is_search_file_enum entry without the colon. 2007-03-28 Richard Sandiford <richard@codesourcery.com> * ld.h (ld_config_type): Add rpath_separator. * ldmain.c (main): Initialize it. * lexsup.c (parse_args): Honor config.rpath_separator. * emultempl/elf32.em (gld${EMULATION_NAME}_search_needed): Likewise. (gld${EMULATION_NAME}_add_sysroot): Likewise. (gld${EMULATION_NAME}_parse_ld_so_conf): Use config.rpath_separator rather than ':' when building the path. * emultempl/vxworks.em (vxworks_before_parse): New function. Override config.rpath_separator. (LDEMUL_AFTER_OPEN): Do not change if EXTRA_EM_FILE has been set to gld${EMULATION_NAME}_after_open; #define that identifier to vxworks_foo instead. (LDEMUL_BEFORE_PARSE): Override in the same way as LDEMUL_AFTER_OPEN. 2007-03-28 Richard Sandiford <richard@codesourcery.com> Phil Edwards <phil@codesourcery.com> * ld.texinfo: Put the contents after the title page rather than at the end of the document. 2007-03-26 Alan Modra <amodra@bigpond.net.au> * Makefile.am: Add dependency on ldemul-list.h for powerpc and spu target emul files. * configure.in: Check for mkstemp and waitpid. * Makefile.in: Regenerate. * configure: Regenerate. * config.in: Regenerate. * ldlang.c (input_file_chain): Make global. (lang_add_input_file): Don't set lang_has_input_file here. * ldlang.h (input_file_chain): Declare. * emultempl/ppc32elf.em (ppc_recognized_file): New function. (LDEMUL_RECOGNIZED_FILE): Define. * emultempl/ppc64elf.em (ppc64_recognized_file): New function. (LDEMUL_RECOGNIZED_FILE): Define. * emultempl/spuelf.em (struct tflist): New. (tmp_file_list): New var. (clean_tmp, embedded_spu_file): New functions. 2007-03-24 Alan Modra <amodra@bigpond.net.au> * ldlang.c (lang_insert_orphan): Provide start/stop loadaddr syms rather than defining unconditionally. (lang_leave_overlay_section): Likewise. * ld.texinfo (Overlay Description): Update description and examples for start/stop syms. 2007-03-22 Joseph Myers <joseph@codesourcery.com> * ld.texinfo: Include VERSION_PACKAGE when reporting version. 2007-03-20 Paul Brook <paul@codesourcery.com> * emultempl/armelf.em (pic_veneer): New variable. (PARSE_AND_LIST_PROLOGUE): Add OPTION_PIC_VENEER. (PARSE_AND_LIST_ARGS_CASES): Ditto. (PARSE_AND_LIST_LONGOPTS): Add "pic-veneer". (PARSE_AND_LIST_OPTIONS): Ditto. * ld.texinfo: Document --pic-veneer. 2007-03-18 Mark Shinwell <shinwell@codesourcery.com> * ld.texinfo: Document --no-enum-size-warning. * emultempl/armelf.em (no_enum_size_warning): New. (arm_elf_create_output_section_statements): Correct typo in comment. Pass no_enum_size_warning to bfd_elf32_arm_set_target_relocs. (PARSE_AND_LIST_PROLOGUE): Define OPTION_NO_ENUM_SIZE_WARNING. (PARSE_AND_LIST_OPTIONS): Document --no-enum-size-warning. (PARSE_AND_LIST_ARGS_CASES): Add OPTION_NO_ENUM_SIZE_WARNING case. 2007-03-19 Bernd Schmidt <bernd.schmidt@analog.com> * configure.tgt (bfin-*-elf, bfin-*-uclinux*): Add targ_extra_libpath. (bfin-*-linux-uclibc*): New target. 2007-03-16 Kai Tietz <Kai.Tietz@onevision.com> * pe-dll.c (make_one): Use pc-relative relocation instead of an absolute relocation for x86_64-pc-mingw32 target. 2007-03-15 H.J. Lu <hongjiu.lu@intel.com> * Makefile.am (ld_TEXINFOS): Remove ldver.texi. (AM_MAKEINFOFLAGS): Add -I ../../bfd/doc. (TEXI2DVI): Likewise. (REPORT_BUGS_TO): Removed. (INCLUDES): Remove -DREPORT_BUGS_TO. (ldver.texi): Likewise. (ld.1): Don't depend on ldver.texi. (MOSTLYCLEANFILES): Remove ldver.texi. * Makefile.in: Regenerated. * configure.in (--with-bugurl): Removed. * configure: Regenerated. * lexsup.c: Include bfdver.h. * ld.texinfo: Include bfdver.texi instead of ldver.texi. 2007-03-11 Hans-Peter Nilsson <hp@bitrange.com> * emultempl/mmixelf.em: Remove incorrect '#line' directive. 2007-03-08 Alan Modra <amodra@bigpond.net.au> * ldlang.c (lang_size_sections_1): Correct backwards dot move test to not trigger on overlays. Only warn on backwards move if non-default lma. 2007-03-07 Joseph Myers <joseph@codesourcery.com> * configure.in (REPORT_BUGS_TEXI): Define to Texinfo version of bug-reporting URL. * Makefile.am (ldver.texi): Define BUGURL. * ld.texinfo: Use BUGURL. * Makefile.in, configure: Regenerate. 2007-03-07 Nick Clifton <nickc@redhat.com> PR ld/4023 * emultempl/aix.em (..._before_allocation): Strip sysroot prefix from any paths being inserted into the output binary's DT_RPATH. 2007-03-02 Nathan Sidwell <nathan@codesourcery.com> * emulparams/shelf_uclinux.sh: New. Missed in 2007-02-28 commit. 2007-03-01 Joseph Myers <joseph@codesourcery.com> * ldver.c (ldversion): Remove word "version" from output. Update copyright date. 2007-02-28 Nathan Sidwell <nathan@codesourcery.com> * Makefile.am (ALL_EMULATIONS): Add eshelf_uclinux.o (eshelf_uclinux.c): New target. * Makefile.in: Rebuilt. * configure.tgt (sh-*-uclinux* | sh[12]-*-uclinux*): New stanza. * emulparams/shelf_uclinux.sh: New. 2007-02-28 Alan Modra <amodra@bigpond.net.au> * configure.tgt: Fix type last change. * configure.tgt (spu-*-elf*): Delete targ_extra_ofiles. 2007-02-27 Alan Modra <amodra@bigpond.net.au> * Makefile.am (ALL_EMUL_EXTRA_OFILES): Remove spu_inc.o. (eelf32_spu.c): Adjust dependencies. * Makefile.in: Regenerate. * emultempl/spuelf.em (ovl_mgr): New array. Insert spu_ovl.o code using bin2c. (_binary_spu_ovl_o_start, _binary_spu_ovl_o_end): Delete. (ovl_mgr_stream): Update. * emultempl/spu_inc.s: Delete. * emultempl/spu_none.s: Delete. 2007-02-26 Alan Modra <amodra@bigpond.net.au> * emultempl/spuelf.em (_binary_builtin_ovl_mgr_start): Rename to _binary_spu_ovl_o_start. (_binary_builtin_ovl_mgr_end): Rename to _binary_spu_ovl_o_end. (spu_elf_load_ovl_mgr): Fatal error on missing overlay manager. * emultempl/spu_inc.s: Rename symbols. * emultempl/spu_none.s: New file. * emultempl/spu_ovl.S: Update copyright. * Makefile.am (spu_inc.o): Try building with ld -r first, then gas incbin, then build without overlay manager. * Makefile.in: Regenerate. 2007-02-22 Joseph Myers <joseph@codesourcery.com> * configure.tgt (mips64*el-*-linux-*, mips64*-*-linux-*, mips*el-*-linux-*, mips*-*-linux-*): Set targ_extra_libpath=$targ_extra_emuls. 2007-02-21 Nick Clifton <nickc@redhat.com> * ldlang.c (ldlang_override_segment_assignment): New function. * ldlang.h (ldlang_override_segment_assignment): Prototype. * ldmain.c (link_callbacks): Add ldlang_override_segment_assignment. 2007-02-20 Alan Modra <amodra@bigpond.net.au> * ldexp.c (fold_name <LOADADDR>): Ensure result is always absolute. 2007-02-17 Mark Mitchell <mark@codesourcery.com> Nathan Sidwell <nathan@codesourcery.com> Vladimir Prus <vladimir@codesourcery.com Joseph Myers <joseph@codesourcery.com> * configure.in (--with-bugurl): New option. * configure: Regenerate. * Makefile.am (REPORT_BUGS_TO): Define. (INCLUDES): Define REPORT_BUGS_TO. Regenerate dependencies. * Makefile.in: Regenerate. * ld.h: Remove include of bin-bugs.h. * lexsup.c (help): Don't print empty REPORT_BUGS_TO. 2007-02-17 Alan Modra <amodra@bigpond.net.au> * ldcref.c (check_reloc_refs): Compare section for local syms. 2007-02-13 Alan Modra <amodra@bigpond.net.au> * emultempl/spu_ovl.S (__ovly_return, __ovly_load): Set sym size. (__ovly_load_event): Define. (size): Rename to osize. * emultempl/spu_ovl.o: Regenerate. 2007-02-13 Alan Modra <amodra@bigpond.net.au> * emulparams/elf64ppc.sh (OTHER_READWRITE_SECTIONS): Add ".branch_lt". * emultempl/ppc64elf.em (ppc_add_stub_section): Create without SEC_RELOC flag set. 2007-02-09 H.J. Lu <hongjiu.lu@intel.com> * configure.in (targ_extra_emuls): Add $targ64_extra_emuls if want64 is true. (targ_extra_libpath): Add $targ64_extra_libpath if want64 is true * configure: Regenerated. * configure.tgt (targ_extra_libpath): Initialize. (targ64_extra_emuls): New. Document. Initialize. (targ64_extra_libpath): Likewise. (i[3-7]86-*-linux-*): Set targ64_extra_emuls and targ64_extra_libpath. (powerpc*-*-linux*): Likewise. (s390-*-linux*): Likewise. 2007-02-07 Paul Brook <paul@codesourcery.com> * configure.tgt: Add arm*-*-uclinux-*eabi. 2007-02-06 H.J. Lu <hongjiu.lu@intel.com> * ldlang.c (lang_size_sections_1): Add a missing `)'. 2007-02-06 Alan Modra <amodra@bigpond.net.au> PR ld/3966 * ldlang.c (lang_size_sections_1): Don't warn on backwards dot move unless section size is non-zero. 2007-02-05 Dave Brolley <brolley@redhat.com> * Makefile.am (ALL_EMULATIONS): Add support for Toshiba MeP. * configure.tgt: Likewise. * scripttempl/mep.sc: New file. * emulparams/elf32mep.sh: New file. * Makefile.in: Regenerate. 2006-01-29 Julian Brown <julian@codesourcery.com> * NEWS: Mention --vfp11-denorm-fix option. * ld.texinfo: Document above. * emulparams/armelf_linux.sh (OTHER_TEXT_SECTIONS): Add .vfp11_veneer section. * emulparams/armelf.sh (OTHER_TEXT_SECTIONS): Likewise. * emultempl/armelf.em (vfp11_denorm_fix): New static variable. (arm_elf_before_allocation): Call bfd_elf32_arm_set_vfp11_fix, bfd_elf32_arm_init_maps and bfd_elf32_arm_vfp11_erratum_scan. (arm_elf_after_allocation): New function. Call bfd_elf32_arm_vfp11_fix_veneer_locations for all input statements. (arm_elf_create_output_section_statements): Pass vfp11 fix command line option to BFD. (OPTION_VFP11_DENORM_FIX): New option. (PARSE_AND_LIST_LONGOPTS): Handle new option. (PARSE_AND_LIST_OPTIONS): Likewise. (PARSE_AND_LIST_ARGS_CASES): Likewise. (LDEMUL_AFTER_ALLOCATION): Define. 2007-01-24 H.J. Lu <hongjiu.lu@intel.com> * ldgram.y (SIZEOF_HEADERS): Remove duplicated one. (DEFSYMEND): Likewise. (NAME): Likewise. (LNAME): Likewise. 2007-01-19 Murali Vemulapati <murali.vemulapati@gmail.com> * pe-dll.c: (make_one) Conditionally include jump stubs. * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Identify redundant jump stubs from import libraries and exclude them from link. 2007-01-19 H.J. Lu <hongjiu.lu@intel.com> * ld.h (args_type): Add new symbolic and dynamic_list fields. * ld.texinfo: Update -Bsymbolic-functions. * ldmain.c (main): Initialize command_line.symbolic to symbolic_unset and command_line.dynamic_list to dynamic_list_unset. Check -Bsymbolic, -Bsymbolic-functions and --dynamic-list* before setting link_info.symbolic, link_info.dynamic and link_info.dynamic_data. * lexsup.c (option_values): Add OPTION_SYMBOLIC_FUNCTIONS. (ld_options): Use OPTION_SYMBOLIC_FUNCTIONS with -Bsymbolic-functions. (parse_args): Handle -Bsymbolic-functions. Don't set link_info.dynamic, link_info.dynamic_data and link_info.symbolic here. Set command_line.symbolic for -Bsymbolic. Set command_line.dynamic_list and command_line.symbolic for --dynamic-list-data, --dynamic-list-cpp-new, --dynamic-list-cpp-typeinfo and --dynamic-list. 2007-01-19 Jakub Jelinek <jakub@redhat.com> H.J. Lu <hongjiu.lu@intel.com> * emultempl/elf32.em (handle_option): Make sure -z max-page-size or -z common-page-size argument is a power of 2. Call bfd_emul_set_maxpagesize and bfd_emul_set_commonpagesize. 2007-01-19 H.J. Lu <hongjiu.lu@intel.com> * ldmain.c (main): Don't call bfd_emul_set_maxpagesize nor bfd_emul_set_commonpagesize. 2007-01-19 H.J. Lu <hongjiu.lu@intel.com> * NEWS: Mention --default-script/-dT. * ld.h (args_type): Add a default_script field. * ld.texinfo: Document --default-script/-dT. * ldmain.c (main): Handle command_line.default_script. * lexsup.c (option_values): Add OPTION_DEFAULT_SCRIPT. (ld_options): Add entries for --default-script and -dT. (parse_args): Handle --default-script/-dT. 2007-01-16 H.J. Lu <hongjiu.lu@intel.com> PR ld/3831 * NEWS: Mention -Bsymbolic-functions, --dynamic-list-data and --dynamic-list-cpp-new. * ld.texinfo: Document -Bsymbolic-functions, --dynamic-list-data and --dynamic-list-cpp-new. * ldlang.c (lang_append_dynamic_list_cpp_new): New. (lang_process): Change link_info.dynamic to link_info.dynamic_list. (lang_append_dynamic_list): Likewise. * ldmain.c (main): Likewise. Initialize link_info.dynamic and link_info.dynamic_data to FALSE. * ldlang.h (lang_append_dynamic_list_cpp_new): New. * lexsup.c (option_values): Add OPTION_DYNAMIC_LIST_DATA and OPTION_DYNAMIC_LIST_CPP_NEW. (ld_options): Add entries for -Bsymbolic-functions, --dynamic-list-data and --dynamic-list-cpp-new. Make -Bsymbolic-functions an alias of --dynamic-list-data. (parse_args): Change link_info.dynamic to link_info.dynamic_list. Set link_info.dynamic to TRUE for --dynamic-list and --dynamic-list-cpp-typeinfo. Handle --dynamic-list-data and --dynamic-list-cpp-new. 2007-01-11 Nathan Sidwell <nathan@codesourcery.com> * emultempl/elf-generic.em (gdl_map_segments): Only allow header shrinkage for the first few iterations. 2007-01-08 Kai Tietz <kai.tietz@onevision.com> * configure.tgt: Renamed target x86_64-*-mingw64 to x86_64-*-mingw*. 2007-01-08 Pedro Alves <pedro_alves@portugalmail.pt> * configure.host: Add i[3-7]86-*-mingw* case. 2007-01-08 Nick Clifton <nickc@redhat.com> * pep-dll.h (pep_bfd_is_dll): Add prototype. 2007-01-08 Aurelien Jarno <aurelien@aurel32.net> PR ld/3843 * configure.tgt (x86_64_[k]freebsd*): Add targ_extra_libpath and tdir_elf_i386_fbsd. 2007-01-06 Nathan Sidwell <nathan@codesourcery.com> * ldexp.c (fold_name): Issue error on undefined sections. 2007-01-02 Alan Modra <amodra@bigpond.net.au> * pe-dll.c: Include pe-dll.h. * pep-dll.c (pe_bfd_is_dll): Define. For older changes see ChangeLog-2006 Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never End:
2007-06-18 * ldlex.l, ldgram.y: Add ALIGNOF.Nathan Sidwell1-0/+19
* ldexp.c (exp_print_token, foldname): Likewise. * ld.texinfo: Likewise. ld/testsuite/ * ld-scripts/alignof.s: New. * ld-scripts/alignof.t: New * ld-scripts/alignof.exp: New.