1 2021-09-13 Andrew Pinski <apinski@marvell.com>
4 * Makefile.am: Export only onload.
5 * Makefile.in: Regenerate.
7 2021-06-25 Richard Biener <rguenther@suse.de>
9 * lto-plugin.c (ltrans_objects): New global.
10 (all_symbols_read_handler): If -ltrans-objects was specified,
11 add the output files from the specified file directly.
12 (process_option): Handle -ltrans-objects.
14 2021-05-10 Martin Liska <mliska@suse.cz>
16 * lto-plugin.c (LTO_SEGMENT_NAME): Remove.
17 (LTO_SYMTAB_PREFIX): Likewise.
18 (LTO_SYMTAB_PREFIX_LEN): Likewise.
19 (LTO_SYMTAB_EXT_PREFIX): Likewise.
20 (LTO_SYMTAB_EXT_PREFIX_LEN): Likewise.
21 (LTO_LTO_PREFIX): Likewise.
22 (LTO_LTO_PREFIX_LEN): Likewise.
23 (OFFLOAD_SECTION): Likewise.
24 (OFFLOAD_SECTION_LEN): Likewise.
25 (startswith): New function.
26 (all_symbols_read_handler): Use it.
27 (process_symtab): Likewise.
28 (process_symtab_extension): Likewise.
29 (process_offload_section): Likewise.
30 (process_option): Likewise.
32 2021-05-03 H.J. Lu <hjl.tools@gmail.com>
35 * configure: Regenerated.
37 2021-04-21 Martin Liska <mliska@suse.cz>
39 * lto-plugin.c (exec_lto_wrapper): Make a temp variable.
41 2021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
43 * configure: Re-generate.
45 2020-11-29 John David Anglin <danglin@gcc.gnu.org>
47 * configure: Regenerate.
49 2020-11-25 Matthew Malcomson <matthew.malcomson@arm.com>
51 * Makefile.am: Avoid using sanitizer.
52 * Makefile.in: Regenerate.
54 2020-09-10 Jonathan Yong <10walls@gmail.com>
56 * Makefile.am: drop versioning from libtool completely.
57 * Makefile.in: regenerate.
59 2020-09-09 Nick Clifton <nickc@redhat.com>
61 * lto-plugin.c (struct plugin_symtab): Add last_sym field.
62 (parse_symtab_extension): Only read as many entries as are
63 available in the buffer. Store the data read into the symbol
64 table indexed from last_sym. Increment last_sym.
66 2020-07-30 H.J. Lu <hjl.tools@gmail.com>
69 * configure: Regenerated.
71 2020-05-29 H.J. Lu <hjl.tools@gmail.com>
74 * configure: Regenerated.
76 2020-05-26 Alexandre Oliva <oliva@adacore.com>
78 * lto-plugin.c (skip_in_suffix): New.
79 (exec_lto_wrapper): Use skip_in_suffix and concat to build
80 non-temporary output names.
81 (onload): Look for -dumpdir in COLLECT_GCC_OPTIONS, and
82 override link_output_name with it.
84 2020-05-12 H.J. Lu <hongjiu.lu@intel.com>
87 * configure: Regenerated.
89 2020-05-05 Eric Botcazou <ebotcazou@adacore.com>
91 * lto-plugin.c: Document -linker-output-auto-notlo-rel option.
92 (linker_output_set): Change type to bool.
93 (linker_output_known): Likewise.
94 (linker_output_auto_nolto_rel): New variable.
95 (all_symbols_read_handler): Take it into account.
96 <LDPO_REL>: Do not issue the warning if it is set.
97 (process_option): Process -linker-output-auto-notlo-rel.
98 (cleanup_handler): Remove unused variable.
99 (onload) <LDPT_LINKER_OUTPUT>: Adjust to above type change.
101 2020-04-28 H.J. Lu <hongjiu.lu@intel.com>
104 * configure: Regenerated.
106 2020-04-25 H.J. Lu <hongjiu.lu@intel.com>
109 * Makefile.am (AM_CFLAGS): Add $(CET_HOST_FLAGS).
110 * configure.ac: Add GCC_CET_HOST_FLAGS(CET_HOST_FLAGS) and
111 AC_SUBST(CET_HOST_FLAGS).
112 * Makefile.in: Regenerated.
113 * aclocal.m4: Likewise.
114 * configure: Likewise.
116 2020-03-19 Martin Liska <mliska@suse.cz>
118 * lto-plugin.c (LTO_SECTION_PREFIX): Rename to ...
119 (LTO_SYMTAB_PREFIX): ... this.
120 (LTO_SECTION_PREFIX_LEN): Rename to ...
121 (LTO_SYMTAB_PREFIX_LEN): ... this.
122 (LTO_SYMTAB_EXT_PREFIX): New.
123 (LTO_SYMTAB_EXT_PREFIX_LEN): New.
124 (LTO_LTO_PREFIX): New.
125 (LTO_LTO_PREFIX_LEN): New.
126 (parse_table_entry): Fill up unused to zero.
127 (parse_table_entry_extension): New.
128 (parse_symtab_extension): New.
129 (finish_conflict_resolution): Change type
131 (process_symtab): Use new macro name.
132 (process_symtab_extension): New.
133 (claim_file_handler): Parse also process_symtab_extension.
134 (onload): Call new add_symbols_v2.
136 2020-01-01 Jakub Jelinek <jakub@redhat.com>
138 Update copyright years.
140 2019-09-27 Maciej W. Rozycki <macro@wdc.com>
142 * configure: Regenerate.
144 2019-05-15 Iain Sandoe <iain@sandoe.co.uk>
146 * lto-plugin.c (cleanup_handler): Remove unused var.
148 2019-05-15 Iain Sandoe <iain@sandoe.co.uk>
150 * lto-plugin.c (exec_lto_wrapper): Make the wrapper
151 arguments filename more user-friendly.
152 (file_exists, maybe_unlink): New.
153 (cleanup_handler): Use maybe unlink to handle the
154 case when temps should be saved.
155 (process_option): Look for -v, —-version, -save-temps.
156 (onload): Record the linker output file name.
157 Check for -v, —-version, -save-temps in the GCC collect
160 2019-02-26 Martin Liska <mliska@suse.cz>
162 * lto-symtab.c: Remove.
164 2019-01-01 Jakub Jelinek <jakub@redhat.com>
166 Update copyright years.
168 2018-10-31 Joseph Myers <joseph@codesourcery.com>
171 * configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE.
172 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
174 2018-05-30 Jan Hubicka <jh@suse.cz>
176 * lto-plugin.c: (non_claimed_files): New static var.
177 (linker_ouput_known): New static var.
178 (all_symbols_read_handler): When user specifies linker output do not
179 imply it; output warning when nonlto-rel mode is forced.
180 (claim_file_header): Record number of nonclaimed files.
181 (process_option): Remember if linker output is known
183 2018-04-18 David Malcolm <dmalcolm@redhat.com>
186 * configure: Regenerate.
188 2018-01-03 Jakub Jelinek <jakub@redhat.com>
190 Update copyright years.
192 2017-07-21 Georg-Johann Lay <avr@gjlay.de>
195 * lto-plugin.c (claim_file_handler): Use xasprintf instead of
197 [hi!=0]: Swap hi and lo arguments supplied to xasprintf.
199 2017-01-17 Jakub Jelinek <jakub@redhat.com>
202 * configure.ac: Add GCC_BASE_VER.
203 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
204 get version from BASE-VER file.
205 * configure: Regenerated.
206 * Makefile.in: Regenerated.
208 2017-01-04 Jakub Jelinek <jakub@redhat.com>
210 Update copyright years.
212 2016-11-15 Matthias Klose <doko@ubuntu.com>
214 * configure: Regenerate.
216 2016-02-25 Ilya Verbin <ilya.verbin@intel.com>
219 * lto-plugin.c (struct plugin_offload_file): New.
220 (offload_files): Change type.
221 (offload_files_last, offload_files_last_obj): New.
222 (offload_files_last_lto): New.
223 (free_2): Adjust accordingly.
224 (all_symbols_read_handler): Don't add offload files to lto_arg_ptr.
225 Don't call free_1 for offload_files. Write names of object files with
226 offloading to the temporary file. Add new option to lto_arg_ptr.
227 (claim_file_handler): Don't claim file if it contains offload sections
228 without LTO sections. If it contains offload sections, add to the list.
230 2016-01-15 Martin Liska <mliska@suse.cz>
232 * lto-plugin.c (all_symbols_read_handler): Assign default
233 value to a string variable.
235 2015-11-25 Jan Hubicka <jh@suse.cz>
238 * lto-plugin.c (linker_output, linker_output_set): New statics.
239 (all_symbols_read_handler): Add -flinker-output option.
240 (onload): Record linker_output info.
242 2015-07-02 Uros Bizjak <ubizjak@gmail.com>
244 * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
245 * configure: Regenerate.
246 * config.h.in: Ditto.
248 2015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
250 * Makefile.am: Drop 'by automake version' from top-level comment.
251 * Makefile.in: Regenerated with automake-1.11.6.
252 * aclocal.m4: Likewise.
253 * configure: Likewise.
255 2015-02-06 H.J. Lu <hongjiu.lu@intel.com>
257 * lto-plugin.c (release_input_file): Removed.
258 (claim_file_handler): Don't call release_input_file.
259 (onload): Don't set release_input_file.
261 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
263 * lto-plugin.c (claim_file_handler): Pass handle to
266 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
268 * lto-plugin.c (claim_file_handler): Call release_input_file only
271 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
273 * lto-plugin.c (claim_file_handler): Call release_input_file only
276 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
279 * lto-plugin.c (release_input_file): New.
280 (claim_file_handler): Call release_input_file.
281 (onload): Set release_input_file.
283 2014-12-09 Ilya Verbin <ilya.verbin@intel.com>
285 * lto-plugin.c (offload_files, num_offload_files): New static variables.
286 (free_1): Use arguments instead of global variables.
287 (free_2): Free offload_files.
288 (all_symbols_read_handler): Add names from offload_files to lto-wrapper
290 (claim_file_handler): Do not add file to claimed_files if it contains
291 offload sections without LTO sections. Add it to offload_files instead.
293 2014-11-21 H.J. Lu <hongjiu.lu@intel.com>
296 * configure: Regenerated.
298 2014-11-13 Ilya Verbin <ilya.verbin@intel.com>
299 Bernd Schmidt <bernds@codesourcery.com>
300 Andrey Turetskiy <andrey.turetskiy@intel.com>
301 Michael Zolotukhin <michael.v.zolotukhin@intel.com>
303 * lto-plugin.c (OFFLOAD_SECTION, OFFLOAD_SECTION_LEN): Define.
304 (struct plugin_objfile): Add new field "offload".
305 (process_offload_section): New static function.
306 (claim_file_handler): Claim file if it contains offload sections.
308 2014-11-13 Bernd Schmidt <bernds@codesourcery.com>
309 Thomas Schwinge <thomas@codesourcery.com>
310 Ilya Verbin <ilya.verbin@intel.com>
311 Andrey Turetskiy <andrey.turetskiy@intel.com>
313 * Makefile.am (libexecsubdir): Tweak for the possibility of being
314 configured for offload compiler.
315 (accel_dir_suffix, real_target_noncanonical): New variables substituted
317 * Makefile.in: Regenerate.
318 * configure: Regenerate.
319 * configure.ac (accel_dir_suffix, real_target_noncanonical): Compute new
322 2014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
325 * configure: Regenerate.
327 2014-08-26 H.J. Lu <hongjiu.lu@intel.com>
330 * Makefile.am (gcc_build_dir): Set to @gcc_build_dir@.
331 * configure.ac (gcc_build_dir): Set and AC_SUBST according to
333 * Makefile.in: Regenerated.
334 * configure: Likewise.
336 2014-06-13 Thomas Schwinge <thomas@codesourcery.com>
338 * configure.ac (--with-libiberty): New configure option.
339 * configure: Regenerate.
340 * Makefile.am (libiberty, libiberty_noasan, libiberty_pic): New
342 (liblto_plugin_la_LIBADD, liblto_plugin_la_LDFLAGS)
343 (liblto_plugin_la_DEPENDENCIES): Use them.
344 * Makefile.in: Regenerate.
346 2014-05-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
349 * configure.ac: Check for -static-libgcc.
350 * configure: Regenerate.
352 2014-04-17 Jakub Jelinek <jakub@redhat.com>
355 * Makefile.am (CFLAGS, LDFLAGS): Filter out -fsanitize=address.
356 (liblto_plugin_la_LIBADD, liblto_plugin_la_LDFLAGS,
357 liblto_plugin_la_DEPENDENCIES): Prefer ../libiberty/noasan/libiberty.a
358 over ../libiberty/pic/libiberty.a if the former exists.
359 * Makefile.in: Regenerated.
362 * Makefile.am (LTLDFLAGS, liblto_plugin_la_LINK): New variables.
363 * Makefile.in: Regenerated.
365 2014-04-02 Richard Biener <rguenther@suse.de>
367 * lto-plugin.c (onload): Fail to load if -fno-use-linker-plugin
368 is set in COLLECT_GCC_OPTIONS.
370 2014-03-28 Richard Biener <rguenther@suse.de>
372 * lto-plugin.c (process_symtab): Handle EINTR and short reads.
374 2014-03-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
376 * configure.ac (ac_lto_plugin_ldflags): Set to -Wc,-static-libgcc
378 * configure: Regenerate.
379 * Makefile.am (AM_LDFLAGS): New variable.
380 (liblto_plugin_la_LDFLAGS): Add it.
381 * Makefile.in: Regenerate.
383 2013-09-20 Alan Modra <amodra@gmail.com>
385 * configure: Regenerate.
387 2012-09-14 David Edelsohn <dje.gcc@gmail.com>
389 * configure: Regenerated.
391 2012-05-29 Joseph Myers <joseph@codesourcery.com>
393 * lto-plugin.c: Fix typo.
395 2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
397 * configure: Regenerated.
399 2012-02-22 Kai Tietz <ktietz@redhat.com>
402 * lto-plugin.c (PRI_LL): New macro.
403 (dump_symtab): Use PRI_LL instead of ll in print.
404 (process_symtab): Use PRI_LL instead of ll in scan.
406 2011-12-20 Andreas Schwab <schwab@linux-m68k.org>
408 * configure: Regenerate.
410 2011-12-19 Andreas Schwab <schwab@linux-m68k.org>
412 * configure: Regenerate.
414 2011-11-21 Andreas Tobler <andreast@fgznet.ch>
416 * configure: Regenerate.
418 2011-10-02 Jan Hubicka <jh@suse.cz>
421 * lto-plugin.c (get_symbols_v2): New variable.
422 (write_resolution): Use V2 API when available.
423 (onload): Handle LDPT_GET_SYMBOLS_V2.
425 2011-09-30 H.J. Lu <hongjiu.lu@intel.com>
426 Andi Kleen <ak@linux.intel.com>
429 * lto-plugin.c (sym_aux): Change id to unsigned long long.
430 (plugin_symtab): Likewise.
431 (dump_symtab): Likewise.
432 (resolve_conflicts): Likewise.
433 (process_symtab): Likewise.
435 2011-08-10 Richard Guenther <rguenther@suse.de>
439 * configure.ac: Use ACX_PROG_CC_WARNING_OPTS to detect -Wall presence.
440 * Makefile.am (AM_CFLAGS): Adjust. Do not build with -Werror.
441 * configure: Regenerate.
442 * Makefile.in: Likewise.
443 * aclocal.m4: Likewise.
445 2011-04-20 Jim Meyering <meyering@redhat.com>
447 * lto-plugin.c (free_1, free_2): Remove useless if-before-free.
449 2011-04-05 Richard Guenther <rguenther@suse.de>
452 * lto-plugin.c (claim_file_handler): Do not declare vars in code.
454 2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
456 * Makefile.in: Regenerate.
457 * aclocal.m4: Regenerate.
458 * configure: Regenerate.
460 2011-02-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
462 * Makefile.am (all-local): Rename from 'all'.
463 * Makefile.in: Regenerate.
465 2011-02-12 Alexandre Oliva <aoliva@redhat.com>
468 * Makefile.am (gcc_build_dir, in_gcc_libs): New.
469 (liblto_plugin_la_LDFLAGS): Add -module.
470 (copy_lto_plugin): Renamed to...
471 ($(in_gcc_libs)): ... this. Add mkinstalldirs. Skip copying
473 * Makefile.in: Rebuild.
475 2011-02-07 Kai Tietz <kai.tietz@onevision.com>
478 * Makefile.am (Wc): New helper for encoding -Wc,.
479 (liblto_plugin_la_LIBADD): Use Wc for libiberty library.
480 (liblto_plugin_la_DEPENDENCIES): Special case pic libiberty.
481 * Makefile.in: Regenerated.
483 2011-02-07 Paolo Bonzini <bonzini@gnu.org>
487 2011-02-07 Kai Tietz <kai.tietz@onevision.com>
490 * Makefile.am (Wl): New helper for encoding -Wl,.
491 (liblto_plugin_la_LIBADD): Use -Wl for libiberty library.
492 * Makefile.in: Regenerated.
494 2011-02-07 Kai Tietz <kai.tietz@onevision.com>
497 * Makefile.am (Wl): New helper for encoding -Wl,.
498 (liblto_plugin_la_LIBADD): Use -Wl for libiberty library.
499 * Makefile.in: Regenerated.
501 2011-01-25 Ian Lance Taylor <iant@google.com>
503 * lto-plugin.c (gold_version): New static variable.
504 (all_symbols_read_handler): Don't check pass_through_items if
505 using gold 1.11 or later.
506 (onload): Set gold_version if we see LDPT_GOLD_VERSION.
508 2011-01-12 Richard Guenther <rguenther@suse.de>
511 * lto-plugin.c (parse_table_entry): Use memcpy to access
514 2010-12-20 Dave Korn <dave.korn.cygwin@gmail.com>
516 * Makefile.am (AM_LIBTOOLFLAGS): Define, adding disable-static tag.
517 * Makefile.in: Regenerate.
519 2010-12-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
523 2010-12-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
525 * Makefile.am (liblto_plugin_la_DEPENDENCIES): Define.
526 (liblto_plugin_la_LIBADD): Use -L../libiberty/pic -liberty.
527 (liblto_plugin_la_LDFLAGS): Use -L../libiberty -liberty.
528 * Makefile.in: Regenerate.
530 2010-12-10 Dave Korn <dave.korn.cygwin@gmail.com>
534 * configure.ac (SYM_STYLE): Don't AC_DEFINE.
535 * lto-plugin.c (sym_style): Don't use it; default to ss_none.
536 * configure: Regenerate.
537 * config.h.in: Likewise.
539 2010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
543 * configure.ac: Invoke ACX_LT_HOST_FLAGS.
544 * Makefile.am (liblto_plugin_la_LDFLAGS): Use lt_host_flags but
545 override -bindir setting.
546 * aclocal.m4: Regenerate.
547 * configure: Regenerate.
548 * Makefile.in: Regenerate.
550 2010-12-05 Kai Tietz <kai.tietz@onevision.com>
552 * config.h.in: Regenerated.
553 * configure: Regenerated.
554 * configure.ac (AC_CHECK_HEADERS): Replaced by AC_HEADER_SYS_WAIT.
555 * lto-plugin.c (WIFEXITED): Define default.
556 (WEXITSTATUS): Likeiwse.
558 2010-12-01 Kai Tietz <kai.tietz@onevision.com>
560 * config.h.in: Regenerated.
561 * configure: Regenerated.
562 * Makefile.in: Regenerated.
563 * configure.ac (AC_CHECK_HEADERS): Check for sys/wait.h.
564 * lto-plugin.c: Include sys/wait.h conditionally.
565 * aclocal.m4: Regenerated.
567 2010-11-13 Kai Tietz <kai.tietz@onevision.com>
569 * lto-plugin.c (add_output_files): Fix memory leak.
571 2010-11-11 Dave Korn <dave.korn.cygwin@gmail.com>
575 * configure.ac: Add AC_TYPE_INT64_T test.
576 * config.h.in: Regenerate.
577 * configure: Likewise.
578 * lto-plugin.c (debug): Use char not bool.
580 (check_1): Rename from check, and use int not bool for gate argument.
581 (check): Macro wrapper for the above to coerce gate argument into
582 boolean-valued integer in case it has pointer type.
583 (parse_table_entry): Use 0 not false.
584 (claim_file_handler): Avoid use of PRIx64 by splitting 64-bit size
585 into two 32-bit parts and printing as hex ints.
587 2010-11-03 Dave Korn <dave.korn.cygwin@gmail.com>
590 * lto-plugin.c (claim_file_handler): Don't close file descriptor.
592 2010-11-03 Dave Korn <dave.korn.cygwin@gmail.com>
595 * lto-plugin.h: Delete.
596 * lto-plugin-elf.c: Likewise.
597 * lto-plugin-coff.c: Likewise.
598 * configure.ac: Don't use libelf, don't source config.gcc.
599 (LIBELFLIBS): Delete.
601 (LTO_FORMAT): Delete.
602 (SYM_STYLE): Add AC_DEFINE var, set based on $target.
603 (config.h): Add AC_CONFIG_HEADERS directive.
604 * Makefile.am (LIBELFLIBS): Delete.
606 (LTO_FORMAT): Delete.
608 (AM_CPPFLAGS): Use it. Don't use LIBELFINC.
609 (liblto_plugin_la_SOURCES): Don't use LTO_FORMAT, don't include
610 any object-format-specific source file in the link.
611 (liblto_plugin_la_LIBADD): Don't use LIBELFLIBS.
612 * config.h.in: Generate.
613 * configure: Regenerate.
614 * Makefile.in: Likewise.
615 * lto-plugin.c (O_BINARY): Definition moved here from lto-plugin.h.
616 (LTO_SEGMENT_NAME): New definition.
617 (LTO_SECTION_PREFIX): Definition moved here from lto-plugin.h.
618 (LTO_SECTION_PREFIX_LEN): New definition.
619 (struct sym_aux): Struct definition moved here from lto-plugin.h.
620 (struct plugin_symtab): Likewise.
621 (struct plugin_objfile): Likewise.
622 (struct plugin_objfile): New struct def.
623 (enum symbol_style): New enum type.
624 (add_symbols): Make static.
625 (claimed_files): Likewise.
626 (num_claimed_files): Likewise.
627 (sym_style): New global.
628 (check): Make static.
629 (parse_table_entry): Likewise. Respect sym_style when extracting
630 symbol from symtab entry.
631 (translate): Make static.
632 (resolve_conflicts): Likewise.
633 (process_symtab): New function, per-section callback version of
634 old object-format-specific handling from deleted lto-plugin-elf.c.
635 (claim_file_handler): Convert ELF-specific version from deleted
636 lto-plugin-elf.c to simple_object interface and move here.
637 (process_options): Allow new '-sym-style=' option.
638 (onload): Don't call deleted onload_format_checks hook.
640 2010-10-11 Kai Tietz <kai.tietz@onevision.com>
642 * lto-plugin.c (dump_symtab): Correct printf argument type.
643 (finish_conflict_resolution): Initialize resolution.
645 2010-10-08 H.J. Lu <hongjiu.lu@intel.com>
648 * configure.ac: Add AC_CANONICAL_SYSTEM.
649 * configure: Regenerated.
651 2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
653 * configure.ac: Source config.gcc to determine lto_binary_reader.
654 (LTO_FORMAT): New AC_SUBST variable inferred from lto_binary_reader.
655 * Makefile.am (LTO_FORMAT): Import.
656 (liblto_plugin_la_SOURCES): Add object format dependent module
657 defined by LTO_FORMAT.
658 (liblto_plugin_la_LIBADD): Allow for both PIC and non-PIC libiberty,
659 and work around libtool warning.
660 * configure: Regenerate.
661 * Makefile.in: Likewise.
662 * lto-plugin.c (struct sym_aux): Move to new lto-plugin.h.
663 (struct sym_aux): Likewise.
664 (struct plugin_symtab): Likewise.
665 (struct plugin_file_info): Likewise.
666 (LTO_SECTION_PREFIX): Likewise.
667 (add_symbols): Make non-static.
668 (claimed_files): Likewise.
669 (num_claimed_files): Likewise.
671 (parse_table_entry): Likewise.
672 (translate): Likewise.
673 (resolve_conflicts): Likewise.
674 (process_symtab): Move to new lto-plugin-elf.c object format dependent
676 (claim_file_handler): Likewise, and make non-static.
677 (onload): Call new onload_format_checks function.
678 * lto-plugin.h: New file.
679 (LTO_SECTION_PREFIX): Move here.
680 (struct sym_aux): Likewise.
681 (struct plugin_symtab): Likewise.
682 (struct plugin_file_info): Likewise.
683 (claim_file_handler): Add new function prototype.
684 (onload_format_checks): Likewise.
685 (check): Declare extern.
686 (translate): Likewise.
687 (parse_table_entry): Likewise.
688 (resolve_conflicts): Likewise.
689 (add_symbols): Likewise.
690 (claimed_files): Likewise.
691 (num_claimed_files): Likewise.
692 * lto-plugin-elf.c (process_symtab): Move here.
693 (claim_file_handler): Likewise, and make non-static.
694 (onload_format_checks): New function factored out from onload.
695 * lto-plugin-coff.c (claim_file_handler): New function stub.
696 (onload_format_checks): Likewise.
698 2010-08-05 Andi Kleen <ak@linux.intel.com>
700 * lto-plugin.c: Include <hashtab.h>
701 (sym_aux): Add next_conflict field to save conflict chains.
702 (plugin_file_info): Add conflicts symtab.
703 (parse_table_entry): Initialize aux->next_conflict.
704 (process_symtab): Increment found.
706 (finish_conflict_resolution): Add.
708 (write_resolution): Remove symbols loop and move into
709 dump_symtab. Call dump_symtab for main symbol and conflicts table.
710 Call free_symtab to free conflicts table.
714 (symbol_strength): Add.
715 (resolve_conflicts): Add.
716 (claim_file_handler): Add n variable. Check return value of
717 process_symtab. Call resolve_conflicts.
719 2010-07-27 Andi Kleen <ak@linux.intel.com>
721 * lto-plugin.c (translate): Remove debug fprintf.
723 2010-07-23 H.J. Lu <hongjiu.lu@intel.com>
726 * lto-plugin.c (translate): Cast to unsigned long.
728 2010-07-23 Andi Kleen <ak@linux.intel.com>
731 * lto-plugin.c (sym_aux): Add.
732 (plugin_symtab): Remove slots. Add aux and id.
733 (parse_table_entry): Change to use aux instead of slots.
734 (LTO_SECTION_PREFIX): Add.
735 (translate): Improve buffer allocation. Change to append
736 symbols to existing out buffer.
737 (get_section): Remove.
738 (process_symtab): Add.
739 (free_2): Free symtab->aux.
740 (write_resolution): Handle aux instead of slots.
741 Print sub id to resolution file.
742 (claim_file_handler): Clear lto_file. Replace get_symtab/translate
743 calls with call to process_symtab.
745 2010-07-22 Richard Guenther <rguenther@suse.de>
747 * Makefile.am: New copy_lto_plugin rule to install the plugin
749 * Makefile.in: Regenerated.
751 2010-05-21 Richard Guenther <rguenther@suse.de>
753 * lto-plugin.c (write_resolution): Do not assert syms is non-NULL.
755 2010-05-07 Richard Guenther <rguenther@suse.de>
757 * lto-plugin.c (free_2): Do not free resolution_file.
758 (write_resolution): Check that we were passed a resolution file.
759 (all_symbols_read_handler): Adjust.
760 (cleanup_handler): Do not remove the resolution file.
761 (process_option): Handle -fresolution=.
763 2010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
766 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
767 * Makefile.in: Regenerate.
769 2010-04-23 Richard Guenther <rguenther@suse.de>
772 * lto-plugin.c (parse_table_entry): Use xstrdup and xrealloc.
773 (translate): Likewise.
774 (all_symbols_read_handler): Likewise.
775 (claim_file_handler): Likewise.
776 (process_option): Likewise.
777 (add_output_files): Likewise. Remove filename length limit.
779 2010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
781 * Makefile.in: Regenerate.
782 * aclocal.m4: Regenerate.
784 2010-03-16 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
787 * lto-plugin.c (cleanup_handler): Delete temporary output files.
789 2010-01-11 Richard Guenther <rguenther@suse.de>
792 * Makefile.am: Disable dependencies.
793 * Makefile.in: Regenerated.
795 2010-01-03 H.J. Lu <hongjiu.lu@intel.com>
798 * lto-plugin.c (exec_lto_wrapper): Output lto-wrapper command
801 2009-12-05 H.J. Lu <hongjiu.lu@intel.com>
804 * configure: Regenerated.
805 * Makefile.in: Likewise.
807 2009-11-19 Rafael Avila de Espindola <espindola@google.com>
810 * lto-plugin.c (claim_file_handler): Print offsets in hex.
812 2009-11-12 Rafael Avila de Espindola <espindola@google.com>
814 * lto-plugin.c (write_resolution): Assume resolution_file is set.
815 Print the symbol name.
816 (all_symbols_read_handler): Create a resolution file.
818 (cleanup_handler): Remove the resolution file.
819 (process_option): Drop the -resolution option.
821 2009-11-05 Rafael Avila de Espindola <espindola@google.com>
823 * lto-plugin.c (temp_obj_dir_name): Remove.
824 (arguments_file_name): New.
825 (free_2): Free arguments_file_name instead of temp_obj_dir_name.
826 (exec_lto_wrapper): Create arguments file with make_temp_file.
827 (cleanup_handler): Don't remove the temporary directory. Remove the
829 (onload): Don't create the temporary directory.
831 2009-11-04 Richard Guenther <rguenther@suse.de>
832 Rafael Avila de Espindola <espindola@google.com>
834 * lto-plugin.c (plugin_file_info): Remove temp field.
835 (cleanup_handler): Don't delete temporary objects.
836 (claim_file_handler): Don't create temporary objects.
838 2009-11-04 Rafael Avila de Espindola <espindola@google.com>
840 * lto-plugin.c (cleanup_handler): Don't cleanup if debugging.
842 2009-10-30 Rafael Avila de Espindola <espindola@google.com>
845 * lto-plugin.c (claim_file_handler): Close files that we created.
847 2009-10-28 Rafael Avila de Espindola <espindola@google.com>
849 * lto-plugin.c (all_symbols_read_handler): Use LDPL_FATAL instead of
852 2009-10-27 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
855 * configure.ac: Call AC_SYS_LARGEFILE before AC_OUTPUT.
856 * configure: Regenerate.
858 2009-10-26 Richard Guenther <rguenther@suse.de>
860 * configure.ac: Use AM_MAINTAINER_MODE.
861 * acinclude.m4: Remove.
862 * configure: Re-generate.
863 * Makefile.in: Likewise.
864 * aclocal.m4: Likewise.
866 2009-10-19 Rafael Avila de Espindola <espindola@google.com>
869 * configure: Regenerate.
870 * configure.ac: Add AC_TYPE_UINT64_T.
872 2009-10-16 Rafael Avila de Espindola <espindola@google.com>
874 * lto-plugin.c (message): New variable.
875 (check): New function.
876 (parse_table_entry, translate, write_resolution,add_output_files,
877 exec_lto_wrapper,claim_file_handler, onload): Use check instead of
879 (cleanup_handler): Use check instead of assert. Remove the arguments
882 2009-10-15 Rafael Avila de Espindola <espindola@google.com>
884 * lto-plugin.c (resolution_file): New.
885 (free_1): Update comment.
886 (free_2): Free resolution_file.
887 (write_resolution): Write resolution to specified file. Use the
888 syms array from the symbol table.
889 (all_symbols_read_handler): Delay call to free_1 past call to
891 (process_option): Add a -resolution option.
893 2009-10-13 Richard Guenther <rguenther@suse.de>
895 * Makefile.am (liblto_plugin_la_LIBADD): Link against the
897 * Makefile.in: Regenerated.
899 2009-10-08 Rafael Avila de Espindola <espindola@google.com>
901 * lto-plugin.c (add_input_library): New.
902 (all_symbols_read_handler): Use add_input_library for items that
904 (process_option): Fit in 80 columns.
905 (onload): Handle LDPT_ADD_INPUT_LIBRARY.
907 2009-10-02 Diego Novillo <dnovillo@google.com>
909 * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
910 and -D_FILE_OFFSET_BITS=64.
911 * configure.ac: Add AC_SYS_LARGEFILE.
912 * configure: Regenerate.
913 * Makefile.in: Regenerate.
914 * lto-plugin.c: Fix copyright boilerplate.
916 2009-10-02 Diego Novillo <dnovillo@google.com>
918 * Makefile.am (ACLOCAL_AMFLAGS): Define.
919 * aclocal.m4: Regenerate with aclocal-2.64
920 * acinclude.m4: Remove.
921 * Makefile.in: Regenerate with automake-1.11
922 * configure.ac (AC_PREREQ): Update to 2.64.
923 * configure: Regenerate.
925 2009-10-02 Diego Novillo <dnovillo@google.com>
927 * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
928 and -D_FILE_OFFSET_BITS=64.
929 * configure.ac: Add AC_SYS_LARGEFILE.
930 * configure: Regenerate.
931 * Makefile.in: Regenerate.
932 * lto-plugin.c: Fix copyright boilerplate.
934 2009-10-02 Diego Novillo <dnovillo@google.com>
936 * Makefile.am (ACLOCAL_AMFLAGS): Define.
937 * aclocal.m4: Regenerate with aclocal-2.64
938 * acinclude.m4: Remove.
939 * Makefile.in: Regenerate with automake-1.11
940 * configure.ac (AC_PREREQ): Update to 2.64.
941 * configure: Regenerate.
943 2009-10-02 Rafael Avila de Espindola <espindola@google.com>
945 * Makefile.am (liblto_plugin_la_SOURCES): Remove
946 $(top_srcdir)/../gcc/lto/common.c
947 * Makefile.in: Regenerate.
949 2009-10-01 Rafael Avila de Espindola <espindola@google.com>
951 * lto-plugin.c (pass_through_items): New.
952 (num_pass_through_items): New.
953 (all_symbols_read_handler): Update to use the -pass-through option.
954 (process_option): Replace -libgcc with -pass-through.
956 2009-09-30 Rafael Avila de Espindola <espindola@google.com>
958 * lto-plugin.c (onload): Return a ld_plugin_status. Don't require
959 register_cleanup to be set.
961 2009-09-30 Rafael Avila de Espindola <espindola@google.com>
963 * Makefile.am: Remove all reference to ltosymtab.
964 * Makefile.in: Regenerate.
965 * lto-symtab.c: Remove.
967 2009-05-21 Diego Novillo <dnovillo@google.com>
969 * configure.ac: Remove call to AC_CHECK_GELF.
970 Call AC_ARG_VAR for LIBELFLIBS and LIBELFINC.
971 * acinclude.m4: Do not include ../config/libelf.m4
972 * Makefile.am (LIBELFLIBS): Define.
974 (AM_CPPFLAGS): Add $(LIBELFINC).
975 (ltosymtab_LDADD): Add $(LIBELFLIBS).
976 (liblto_plugin_la_LIBADD): Add $(LIBELFLIBS)
977 * lto-plugin.c: Always include <gelf.h>
978 * lto-symtab.c: Likewise.
979 * configure: Regenerate.
980 * Makefile.in: Regenerate.
982 2009-03-23 Rafael Avila de Espindola <espindola@google.com>
984 * lto-plugin.c (libgcc_filename): New.
985 (all_symbols_read_handler): Pass libgcc to the linker.
986 (all_symbols_read_handler): Parse -libgcc
988 2009-02-05 Rafael Avila de Espindola <espindola@google.com>
990 * Makefile.am (liblto_plugin_la_LIBADD): Link with libiberty.
991 * Makefile.in: Regenerate.
992 * lto-plugin.c (add_output_files): Argument is now a FILE.
993 (exec_lto_wrapper): Use writeargv and pex.
995 2009-02-04 Rafael Avila de Espindola <espindola@google.com>
998 2009-02-04 Rafael Avila de Espindola <espindola@google.com>
999 * lto-plugin.c (exec_lto_wrapper): Use writeargv.
1002 2009-02-04 Rafael Avila de Espindola <espindola@google.com>
1004 * lto-plugin.c (exec_lto_wrapper): Use writeargv.
1006 2009-01-29 Rafael Avila de Espindola <espindola@google.com>
1008 * lto-plugin.c: Include libiberty.h.
1009 (exec_lto_wrapper, claim_file_handler): Use asprintf instead of
1012 2009-01-29 Rafael Avila de Espindola <espindola@google.com>
1014 * lto-plugin.c (exec_lto_wrapper): Write argv to a file. Pass that
1015 file to lto-wrapper.
1017 2009-01-28 Rafael Avila de Espindola <espindola@google.com>
1019 * lto-plugin.c (plugin_file_info): Remove fd and elf.
1020 (parse_table_entry): strdup entry->name and entry->comdat_key.
1021 (free_1): Free name and comdat_key. Don't close the file. Don't call
1023 (claim_file_handler): Always call elf_end.
1025 2008-12-23 Rafael Avila de Espindola <espindola@google.com>
1027 * Makefile.am (AM_CPPFLAGS): Add -D_LARGEFILE_SOURCE
1028 -D_FILE_OFFSET_BITS=64
1029 * Makefile.in: Regenerate
1031 2008-12-22 Rafael Avila de Espindola <espindola@google.com>
1033 * Makefile.am (gcc_version, target_noncanonical, libexecsubdir): New.
1034 (lib_LTLIBRARIES): Rename to libexecsub_LTLIBRARIES.
1035 * Makefile.in: Regenerate.
1036 * acinclude.m4: Include ../config/acx.m4 and ../lt~obsolete.m4
1037 * configure: Regenerate.
1038 * configure.ac: Add AC_SUBST(target_noncanonical).
1040 2008-12-08 Rafael Avila de Espindola <espindola@google.com>
1042 * lto-plugin.c: Include stdbool.h.
1043 (debug, nop): Declare as bool.
1045 2008-12-08 Rafael Avila de Espindola <espindola@google.com>
1047 * lto-plugin.c (nop): New.
1048 (use_original_files): New.
1049 (all_symbols_read_handler): Call use_original_files if nop is true.
1050 (process_option): Parse the -nop option.
1052 2008-12-08 Rafael Avila de Espindola <espindola@google.com>
1054 * lto-plugin.c (debug): New.
1055 (exec_lto_wrapper): Print argv if debug is true.
1056 (process_option): Process the -debug command line option.
1058 2008-12-03 Rafael Avila de Espindola <espindola@google.com>
1060 * lto-plugin.c (process_option): The argument is now a single option,
1061 not a space separated list.
1063 2008-12-02 Rafael Avila de Espindola <espindola@google.com>
1065 * lto-plugin.c: Include sys/types.h and sys/wait.h
1066 (output_files, num_output_files, lto_wrapper_argv,
1067 lto_wrapper_num_args): New.
1068 (free_2): Free output_files.
1069 (write_resolution): Disable.
1070 (add_output_files): New.
1071 (exec_lto_wrapper): New.
1072 (all_symbols_read_handler): Run lto-wrapper.
1073 (claim_file_handler): Free lto_file.name and call elf_end.
1074 (process_option): New.
1076 2008-11-26 Rafael Espindola <espindola@google.com>
1078 * lto-plugin.c (add_input_file): New.
1079 (get_section): Return NULL if get_section fails.
1080 (write_resolution): New.
1081 (all_symbols_read_handler): Call add_input_file.
1082 (claim_file_handler): Unlink the correct file.
1083 (onload): Record add_input_file.
1085 2008-09-23 Rafael Espindola <espindola@google.com>
1087 * Makefile.am (ltosymtab_SOURCES, liblto_plugin_la_SOURCES):
1088 Update the location of common.c.
1089 * Makefile.in: Regenerate.
1090 * common.c: Moved to gcc/lto.
1091 * common.h: Moved to gcc/lto.
1092 * lto-plugin.c: Update the location of common.h.
1093 * lto-symtab.c: Update the location of common.h.
1095 2008-09-23 Rafael Espindola <espindola@google.com>
1097 * common.c: Include common.h.
1098 (lto_kind_str, lto_visibility_str, lto_resolution_str): Use explicit
1100 * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str): Use
1103 2008-09-23 Rafael Espindola <espindola@google.com>
1105 * lto-plugin.c (plugin_file_info): Add temp.
1106 (cleanup_handler): Only delete temporary files.
1107 (claim_file_handler): Initialize lto_file.temp.
1109 2008-09-23 Rafael Espindola <espindola@google.com>
1111 * plugin-api.h: Moved to include.
1113 2008-09-23 Rafael Espindola <espindola@google.com>
1115 * lto-plugin.c (all_symbols_read_handler): Print resolution in a new
1118 2008-09-22 Rafael Espindola <espindola@google.com>
1120 * plugin-api.h: Copy from binutils' cvs.
1122 2008-09-22 Rafael Espindola <espindola@google.com>
1124 * lto-symtab.c (get_symbols, add_symbols): Update signature.
1125 * plugin-api.h: Copy from binutils' cvs.
1127 2008-09-22 Rafael Espindola <espindola@google.com>
1129 * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str):
1132 2008-09-10 Rafael Espindola <espindola@google.com>
1134 * lto-plugin.c (onload): add missing break statements and asserts.
1135 * lto-symtab.c (claim_file_handler): Make it static.
1136 (all_symbols_read_handler): Make it static.
1137 (all_file_handles): Make it static.
1138 (num_file_handles): Make it static.
1139 (register_claim_file): Make it static.
1140 (register_object): Indent properly.
1142 2008-09-10 Rafael Avila de Espindola <espindola@google.com>
1144 * Makefile.am (ltosymtab_LDADD): Add -lelf.
1145 * Makefiel.in: Regenerate.
1146 * lto-plugin.c: Include ar.h.
1147 (claim_file_handler): Handle file->offset != 0.
1148 * lto-symtab.c: Include gelf.h.
1149 (all_file_handles): Change type.
1150 (register_object): New.
1151 (register_file): Add support for archives.
1152 (resolve): Update to new type of all_file_handles.
1153 (print): Update to new type of all_file_handles.
1154 (free_all): Update to new type of all_file_handles.
1155 (main): Update to new type of all_file_handles.
1157 2008-09-10 Rafael Avila de Espindola <espindola@google.com>
1159 * lto-plugin.c (get_string_table): Remove.
1160 (get_section): Use elf_strptr instead of get_string_table.
1162 2008-09-08 Doug Kwan <dougkwan@google.com>
1164 * lto-plugin.c (all_symbols_read_handler): Widen fprintf arguments
1165 to 64-bit to fix a 32-bit bootstrap failure due to format warnings.
1167 2008-09-08 Rafael Avila de Espindola <espindola@google.com>
1169 * Makefile.am (ltosymtab_SOURCES): add common.c.
1170 (ltosymtab_CFLAGS): New.
1171 (liblto_plugin_la_SOURCES): Add common.c.
1172 * Makefile.in: Regenerate.
1175 * lto-plugin.c: Include stdio.h, inttypes.h and common.h.
1176 (plugin_symtab): New.
1177 (plugin_file_info): New.
1178 (register_all_symbols_read): New.
1180 (claimed_files): New.
1181 (num_claimed_files): New.
1182 (translate): Don't drop the slot number.
1185 (all_symbols_read_handler): New.
1186 (claim_file_handler): Record every claimed file.
1187 (onload): Handle LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
1189 * lto-symtab.c: Include stdlib.h, string.h and common.h.
1190 (current_file_handle): Remove.
1191 (ld_plugin_all_symbols_read_handler): New.
1192 (plugin_handle): New.
1194 (all_file_handles): New.
1195 (num_file_handles): New.
1197 (register_all_symbols_read): New.
1198 (add_symbols): Don't print the symbols, just record them.
1199 (ld_plugin_tv): Add LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
1201 (load_plugin): Use plugin_handle.
1202 (register_file): Add the file handle to all_file_handles.
1205 (unload_plugin): New.
1207 (main): Call all_symbols_read_handler and free resources.
1209 2008-09-03 Rafael Avila de Espindola <espindola@google.com>
1211 * Makefile.am (AM_CFLAGS): New.
1212 (ltosymtab_LDADD): Remove -lelf. Add -ldl.
1213 (lib_LTLIBRARIES): New.
1214 (liblto_plugin_la_SOURCES): New.
1215 (liblto_plugin_la_LIBADD): New.
1216 * Makefile.in: Regenerate.
1217 * acinclude.m4: Don't include ../config/acx.m4 and
1218 ../config/no-executables.m4.
1219 Include ../ltsugar.m4, ../ltoptions.m4, ../ltversion.m4 and
1221 * aclocal.m4: Regenerate.
1222 * configure: Regenerate.
1223 * configure.ac: Use AM_PROG_LIBTOOL.
1224 * lto-plugin.c: New.
1225 * lto-symtab.c: Rewrite to use the plugin.
1226 * plugin-api.h: New.
1228 2008-08-25 Rafael Avila de Espindola <espindola@google.com>
1230 * configure: Regenerate.
1231 * configure.ac: Use AC_CHECK_GELF.
1232 * lto-symtab.c: Include gelf.h.
1233 (get_string_table): Use size independent API.
1234 (printTable): Use lld to print 64 bit integers.
1236 2008-08-22 Rafael Avila de Espindola <espindola@google.com>
1238 * lto-symtab.c (parse_table_entry): Assert entry->kind and
1239 entry->visibility are valid.
1241 2008-07-22 Rafael Avila de Espindola <espindola@google.com>
1242 * lto-symtab.c (table_entry): Add comdat.
1243 (parse_table_entry): Read comdat.
1245 2008-08-21 Rafael Espindola <espindola@google.com>
1249 * acinclude.m4: New.
1252 * configure.ac: New.
1253 * lto-symtab.c: New.