X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=ld%2FChangeLog;h=dfbb58219dbbdcd90b6a9889255911e06d0a5012;hb=72b016b4ac0d7532a8f173fe3472e2e88ac49d45;hp=8ba97a661a91ccd94f819589ec55f5251899a7c7;hpb=01554a74b59e63cc487533b71d94a7606b76a871;p=binutils-gdb.git diff --git a/ld/ChangeLog b/ld/ChangeLog index 8ba97a661a9..dfbb58219db 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,441 @@ +2011-04-26 Kai Tietz + + * scripttempl/pe.sc: Handle .eh_frame($|.)* sections. + * scripttempl/pep.sc: Likewise. + +2011-04-24 Alan Modra + + PR ld/12365 + PR ld/12696 + * ldmain.c (notice): Delete "name" param, add "h". + * plugin.c (plugin_notice): Likewise. Set non_ir_ref. Handle + redefinitions of IR symbols in real BFDs. + (plugin_multiple_definition, plugin_multiple_common): Delete. + (non_ironly_hash, init_non_ironly_hash): Delete. + (is_visible_from_outside): Traverse entry_symbol chain. + (get_symbols): Use non_ir_ref flag rather than hash lookup. + +2011-04-21 Tristan Gingold + + * scripttempl/alphavms.sc: Add dwarf2 embedding marks. + +2011-04-20 Tristan Gingold + + * emultempl/aix.em (_add_options): Ignore -bbigtoc switch. + +2011-04-20 Alan Modra + + * ld.h (ld_config_type ): Make it an unsigned long. + +2011-04-20 Alan Modra + + PR ld/12365 + * ldfile.c (ldfile_try_open_bfd): Move code creating and switching + to plugin IR BFD.. + * ldmain.c (add_archive_element): ..and similar code here.. + * plugin.c (plugin_maybe_claim): ..to here. New function. + (plugin_call_claim_file): Make static. + (asymbol_from_plugin_symbol): Set ELF st_shndx for common syms. + (plugin_multiple_common): New function. + (plugin_call_all_symbols_read): Hook in plugin_multiple_common. + * plugin.h (plugin_call_claim_file): Don't declare. + (plugin_maybe_claim): Declare. + +2011-04-20 Alan Modra + + PR ld/12365 + * ldmain.c (multiple_definition): Take a bfd_link_hash_entry + pointer arg rather than "name", "obfd", "osec", "oval". Add code + removed from linker.c. Hack around xcofflink.c oddity in + passing NULL nbfd. + (multiple_common): Similarly. + * plugin.c (orig_allow_multiple_defs): Delete. + (plugin_call_all_symbols_read): Don't twiddle allow_multiple_definition. + (plugin_multiple_definition): Update. + +2011-04-18 Kai Tietz + + * deffilep.y (def_aligncomm): Avoid duplets. + + * deffilep.y (def_pool_str): New type. + (pool_strs): Local static. + (def_pool_alloc): Local function. + (def_pool_strdup): Likewise. + (def_pool_free): Likewise. + (opt_name): Replace xmalloc/xstrdup by + def_pool_alloc/def_pool_strdup. + (dot_name): Likewise. + (anylang_id): Likewise. + (def_lex): Likewise. + (def_file_parse): Call def_pool_free on + exit and cleanup directives elements. + (def_file_add_directive): Call def_pool_free. + +2011-04-18 Paul Brook + + * emulparams/elf32_tic6x_le.sh: Define OTHER_READONLY_SECTIONS + for unwinding tables. + +2011-04-18 Alan Modra + + PR ld/12365 + PR ld/12672 + * ldfile.c (ldfile_try_open_bfd): Don't attempt any plugin action + when no_more_claiming. + * ldmain.c (add_archive_element): Likewise. + (multiple_definition): Remove plugin_multiple_definition call. + (notice): Remove plugin_notice call. + * ldlang.c (lang_list_insert_after, void lang_list_remove_tail): Move. + Delete prototype. + (plugin_insert): New static var. + (open_input_bfds): Only rescan libs after plugin insert point. + (lang_gc_sections): Omit plugin claimed files. + (lang_process): Set plugin_insert. Only rescan when plugin adds + objects. + * plugin.h (no_more_claiming): Declare. + (plugin_notice, plugin_multiple_definition): Don't declare. + * plugin.c: Formatting. + (orig_notice_all, orig_allow_multiple_defs, orig_callbacks, + plugin_callbacks): New static vars. + (no_more_claiming): Make global. + (plugin_cached_allow_multiple_defs): Delete. + (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy .text section, + use newer bfd_make_section variant. Make COMMON section too. + Error handling. Correct setting of gp size. + (asymbol_from_plugin_symbol): Properly cast last arg of concat. + (message): Likewise for ACONCAT. + (asymbol_from_plugin_symbol): Use our COMMON section. + (get_symbols): When report_plugin_symbols, show visibility too. + (init_non_ironly_hash): Move. Don't test non_ironly_hash. + (plugin_load_plugins): Save state of linker callbacks, set up to + call plugin_notice instead. Call init_non_ironly_hash here. + (plugin_call_all_symbols_read): Set plugin_multiple_definition in + plugin callbacks. + (plugin_notice): Rewrite. + (plugin_multiple_definition): Make static, call original callback. + +2011-04-15 Alan Modra + + PR ld/12672 + * ldlang.c (enum open_bfd_mode): New. + (open_input_bfds): Replace "force" param with "mode". Reload + archives for rescan. Update all callers. + (lang_process): Make another open_input_bfds pass for plugins. + +2011-04-13 Kai Tietz + + PR binutils/12658 + * deffile.h (def_file_add_export): Add is_dup argument. + (def_file_add_import): Likewise. + * deffilep.y (are_names_equal): New helper. + (cmp_export_elem): New helper. + (find_export_in_list): Add search routine for exports. + (def_file_add_export): Check for duplicates. + (cmp_import_elem): New helper. + (find_import_in_list): Add search routine for imports. + (def_file_add_import): Check for duplicates. + (def_exports): Handle duplicates. + (def_imports): Likewise. + * pe-dll.c (process_def_file_and_drectve): Likewise. + (pe_implied_import_dll): Likewise. + +2011-04-11 Chris Quenelle + + * scripttempl/elf.sc (.exception_ranges): Add new section. + +2011-04-08 Hector Oron + + PR ld/12643 + * configure.tgt: Add support for arm-*-gnueabihf targets. + +2011-04-07 Eric B. Weddington + + * Makefile.in: Regenerate. Remove stray eavrtiny10 rules. + +2011-04-07 Joseph Myers + + * configure.tgt: Remove stray ;;. + +2011-04-06 Joseph Myers + + * configure.tgt (thumb-*-linux-* | thumb-*-uclinux*, + strongarm-*-coff, strongarm-*-elf, strongarm-*-kaos*, + thumb-*-coff, thumb-*-elf, thumb-epoc-pe, thumb-*-pe, + xscale-*-coff, xscale-*-elf): Remove targets. + +2011-03-31 H.J. Lu + + * configure.tgt: Add elf_l1om to targ_extra_libpath for + x86_64-*-linux-*. + + * emulparams/elf_l1om.sh: Remove duplicates. + +2011-03-31 Bernd Schmidt + + * emulparams/elf32_tic6x_le.sh (BIG_OUTPUT_FORMAT, EXTRA_EM_FILE, + GENERATE_SHLIB_SCRIPT): New defines. + (TEXT_START_ADDR): Define differently depending on target. + (.got): Redefine to include "*(.dsbt)". + (SDATA_START_SYMBOLS): Remove, replace with + (OTHER_GOT_SYMBOLS): New. + (OTHER_BSS_SECTIONS): Define only for ELF targets. + * emultempl/tic6xdsbt.em: New file. + * gen-doc.texi: Set C6X. + * ld.texinfo: Likewise. + (Options specific to C6X uClinux targets): New section. + +2011-03-29 Alan Modra + + PR ld/12613 + * ldlex.l (lex_warn_invalid): Don't assume char is unsigned. + +2011-03-26 John Marino + + * configure.host: Update *-*-dragonfly* host entry. + * configure.tgt: Update *-*-dragonfly* target entry. + * ldlex.l: Prevent redefinition of YY_NO_UNPUT. + +2011-03-28 Joseph Myers + + * configure.in: Check for windows.h, not Windows.h. + * configure: Regenerate. + * plugin.c: Include windows.h, not Windows.h. + +2011-03-25 Eric B. Weddington + + * Makefile.in: Regenerate. + +2011-03-23 Joseph Myers + + * lexsup.c (parse_args): Only set report_plugin_symbols if plugins + are enabled. Mark level as possibly unused. + +2011-03-22 Eric B. Weddington + + * Makefile.am (ALL_EMULATION_SOURCES): Add AVR XMEGA architectures. + (eavrxmega?.c): Likewise. + * configure.tgt (targ_extra_emuls): Likewise. + * emulparams/avrxmega1.sh: New file. + * emulparams/avrxmega2.sh: Likewise. + * emulparams/avrxmega3.sh: Likewise. + * emulparams/avrxmega4.sh: Likewise. + * emulparams/avrxmega5.sh: Likewise. + * emulparams/avrxmega6.sh: Likewise. + * emulparams/avrxmega7.sh: Likewise. + * emultempl/avrelf.em (avr_elf_${EMULATION_NAME}_before_allocation): + Add avrxmega6, avrxmega7 to list of architectures for no stubs. + +2011-03-21 Eric B. Weddington + + * scripttempl/avr.sc: Add fuse, lock, and signature memory regions. + +2011-03-14 Richard Sandiford + + * emultempl/armelf.em (gld${EMULATION_NAME}_finish): Check + eh->target_internal. + +2011-03-14 Richard Sandiford + + * emultempl/armelf.em (arm_elf_before_allocation): Check dynobj + instead of dynamic_sections_created. + +2011-03-10 Dave Korn + + * plugin.c (get_symbols): Use wrapped lookup for undefined symbols. + +2011-03-10 Dave Korn + + * ldlang.c (lang_check): Don't run checks on dummy IR BFDs. + +2011-03-10 Dave Korn + + * ldlang.h (lang_input_statement_type): Add new 'claim_archive' flag, + wrapping both it and 'claim' flag in #ifdef ENABLE_PLUGINS. + * ldmain.c (add_archive_element): Set it if the member is claimed. + * ldlang.c (new_afile): Initialise claim_archive and claimed members. + (find_replacements_insert_point): New helper function. + (lang_process): After adding and opening replacement files passed + from plugin, splice them into correct place in statement list and + file chains to preserve critical link order. + (lang_list_insert_after): New helper function. + (lang_list_remove_tail): Likewise. + +2011-03-10 Dave Korn + + * plugin.c (IRONLY_SUFFIX): Revise to nicely human-readable form. + (IRONLY_SUFFIX_LEN): Delete. + (plugin_get_ir_dummy_bfd): Don't append IRONLY_SUFFIX. + (is_ir_dummy_bfd): Don't look for suffix; check claimed flag of + enclosing lang input statement instead. + +2011-03-10 Dave Korn + + * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Preserve + alignment of input sections when creating orphan output sections + during relocatable link. + * emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise. + +2011-03-04 H.J. Lu + + * ld.texinfo: Document --verbose[=NUMBER]. + + * lexsup.c (ld_options): Update --verbose. + (parse_args): Set report_plugin_symbols. + + * plugin.c (report_plugin_symbols): New. + (get_symbols): Report plugin symbols if report_plugin_symbols + is TRUE. + + * plugin.h (report_plugin_symbols): New. + +2011-03-01 H.J. Lu + + PR ld/12529 + * testplug.c: Don't include "filenames.h". + (onclaim_file): Don't use filename_cmp. + +2011-02-28 Kai Tietz + + * emultempl/beos.em (sort_by_file_name): Use filename_(n)cmp. + * emultempl/elf32.em (gld${EMULATION_NAME}_vercheck): + Likewise. + (gld${EMULATION_NAME}_stat_needed): Likewise. + (gld${EMULATION_NAME}_check_needed): Likewise. + * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise. + (gld_${EMULATION_NAME}_unrecognized_file): Likewise. + * emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise. + (gld_${EMULATION_NAME}_unrecognized_file): Likewise. + * ldfile.c (ldfile_open_file): Likewise. + * ldlang.c (wild_sort): Likewise. + (lookup_name): Likewise. + (check_excluded_libs): Likewise. + * ldmisc.c (vfinfo): Likewise. + * pe-dll.c (libnamencmp): Likewise. + (auto_export): Likewise. + (pe_dll_generate_implib): Likewise. + * testplug.c (onclaim_file): Likewise. + +2011-02-24 H.J. Lu + + PR ld/12507 + * plugin.c (get_symbols): Don't check entry symbol here. + (init_non_ironly_hash): Add entry_symbol chain into + non_ironly_hash. + +2011-02-24 H.J. Lu + + PR ld/12507 + * plugin.c (get_symbols): Don't mark entry symbol IR only. + +2011-02-18 John David Anglin + + PR ld/12376 + emulparams/hppalinux.sh (DATA_ADDR): Define. + (SHLIB_DATA_ADDR): Likewise. + +2011-02-16 H.J. Lu + + * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX): Changed to + x32 for x32. + +2011-02-15 Kai Tietz + + * pe-dll.c (process_def_file_and_drectve): Don't strip + leading underscore from symbol by calling bfd_find_version_for_sym. + +2011-02-14 Mike Frysinger + + * ldlang.c (lang_vers_match): Declare a new c_sym, assign it to + the bfd_demangle of sym, change users of sym to c_sym when not + already demangling, and free when done. Change callers of + cplus_demangle to bfd_demangle. + +2011-02-14 Alan Modra + + * plugin.c (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy + .text section, use newer bfd_make_section variant. Error handling. + Correct setting of gp size. + (asymbol_from_plugin_symbol): Properly cast last arg of concat. + (message): Likewise for ACONCAT. + (get_symbols): Formatting. + +2011-02-14 Alan Modra + + * ldmain.c (remove_output): Rename to.. + (ld_cleanup): ..this. Call bfd_cache_close_all and plugin_call_cleanup. + (main): Adjust. + * plugin.c (plugin_call_cleanup): Make global. + (plugin_load_plugins): Don't register plugin_call_cleanup with xatexit. + * plugin.h (plugin_call_cleanup): Declare. + +2011-02-13 Ralf Wildenhues + + * configure: Regenerate. + +2011-02-10 Alan Modra + + * scripttempl/armbpabi.sc: Revert 2010-11-02 H.J. Lu. + * scripttempl/avr.sc: Likewise. + * scripttempl/elf32cr16.sc: Likewise. + * scripttempl/elf32crx.sc: Likewise. + * scripttempl/elf32msp430.sc: Likewise. + * scripttempl/elf32msp430_3.sc: Likewise. + * scripttempl/elf32sh-symbian.sc: Likewise. + * scripttempl/elf64hppa.sc: Likewise. + * scripttempl/elf_chaos.sc: Likewise. + * scripttempl/elfd10v.sc: Likewise. + * scripttempl/elfd30v.sc: Likewise. + * scripttempl/elfi370.sc: Likewise. + * scripttempl/elfm68hc11.sc: Likewise. + * scripttempl/elfm68hc12.sc: Likewise. + * scripttempl/elfxtensa.sc: Likewise. + * scripttempl/ip2k.sc: Likewise. + * scripttempl/iq2000.sc: Likewise. + * scripttempl/mep.sc: Likewise. + * scripttempl/mmo.sc: Likewise. + * scripttempl/v850.sc: Likewise. + * scripttempl/xstormy16.sc: Likewise. + * scripttempl/elf.sc: Revert 2010-10-29 H.J. Lu. + +2011-01-22 H.J. Lu + + * Makefile.am (CXX): Removed. + + * configure.in: Add AC_PROG_CXX. + + * Makefile.in: Regenerated. + * configure: Likewise. + +2011-01-22 Richard Sandiford + + * plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's + private data and GP size. + +2011-01-21 Alan Modra + + * ldexp.c (fold_binary): Set result section for arithmetic and + logical operations to NULL when both operands are in same section. + * ld.texinfo (Expression Section): Describe this. + +2011-01-14 Alan Modra + + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't + attempt to put non-alloc orphans before debug sections, just place + them after .comment. + +2011-01-14 J. Park + + PR ld/12339 + * ldlang.c (sort_def_symbol): Handle bfd_link_hash_warning symbols. + +2011-01-14 Alan Modra + + * Makefile.am: Sort emulation rules. + (eelf32am33lin.c): Delete. + (ALL_EMULATION_SOURCES): Sort, add missing entries. + (ALL_64_EMULATION_SOURCES): Likewise. + * Makefile.in: Regenerate. + 2011-01-13 Alan Modra PR ld/12356