Add PowerPC64 ld --tls-get-addr-optimize.
[binutils-gdb.git] / ld / ChangeLog
index aec6288a80a871b8065fa600207fd270d230129b..f495ed2a3226720af008e9213327c0c5ef1d0a80 100644 (file)
@@ -1,3 +1,206 @@
+2015-09-18  Alan Modra  <amodra@gmail.com>
+
+       * emultempl/ppc64elf.em (params): Init tls_get_addr_opt field to -1.
+       (OPTION_TLS_GET_ADDR_OPT): Define.
+       (PARSE_AND_LIST_LONGOPTS): Handle --tls-get-addr-opt.
+       (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise.
+       * ld.texinfo: Document --tls-get-addr-optimize and
+       --no-tls-get-addr-optimize.
+
+2015-09-18  Alan Modra  <amodra@gmail.com>
+
+       PR ld/18963
+       * ldexp.h (struct ldexp_control): Add rel_from_abs.
+       (ldexp_finalize_syms): Declare.
+       * ldexp.c (new_rel_from_abs): Keep absolute for expressions
+       outside of output section statements.  Set rel_from_abs.
+       (make_abs, exp_fold_tree, exp_fold_tree_no_dot): Clear rel_from_abs.
+       (struct definedness_hash_entry): Add final_sec, and comment.
+       (update_definedness): Set final_sec.
+       (set_sym_sections, ldexp_finalize_syms): New functions.
+       * ldlang.c (lang_process): Call ldexp_finalize_syms.
+
+2015-09-10  Nick Clifton  <nickc@redhat.com>
+
+       * po/zh_CN.po: Updated simplified Chinese translation.
+
+2015-09-09  James Bowman  <james.bowman@ftdichip.com>
+
+       * scripttempl/ft32.sc: default linker script RAM and
+        FLASH size symbols
+
+2015-09-09  Nick Clifton  <nickc@redhat.com>
+
+       * po/zh_CN.po: Updated simplified Chinese translation.
+
+2015-09-08  Nick Clifton  <nickc@redhat.com>
+
+       * ld.texinfo (Source Code Reference): Extend description to
+       include an example using arrays.
+
+2015-07-28  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * ld.h (enum orphan_handling_enum): New.
+       (ld_config_type): Remove warn_orphan, add orphan_handling.
+       * ldemul.c (ldemul_place_orphan): Remove warning about orphan
+       sections.
+       * ldlang.c (ldlang_place_orphan): New function.
+       (lang_place_orphans): Call ldlang_place_orphan.
+       * ldlex.h (enum option_values): Remove OPTION_WARN_ORPHAN and
+       OPTION_NO_WARN_ORPHAN, add OPTION_ORPHAN_HANDLING.
+       * lexsup.c (ld_options): Remove 'warn-orphan' and
+       'no-warn-orphan', add 'orphan-handling'.
+       (parse_args): Remove handling for OPTION_WARN_ORPHAN and
+       OPTION_NO_WARN_ORPHAN, add handling for OPTION_ORPHAN_HANDLING.
+       * NEWS: Replace text about --warn-orphan with --orphan-handling.
+       * ld.texinfo (Options): Remove --warn-orphan entry and add
+       entry on --orphan-handling.
+       (Orphan Sections): Add reference to relevant command line options.
+
+2015-09-03  Nick Clifton  <nickc@redhat.com>
+
+       * ld.texinfo (--build-id): Fix typo.  The COFF/PE build-id section
+       is called .buildid not .build-id.
+
+2015-09-03  Nick Clifton  <nickc@redhat.com>
+
+       (Source Code Reference): Fix off-by-one typo in example of how to
+       use linker script symbols in C source code.
+
+2015-08-19  Alan Modra  <amodra@gmail.com>
+
+       * emultempl/aix.em: Don't set link_info.pic.
+       * emultempl/pe.em: Likewise.
+       * emultempl/pep.em: Likewise.
+       * emultempl/sunos.em: Likewise.
+       * lexsup.c (parse_args): Likewise.  Set type_pie for -pie.
+       * plugin.c (set_tv_header <LDPT_LINKER_OUTPUT>): Simplify.
+
+2015-08-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ld/ldctor.c: Replace shared, executable, relocatable and pie
+       fields with bfd_link_executable, bfd_link_dll,
+       bfd_link_relocatable, bfd_link_pic and bfd_link_pie.
+       * ld/ldemul.c: Likewise.
+       * ld/ldfile.c: Likewise.
+       * ld/ldlang.c: Likewise.
+       * ld/ldmain.c: Likewise.
+       * ld/ldwrite.c: Likewise.
+       * ld/lexsup.c: Likewise.
+       * ld/pe-dll.c: Likewise.
+       * ld/plugin.c: Likewise.
+       * ld/emultempl/aarch64elf.em: Likewise.
+       * ld/emultempl/aix.em: Likewise.
+       * ld/emultempl/alphaelf.em: Likewise.
+       * ld/emultempl/armcoff.em: Likewise.
+       * ld/emultempl/armelf.em: Likewise.
+       * ld/emultempl/avrelf.em: Likewise.
+       * ld/emultempl/beos.em: Likewise.
+       * ld/emultempl/cr16elf.em: Likewise.
+       * ld/emultempl/elf-generic.em: Likewise.
+       * ld/emultempl/elf32.em: Likewise.
+       * ld/emultempl/genelf.em: Likewise.
+       * ld/emultempl/generic.em: Likewise.
+       * ld/emultempl/gld960.em: Likewise.
+       * ld/emultempl/gld960c.em: Likewise.
+       * ld/emultempl/hppaelf.em: Likewise.
+       * ld/emultempl/irix.em: Likewise.
+       * ld/emultempl/linux.em: Likewise.
+       * ld/emultempl/lnk960.em: Likewise.
+       * ld/emultempl/m68hc1xelf.em: Likewise.
+       * ld/emultempl/m68kcoff.em: Likewise.
+       * ld/emultempl/m68kelf.em: Likewise.
+       * ld/emultempl/metagelf.em: Likewise.
+       * ld/emultempl/mipself.em: Likewise.
+       * ld/emultempl/mmo.em: Likewise.
+       * ld/emultempl/msp430.em: Likewise.
+       * ld/emultempl/nds32elf.em: Likewise.
+       * ld/emultempl/needrelax.em: Likewise.
+       * ld/emultempl/nios2elf.em: Likewise.
+       * ld/emultempl/pe.em: Likewise.
+       * ld/emultempl/pep.em: Likewise.
+       * ld/emultempl/ppc32elf.em: Likewise.
+       * ld/emultempl/ppc64elf.em: Likewise.
+       * ld/emultempl/sh64elf.em: Likewise.
+       * ld/emultempl/solaris2.em: Likewise.
+       * ld/emultempl/spuelf.em: Likewise.
+       * ld/emultempl/sunos.em: Likewise.
+       * ld/emultempl/tic6xdsbt.em: Likewise.
+       * ld/emultempl/ticoff.em: Likewise.
+       * ld/emultempl/v850elf.em: Likewise.
+       * ld/emultempl/vms.em: Likewise.
+       * ld/emultempl/vxworks.em: Likewise.
+
+2015-08-18  Alan Modra  <amodra@gmail.com>
+
+       * ldexp.c (exp_fold_tree_1): Clear linker_def on symbol assignment.
+
+2015-08-06  Alan Modra  <amodra@gmail.com>
+
+       * ldexp.c (align_dot_val): Delete.
+       (fold_unary <ALIGN_K, NEXT>): Revert 2015-07-10 change.
+       (is_align_conditional): Revert 2015-07-20 change.
+       (exp_fold_tree_1): Likewise, but keep expanded comment.
+       * scripttempl/elf.sc (.ldata, .bss): Revert 2015-07-20 change.
+       * ld.texinfo (<ALIGN>): Correct description.
+
+2015-08-04  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * ld.texinfo (Options): Document --require-defined option.
+       * ldlang.c (struct require_defined_symbol): New structure.
+       (require_defined_symbol_list): New variable.
+       (ldlang_add_require_defined): New function.
+       (ldlang_check_require_defined_symbols): New function.
+       (lang_process): Check required symbols are defined.
+       * ldlang.h (ldlang_add_require_defined): Declare.
+       * ldlex.h (enum option_values): Add OPTION_REQUIRE_DEFINED_SYMBOL.
+       * lexsup.c (ld_options): Add '--require-defined' entry.
+       (parse_args): Handle '--requre-defined' entry.
+       * NEWS: Mention new '--require-defined' option.
+
+2015-08-03  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * ld.texinfo (MEMORY): Explain that multiple MEMORY commands are
+       acceptable.
+
+2015-07-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * lexsup.c (parse_args): Don't set link_info.executable to
+       TRUE for link_info.relocatable.
+
+2015-07-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * configure: Regenerated.
+
+2015-07-24  Nick Clifton  <nickc@redhat.com>
+
+       * emulparams/elf32rl78.sh (OTHER_SECTIONS): Provide a value for
+       the _-rl78_abs__ symbol.
+
+2015-07-20  Alan Modra  <amodra@gmail.com>
+
+       * emulparams/criself.sh (INIT_ADDR, FINI_ADDR): Define.
+       (INIT_START, FINI_START): Don't ALIGN.
+       * scriptempl/elf.sc (.init, .fini): Apply INIT_ADDR/FINI_ADDR.
+
+2015-07-20  Alan Modra  <amodra@gmail.com>
+
+       * scripttempl/elf.sc (.ldata, .bss): Align absolute value of dot.
+       * ldexp.c (is_align_conditional): Handle binary ALIGN.
+       (exp_fold_tree_1): Move code setting SEC_KEEP for assignments to
+       dot inside output sections.  Handle absolute expressions.
+
+2015-07-14  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Make
+       --compress-debug-sections=zlib the same as
+       --compress-debug-sections=zlib-gabi.
+       * ld.texinfo: Change --compress-debug-sections=zlib to zlib-gabi.
+
+2015-07-14  Nick Clifton  <nickc@redhat.com>
+
+       * ld.texinfo (Options): Add missing period after @xref.
+
 2015-07-10  Alan Modra  <amodra@gmail.com>
 
        * ldexp.c (align_dot_val): New function.