Allow self-assignment for absolute symbols defined in a linker script
[deliverable/binutils-gdb.git] / ld / ChangeLog
index b9d65e2d3fc90ebb00e597fa1ea44c0688f48e78..bc46e5f5da8edb48fc9c3e799c98f3a8fc2ad357 100644 (file)
-2013-02-26  Nick Clifton  <nickc@redhat.com>
-
-       PR ld/15188
-       * ld.texinfo: Fix typos.
-
-2013-02-21  Alan Modra  <amodra@gmail.com>
-
-       * scripttempl/elf.sc (.init_array, .fini_array): Don't sort all
-       .init_array/.fini_array input sections before .ctors/.dtors input
-       sections.
-       (CTORS_IN_INIT_ARRAY, DTORS_IN_INIT_ARRAY): Adjust to suit.
-
-2013-02-21  Alan Modra  <amodra@gmail.com>
-
-       * emultempl/elf32.em (write_build_id, setup_build_id): Adjust
-       for elf_tdata changes.
-
-2013-02-21  Alan Modra  <amodra@gmail.com>
-
-       * emultempl/elf-generic.em: Use newly defined elf_obj_tdata
-       accessor macros.
-
-2013-02-20  Alan Modra  <amodra@gmail.com>
-
-       * Makefile.am: Use $(ELF_DEPS) on a number of eelf*.c rules.
-       * Makefile.in: Regenerate.
-
-2013-02-19  Sandra Loosemore  <sandra@codesourcery.com>
-
-       PR ld/15146
-       * plugin.c (plugin_notice): Add null check before dereferencing
-       pointer.
-
-2013-02-19  Alan Modra  <amodra@gmail.com>
-
-       * emultempl/elf32.em (emit_note_gnu_build_id): New static var.
-       Replace all info->emit_note_gnu_build_id refs.
-       (id_note_section_size): Rename from
-       gld${EMULATION_NAME}_id_note_section_size.
-       (struct build_id_info): Delete.
-       (write_build_id): Rename from
-       gld${EMULATION_NAME}_write_build_id_section.
-       Update elf_tdata usage.  Style, formatting.
-       (setup_build_id): New function.
-       (gld${EMULATION_NAME}_after_open): Use setup_build_id.
-
-2013-02-16  H.J. Lu  <hongjiu.lu@intel.com>
-
-       PR ld/15146
-       * plugin.c (plugin_notice): Replace the undefined dummy bfd with
-       the real one.
-
-2013-02-16  H.J. Lu  <hongjiu.lu@intel.com>
-
-       PR ld/15141
-       * plugin.c (plugin_notice): Also trace symbol from the IR bfd.
-
-2013-02-15  Kai Tietz  <ktietz@redhat.com>
-
-       * scripttempl/pep.sc (.xdata): Merge .xdata* into .xdata section.
-       (.pdata): Merge .pdata* into .pdata section.
-
-2013-02-11  Alan Modra  <amodra@gmail.com>
-
-       * ldlang.c (get_init_priority): Comment typo.
-       (lang_finish): Free link_info.hash and lang_definedness_table.
-       (lang_end): Delete lang_definedness_table comment.
-
-2013-02-11  Alan Modra  <amodra@gmail.com>
-
-       PR ld/15130
-       * ld.texinfo (-rpath-link): Typo fix.
-
-2013-02-08  Markos Chandras  <markos.chandras@imgtec.com>
-
-       * emultempl/metagelf.em (build_section_lists): Use sec_info_type
-       rather than userdata->flags.just_syms.
-
-2013-02-06  Sandra Loosemore  <sandra@codesourcery.com>
-           Andrew Jenner <andrew@codesourcery.com>
-
-       Based on patches from Altera Corporation.
-
-       * Makefile.am (enios2elf.c): New rule.
-       * Makefile.in: Regenerated.
-       * configure.tgt: Add case for nios2*-*-*.
-       * emulparams/nios2elf.sh: New file.
-       * NEWS: Note Altera Nios II support.
-
-2013-02-06  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
-
-       * emultempl/avrelf.em (avr_elf_before_parse): New function.
-       (LDEMUL_BEFORE_PARSE): Define.
-
-2013-02-06  Alan Modra  <amodra@gmail.com>
-
-       PR ld/15096
-       * emultempl/elf32.em: Revert 2013-02-04, 2013-01-22 and 2013-01-21.
-       * emultempl/alphaelf.em: Revert 2013-02-04.
-       * emultempl/cr16elf.em: Likewise.
-       * emultempl/crxelf.em: Likewise.
-       * emultempl/hppaelf.em: Likewise.
-       * emultempl/ia64elf.em: Likewise.
-       * emultempl/mipself.em: Likewise.
-       * NEWS: Revert 2013-01-21.
-
-2013-02-04  H.J. Lu  <hongjiu.lu@intel.com>
-
-       PR ld/15096
-       * emultempl/alphaelf.em (alpha_after_parse): Call
-       gld${EMULATION_NAME}_after_parse instead of after_parse_default.
-       * emultempl/cr16elf.em (cr16elf_after_parse): Likewise.
-       * emultempl/crxelf.em (crxelf_after_parse): Likewise.
-       * emultempl/hppaelf.em (hppaelf_after_parse): Likewise.
-       * emultempl/mipself.em (mips_after_parse): Likewise.
-
-       * emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse): Renamed
-       to ...
-       (gld_${EMULATION_NAME}_after_parse): This.  Call
-       gld${EMULATION_NAME}_after_parse instead of after_parse_default.
-       (LDEMUL_AFTER_PARSE): Set to gld_${EMULATION_NAME}_after_parse.
-
-       * emultempl/elf32.em (new_dtags_set): New variable.
-       (gld${EMULATION_NAME}_before_parse): Don't set link_info.new_dtags
-       here.
-       (gld${EMULATION_NAME}_after_parse): New function.
-       (ld_${EMULATION_NAME}_emulation): Replace after_parse_default'
-       with gld${EMULATION_NAME}_after_parse.
-       (gld${EMULATION_NAME}_handle_option): Set new_dtags_set to TRUE
-       when setting link_info.new_dtags.
-
-2013-01-25  Kai Tietz  <ktietz@redhat.com>
-
-       * deffilep.y (def_image_name): Adjust type of base-address
-       argument.
-       (%union): Add new type bfd_vma as vma.
-       (VMA):  New rule.
-       (opt_base): Use VMA instead of NUMBER rule to evaluate value.
-       (def_file_print): Use bfd's fprintf_vma to output base-address.
-
-2013-01-24  Nick Clifton  <nickc@redhat.com>
-
-       * NEWS: Mention support for V850E3V5 architecture.
-
-2013-01-23  Martin Koegler  <martin.koegler@chello.at>
-
-       PR ld/15041
-       * scripttempl/pep.sc (.pdata): Only accept .pdata sections.
-       (.xdata): Similarly.
-       (.debug_frame): Similarly.
-
-2013-01-23  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR ld/15037
-       * scripttempl/avr.sc (.eeprom): Keep it.
-
-2013-01-23  Leif Ekblad  <leif@rdos.net>
-
-       * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64rdos.c.
-       (eelf64rdos.c): New rule.
-       * emulparams/elf64rdos.sh: New file.
-       * configure.tgt (x86_64-*-rdos*): Use above.
-       * Makefile.in: Regenerate.
-
-2013-01-22  Roland McGrath  <mcgrathr@google.com>
-
-       * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set
-       new_dtags to TRUE for *-*-nacl* targets.
-
-2013-01-21  Mike Frysinger  <vapier@gentoo.org>
-
-       * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set
-       link_info.new_dtags to TRUE for linux/gnu targets.
-       * NEWS: Mention new dtags default.
-
-2013-01-19  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * Makefile.am (HOSTING_SCRT0): New.
-
-       * configure.host (HOSTING_SCRT0): New.  Used for PIE.
-
-       * configure.in (HOSTING_SCRT0): New AC_SUBST.
-
-       * Makefile.in: Regenerated.
-       * configure: Likewise.
-
-2013-01-18  Mike Frysinger  <vapier@gentoo.org>
-
-       * NEWS: Mention change in behavior with --enable-new-dtags.
-       * ld.texinfo (Options): Clarify --enable-new-dtags behavior.
-
-2013-01-14  Leif Ekblad <leif@rdos.net>
+2014-01-20  Alan Modra  <amodra@gmail.com>
+
+       * ldlang.h (struct lang_definedness_hash_entry): Add by_object and
+       by_script.  Make iteration a single bit field.
+       (lang_track_definedness, lang_symbol_definition_iteration): Delete.
+       (lang_symbol_defined): Declare.
+       * ldlang.c (lang_statement_iteration): Expand comment a little.
+       (lang_init <lang_definedness_table>): Make it bigger.
+       (lang_track_definedness, lang_symbol_definition): Delete.
+       (lang_definedness_newfunc): Update.
+       (lang_symbol_defined): New function.
+       (lang_update_definedness): Create entries here.  Do track whether
+       script definition of symbol is valid, even when also defined in
+       an object file.
+       * ldexp.c (fold_name <DEFINED>): Update.
+       (fold_name <NAME>): Allow self-assignment for absolute symbols
+       defined in a linker script.
+
+2014-01-20  Guy Martin <gmsoft@tuxicoman.be>
            Alan Modra  <amodra@gmail.com>
 
-       * ld.texinfo (-Tldata-segment): Describe.
-       * ldlex.h (OPTION_TLDATA_SEGMENT): New enum value.
-       * lexsup.c (ld_options): Add -Tldata-segment.
-       (parse_args): Handle OPTION_TLDATA_SEGMENT.
-       * scripttempl/elf.sc: Support LARGE_DATA_ADDR.
-
-2013-01-10  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * deffilep.y: Remove trailing white spaces.
-       * elf-hints-local.h: Likewise.
-       * ldexp.c: Likewise.
-       * ldlang.h: Likewise.
-       * ldmisc.c: Likewise.
-       * ldwrite.c: Likewise.
-       * pe-dll.c: Likewise.
-       * emulparams/criself.sh: Likewise.
-       * emulparams/crislinux.sh: Likewise.
-       * emulparams/elf32_tic6x_le.sh: Likewise.
-       * emulparams/elf32bmipn32-defs.sh: Likewise.
-       * emulparams/elf32mb_linux.sh: Likewise.
-       * emulparams/elf32mep.sh: Likewise.
-       * emulparams/elf32microblaze.sh: Likewise.
-       * emulparams/elf32ppc.sh: Likewise.
-       * emulparams/elf64_s390.sh: Likewise.
-       * emulparams/elf64alpha.sh: Likewise.
-       * emulparams/elf_s390.sh: Likewise.
-       * emulparams/elf_x86_64.sh: Likewise.
-       * emulparams/tic80coff.sh: Likewise.
+       * ldlang.h (lang_output_section_get): Define.
+       * ldlang.c (lang_output_section_get): Likewise.
+       (init_os): Set the output_section userdata to the output
+       section statement.
+       * emultempl/hppaelf.em: Use lang_output_section_get instead of
+       lang_output_section_find where applicable.
+       * emultempl/aarch64elf.em: Likewise.
        * emultempl/aix.em: Likewise.
-       * emultempl/avrelf.em: Likewise.
-       * emultempl/cr16elf.em: Likewise.
-       * emultempl/pe.em: Likewise.
-       * emultempl/pep.em: Likewise.
+       * emultempl/armelf.em: Likewise.
+       * emultempl/m68hc1xelf.em: Likewise.
+       * emultempl/metagelf.em: Likewise.
+       * emultempl/mipself.em: Likewise.
+       * emultempl/ppc64elf.em: Likewise.
        * emultempl/spuelf.em: Likewise.
-       * emultempl/tic6xdsbt.em: Likewise.
 
-2013-01-10  Will Newton <will.newton@imgtec.com>
+2014-01-17  Alan Modra  <amodra@gmail.com>
 
-       * Makefile.am: Add Meta.
-       * Makefile.in: Regenerate.
-       * configure.tgt: Add Meta.
-       * emulparams/elf32metag.sh: New file.
-       * emultempl/metagelf.em: New file.
+       * genscripts.sh (COMPILE_IN): Don't set if already set.
+       * emulparams/nds32elf.sh: Don't clear EMULATION_LIBPATH, set
+       COMPILE_IN=no.
+       * emulparams/nds32elf16m.sh: Likewise.
+       * emulparams/nds32elf_linux.sh: Likewise.
+       * emultempl/aix.em: Test COMPILE_IN value is "yes".
+       * emultempl/armcoff.em: Likewise.
+       * emultempl/elf32.em: Likewise.
+       * emultempl/generic.em: Likewise.
+       * emultempl/gld960.em: Likewise.
+       * emultempl/gld960c.em: Likewise.
+       * emultempl/linux.em: Likewise.
+       * emultempl/lnk960.em: Likewise.
+       * emultempl/m68kcoff.em: Likewise.
+       * emultempl/sunos.em: Likewise.
+       * emultempl/ticoff.em: Likewise.
 
-2013-01-09  Alan Modra  <amodra@gmail.com>
+2014-01-16  H.J. Lu  <hongjiu.lu@intel.com>
 
-       * emulparams/elf_x86_64.sh (LARGE_BSS_AFTER_BSS): Define.
-       * emulparams/elf32_x86_64.sh: Likewise.
-       * emulparams/elf_k1om.sh: Likewise.
-       * emulparams/elf_l1om.sh: Likewise.
-       * scripttempl/elf.sc (LARGE_BSS): Define rather than appending to
-       OTHER_BSS_SECTIONS.  Substitute in script.
+       PR ld/16456
+       * genscripts.sh: Don't search directory with LIBPATH_SUFFIX_SKIP
+       suffix.
+       * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX_SKIP): Set to 64
+       for elf32_x86_64 emulation.
+       * emulparams/elf_i386.sh (LIBPATH_SUFFIX_SKIP): Set to 64
+       for elf_i386 emulation.
 
-2013-01-08  Leif Ekblad  <leif@rdos.net>
+2014-01-16  Alan Modra  <amodra@gmail.com>
 
-       * scripttempl/elf.sc (RODATA_ADDR): Typo fix.
+       * ld.h (fat_section_userdata_type, get_userdata): Move to..
+       * ldlang.h (input_section_userdata_type, get_userdata): ..here.
+       * ldlang.c (init_map_userdata): Delete.  Fold into..
+       (sort_def_symbol): ..here.  Don't attach input section userdata
+       to output sections or global bfd sections.
+       (lang_map): Don't pre-allocate input section userdata.
+       (init_os): Don't allocate userdata for output sections.
+       (print_all_symbols): Update.
 
-2013-01-08  Alan Modra  <amodra@gmail.com>
+2014-01-15  H.J. Lu  <hongjiu.lu@intel.com>
 
-       * emultempl/elf32.em (gld${EMULATION_NAME}_check_ld_so_conf): Replace
-       "name" param with a bfd_link_needed_list pointer.  Update caller.
-       (gld${EMULATION_NAME}_check_ld_elf_hints): Likewise.
+       * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
+       Silence uninitialized warning on ehdr_start_save with older
+       GCC.
 
-2013-01-08  Alan Modra  <amodra@gmail.com>
+2014-01-15  Alan Modra  <amodra@gmail.com>
 
-       * Makefile.am (ALL_EMULATION_SOURCES): Correct eavrxmega entries.
-       * Makefile.in: Regenerate.
+       * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Define
+       __ehdr_start before size_dynamic_sections and restore afterwards.
 
-2013-01-07  H.J. Lu  <hongjiu.lu@intel.com>
+2014-01-10  Alan Modra  <amodra@gmail.com>
 
-       * lexsup.c (ld_options): Add fuse-ld= for GCC linker option
-       compatibility.
+       PR ld/14207
+       PR ld/16322
+       PR binutils/16323
+       * ldlang.c (lang_size_sections): Remove unneeded RELRO base
+       adjust.  Tidy comments.
+       * ld.texinfo (DATA_SEGMENT_RELRO_END): Correct description.
 
-2013-01-07  Patrice Dumas  <pertusus@free.fr>
+2014-01-10  Hans-Peter Nilsson  <hp@axis.com>
 
-       * ld.texinfo: Replace @ with @@ when it is part of the text.
-       Correct ordering of M68HC11 entry.
+       * emulparams/crislinux.sh (COMMONPAGESIZE): Define.
 
-2013-01-04  Juergen Urban <JuergenUrban@gmx.de>
+2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
 
-       * configure.tgt: Support ELF files for Sony Playstation 2 (for
-       ps2dev and ps2sdk).
-       * emulparams/elf32lr5900n32.sh: Create linker script for Sony
-       Playstation 2 ELF files using MIPS ABI n32.
-       * emulparams/elf32lr5900.sh: Create linker script for Sony
-       Playstation 2 ELF files using MIPS ABI o32.
-       * Makefile.am: Add linker scripts for Sony Playstation 2 ELF
-       files.
+       PR ld/14207
+       PR ld/16322
+       PR binutils/16323
+       * ldlang.c (lang_size_sections): Properly align RELRO base.
 
-2013-01-02  H.J. Lu  <hongjiu.lu@intel.com>
+2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
 
-       * ldver.c (ldversion): Update copyright year to 2013.
+       * ldver.c (ldversion): Update copyright year to 2014.
 
-For older changes see ChangeLog-2012
+For older changes see ChangeLog-2013
 \f
-Copyright (C) 2013 Free Software Foundation, Inc.
+Copyright (C) 2014 Free Software Foundation, Inc.
 
 Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright
This page took 0.027419 seconds and 4 git commands to generate.