PR ld/17973 LTO file syms
[deliverable/binutils-gdb.git] / ld / ChangeLog
index 4641ff06c8152d6752f5e746d7b74f62da46c113..4803ec3ba7e64d180efa9b52dc02c20709d246a6 100644 (file)
@@ -1,3 +1,217 @@
+2015-02-14  Alan Modra  <amodra@gmail.com>
+
+       PR ld/17973
+       * ldlang.h (struct lang_input_statement_flags): Add lto_output.
+       * ldlang.c (lang_process): Don't set loading_lto_outputs.
+       * ldfile.c (ldfile_try_open_bfd): Transfer entry flags.lto_output
+       to bfd.
+       * plugin.c (add_input_file, add_input_library): Set flags.lto_output.
+
+2015-02-13  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * NEWS: Mention support for LLVM plugin.
+
+2015-02-13  Alan Modra  <amodra@gmail.com>
+
+       * ld.texinfo (Options <--defsym>): Correct cross reference.
+
+2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * lexsup.c (ld_options): Add --[no-]map-whole-files for gold
+       option compatibility.
+
+2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * plugin.c (message): Output "warning:" for LDPL_WARNING. Output
+       "error:" for LDPL_FATAL and LDPL_ERROR.
+       * testplug2.c (parse_option): Handle fatal, error and warning.
+
+2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * testplug2.c (dump_tv_tag): Removed.
+       (onall_symbols_read): Return LDPS_ERR if the file descriptor isn't
+       closed.
+       * testplug3.c (dump_tv_tag): Removed.
+       (onclaim_file): Fix typo.
+
+2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/17878
+       * Makefile.am (noinst_LTLIBRARIES): Add libldtestplug2.la and
+       libldtestplug3.la.
+       (libldtestplug2_la_SOURCES): New.
+       (libldtestplug2_la_CFLAGS): Likewise.
+       (libldtestplug2_la_LDFLAGS): Likewise.
+       (libldtestplug3_la_SOURCES): New.
+       (libldtestplug3_la_CFLAGS): Likewise.
+       (libldtestplug3_la_LDFLAGS): Likewise.
+       * Makefile.in: Regenerated.
+       * testplug2.c: New file.
+       * testplug3.c: Likewise.
+
+2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/17878
+       * plugin.c: Include ../bfd/plugin.h.
+       (plugin_get_ir_dummy_bfd): Call bfd_create with
+       link_info.output_bfd instead of srctemplate.  Copy BFD info
+       from srctemplate only if it doesn't use BFD plugin target
+       vector.
+       (plugin_load_plugins): Call register_ld_plugin_object_p with
+       (plugin_object_p)
+       (plugin_maybe_claim): Renamed to ...
+       (plugin_object_p): This.  Return dummy BFD target vector if
+       input is calimed by plugin library, otherwise return NULL.
+       Update plugin_format and plugin_dummy_bfd.
+       (plugin_maybe_claim): New.  Use plugin_object_p.
+
+2015-02-10  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * plugin.c (plugin_maybe_claim): Initialize use_mmap.
+
+2015-02-10  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * plugin.c (plugin_input_file_t): Add use_mmap.
+       (plugin_pagesize): New.
+       (get_view): Use plugin_pagesize.  Set use_mmap if mmap is used.
+       (plugin_load_plugins): Initialize plugin_pagesize.
+       (plugin_maybe_claim): Unmap the buffer if plugin didn't claim the
+       file.
+
+2015-02-10  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * plugin.c (get_view): Align offset passed to mmap.
+
+2015-02-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ldfile.c (ldfile_try_open_bfd): Don't call bfd_check_format
+       if plugin isn't active or there is no thing more to claim.
+
+2015-02-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * plugin.c (plugin_maybe_claim): Check format against bfd_object
+       directly.
+
+2015-02-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * plugin.c (plugin_maybe_claim): Replace entry->the_bfd with
+       ibfd.
+
+2015-02-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * plugin.c: Include "libbfd.h".
+       (plugin_strdup): New.
+       (plugin_maybe_claim): Remove the argument of pointer to struct
+       ld_plugin_input_file.  Open and handle input entry.
+       * plugin.h (plugin_maybe_claim): Updated.
+       * ldfile.c (ldfile_try_open_bfd): Call plugin_maybe_claim directly
+       without passing a pointer to struct ld_plugin_input_file.
+       * ldmain.c: Don't include "libbfd.h".
+       (add_archive_element): Call plugin_maybe_claim directly without
+       passing a pointer to struct ld_plugin_input_file.
+
+2015-02-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ld.texinfo: Document -z text, -z notext and -z textoff.
+       * emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Add
+       -z text, -z notext and -z textoff.
+
+2015-02-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * configure.ac: Add AC_FUNC_MMAP.
+       * config.in: Regenerated.
+       * configure: Likewise.
+       * plugin.c: Include <sys/mman.h>.
+       (MAP_FAILED): New.  Defined if not defined.
+       (PROT_READ): Likewise.
+       (MAP_PRIVATE): Likewise.
+       (view_buffer_t): New.
+       (plugin_input_file_t): Add view_buffer.
+       (get_view): Try mmap and cache the view buffer.
+       (plugin_maybe_claim): Initialize view_buffer.
+
+2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * plugin.c (release_input_file): Set fd to -1 after closing it.
+       (plugin_maybe_claim): Close fd only if fd != -1.
+
+2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/17878
+       * plugin.c: Include <errno.h>.
+       (errno): New.  Declare if needed.
+       (plugin_input_file_t): New.
+       (get_input_file): Implemented.
+       (get_view): Likewise.
+       (release_input_file): Likewise.
+       (add_symbols): Updated.
+       (get_symbols): Likewise.
+       (plugin_maybe_claim): Allocate a plugin_input_file_t.  Close fd
+       only for a bfd_object input.
+
+2015-02-02  Alan Modra  <amodra@gmail.com>
+
+       * emultempl/ppc64elf.em (toc_section_name): New var.
+       (ppc_after_open): Set it.
+       (ppc_before_allocation): Use it.
+       (gld${EMULATION_NAME}_after_allocation): Here too.
+
+2015-01-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ldfile.c (ldfile_try_open_bfd): Replace plugin_active_plugins_p()
+       with link_info.lto_plugin_active.
+       * ldlang.c (lang_process): Likewise.
+       * ldmain.c (add_archive_element): Likewise.
+       * plugin.c (plugin_active_plugins_p): Removed.
+       * plugin.h (plugin_active_plugins_p): Likewise.
+
+2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * plugin.h (plugin_get_ir_dummy_bfd): Removed.  Move comments to
+       ...
+       * plugin.c (plugin_get_ir_dummy_bfd): Here.  Make it static.
+
+2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/17878
+       * plugin.c (tv_header_tags(): Add LDPT_GET_VIEW.
+       (get_view): New function.
+       (set_tv_header): Handle LDPT_GET_VIEW.
+       * testplug.c (tag_names): Add LDPT_GET_VIEW.
+       (tv_get_view): New.
+       (dump_tv_tag): Handle LDPT_GET_VIEW.
+       (parse_tv_tag): Likewise.
+
+2015-01-28  Alan Modra  <amodra@gmail.com>
+
+       * emulparams/elf64ppc.sh (INITIAL_READWRITE_SECTIONS): Define.
+       * emultempl/ppc64elf.em (params): Init new field.
+       (ppc_after_open): New function.
+       (LDEMUL_AFTER_OPEN): Define.
+       * ldlang.c (lang_final): Whitespace fix.
+
+2015-01-28  James Bowman  <james.bowman@ftdichip.com>
+
+       * Makefile.am: Add FT32 files.
+       * configure.tgt: Handle FT32 target.
+       * emulparams/elf32ft32.sh: New file.
+       * scripttempl/ft32.sc: New file.
+       * Makefile.in: Regenerate.
+
+2015-01-28  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
+
+       PR 4643
+       * ldexp.c (fold_name): Fold LENGTH only after
+       lang_first_phase_enum.
+       * ldgram.y (memory_spec): Don't evaluate ORIGIN and LENGTH
+       rightaway.
+       * ldlang.h (struct memory_region_struct): Add origin_exp and
+       length_exp fields.
+       * ldlang.c (lang_do_memory_regions): New.
+       (lang_memory_region_lookup): Initialize origin_exp and
+       length_exp fields.
+       (lang_process): Call lang_do_memory_regions.
+
 2015-01-20  Andrew Burgess  <andrew.burgess@embecosm.com>
 
        * ldlang.c (print_assignment): Only evaluate the expression for a
        Display a special message for PROVIDE'd symbols that are not being
        provided.
 
+2015-01-20  Alan Modra  <amodra@gmail.com>
+
+       * emulparams/elf64ppc.sh (OTHER_SDATA_SECTIONS): Use in place of..
+       (OTHER_BSS_SYMBOLS): ..this.
+       (OTHER_PLT_RELOC_SECTIONS): Don't define.
+       (OTHER_GOT_RELOC_SECTIONS): Add rela.toc1 and rela.tocbss.
+       (OTHER_READWRITE_SECTIONS): Don't define.  Move .toc1 to..
+       (OTHER_RELRO_SECTIONS_2): ..here.
+       * scripttempl/elf.sc: Move SBSS too when DATA_SDATA.
+
 2015-01-20  Alan Modra  <amodra@gmail.com>
 
        * emulparams/elf64ppc.sh (BSS_PLT): Don't define.
This page took 0.024603 seconds and 4 git commands to generate.