[RS6000] rs6000_linux64_override_options fix
[official-gcc.git] / lto-plugin / ChangeLog
blob4f285ce0c3e385f67832fe314b83fdb65e29fac8
1 2020-09-10  Jonathan Yong  <10walls@gmail.com>
3         * Makefile.am: drop versioning from libtool completely.
4         * Makefile.in: regenerate.
6 2020-09-09  Nick Clifton  <nickc@redhat.com>
8         * lto-plugin.c (struct plugin_symtab): Add last_sym field.
9         (parse_symtab_extension): Only read as many entries as are
10         available in the buffer.  Store the data read into the symbol
11         table indexed from last_sym.  Increment last_sym.
13 2020-07-30  H.J. Lu  <hjl.tools@gmail.com>
15         PR bootstrap/96202
16         * configure: Regenerated.
18 2020-05-29  H.J. Lu  <hjl.tools@gmail.com>
20         PR bootstrap/95413
21         * configure: Regenerated.
23 2020-05-26  Alexandre Oliva  <oliva@adacore.com>
25         * lto-plugin.c (skip_in_suffix): New.
26         (exec_lto_wrapper): Use skip_in_suffix and concat to build
27         non-temporary output names.
28         (onload): Look for -dumpdir in COLLECT_GCC_OPTIONS, and
29         override link_output_name with it.
31 2020-05-12  H.J. Lu  <hongjiu.lu@intel.com>
33         PR bootstrap/94998
34         * configure: Regenerated.
36 2020-05-05  Eric Botcazou  <ebotcazou@adacore.com>
38         * lto-plugin.c: Document -linker-output-auto-notlo-rel option.
39         (linker_output_set): Change type to bool.
40         (linker_output_known): Likewise.
41         (linker_output_auto_nolto_rel): New variable.
42         (all_symbols_read_handler): Take it into account.
43         <LDPO_REL>: Do not issue the warning if it is set.
44         (process_option): Process -linker-output-auto-notlo-rel.
45         (cleanup_handler): Remove unused variable.
46         (onload) <LDPT_LINKER_OUTPUT>: Adjust to above type change.
48 2020-04-28  H.J. Lu  <hongjiu.lu@intel.com>
50         PR bootstrap/94739
51         * configure: Regenerated.
53 2020-04-25  H.J. Lu  <hongjiu.lu@intel.com>
55         PR bootstrap/94739
56         * Makefile.am (AM_CFLAGS): Add $(CET_HOST_FLAGS).
57         * configure.ac: Add GCC_CET_HOST_FLAGS(CET_HOST_FLAGS) and
58         AC_SUBST(CET_HOST_FLAGS).
59         * Makefile.in: Regenerated.
60         * aclocal.m4: Likewise.
61         * configure: Likewise.
63 2020-03-19  Martin Liska  <mliska@suse.cz>
65         * lto-plugin.c (LTO_SECTION_PREFIX): Rename to ...
66         (LTO_SYMTAB_PREFIX): ... this.
67         (LTO_SECTION_PREFIX_LEN): Rename to ...
68         (LTO_SYMTAB_PREFIX_LEN): ... this.
69         (LTO_SYMTAB_EXT_PREFIX): New.
70         (LTO_SYMTAB_EXT_PREFIX_LEN): New.
71         (LTO_LTO_PREFIX): New.
72         (LTO_LTO_PREFIX_LEN): New.
73         (parse_table_entry): Fill up unused to zero.
74         (parse_table_entry_extension): New.
75         (parse_symtab_extension): New.
76         (finish_conflict_resolution): Change type
77         for resolution.
78         (process_symtab): Use new macro name.
79         (process_symtab_extension): New.
80         (claim_file_handler): Parse also process_symtab_extension.
81         (onload): Call new add_symbols_v2.
83 2020-01-01  Jakub Jelinek  <jakub@redhat.com>
85         Update copyright years.
87 2019-09-27  Maciej W. Rozycki  <macro@wdc.com>
89         * configure: Regenerate.
91 2019-05-15  Iain Sandoe  <iain@sandoe.co.uk>
93         * lto-plugin.c (cleanup_handler): Remove unused var.
95 2019-05-15  Iain Sandoe  <iain@sandoe.co.uk>
97         * lto-plugin.c (exec_lto_wrapper): Make the wrapper
98         arguments filename more user-friendly.
99         (file_exists, maybe_unlink): New.
100         (cleanup_handler): Use maybe unlink to handle the
101         case when temps should be saved.
102         (process_option): Look for -v, —-version, -save-temps.
103         (onload): Record the linker output file name.
104         Check for -v, —-version, -save-temps in the GCC collect
105         options environment.
107 2019-02-26  Martin Liska  <mliska@suse.cz>
109         * lto-symtab.c: Remove.
111 2019-01-01  Jakub Jelinek  <jakub@redhat.com>
113         Update copyright years.
115 2018-10-31  Joseph Myers  <joseph@codesourcery.com>
117         PR bootstrap/82856
118         * configure.ac: Remove AC_PREREQ.  Use AC_LANG_SOURCE.
119         * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
121 2018-05-30  Jan Hubicka  <jh@suse.cz>
123         * lto-plugin.c: (non_claimed_files): New static var.
124         (linker_ouput_known): New static var.
125         (all_symbols_read_handler): When user specifies linker output do not
126         imply it; output warning when nonlto-rel mode is forced.
127         (claim_file_header): Record number of nonclaimed files.
128         (process_option): Remember if linker output is known
130 2018-04-18  David Malcolm  <dmalcolm@redhat.com>
132         PR jit/85384
133         * configure: Regenerate.
135 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
137         Update copyright years.
139 2017-07-21  Georg-Johann Lay  <avr@gjlay.de>
141         PR lto/81487
142         * lto-plugin.c (claim_file_handler): Use xasprintf instead of
143         asprintf.
144         [hi!=0]: Swap hi and lo arguments supplied to xasprintf.
146 2017-01-17  Jakub Jelinek  <jakub@redhat.com>
148         PR other/79046
149         * configure.ac: Add GCC_BASE_VER.
150         * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
151         get version from BASE-VER file.
152         * configure: Regenerated.
153         * Makefile.in: Regenerated.
155 2017-01-04  Jakub Jelinek  <jakub@redhat.com>
157         Update copyright years.
159 2016-11-15  Matthias Klose  <doko@ubuntu.com>
161         * configure: Regenerate.
163 2016-02-25  Ilya Verbin  <ilya.verbin@intel.com>
165         PR driver/68463
166         * lto-plugin.c (struct plugin_offload_file): New.
167         (offload_files): Change type.
168         (offload_files_last, offload_files_last_obj): New.
169         (offload_files_last_lto): New.
170         (free_2): Adjust accordingly.
171         (all_symbols_read_handler): Don't add offload files to lto_arg_ptr.
172         Don't call free_1 for offload_files.  Write names of object files with
173         offloading to the temporary file.  Add new option to lto_arg_ptr.
174         (claim_file_handler): Don't claim file if it contains offload sections
175         without LTO sections.  If it contains offload sections, add to the list.
177 2016-01-15  Martin Liska  <mliska@suse.cz>
179         * lto-plugin.c (all_symbols_read_handler): Assign default
180         value to a string variable.
182 2015-11-25  Jan Hubicka  <jh@suse.cz>
184         PR lto/67548
185         * lto-plugin.c (linker_output, linker_output_set): New statics.
186         (all_symbols_read_handler): Add -flinker-output option.
187         (onload): Record linker_output info.
189 2015-07-02  Uros Bizjak  <ubizjak@gmail.com>
191         * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
192         * configure: Regenerate.
193         * config.h.in: Ditto.
195 2015-05-13  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
197         * Makefile.am: Drop 'by automake version' from top-level comment.
198         * Makefile.in: Regenerated with automake-1.11.6.
199         * aclocal.m4: Likewise.
200         * configure: Likewise.
202 2015-02-06  H.J. Lu  <hongjiu.lu@intel.com>
204         * lto-plugin.c (release_input_file): Removed.
205         (claim_file_handler): Don't call release_input_file.
206         (onload): Don't set release_input_file.
208 2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>
210         * lto-plugin.c (claim_file_handler): Pass handle to
211         release_input_file.
213 2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>
215         * lto-plugin.c (claim_file_handler): Call release_input_file only
216         if file is claimed.
218 2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>
220         * lto-plugin.c (claim_file_handler): Call release_input_file only
221         if it is not NULL.
223 2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>
225         PR lto/64837
226         * lto-plugin.c (release_input_file): New.
227         (claim_file_handler): Call release_input_file.
228         (onload): Set release_input_file.
230 2014-12-09  Ilya Verbin  <ilya.verbin@intel.com>
232         * lto-plugin.c (offload_files, num_offload_files): New static variables.
233         (free_1): Use arguments instead of global variables.
234         (free_2): Free offload_files.
235         (all_symbols_read_handler): Add names from offload_files to lto-wrapper
236         arguments.
237         (claim_file_handler): Do not add file to claimed_files if it contains
238         offload sections without LTO sections.  Add it to offload_files instead.
240 2014-11-21  H.J. Lu  <hongjiu.lu@intel.com>
242         PR bootstrap/63784
243         * configure: Regenerated.
245 2014-11-13  Ilya Verbin  <ilya.verbin@intel.com>
246             Bernd Schmidt  <bernds@codesourcery.com>
247             Andrey Turetskiy  <andrey.turetskiy@intel.com>
248             Michael Zolotukhin  <michael.v.zolotukhin@intel.com>
250         * lto-plugin.c (OFFLOAD_SECTION, OFFLOAD_SECTION_LEN): Define.
251         (struct plugin_objfile): Add new field "offload".
252         (process_offload_section): New static function.
253         (claim_file_handler): Claim file if it contains offload sections.
255 2014-11-13  Bernd Schmidt  <bernds@codesourcery.com>
256             Thomas Schwinge  <thomas@codesourcery.com>
257             Ilya Verbin  <ilya.verbin@intel.com>
258             Andrey Turetskiy  <andrey.turetskiy@intel.com>
260         * Makefile.am (libexecsubdir): Tweak for the possibility of being
261         configured for offload compiler.
262         (accel_dir_suffix, real_target_noncanonical): New variables substituted
263         by configure.
264         * Makefile.in: Regenerate.
265         * configure: Regenerate.
266         * configure.ac (accel_dir_suffix, real_target_noncanonical): Compute new
267         variables.
269 2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
271         PR target/63610
272         * configure: Regenerate.
274 2014-08-26  H.J. Lu  <hongjiu.lu@intel.com>
276         PR bootstrap/62260
277         * Makefile.am (gcc_build_dir): Set to @gcc_build_dir@.
278         * configure.ac (gcc_build_dir): Set and AC_SUBST according to
279         $host_subdir.
280         * Makefile.in: Regenerated.
281         * configure: Likewise.
283 2014-06-13  Thomas Schwinge  <thomas@codesourcery.com>
285         * configure.ac (--with-libiberty): New configure option.
286         * configure: Regenerate.
287         * Makefile.am (libiberty, libiberty_noasan, libiberty_pic): New
288         variables.
289         (liblto_plugin_la_LIBADD, liblto_plugin_la_LDFLAGS)
290         (liblto_plugin_la_DEPENDENCIES): Use them.
291         * Makefile.in: Regenerate.
293 2014-05-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
295         PR lto/60981
296         * configure.ac: Check for -static-libgcc.
297         * configure: Regenerate.
299 2014-04-17  Jakub Jelinek  <jakub@redhat.com>
301         PR sanitizer/56781
302         * Makefile.am (CFLAGS, LDFLAGS): Filter out -fsanitize=address.
303         (liblto_plugin_la_LIBADD, liblto_plugin_la_LDFLAGS,
304         liblto_plugin_la_DEPENDENCIES): Prefer ../libiberty/noasan/libiberty.a
305         over ../libiberty/pic/libiberty.a if the former exists.
306         * Makefile.in: Regenerated.
308         PR sanitizer/56781
309         * Makefile.am (LTLDFLAGS, liblto_plugin_la_LINK): New variables.
310         * Makefile.in: Regenerated.
312 2014-04-02  Richard Biener  <rguenther@suse.de>
314         * lto-plugin.c (onload): Fail to load if -fno-use-linker-plugin
315         is set in COLLECT_GCC_OPTIONS.
317 2014-03-28  Richard Biener  <rguenther@suse.de>
319         * lto-plugin.c (process_symtab): Handle EINTR and short reads.
321 2014-03-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
323         * configure.ac (ac_lto_plugin_ldflags): Set to -Wc,-static-libgcc
324         for gcc.
325         * configure: Regenerate.
326         * Makefile.am (AM_LDFLAGS): New variable.
327         (liblto_plugin_la_LDFLAGS): Add it.
328         * Makefile.in: Regenerate.
330 2013-09-20  Alan Modra  <amodra@gmail.com>
332         * configure: Regenerate.
334 2012-09-14  David Edelsohn  <dje.gcc@gmail.com>
336         * configure: Regenerated.
338 2012-05-29  Joseph Myers  <joseph@codesourcery.com>
340         * lto-plugin.c: Fix typo.
342 2012-05-16  H.J. Lu  <hongjiu.lu@intel.com>
344         * configure: Regenerated.
346 2012-02-22  Kai Tietz  <ktietz@redhat.com>
348         PR lto/50616
349         * lto-plugin.c (PRI_LL): New macro.
350         (dump_symtab): Use PRI_LL instead of ll in print.
351         (process_symtab): Use PRI_LL instead of ll in scan.
353 2011-12-20  Andreas Schwab  <schwab@linux-m68k.org>
355         * configure: Regenerate.
357 2011-12-19  Andreas Schwab  <schwab@linux-m68k.org>
359         * configure: Regenerate.
361 2011-11-21  Andreas Tobler  <andreast@fgznet.ch>
363         * configure: Regenerate.
365 2011-10-02  Jan Hubicka  <jh@suse.cz>
367         PR lto/47247
368         * lto-plugin.c (get_symbols_v2): New variable.
369         (write_resolution): Use V2 API when available.
370         (onload): Handle LDPT_GET_SYMBOLS_V2.
372 2011-09-30  H.J. Lu  <hongjiu.lu@intel.com>
373             Andi Kleen  <ak@linux.intel.com>
375         PR lto/50568
376         * lto-plugin.c (sym_aux): Change id to unsigned long long.
377         (plugin_symtab): Likewise.
378         (dump_symtab): Likewise.
379         (resolve_conflicts): Likewise.
380         (process_symtab): Likewise.
382 2011-08-10  Richard Guenther  <rguenther@suse.de>
384         PR bootstrap/49907
385         lto-plugin/
386         * configure.ac: Use ACX_PROG_CC_WARNING_OPTS to detect -Wall presence.
387         * Makefile.am (AM_CFLAGS): Adjust.  Do not build with -Werror.
388         * configure: Regenerate.
389         * Makefile.in: Likewise.
390         * aclocal.m4: Likewise.
392 2011-04-20  Jim Meyering  <meyering@redhat.com>
394         * lto-plugin.c (free_1, free_2): Remove useless if-before-free.
396 2011-04-05  Richard Guenther  <rguenther@suse.de>
398         PR bootstrap/48431
399         * lto-plugin.c (claim_file_handler): Do not declare vars in code.
401 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
403         * Makefile.in: Regenerate.
404         * aclocal.m4: Regenerate.
405         * configure: Regenerate.
407 2011-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
409         * Makefile.am (all-local): Rename from 'all'.
410         * Makefile.in: Regenerate.
412 2011-02-12  Alexandre Oliva  <aoliva@redhat.com>
414         PR lto/47225
415         * Makefile.am (gcc_build_dir, in_gcc_libs): New.
416         (liblto_plugin_la_LDFLAGS): Add -module.
417         (copy_lto_plugin): Renamed to...
418         ($(in_gcc_libs)): ... this.  Add mkinstalldirs.  Skip copying
419         of static modules.
420         * Makefile.in: Rebuild.
422 2011-02-07  Kai Tietz  <kai.tietz@onevision.com>
424         PR lto/47225
425         * Makefile.am (Wc): New helper for encoding -Wc,.
426         (liblto_plugin_la_LIBADD): Use Wc for libiberty library.
427         (liblto_plugin_la_DEPENDENCIES): Special case pic libiberty.
428         * Makefile.in: Regenerated.
430 2011-02-07  Paolo Bonzini  <bonzini@gnu.org>
432         Revert:
434         2011-02-07  Kai Tietz  <kai.tietz@onevision.com>
436         PR lto/47225
437         * Makefile.am (Wl): New helper for encoding -Wl,.
438         (liblto_plugin_la_LIBADD): Use -Wl for libiberty library.
439         * Makefile.in: Regenerated.
441 2011-02-07  Kai Tietz  <kai.tietz@onevision.com>
443         PR lto/47225
444         * Makefile.am (Wl): New helper for encoding -Wl,.
445         (liblto_plugin_la_LIBADD): Use -Wl for libiberty library.
446         * Makefile.in: Regenerated.
448 2011-01-25  Ian Lance Taylor  <iant@google.com>
450         * lto-plugin.c (gold_version): New static variable.
451         (all_symbols_read_handler): Don't check pass_through_items if
452         using gold 1.11 or later.
453         (onload): Set gold_version if we see LDPT_GOLD_VERSION.
455 2011-01-12  Richard Guenther  <rguenther@suse.de>
457         PR lto/47264
458         * lto-plugin.c (parse_table_entry): Use memcpy to access
459         unaligned fields.
461 2010-12-20  Dave Korn  <dave.korn.cygwin@gmail.com>
463         * Makefile.am (AM_LIBTOOLFLAGS): Define, adding disable-static tag.
464         * Makefile.in: Regenerate.
466 2010-12-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
468         Revert last change.
470 2010-12-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
472         * Makefile.am (liblto_plugin_la_DEPENDENCIES): Define.
473         (liblto_plugin_la_LIBADD): Use -L../libiberty/pic -liberty.
474         (liblto_plugin_la_LDFLAGS): Use -L../libiberty -liberty.
475         * Makefile.in: Regenerate.
477 2010-12-10  Dave Korn  <dave.korn.cygwin@gmail.com>
479         PR middle-end/46674
480         PR lto/43157
481         * configure.ac (SYM_STYLE): Don't AC_DEFINE.
482         * lto-plugin.c (sym_style): Don't use it; default to ss_none.
483         * configure: Regenerate.
484         * config.h.in: Likewise.
486 2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
488         PR target/40125
489         PR lto/46695
490         * configure.ac: Invoke ACX_LT_HOST_FLAGS.
491         * Makefile.am (liblto_plugin_la_LDFLAGS): Use lt_host_flags but
492         override -bindir setting.
493         * aclocal.m4: Regenerate.
494         * configure: Regenerate.
495         * Makefile.in: Regenerate.
497 2010-12-05  Kai Tietz  <kai.tietz@onevision.com>
499         * config.h.in: Regenerated.
500         * configure: Regenerated.
501         * configure.ac (AC_CHECK_HEADERS): Replaced by AC_HEADER_SYS_WAIT.
502         * lto-plugin.c (WIFEXITED): Define default.
503         (WEXITSTATUS): Likeiwse.
505 2010-12-01  Kai Tietz  <kai.tietz@onevision.com>
507         * config.h.in: Regenerated.
508         * configure: Regenerated.
509         * Makefile.in: Regenerated.
510         * configure.ac (AC_CHECK_HEADERS): Check for sys/wait.h.
511         * lto-plugin.c:  Include sys/wait.h conditionally.
512         * aclocal.m4: Regenerated.
514 2010-11-13  Kai Tietz  <kai.tietz@onevision.com>
516         * lto-plugin.c (add_output_files): Fix memory leak.
518 2010-11-11  Dave Korn  <dave.korn.cygwin@gmail.com>
520         PR bootstrap/46397
521         PR bootstrap/46362
522         * configure.ac: Add AC_TYPE_INT64_T test.
523         * config.h.in: Regenerate.
524         * configure: Likewise.
525         * lto-plugin.c (debug): Use char not bool.
526         (nop): Likewise.
527         (check_1): Rename from check, and use int not bool for gate argument.
528         (check): Macro wrapper for the above to coerce gate argument into
529         boolean-valued integer in case it has pointer type.
530         (parse_table_entry): Use 0 not false.
531         (claim_file_handler): Avoid use of PRIx64 by splitting 64-bit size
532         into two 32-bit parts and printing as hex ints.
534 2010-11-03  Dave Korn  <dave.korn.cygwin@gmail.com>
536         PR lto/46291
537         * lto-plugin.c (claim_file_handler): Don't close file descriptor.
539 2010-11-03  Dave Korn  <dave.korn.cygwin@gmail.com>
541         PR lto/46273
542         * lto-plugin.h: Delete.
543         * lto-plugin-elf.c: Likewise.
544         * lto-plugin-coff.c: Likewise.
545         * configure.ac: Don't use libelf, don't source config.gcc.
546         (LIBELFLIBS): Delete.
547         (LIBELFINC): Delete.
548         (LTO_FORMAT): Delete.
549         (SYM_STYLE): Add AC_DEFINE var, set based on $target.
550         (config.h): Add AC_CONFIG_HEADERS directive.
551         * Makefile.am (LIBELFLIBS): Delete.
552         (LIBELFINC): Delete.
553         (LTO_FORMAT): Delete.
554         (DEFS): Import.
555         (AM_CPPFLAGS): Use it.  Don't use LIBELFINC.
556         (liblto_plugin_la_SOURCES): Don't use LTO_FORMAT, don't include
557         any object-format-specific source file in the link.
558         (liblto_plugin_la_LIBADD): Don't use LIBELFLIBS.
559         * config.h.in: Generate.
560         * configure: Regenerate.
561         * Makefile.in: Likewise.
562         * lto-plugin.c (O_BINARY): Definition moved here from lto-plugin.h.
563         (LTO_SEGMENT_NAME): New definition.
564         (LTO_SECTION_PREFIX): Definition moved here from lto-plugin.h.
565         (LTO_SECTION_PREFIX_LEN): New definition.
566         (struct sym_aux): Struct definition moved here from lto-plugin.h.
567         (struct plugin_symtab): Likewise.
568         (struct plugin_objfile): Likewise.
569         (struct plugin_objfile): New struct def.
570         (enum symbol_style): New enum type.
571         (add_symbols): Make static.
572         (claimed_files): Likewise.
573         (num_claimed_files): Likewise.
574         (sym_style): New global.
575         (check): Make static.
576         (parse_table_entry): Likewise.  Respect sym_style when extracting
577         symbol from symtab entry.
578         (translate): Make static.
579         (resolve_conflicts): Likewise.
580         (process_symtab): New function, per-section callback version of
581         old object-format-specific handling from deleted lto-plugin-elf.c.
582         (claim_file_handler): Convert ELF-specific version from deleted
583         lto-plugin-elf.c to simple_object interface and move here.
584         (process_options): Allow new '-sym-style=' option.
585         (onload): Don't call deleted onload_format_checks hook.
587 2010-10-11  Kai Tietz  <kai.tietz@onevision.com>
589         * lto-plugin.c (dump_symtab): Correct printf argument type.
590         (finish_conflict_resolution): Initialize resolution.
592 2010-10-08  H.J. Lu  <hongjiu.lu@intel.com>
594         PR bootstrap/45951
595         * configure.ac: Add AC_CANONICAL_SYSTEM.
596         * configure: Regenerated.
598 2010-10-07  Dave Korn  <dave.korn.cygwin@gmail.com>
600         * configure.ac: Source config.gcc to determine lto_binary_reader.
601         (LTO_FORMAT): New AC_SUBST variable inferred from lto_binary_reader.
602         * Makefile.am (LTO_FORMAT): Import.
603         (liblto_plugin_la_SOURCES): Add object format dependent module
604         defined by LTO_FORMAT.
605         (liblto_plugin_la_LIBADD): Allow for both PIC and non-PIC libiberty,
606         and work around libtool warning.
607         * configure: Regenerate.
608         * Makefile.in: Likewise.
609         * lto-plugin.c (struct sym_aux): Move to new lto-plugin.h.
610         (struct sym_aux): Likewise.
611         (struct plugin_symtab): Likewise.
612         (struct plugin_file_info): Likewise.
613         (LTO_SECTION_PREFIX): Likewise.
614         (add_symbols):  Make non-static.
615         (claimed_files): Likewise.
616         (num_claimed_files): Likewise.
617         (check): Likewise.
618         (parse_table_entry): Likewise.
619         (translate): Likewise.
620         (resolve_conflicts): Likewise.
621         (process_symtab): Move to new lto-plugin-elf.c object format dependent
622         source file.
623         (claim_file_handler): Likewise, and make non-static.
624         (onload): Call new onload_format_checks function.
625         * lto-plugin.h: New file.
626         (LTO_SECTION_PREFIX): Move here.
627         (struct sym_aux): Likewise.
628         (struct plugin_symtab): Likewise.
629         (struct plugin_file_info): Likewise.
630         (claim_file_handler): Add new function prototype.
631         (onload_format_checks): Likewise.
632         (check): Declare extern.
633         (translate): Likewise.
634         (parse_table_entry): Likewise.
635         (resolve_conflicts): Likewise.
636         (add_symbols):  Likewise.
637         (claimed_files): Likewise.
638         (num_claimed_files): Likewise.
639         * lto-plugin-elf.c (process_symtab): Move here.
640         (claim_file_handler): Likewise, and make non-static.
641         (onload_format_checks): New function factored out from onload.
642         * lto-plugin-coff.c (claim_file_handler): New function stub.
643         (onload_format_checks): Likewise.
645 2010-08-05  Andi Kleen  <ak@linux.intel.com>
647         * lto-plugin.c: Include <hashtab.h>
648         (sym_aux): Add next_conflict field to save conflict chains.
649         (plugin_file_info): Add conflicts symtab.
650         (parse_table_entry): Initialize aux->next_conflict.
651         (process_symtab): Increment found.
652         (dump_symtab): Add.
653         (finish_conflict_resolution): Add.
654         (free_symtab): Add.
655         (write_resolution): Remove symbols loop and move into
656         dump_symtab. Call dump_symtab for main symbol and conflicts table.
657         Call free_symtab to free conflicts table.
658         (SWAP): Add.
659         (eq_sym): Add.
660         (hash_sym): Add.
661         (symbol_strength): Add.
662         (resolve_conflicts): Add.
663         (claim_file_handler): Add n variable. Check return value of
664         process_symtab. Call resolve_conflicts.
666 2010-07-27  Andi Kleen  <ak@linux.intel.com>
668         * lto-plugin.c (translate): Remove debug fprintf.
670 2010-07-23  H.J. Lu  <hongjiu.lu@intel.com>
672         PR bootstrap/45042
673         * lto-plugin.c (translate): Cast to unsigned long.
675 2010-07-23   Andi Kleen  <ak@linux.intel.com>
677         PR lto/44992
678         * lto-plugin.c (sym_aux): Add.
679         (plugin_symtab): Remove slots. Add aux and id.
680         (parse_table_entry): Change to use aux instead of slots.
681         (LTO_SECTION_PREFIX): Add.
682         (translate): Improve buffer allocation. Change to append
683         symbols to existing out buffer.
684         (get_section): Remove.
685         (process_symtab): Add.
686         (free_2): Free symtab->aux.
687         (write_resolution): Handle aux instead of slots.
688         Print sub id to resolution file.
689         (claim_file_handler): Clear lto_file. Replace get_symtab/translate
690         calls with call to process_symtab.
692 2010-07-22  Richard Guenther  <rguenther@suse.de>
694         * Makefile.am: New copy_lto_plugin rule to install the plugin
695         into ../gcc.
696         * Makefile.in: Regenerated.
698 2010-05-21  Richard Guenther  <rguenther@suse.de>
700         * lto-plugin.c (write_resolution): Do not assert syms is non-NULL.
702 2010-05-07  Richard Guenther <rguenther@suse.de>
704         * lto-plugin.c (free_2): Do not free resolution_file.
705         (write_resolution): Check that we were passed a resolution file.
706         (all_symbols_read_handler): Adjust.
707         (cleanup_handler): Do not remove the resolution file.
708         (process_option): Handle -fresolution=.
710 2010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
712         PR other/43620
713         * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
714         * Makefile.in: Regenerate.
716 2010-04-23  Richard Guenther  <rguenther@suse.de>
718         PR lto/41550
719         * lto-plugin.c (parse_table_entry): Use xstrdup and xrealloc.
720         (translate): Likewise.
721         (all_symbols_read_handler): Likewise.
722         (claim_file_handler): Likewise.
723         (process_option): Likewise.
724         (add_output_files): Likewise.  Remove filename length limit.
726 2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
728         * Makefile.in: Regenerate.
729         * aclocal.m4: Regenerate.
731 2010-03-16  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
733         PR lto/43336
734         * lto-plugin.c (cleanup_handler): Delete temporary output files.
736 2010-01-11  Richard Guenther  <rguenther@suse.de>
738         PR lto/41569
739         * Makefile.am: Disable dependencies.
740         * Makefile.in: Regenerated.
742 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
744         PR lto/42520
745         * lto-plugin.c (exec_lto_wrapper): Output lto-wrapper command
746         if -v is passed.
748 2009-12-05  H.J. Lu  <hongjiu.lu@intel.com>
750         PR bootstrap/42306
751         * configure: Regenerated.
752         * Makefile.in: Likewise.
754 2009-11-19  Rafael Avila de Espindola  <espindola@google.com>
756         PR bootstrap/42096
757         * lto-plugin.c (claim_file_handler): Print offsets in hex.
759 2009-11-12  Rafael Avila de Espindola  <espindola@google.com>
761         * lto-plugin.c (write_resolution): Assume resolution_file is set.
762         Print the symbol name.
763         (all_symbols_read_handler): Create a resolution file.
764         Pass it to gcc.
765         (cleanup_handler): Remove the resolution file.
766         (process_option): Drop the -resolution option.
768 2009-11-05  Rafael Avila de Espindola  <espindola@google.com>
770         * lto-plugin.c (temp_obj_dir_name): Remove.
771         (arguments_file_name): New.
772         (free_2): Free arguments_file_name instead of temp_obj_dir_name.
773         (exec_lto_wrapper):  Create arguments file with make_temp_file.
774         (cleanup_handler): Don't remove the temporary directory. Remove the
775         arguments file.
776         (onload): Don't create the temporary directory.
778 2009-11-04  Richard Guenther  <rguenther@suse.de>
779             Rafael Avila de Espindola  <espindola@google.com>
781         * lto-plugin.c (plugin_file_info): Remove temp field.
782         (cleanup_handler): Don't delete temporary objects.
783         (claim_file_handler): Don't create temporary objects.
785 2009-11-04  Rafael Avila de Espindola  <espindola@google.com>
787         * lto-plugin.c (cleanup_handler): Don't cleanup if debugging.
789 2009-10-30  Rafael Avila de Espindola  <espindola@google.com>
791         PR41871
792         * lto-plugin.c (claim_file_handler): Close files that we created.
794 2009-10-28  Rafael Avila de Espindola  <espindola@google.com>
796         * lto-plugin.c (all_symbols_read_handler): Use LDPL_FATAL instead of
797         LDPL_ERROR
799 2009-10-27  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
801         PR lto/41652
802         * configure.ac: Call AC_SYS_LARGEFILE before AC_OUTPUT.
803         * configure: Regenerate.
805 2009-10-26  Richard Guenther  <rguenther@suse.de>
807         * configure.ac: Use AM_MAINTAINER_MODE.
808         * acinclude.m4: Remove.
809         * configure: Re-generate.
810         * Makefile.in: Likewise.
811         * aclocal.m4: Likewise.
813 2009-10-19  Rafael Avila de Espindola  <espindola@google.com>
814     
815         PR40790
816         * configure: Regenerate.
817         * configure.ac: Add AC_TYPE_UINT64_T.
819 2009-10-16  Rafael Avila de Espindola  <espindola@google.com>
821         * lto-plugin.c (message): New variable.
822         (check): New function.
823         (parse_table_entry, translate, write_resolution,add_output_files,
824         exec_lto_wrapper,claim_file_handler, onload): Use check instead of
825         assert.
826         (cleanup_handler): Use check instead of assert. Remove the arguments
827         file if it exists.
829 2009-10-15  Rafael Avila de Espindola  <espindola@google.com>
831         * lto-plugin.c (resolution_file): New.
832         (free_1): Update comment.
833         (free_2): Free resolution_file.
834         (write_resolution): Write resolution to specified file. Use the
835         syms array from the symbol table.
836         (all_symbols_read_handler): Delay call to free_1 past call to
837         write_resolution.
838         (process_option): Add a -resolution option.
840 2009-10-13  Richard Guenther  <rguenther@suse.de>
842         * Makefile.am (liblto_plugin_la_LIBADD): Link against the
843         correct libiberty.
844         * Makefile.in: Regenerated.
846 2009-10-08  Rafael Avila de Espindola  <espindola@google.com>
848         * lto-plugin.c (add_input_library): New.
849         (all_symbols_read_handler): Use add_input_library for items that
850         start with -l.
851         (process_option): Fit in 80 columns.
852         (onload): Handle LDPT_ADD_INPUT_LIBRARY.
854 2009-10-02  Diego Novillo  <dnovillo@google.com>
856         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
857         and -D_FILE_OFFSET_BITS=64.
858         * configure.ac: Add AC_SYS_LARGEFILE.
859         * configure: Regenerate.
860         * Makefile.in: Regenerate.
861         * lto-plugin.c: Fix copyright boilerplate.
863 2009-10-02  Diego Novillo  <dnovillo@google.com>
865         * Makefile.am (ACLOCAL_AMFLAGS): Define.
866         * aclocal.m4: Regenerate with aclocal-2.64
867         * acinclude.m4: Remove.
868         * Makefile.in: Regenerate with automake-1.11
869         * configure.ac (AC_PREREQ): Update to 2.64.
870         * configure: Regenerate.
872 2009-10-02  Diego Novillo  <dnovillo@google.com>
874         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
875         and -D_FILE_OFFSET_BITS=64.
876         * configure.ac: Add AC_SYS_LARGEFILE.
877         * configure: Regenerate.
878         * Makefile.in: Regenerate.
879         * lto-plugin.c: Fix copyright boilerplate.
881 2009-10-02  Diego Novillo  <dnovillo@google.com>
883         * Makefile.am (ACLOCAL_AMFLAGS): Define.
884         * aclocal.m4: Regenerate with aclocal-2.64
885         * acinclude.m4: Remove.
886         * Makefile.in: Regenerate with automake-1.11
887         * configure.ac (AC_PREREQ): Update to 2.64.
888         * configure: Regenerate.
890 2009-10-02  Rafael Avila de Espindola  <espindola@google.com>
892         * Makefile.am (liblto_plugin_la_SOURCES): Remove
893         $(top_srcdir)/../gcc/lto/common.c
894         * Makefile.in: Regenerate.
896 2009-10-01  Rafael Avila de Espindola  <espindola@google.com>
898         * lto-plugin.c (pass_through_items): New.
899         (num_pass_through_items): New.
900         (all_symbols_read_handler): Update to use the -pass-through option.
901         (process_option): Replace -libgcc with -pass-through.
902         
903 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
905         * lto-plugin.c (onload): Return a ld_plugin_status. Don't require
906         register_cleanup to be set.
908 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
910         * Makefile.am: Remove all reference to ltosymtab.
911         * Makefile.in: Regenerate.
912         * lto-symtab.c: Remove.
914 2009-05-21  Diego Novillo  <dnovillo@google.com>
916         * configure.ac: Remove call to AC_CHECK_GELF.
917         Call AC_ARG_VAR for LIBELFLIBS and LIBELFINC.
918         * acinclude.m4: Do not include ../config/libelf.m4
919         * Makefile.am (LIBELFLIBS): Define.
920         (LIBELFINC): Define.
921         (AM_CPPFLAGS): Add $(LIBELFINC).
922         (ltosymtab_LDADD): Add $(LIBELFLIBS).
923         (liblto_plugin_la_LIBADD): Add $(LIBELFLIBS)
924         * lto-plugin.c: Always include <gelf.h>
925         * lto-symtab.c: Likewise.
926         * configure: Regenerate.
927         * Makefile.in: Regenerate.
929 2009-03-23  Rafael Avila de Espindola  <espindola@google.com>
931         * lto-plugin.c (libgcc_filename): New.
932         (all_symbols_read_handler): Pass libgcc to the linker.
933         (all_symbols_read_handler): Parse -libgcc
935 2009-02-05  Rafael Avila de Espindola  <espindola@google.com>
937         * Makefile.am (liblto_plugin_la_LIBADD): Link with libiberty.
938         * Makefile.in: Regenerate.
939         * lto-plugin.c (add_output_files): Argument is now a FILE.
940         (exec_lto_wrapper): Use writeargv and pex.
942 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
944         Revert:
945         2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
946         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
949 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
951         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
953 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
955         * lto-plugin.c: Include libiberty.h.
956         (exec_lto_wrapper, claim_file_handler): Use asprintf instead of
957         snprintf.
959 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
961         * lto-plugin.c (exec_lto_wrapper): Write argv to a file. Pass that
962         file to lto-wrapper.
964 2009-01-28  Rafael Avila de Espindola  <espindola@google.com>
966         * lto-plugin.c (plugin_file_info): Remove fd and elf.
967         (parse_table_entry): strdup entry->name and entry->comdat_key.
968         (free_1): Free name and comdat_key. Don't close the file. Don't call
969         elf_end.
970         (claim_file_handler): Always call elf_end.
972 2008-12-23  Rafael Avila de Espindola  <espindola@google.com>
974         * Makefile.am (AM_CPPFLAGS): Add -D_LARGEFILE_SOURCE
975         -D_FILE_OFFSET_BITS=64
976         * Makefile.in: Regenerate
978 2008-12-22  Rafael Avila de Espindola  <espindola@google.com>
980         * Makefile.am (gcc_version, target_noncanonical, libexecsubdir): New.
981         (lib_LTLIBRARIES): Rename to libexecsub_LTLIBRARIES.
982         * Makefile.in: Regenerate.
983         * acinclude.m4: Include ../config/acx.m4 and ../lt~obsolete.m4
984         * configure: Regenerate.
985         * configure.ac: Add AC_SUBST(target_noncanonical).
987 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
989         * lto-plugin.c: Include stdbool.h.
990         (debug, nop): Declare as bool.
992 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
994         * lto-plugin.c (nop): New.
995         (use_original_files): New.
996         (all_symbols_read_handler): Call use_original_files if nop is true.
997         (process_option): Parse the -nop option.
999 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
1001         * lto-plugin.c (debug): New.
1002         (exec_lto_wrapper): Print argv if debug is true.
1003         (process_option): Process the -debug command line option.
1005 2008-12-03  Rafael Avila de Espindola  <espindola@google.com>
1007         * lto-plugin.c (process_option): The argument is now a single option,
1008         not a space separated list.
1010 2008-12-02  Rafael Avila de Espindola  <espindola@google.com>
1012         * lto-plugin.c: Include sys/types.h and sys/wait.h
1013         (output_files, num_output_files, lto_wrapper_argv,
1014         lto_wrapper_num_args): New.
1015         (free_2): Free output_files.
1016         (write_resolution): Disable.
1017         (add_output_files): New.
1018         (exec_lto_wrapper): New.
1019         (all_symbols_read_handler): Run lto-wrapper.
1020         (claim_file_handler): Free lto_file.name and call elf_end.
1021         (process_option): New.
1023 2008-11-26  Rafael Espindola  <espindola@google.com>
1025         * lto-plugin.c (add_input_file): New.
1026         (get_section): Return NULL if get_section fails.
1027         (write_resolution): New.
1028         (all_symbols_read_handler): Call add_input_file.
1029         (claim_file_handler): Unlink the correct file.
1030         (onload): Record add_input_file.
1032 2008-09-23 Rafael Espindola  <espindola@google.com>
1034         * Makefile.am (ltosymtab_SOURCES, liblto_plugin_la_SOURCES):
1035         Update the location of common.c.
1036         * Makefile.in: Regenerate.
1037         * common.c: Moved to gcc/lto.
1038         * common.h: Moved to gcc/lto.
1039         * lto-plugin.c: Update the location of common.h.
1040         * lto-symtab.c: Update the location of common.h.
1042 2008-09-23 Rafael Espindola  <espindola@google.com>
1044         * common.c: Include common.h.
1045         (lto_kind_str, lto_visibility_str, lto_resolution_str): Use explicit
1046         sizes.
1047         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str): Use
1048         explicit sizes.
1050 2008-09-23 Rafael Espindola  <espindola@google.com>
1052         * lto-plugin.c (plugin_file_info): Add temp.
1053         (cleanup_handler): Only delete temporary files.
1054         (claim_file_handler): Initialize lto_file.temp.
1056 2008-09-23  Rafael Espindola  <espindola@google.com>
1058         * plugin-api.h: Moved to include.
1060 2008-09-23 Rafael Espindola  <espindola@google.com>
1062         * lto-plugin.c (all_symbols_read_handler): Print resolution in a new
1063         format.
1065 2008-09-22 Rafael Espindola  <espindola@google.com>
1067         * plugin-api.h: Copy from binutils' cvs.
1069 2008-09-22 Rafael Espindola  <espindola@google.com>
1071         * lto-symtab.c (get_symbols, add_symbols): Update signature.
1072         * plugin-api.h: Copy from binutils' cvs.
1074 2008-09-22 Rafael Espindola  <espindola@google.com>
1076         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str):
1077         Make extern
1079 2008-09-10 Rafael Espindola  <espindola@google.com>
1081         * lto-plugin.c (onload): add missing break statements and asserts.
1082         * lto-symtab.c (claim_file_handler): Make it static.
1083         (all_symbols_read_handler): Make it static.
1084         (all_file_handles): Make it static.
1085         (num_file_handles): Make it static.
1086         (register_claim_file): Make it static.
1087         (register_object): Indent properly.
1089 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
1091         * Makefile.am (ltosymtab_LDADD): Add -lelf.
1092         * Makefiel.in: Regenerate.
1093         * lto-plugin.c: Include ar.h.
1094         (claim_file_handler): Handle file->offset != 0.
1095         * lto-symtab.c: Include gelf.h.
1096         (all_file_handles): Change type.
1097         (register_object): New.
1098         (register_file): Add support for archives.
1099         (resolve): Update to new type of all_file_handles.
1100         (print): Update to new type of all_file_handles.
1101         (free_all): Update to new type of all_file_handles.
1102         (main): Update to new type of all_file_handles.
1104 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
1106         * lto-plugin.c (get_string_table): Remove.
1107         (get_section): Use elf_strptr instead of get_string_table.
1109 2008-09-08  Doug Kwan  <dougkwan@google.com>
1111         * lto-plugin.c (all_symbols_read_handler): Widen fprintf arguments
1112         to 64-bit to fix a 32-bit bootstrap failure due to format warnings.
1114 2008-09-08  Rafael Avila de Espindola  <espindola@google.com>
1116         * Makefile.am (ltosymtab_SOURCES): add common.c.
1117         (ltosymtab_CFLAGS): New.
1118         (liblto_plugin_la_SOURCES): Add common.c.
1119         * Makefile.in: Regenerate.
1120         * common.c: New.
1121         * common.h: New.
1122         * lto-plugin.c: Include stdio.h, inttypes.h and common.h.
1123         (plugin_symtab): New.
1124         (plugin_file_info): New.
1125         (register_all_symbols_read): New.
1126         (get_symbols): New.
1127         (claimed_files): New.
1128         (num_claimed_files): New.
1129         (translate): Don't drop the slot number.
1130         (free_1): New.
1131         (free_2): New.
1132         (all_symbols_read_handler): New.
1133         (claim_file_handler): Record every claimed file.
1134         (onload): Handle LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
1135         LDPT_GET_SYMBOLS.
1136         * lto-symtab.c: Include stdlib.h, string.h and common.h.
1137         (current_file_handle): Remove.
1138         (ld_plugin_all_symbols_read_handler): New.
1139         (plugin_handle): New.
1140         (file_handle): New.
1141         (all_file_handles): New.
1142         (num_file_handles): New.
1143         (get_symbols): New.
1144         (register_all_symbols_read): New.
1145         (add_symbols): Don't print the symbols, just record them.
1146         (ld_plugin_tv): Add LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
1147         LDPT_GET_SYMBOLS.
1148         (load_plugin): Use plugin_handle.
1149         (register_file): Add the file handle to all_file_handles.
1150         (resolve): New.
1151         (print): New.
1152         (unload_plugin): New.
1153         (free_all): New.
1154         (main): Call all_symbols_read_handler and free resources.
1156 2008-09-03  Rafael Avila de Espindola  <espindola@google.com>
1158         * Makefile.am (AM_CFLAGS): New.
1159         (ltosymtab_LDADD): Remove -lelf. Add -ldl.
1160         (lib_LTLIBRARIES): New.
1161         (liblto_plugin_la_SOURCES): New.
1162         (liblto_plugin_la_LIBADD): New.
1163         * Makefile.in: Regenerate.
1164         * acinclude.m4: Don't include ../config/acx.m4 and
1165         ../config/no-executables.m4.
1166         Include ../ltsugar.m4, ../ltoptions.m4, ../ltversion.m4 and
1167         ../libtool.m4.
1168         * aclocal.m4: Regenerate.
1169         * configure: Regenerate.
1170         * configure.ac: Use AM_PROG_LIBTOOL.
1171         * lto-plugin.c: New.
1172         * lto-symtab.c: Rewrite to use the plugin.
1173         * plugin-api.h: New.
1175 2008-08-25  Rafael Avila de Espindola  <espindola@google.com>
1177         * configure: Regenerate.
1178         * configure.ac: Use AC_CHECK_GELF.
1179         * lto-symtab.c: Include gelf.h.
1180         (get_string_table): Use size independent API.
1181         (printTable): Use lld to print 64 bit integers.
1183 2008-08-22  Rafael Avila de Espindola  <espindola@google.com>
1185         * lto-symtab.c (parse_table_entry): Assert entry->kind and
1186         entry->visibility are valid.
1188 2008-07-22  Rafael Avila de Espindola  <espindola@google.com>
1189         * lto-symtab.c (table_entry): Add comdat.
1190         (parse_table_entry): Read comdat.
1192 2008-08-21  Rafael Espindola  <espindola@google.com>
1194         * Makefile.am: New.
1195         * Makefile.in: New.
1196         * acinclude.m4: New.
1197         * aclocal.m4: New.
1198         * configure: New.
1199         * configure.ac: New.
1200         * lto-symtab.c: New.