tree-optimization/111950 - vectorizer loop copying
[official-gcc.git] / lto-plugin / ChangeLog
blob809c18fd6cfaf7b44ab4c29e1a0bcf3c3de3043b
1 2023-10-22  Iain Sandoe  <iain@sandoe.co.uk>
3         * configure: Regenerate.
4         * configure.ac: Handle Darwin rpaths.
6 2023-08-07  Nick Alcock  <nick.alcock@oracle.com>
8         * configure: Regenerate.
10 2023-08-07  Alexander von Gluck IV  <kallisti5@unixzen.com>
12         * configure: Regenerate.
14 2023-08-07  Nick Alcock  <nick.alcock@oracle.com>
16         * configure: Regenerate.
18 2023-08-07  Nick Alcock  <nick.alcock@oracle.com>
20         * configure: Regenerate.
22 2023-08-07  H.J. Lu  <hjl.tools@gmail.com>
24         * configure: Regenerate.
26 2023-08-07  H.J. Lu  <hjl.tools@gmail.com>
28         * configure: Regenerate.
30 2023-06-30  Martin Jambor  <mjambor@suse.cz>
32         * Makefile.in: Regenerate.
34 2023-06-22  Marek Polacek  <polacek@redhat.com>
36         * configure.ac (--enable-host-bind-now): New check.  Link with
37         -z,now.
38         * configure: Regenerate.
40 2023-05-11  Joseph Myers  <joseph@codesourcery.com>
42         PR middle-end/109128
43         * lto-plugin.c (register_claim_file_v2): New.
44         (claim_file_handler_v2): New.
45         (claim_file_handler): Wrap claim_file_handler_v2.
46         (onload): Handle LDPT_REGISTER_CLAIM_FILE_HOOK_V2.
48 2022-11-23  Marek Polacek  <polacek@redhat.com>
50         Revert:
51         2022-11-23  Marek Polacek  <polacek@redhat.com>
53         * configure.ac (--enable-host-bind-now): New check.  Link with
54         -z,now.
55         * configure: Regenerate.
57 2022-11-23  Marek Polacek  <polacek@redhat.com>
59         * configure.ac (--enable-host-bind-now): New check.  Link with
60         -z,now.
61         * configure: Regenerate.
63 2022-10-12  Martin Liska  <mliska@suse.cz>
65         * configure: Regenerate.
67 2022-10-11  Olivier Hainque  <hainque@adacore.com>
68             Olivier Hainque  <hainque@adacore.com>
70         * configure: Regenerate.
72 2022-08-01  Martin Liska  <mliska@suse.cz>
74         PR lto/106170
75         * configure.ac: Replace $target with $host.
76         * configure: Regenerate.
78 2022-07-14  Martin Liska  <mliska@suse.cz>
80         PR bootstrap/106156
81         * Makefile.am: Use ac_lto_plugin_extra_ldflags for AM_LDFLAGS.
82         * configure.ac: Use AC_SUBST(ac_lto_plugin_extra_ldflags).
83         * Makefile.in: Regenerate.
84         * configure: Regenerate.
86 2022-07-12  Martin Liska  <mliska@suse.cz>
88         * lto-plugin.c (negotiate_api_version): New.
89         (onload): Negotiate API version.
90         * Makefile.am: Add -DBASE_VERSION.
91         * Makefile.in: Regenerate.
93 2022-07-07  Martin Liska  <mliska@suse.cz>
95         PR lto/106170
96         * configure.ac: Configure HAVE_PTHREAD_LOCKING.
97         * lto-plugin.c (LOCK_SECTION): New.
98         (UNLOCK_SECTION): New.
99         (claim_file_handler): Use the newly added macros.
100         (onload): Likewise.
101         * config.h.in: Regenerate.
102         * configure: Regenerate.
104 2022-07-01  Pekka Seppänen  <pexu@gcc.mail.kapsi.fi>
106         PR lto/106118
107         * configure.ac: Move -pthread from here...
108         * Makefile.am: ...to here.
109         * configure: Regenerate.
110         * Makefile.in: Likewise.
112 2022-06-27  Martin Liska  <mliska@suse.cz>
114         * lto-plugin.c (plugin_lock): New lock.
115         (claim_file_handler): Use mutex for critical section.
116         (onload): Initialize mutex.
117         * configure.ac: Check for pthread.h.
118         * configure: Regenerate.
119         * config.h.in: Regenerate.
121 2022-06-20  Martin Liska  <mliska@suse.cz>
123         * lto-plugin.c (struct plugin_file_info): Add skip_file flag.
124         (write_resolution): Write resolution only if get_symbols != LDPS_NO_SYMS.
125         (all_symbols_read_handler): Ignore file if skip_file is true.
126         (onload): Handle LDPT_GET_SYMBOLS_V3.
128 2022-05-04  Martin Liska  <mliska@suse.cz>
130         * lto-plugin.c (struct plugin_objfile): Use bool for offset
131         field.
132         (exec_lto_wrapper): Assign true/false to bool variables.
133         (process_offload_section): Likewise.
134         (claim_file_handler): Likewise.
135         (onload): Likewise.
137 2022-03-22  Jakub Jelinek  <jakub@redhat.com>
139         PR lto/102426
140         * configure.ac (LTO_PLUGIN_USE_SYMVER, LTO_PLUGIN_USE_SYMVER_GNU,
141         LTO_PLUGIN_USE_SYMVER_SUN): New test for symbol versioning support.
142         * Makefile.am (version_arg, version_dep): Set conditionally based
143         on LTO_PLUGIN_USE_SYMVER*.
144         (liblto_plugin_la_LDFLAGS): Use $(version_arg) instead of
145         -export-symbols-regex onload.
146         (liblto_plugin_la_DEPENDENCIES): Depend on $(version_dep).
147         * lto-plugin.map: New file.
148         * configure: Regenerated.
149         * Makefile.in: Regenerated.
151 2022-03-11  Tobias Burnus  <tobias@codesourcery.com>
153         * lto-plugin.c (all_symbols_read_handler): With -save-temps, use
154         link_output_name for -foffload-objects's file name, if available.
156 2022-03-01  Martin Liska  <mliska@suse.cz>
158         * lto-plugin.c (process_offload_section): Use a linker as many
159         comments are connected to gold linker.
160         (process_option): Likewise.
162 2021-12-02  Rasmus Villemoes  <rasmus.villemoes@prevas.dk>
164         * lto-plugin.c: Fix -linker-output-auto-notlo-rel ->
165         -linker-output-auto-nolto-rel typo.
166         (process_option): Adjust accordingly, accepting both old and
167         new spelling.
169 2021-09-13  Andrew Pinski  <apinski@marvell.com>
171         PR lto/49664
172         * Makefile.am: Export only onload.
173         * Makefile.in: Regenerate.
175 2021-06-25  Richard Biener  <rguenther@suse.de>
177         * lto-plugin.c (ltrans_objects): New global.
178         (all_symbols_read_handler): If -ltrans-objects was specified,
179         add the output files from the specified file directly.
180         (process_option): Handle -ltrans-objects.
182 2021-05-10  Martin Liska  <mliska@suse.cz>
184         * lto-plugin.c (LTO_SEGMENT_NAME): Remove.
185         (LTO_SYMTAB_PREFIX): Likewise.
186         (LTO_SYMTAB_PREFIX_LEN): Likewise.
187         (LTO_SYMTAB_EXT_PREFIX): Likewise.
188         (LTO_SYMTAB_EXT_PREFIX_LEN): Likewise.
189         (LTO_LTO_PREFIX): Likewise.
190         (LTO_LTO_PREFIX_LEN): Likewise.
191         (OFFLOAD_SECTION): Likewise.
192         (OFFLOAD_SECTION_LEN): Likewise.
193         (startswith): New function.
194         (all_symbols_read_handler): Use it.
195         (process_symtab): Likewise.
196         (process_symtab_extension): Likewise.
197         (process_offload_section): Likewise.
198         (process_option): Likewise.
200 2021-05-03  H.J. Lu  <hjl.tools@gmail.com>
202         PR bootstrap/99703
203         * configure: Regenerated.
205 2021-04-21  Martin Liska  <mliska@suse.cz>
207         * lto-plugin.c (exec_lto_wrapper): Make a temp variable.
209 2021-01-05  Samuel Thibault  <samuel.thibault@ens-lyon.org>
211         * configure: Re-generate.
213 2020-11-29  John David Anglin  <danglin@gcc.gnu.org>
215         * configure: Regenerate.
217 2020-11-25  Matthew Malcomson  <matthew.malcomson@arm.com>
219         * Makefile.am: Avoid using sanitizer.
220         * Makefile.in: Regenerate.
222 2020-09-10  Jonathan Yong  <10walls@gmail.com>
224         * Makefile.am: drop versioning from libtool completely.
225         * Makefile.in: regenerate.
227 2020-09-09  Nick Clifton  <nickc@redhat.com>
229         * lto-plugin.c (struct plugin_symtab): Add last_sym field.
230         (parse_symtab_extension): Only read as many entries as are
231         available in the buffer.  Store the data read into the symbol
232         table indexed from last_sym.  Increment last_sym.
234 2020-07-30  H.J. Lu  <hjl.tools@gmail.com>
236         PR bootstrap/96202
237         * configure: Regenerated.
239 2020-05-29  H.J. Lu  <hjl.tools@gmail.com>
241         PR bootstrap/95413
242         * configure: Regenerated.
244 2020-05-26  Alexandre Oliva  <oliva@adacore.com>
246         * lto-plugin.c (skip_in_suffix): New.
247         (exec_lto_wrapper): Use skip_in_suffix and concat to build
248         non-temporary output names.
249         (onload): Look for -dumpdir in COLLECT_GCC_OPTIONS, and
250         override link_output_name with it.
252 2020-05-12  H.J. Lu  <hongjiu.lu@intel.com>
254         PR bootstrap/94998
255         * configure: Regenerated.
257 2020-05-05  Eric Botcazou  <ebotcazou@adacore.com>
259         * lto-plugin.c: Document -linker-output-auto-notlo-rel option.
260         (linker_output_set): Change type to bool.
261         (linker_output_known): Likewise.
262         (linker_output_auto_nolto_rel): New variable.
263         (all_symbols_read_handler): Take it into account.
264         <LDPO_REL>: Do not issue the warning if it is set.
265         (process_option): Process -linker-output-auto-notlo-rel.
266         (cleanup_handler): Remove unused variable.
267         (onload) <LDPT_LINKER_OUTPUT>: Adjust to above type change.
269 2020-04-28  H.J. Lu  <hongjiu.lu@intel.com>
271         PR bootstrap/94739
272         * configure: Regenerated.
274 2020-04-25  H.J. Lu  <hongjiu.lu@intel.com>
276         PR bootstrap/94739
277         * Makefile.am (AM_CFLAGS): Add $(CET_HOST_FLAGS).
278         * configure.ac: Add GCC_CET_HOST_FLAGS(CET_HOST_FLAGS) and
279         AC_SUBST(CET_HOST_FLAGS).
280         * Makefile.in: Regenerated.
281         * aclocal.m4: Likewise.
282         * configure: Likewise.
284 2020-03-19  Martin Liska  <mliska@suse.cz>
286         * lto-plugin.c (LTO_SECTION_PREFIX): Rename to ...
287         (LTO_SYMTAB_PREFIX): ... this.
288         (LTO_SECTION_PREFIX_LEN): Rename to ...
289         (LTO_SYMTAB_PREFIX_LEN): ... this.
290         (LTO_SYMTAB_EXT_PREFIX): New.
291         (LTO_SYMTAB_EXT_PREFIX_LEN): New.
292         (LTO_LTO_PREFIX): New.
293         (LTO_LTO_PREFIX_LEN): New.
294         (parse_table_entry): Fill up unused to zero.
295         (parse_table_entry_extension): New.
296         (parse_symtab_extension): New.
297         (finish_conflict_resolution): Change type
298         for resolution.
299         (process_symtab): Use new macro name.
300         (process_symtab_extension): New.
301         (claim_file_handler): Parse also process_symtab_extension.
302         (onload): Call new add_symbols_v2.
304 2020-01-01  Jakub Jelinek  <jakub@redhat.com>
306         Update copyright years.
308 2019-09-27  Maciej W. Rozycki  <macro@wdc.com>
310         * configure: Regenerate.
312 2019-05-15  Iain Sandoe  <iain@sandoe.co.uk>
314         * lto-plugin.c (cleanup_handler): Remove unused var.
316 2019-05-15  Iain Sandoe  <iain@sandoe.co.uk>
318         * lto-plugin.c (exec_lto_wrapper): Make the wrapper
319         arguments filename more user-friendly.
320         (file_exists, maybe_unlink): New.
321         (cleanup_handler): Use maybe unlink to handle the
322         case when temps should be saved.
323         (process_option): Look for -v, â€”-version, -save-temps.
324         (onload): Record the linker output file name.
325         Check for -v, â€”-version, -save-temps in the GCC collect
326         options environment.
328 2019-02-26  Martin Liska  <mliska@suse.cz>
330         * lto-symtab.c: Remove.
332 2019-01-01  Jakub Jelinek  <jakub@redhat.com>
334         Update copyright years.
336 2018-10-31  Joseph Myers  <joseph@codesourcery.com>
338         PR bootstrap/82856
339         * configure.ac: Remove AC_PREREQ.  Use AC_LANG_SOURCE.
340         * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
342 2018-05-30  Jan Hubicka  <jh@suse.cz>
344         * lto-plugin.c: (non_claimed_files): New static var.
345         (linker_ouput_known): New static var.
346         (all_symbols_read_handler): When user specifies linker output do not
347         imply it; output warning when nonlto-rel mode is forced.
348         (claim_file_header): Record number of nonclaimed files.
349         (process_option): Remember if linker output is known
351 2018-04-18  David Malcolm  <dmalcolm@redhat.com>
353         PR jit/85384
354         * configure: Regenerate.
356 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
358         Update copyright years.
360 2017-07-21  Georg-Johann Lay  <avr@gjlay.de>
362         PR lto/81487
363         * lto-plugin.c (claim_file_handler): Use xasprintf instead of
364         asprintf.
365         [hi!=0]: Swap hi and lo arguments supplied to xasprintf.
367 2017-01-17  Jakub Jelinek  <jakub@redhat.com>
369         PR other/79046
370         * configure.ac: Add GCC_BASE_VER.
371         * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
372         get version from BASE-VER file.
373         * configure: Regenerated.
374         * Makefile.in: Regenerated.
376 2017-01-04  Jakub Jelinek  <jakub@redhat.com>
378         Update copyright years.
380 2016-11-15  Matthias Klose  <doko@ubuntu.com>
382         * configure: Regenerate.
384 2016-02-25  Ilya Verbin  <ilya.verbin@intel.com>
386         PR driver/68463
387         * lto-plugin.c (struct plugin_offload_file): New.
388         (offload_files): Change type.
389         (offload_files_last, offload_files_last_obj): New.
390         (offload_files_last_lto): New.
391         (free_2): Adjust accordingly.
392         (all_symbols_read_handler): Don't add offload files to lto_arg_ptr.
393         Don't call free_1 for offload_files.  Write names of object files with
394         offloading to the temporary file.  Add new option to lto_arg_ptr.
395         (claim_file_handler): Don't claim file if it contains offload sections
396         without LTO sections.  If it contains offload sections, add to the list.
398 2016-01-15  Martin Liska  <mliska@suse.cz>
400         * lto-plugin.c (all_symbols_read_handler): Assign default
401         value to a string variable.
403 2015-11-25  Jan Hubicka  <jh@suse.cz>
405         PR lto/67548
406         * lto-plugin.c (linker_output, linker_output_set): New statics.
407         (all_symbols_read_handler): Add -flinker-output option.
408         (onload): Record linker_output info.
410 2015-07-02  Uros Bizjak  <ubizjak@gmail.com>
412         * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
413         * configure: Regenerate.
414         * config.h.in: Ditto.
416 2015-05-13  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
418         * Makefile.am: Drop 'by automake version' from top-level comment.
419         * Makefile.in: Regenerated with automake-1.11.6.
420         * aclocal.m4: Likewise.
421         * configure: Likewise.
423 2015-02-06  H.J. Lu  <hongjiu.lu@intel.com>
425         * lto-plugin.c (release_input_file): Removed.
426         (claim_file_handler): Don't call release_input_file.
427         (onload): Don't set release_input_file.
429 2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>
431         * lto-plugin.c (claim_file_handler): Pass handle to
432         release_input_file.
434 2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>
436         * lto-plugin.c (claim_file_handler): Call release_input_file only
437         if file is claimed.
439 2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>
441         * lto-plugin.c (claim_file_handler): Call release_input_file only
442         if it is not NULL.
444 2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>
446         PR lto/64837
447         * lto-plugin.c (release_input_file): New.
448         (claim_file_handler): Call release_input_file.
449         (onload): Set release_input_file.
451 2014-12-09  Ilya Verbin  <ilya.verbin@intel.com>
453         * lto-plugin.c (offload_files, num_offload_files): New static variables.
454         (free_1): Use arguments instead of global variables.
455         (free_2): Free offload_files.
456         (all_symbols_read_handler): Add names from offload_files to lto-wrapper
457         arguments.
458         (claim_file_handler): Do not add file to claimed_files if it contains
459         offload sections without LTO sections.  Add it to offload_files instead.
461 2014-11-21  H.J. Lu  <hongjiu.lu@intel.com>
463         PR bootstrap/63784
464         * configure: Regenerated.
466 2014-11-13  Ilya Verbin  <ilya.verbin@intel.com>
467             Bernd Schmidt  <bernds@codesourcery.com>
468             Andrey Turetskiy  <andrey.turetskiy@intel.com>
469             Michael Zolotukhin  <michael.v.zolotukhin@intel.com>
471         * lto-plugin.c (OFFLOAD_SECTION, OFFLOAD_SECTION_LEN): Define.
472         (struct plugin_objfile): Add new field "offload".
473         (process_offload_section): New static function.
474         (claim_file_handler): Claim file if it contains offload sections.
476 2014-11-13  Bernd Schmidt  <bernds@codesourcery.com>
477             Thomas Schwinge  <thomas@codesourcery.com>
478             Ilya Verbin  <ilya.verbin@intel.com>
479             Andrey Turetskiy  <andrey.turetskiy@intel.com>
481         * Makefile.am (libexecsubdir): Tweak for the possibility of being
482         configured for offload compiler.
483         (accel_dir_suffix, real_target_noncanonical): New variables substituted
484         by configure.
485         * Makefile.in: Regenerate.
486         * configure: Regenerate.
487         * configure.ac (accel_dir_suffix, real_target_noncanonical): Compute new
488         variables.
490 2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
492         PR target/63610
493         * configure: Regenerate.
495 2014-08-26  H.J. Lu  <hongjiu.lu@intel.com>
497         PR bootstrap/62260
498         * Makefile.am (gcc_build_dir): Set to @gcc_build_dir@.
499         * configure.ac (gcc_build_dir): Set and AC_SUBST according to
500         $host_subdir.
501         * Makefile.in: Regenerated.
502         * configure: Likewise.
504 2014-06-13  Thomas Schwinge  <thomas@codesourcery.com>
506         * configure.ac (--with-libiberty): New configure option.
507         * configure: Regenerate.
508         * Makefile.am (libiberty, libiberty_noasan, libiberty_pic): New
509         variables.
510         (liblto_plugin_la_LIBADD, liblto_plugin_la_LDFLAGS)
511         (liblto_plugin_la_DEPENDENCIES): Use them.
512         * Makefile.in: Regenerate.
514 2014-05-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
516         PR lto/60981
517         * configure.ac: Check for -static-libgcc.
518         * configure: Regenerate.
520 2014-04-17  Jakub Jelinek  <jakub@redhat.com>
522         PR sanitizer/56781
523         * Makefile.am (CFLAGS, LDFLAGS): Filter out -fsanitize=address.
524         (liblto_plugin_la_LIBADD, liblto_plugin_la_LDFLAGS,
525         liblto_plugin_la_DEPENDENCIES): Prefer ../libiberty/noasan/libiberty.a
526         over ../libiberty/pic/libiberty.a if the former exists.
527         * Makefile.in: Regenerated.
529         PR sanitizer/56781
530         * Makefile.am (LTLDFLAGS, liblto_plugin_la_LINK): New variables.
531         * Makefile.in: Regenerated.
533 2014-04-02  Richard Biener  <rguenther@suse.de>
535         * lto-plugin.c (onload): Fail to load if -fno-use-linker-plugin
536         is set in COLLECT_GCC_OPTIONS.
538 2014-03-28  Richard Biener  <rguenther@suse.de>
540         * lto-plugin.c (process_symtab): Handle EINTR and short reads.
542 2014-03-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
544         * configure.ac (ac_lto_plugin_ldflags): Set to -Wc,-static-libgcc
545         for gcc.
546         * configure: Regenerate.
547         * Makefile.am (AM_LDFLAGS): New variable.
548         (liblto_plugin_la_LDFLAGS): Add it.
549         * Makefile.in: Regenerate.
551 2013-09-20  Alan Modra  <amodra@gmail.com>
553         * configure: Regenerate.
555 2012-09-14  David Edelsohn  <dje.gcc@gmail.com>
557         * configure: Regenerated.
559 2012-05-29  Joseph Myers  <joseph@codesourcery.com>
561         * lto-plugin.c: Fix typo.
563 2012-05-16  H.J. Lu  <hongjiu.lu@intel.com>
565         * configure: Regenerated.
567 2012-02-22  Kai Tietz  <ktietz@redhat.com>
569         PR lto/50616
570         * lto-plugin.c (PRI_LL): New macro.
571         (dump_symtab): Use PRI_LL instead of ll in print.
572         (process_symtab): Use PRI_LL instead of ll in scan.
574 2011-12-20  Andreas Schwab  <schwab@linux-m68k.org>
576         * configure: Regenerate.
578 2011-12-19  Andreas Schwab  <schwab@linux-m68k.org>
580         * configure: Regenerate.
582 2011-11-21  Andreas Tobler  <andreast@fgznet.ch>
584         * configure: Regenerate.
586 2011-10-02  Jan Hubicka  <jh@suse.cz>
588         PR lto/47247
589         * lto-plugin.c (get_symbols_v2): New variable.
590         (write_resolution): Use V2 API when available.
591         (onload): Handle LDPT_GET_SYMBOLS_V2.
593 2011-09-30  H.J. Lu  <hongjiu.lu@intel.com>
594             Andi Kleen  <ak@linux.intel.com>
596         PR lto/50568
597         * lto-plugin.c (sym_aux): Change id to unsigned long long.
598         (plugin_symtab): Likewise.
599         (dump_symtab): Likewise.
600         (resolve_conflicts): Likewise.
601         (process_symtab): Likewise.
603 2011-08-10  Richard Guenther  <rguenther@suse.de>
605         PR bootstrap/49907
606         lto-plugin/
607         * configure.ac: Use ACX_PROG_CC_WARNING_OPTS to detect -Wall presence.
608         * Makefile.am (AM_CFLAGS): Adjust.  Do not build with -Werror.
609         * configure: Regenerate.
610         * Makefile.in: Likewise.
611         * aclocal.m4: Likewise.
613 2011-04-20  Jim Meyering  <meyering@redhat.com>
615         * lto-plugin.c (free_1, free_2): Remove useless if-before-free.
617 2011-04-05  Richard Guenther  <rguenther@suse.de>
619         PR bootstrap/48431
620         * lto-plugin.c (claim_file_handler): Do not declare vars in code.
622 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
624         * Makefile.in: Regenerate.
625         * aclocal.m4: Regenerate.
626         * configure: Regenerate.
628 2011-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
630         * Makefile.am (all-local): Rename from 'all'.
631         * Makefile.in: Regenerate.
633 2011-02-12  Alexandre Oliva  <aoliva@redhat.com>
635         PR lto/47225
636         * Makefile.am (gcc_build_dir, in_gcc_libs): New.
637         (liblto_plugin_la_LDFLAGS): Add -module.
638         (copy_lto_plugin): Renamed to...
639         ($(in_gcc_libs)): ... this.  Add mkinstalldirs.  Skip copying
640         of static modules.
641         * Makefile.in: Rebuild.
643 2011-02-07  Kai Tietz  <kai.tietz@onevision.com>
645         PR lto/47225
646         * Makefile.am (Wc): New helper for encoding -Wc,.
647         (liblto_plugin_la_LIBADD): Use Wc for libiberty library.
648         (liblto_plugin_la_DEPENDENCIES): Special case pic libiberty.
649         * Makefile.in: Regenerated.
651 2011-02-07  Paolo Bonzini  <bonzini@gnu.org>
653         Revert:
655         2011-02-07  Kai Tietz  <kai.tietz@onevision.com>
657         PR lto/47225
658         * Makefile.am (Wl): New helper for encoding -Wl,.
659         (liblto_plugin_la_LIBADD): Use -Wl for libiberty library.
660         * Makefile.in: Regenerated.
662 2011-02-07  Kai Tietz  <kai.tietz@onevision.com>
664         PR lto/47225
665         * Makefile.am (Wl): New helper for encoding -Wl,.
666         (liblto_plugin_la_LIBADD): Use -Wl for libiberty library.
667         * Makefile.in: Regenerated.
669 2011-01-25  Ian Lance Taylor  <iant@google.com>
671         * lto-plugin.c (gold_version): New static variable.
672         (all_symbols_read_handler): Don't check pass_through_items if
673         using gold 1.11 or later.
674         (onload): Set gold_version if we see LDPT_GOLD_VERSION.
676 2011-01-12  Richard Guenther  <rguenther@suse.de>
678         PR lto/47264
679         * lto-plugin.c (parse_table_entry): Use memcpy to access
680         unaligned fields.
682 2010-12-20  Dave Korn  <dave.korn.cygwin@gmail.com>
684         * Makefile.am (AM_LIBTOOLFLAGS): Define, adding disable-static tag.
685         * Makefile.in: Regenerate.
687 2010-12-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
689         Revert last change.
691 2010-12-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
693         * Makefile.am (liblto_plugin_la_DEPENDENCIES): Define.
694         (liblto_plugin_la_LIBADD): Use -L../libiberty/pic -liberty.
695         (liblto_plugin_la_LDFLAGS): Use -L../libiberty -liberty.
696         * Makefile.in: Regenerate.
698 2010-12-10  Dave Korn  <dave.korn.cygwin@gmail.com>
700         PR middle-end/46674
701         PR lto/43157
702         * configure.ac (SYM_STYLE): Don't AC_DEFINE.
703         * lto-plugin.c (sym_style): Don't use it; default to ss_none.
704         * configure: Regenerate.
705         * config.h.in: Likewise.
707 2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
709         PR target/40125
710         PR lto/46695
711         * configure.ac: Invoke ACX_LT_HOST_FLAGS.
712         * Makefile.am (liblto_plugin_la_LDFLAGS): Use lt_host_flags but
713         override -bindir setting.
714         * aclocal.m4: Regenerate.
715         * configure: Regenerate.
716         * Makefile.in: Regenerate.
718 2010-12-05  Kai Tietz  <kai.tietz@onevision.com>
720         * config.h.in: Regenerated.
721         * configure: Regenerated.
722         * configure.ac (AC_CHECK_HEADERS): Replaced by AC_HEADER_SYS_WAIT.
723         * lto-plugin.c (WIFEXITED): Define default.
724         (WEXITSTATUS): Likeiwse.
726 2010-12-01  Kai Tietz  <kai.tietz@onevision.com>
728         * config.h.in: Regenerated.
729         * configure: Regenerated.
730         * Makefile.in: Regenerated.
731         * configure.ac (AC_CHECK_HEADERS): Check for sys/wait.h.
732         * lto-plugin.c:  Include sys/wait.h conditionally.
733         * aclocal.m4: Regenerated.
735 2010-11-13  Kai Tietz  <kai.tietz@onevision.com>
737         * lto-plugin.c (add_output_files): Fix memory leak.
739 2010-11-11  Dave Korn  <dave.korn.cygwin@gmail.com>
741         PR bootstrap/46397
742         PR bootstrap/46362
743         * configure.ac: Add AC_TYPE_INT64_T test.
744         * config.h.in: Regenerate.
745         * configure: Likewise.
746         * lto-plugin.c (debug): Use char not bool.
747         (nop): Likewise.
748         (check_1): Rename from check, and use int not bool for gate argument.
749         (check): Macro wrapper for the above to coerce gate argument into
750         boolean-valued integer in case it has pointer type.
751         (parse_table_entry): Use 0 not false.
752         (claim_file_handler): Avoid use of PRIx64 by splitting 64-bit size
753         into two 32-bit parts and printing as hex ints.
755 2010-11-03  Dave Korn  <dave.korn.cygwin@gmail.com>
757         PR lto/46291
758         * lto-plugin.c (claim_file_handler): Don't close file descriptor.
760 2010-11-03  Dave Korn  <dave.korn.cygwin@gmail.com>
762         PR lto/46273
763         * lto-plugin.h: Delete.
764         * lto-plugin-elf.c: Likewise.
765         * lto-plugin-coff.c: Likewise.
766         * configure.ac: Don't use libelf, don't source config.gcc.
767         (LIBELFLIBS): Delete.
768         (LIBELFINC): Delete.
769         (LTO_FORMAT): Delete.
770         (SYM_STYLE): Add AC_DEFINE var, set based on $target.
771         (config.h): Add AC_CONFIG_HEADERS directive.
772         * Makefile.am (LIBELFLIBS): Delete.
773         (LIBELFINC): Delete.
774         (LTO_FORMAT): Delete.
775         (DEFS): Import.
776         (AM_CPPFLAGS): Use it.  Don't use LIBELFINC.
777         (liblto_plugin_la_SOURCES): Don't use LTO_FORMAT, don't include
778         any object-format-specific source file in the link.
779         (liblto_plugin_la_LIBADD): Don't use LIBELFLIBS.
780         * config.h.in: Generate.
781         * configure: Regenerate.
782         * Makefile.in: Likewise.
783         * lto-plugin.c (O_BINARY): Definition moved here from lto-plugin.h.
784         (LTO_SEGMENT_NAME): New definition.
785         (LTO_SECTION_PREFIX): Definition moved here from lto-plugin.h.
786         (LTO_SECTION_PREFIX_LEN): New definition.
787         (struct sym_aux): Struct definition moved here from lto-plugin.h.
788         (struct plugin_symtab): Likewise.
789         (struct plugin_objfile): Likewise.
790         (struct plugin_objfile): New struct def.
791         (enum symbol_style): New enum type.
792         (add_symbols): Make static.
793         (claimed_files): Likewise.
794         (num_claimed_files): Likewise.
795         (sym_style): New global.
796         (check): Make static.
797         (parse_table_entry): Likewise.  Respect sym_style when extracting
798         symbol from symtab entry.
799         (translate): Make static.
800         (resolve_conflicts): Likewise.
801         (process_symtab): New function, per-section callback version of
802         old object-format-specific handling from deleted lto-plugin-elf.c.
803         (claim_file_handler): Convert ELF-specific version from deleted
804         lto-plugin-elf.c to simple_object interface and move here.
805         (process_options): Allow new '-sym-style=' option.
806         (onload): Don't call deleted onload_format_checks hook.
808 2010-10-11  Kai Tietz  <kai.tietz@onevision.com>
810         * lto-plugin.c (dump_symtab): Correct printf argument type.
811         (finish_conflict_resolution): Initialize resolution.
813 2010-10-08  H.J. Lu  <hongjiu.lu@intel.com>
815         PR bootstrap/45951
816         * configure.ac: Add AC_CANONICAL_SYSTEM.
817         * configure: Regenerated.
819 2010-10-07  Dave Korn  <dave.korn.cygwin@gmail.com>
821         * configure.ac: Source config.gcc to determine lto_binary_reader.
822         (LTO_FORMAT): New AC_SUBST variable inferred from lto_binary_reader.
823         * Makefile.am (LTO_FORMAT): Import.
824         (liblto_plugin_la_SOURCES): Add object format dependent module
825         defined by LTO_FORMAT.
826         (liblto_plugin_la_LIBADD): Allow for both PIC and non-PIC libiberty,
827         and work around libtool warning.
828         * configure: Regenerate.
829         * Makefile.in: Likewise.
830         * lto-plugin.c (struct sym_aux): Move to new lto-plugin.h.
831         (struct sym_aux): Likewise.
832         (struct plugin_symtab): Likewise.
833         (struct plugin_file_info): Likewise.
834         (LTO_SECTION_PREFIX): Likewise.
835         (add_symbols):  Make non-static.
836         (claimed_files): Likewise.
837         (num_claimed_files): Likewise.
838         (check): Likewise.
839         (parse_table_entry): Likewise.
840         (translate): Likewise.
841         (resolve_conflicts): Likewise.
842         (process_symtab): Move to new lto-plugin-elf.c object format dependent
843         source file.
844         (claim_file_handler): Likewise, and make non-static.
845         (onload): Call new onload_format_checks function.
846         * lto-plugin.h: New file.
847         (LTO_SECTION_PREFIX): Move here.
848         (struct sym_aux): Likewise.
849         (struct plugin_symtab): Likewise.
850         (struct plugin_file_info): Likewise.
851         (claim_file_handler): Add new function prototype.
852         (onload_format_checks): Likewise.
853         (check): Declare extern.
854         (translate): Likewise.
855         (parse_table_entry): Likewise.
856         (resolve_conflicts): Likewise.
857         (add_symbols):  Likewise.
858         (claimed_files): Likewise.
859         (num_claimed_files): Likewise.
860         * lto-plugin-elf.c (process_symtab): Move here.
861         (claim_file_handler): Likewise, and make non-static.
862         (onload_format_checks): New function factored out from onload.
863         * lto-plugin-coff.c (claim_file_handler): New function stub.
864         (onload_format_checks): Likewise.
866 2010-08-05  Andi Kleen  <ak@linux.intel.com>
868         * lto-plugin.c: Include <hashtab.h>
869         (sym_aux): Add next_conflict field to save conflict chains.
870         (plugin_file_info): Add conflicts symtab.
871         (parse_table_entry): Initialize aux->next_conflict.
872         (process_symtab): Increment found.
873         (dump_symtab): Add.
874         (finish_conflict_resolution): Add.
875         (free_symtab): Add.
876         (write_resolution): Remove symbols loop and move into
877         dump_symtab. Call dump_symtab for main symbol and conflicts table.
878         Call free_symtab to free conflicts table.
879         (SWAP): Add.
880         (eq_sym): Add.
881         (hash_sym): Add.
882         (symbol_strength): Add.
883         (resolve_conflicts): Add.
884         (claim_file_handler): Add n variable. Check return value of
885         process_symtab. Call resolve_conflicts.
887 2010-07-27  Andi Kleen  <ak@linux.intel.com>
889         * lto-plugin.c (translate): Remove debug fprintf.
891 2010-07-23  H.J. Lu  <hongjiu.lu@intel.com>
893         PR bootstrap/45042
894         * lto-plugin.c (translate): Cast to unsigned long.
896 2010-07-23   Andi Kleen  <ak@linux.intel.com>
898         PR lto/44992
899         * lto-plugin.c (sym_aux): Add.
900         (plugin_symtab): Remove slots. Add aux and id.
901         (parse_table_entry): Change to use aux instead of slots.
902         (LTO_SECTION_PREFIX): Add.
903         (translate): Improve buffer allocation. Change to append
904         symbols to existing out buffer.
905         (get_section): Remove.
906         (process_symtab): Add.
907         (free_2): Free symtab->aux.
908         (write_resolution): Handle aux instead of slots.
909         Print sub id to resolution file.
910         (claim_file_handler): Clear lto_file. Replace get_symtab/translate
911         calls with call to process_symtab.
913 2010-07-22  Richard Guenther  <rguenther@suse.de>
915         * Makefile.am: New copy_lto_plugin rule to install the plugin
916         into ../gcc.
917         * Makefile.in: Regenerated.
919 2010-05-21  Richard Guenther  <rguenther@suse.de>
921         * lto-plugin.c (write_resolution): Do not assert syms is non-NULL.
923 2010-05-07  Richard Guenther <rguenther@suse.de>
925         * lto-plugin.c (free_2): Do not free resolution_file.
926         (write_resolution): Check that we were passed a resolution file.
927         (all_symbols_read_handler): Adjust.
928         (cleanup_handler): Do not remove the resolution file.
929         (process_option): Handle -fresolution=.
931 2010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
933         PR other/43620
934         * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
935         * Makefile.in: Regenerate.
937 2010-04-23  Richard Guenther  <rguenther@suse.de>
939         PR lto/41550
940         * lto-plugin.c (parse_table_entry): Use xstrdup and xrealloc.
941         (translate): Likewise.
942         (all_symbols_read_handler): Likewise.
943         (claim_file_handler): Likewise.
944         (process_option): Likewise.
945         (add_output_files): Likewise.  Remove filename length limit.
947 2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
949         * Makefile.in: Regenerate.
950         * aclocal.m4: Regenerate.
952 2010-03-16  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
954         PR lto/43336
955         * lto-plugin.c (cleanup_handler): Delete temporary output files.
957 2010-01-11  Richard Guenther  <rguenther@suse.de>
959         PR lto/41569
960         * Makefile.am: Disable dependencies.
961         * Makefile.in: Regenerated.
963 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
965         PR lto/42520
966         * lto-plugin.c (exec_lto_wrapper): Output lto-wrapper command
967         if -v is passed.
969 2009-12-05  H.J. Lu  <hongjiu.lu@intel.com>
971         PR bootstrap/42306
972         * configure: Regenerated.
973         * Makefile.in: Likewise.
975 2009-11-19  Rafael Avila de Espindola  <espindola@google.com>
977         PR bootstrap/42096
978         * lto-plugin.c (claim_file_handler): Print offsets in hex.
980 2009-11-12  Rafael Avila de Espindola  <espindola@google.com>
982         * lto-plugin.c (write_resolution): Assume resolution_file is set.
983         Print the symbol name.
984         (all_symbols_read_handler): Create a resolution file.
985         Pass it to gcc.
986         (cleanup_handler): Remove the resolution file.
987         (process_option): Drop the -resolution option.
989 2009-11-05  Rafael Avila de Espindola  <espindola@google.com>
991         * lto-plugin.c (temp_obj_dir_name): Remove.
992         (arguments_file_name): New.
993         (free_2): Free arguments_file_name instead of temp_obj_dir_name.
994         (exec_lto_wrapper):  Create arguments file with make_temp_file.
995         (cleanup_handler): Don't remove the temporary directory. Remove the
996         arguments file.
997         (onload): Don't create the temporary directory.
999 2009-11-04  Richard Guenther  <rguenther@suse.de>
1000             Rafael Avila de Espindola  <espindola@google.com>
1002         * lto-plugin.c (plugin_file_info): Remove temp field.
1003         (cleanup_handler): Don't delete temporary objects.
1004         (claim_file_handler): Don't create temporary objects.
1006 2009-11-04  Rafael Avila de Espindola  <espindola@google.com>
1008         * lto-plugin.c (cleanup_handler): Don't cleanup if debugging.
1010 2009-10-30  Rafael Avila de Espindola  <espindola@google.com>
1012         PR41871
1013         * lto-plugin.c (claim_file_handler): Close files that we created.
1015 2009-10-28  Rafael Avila de Espindola  <espindola@google.com>
1017         * lto-plugin.c (all_symbols_read_handler): Use LDPL_FATAL instead of
1018         LDPL_ERROR
1020 2009-10-27  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
1022         PR lto/41652
1023         * configure.ac: Call AC_SYS_LARGEFILE before AC_OUTPUT.
1024         * configure: Regenerate.
1026 2009-10-26  Richard Guenther  <rguenther@suse.de>
1028         * configure.ac: Use AM_MAINTAINER_MODE.
1029         * acinclude.m4: Remove.
1030         * configure: Re-generate.
1031         * Makefile.in: Likewise.
1032         * aclocal.m4: Likewise.
1034 2009-10-19  Rafael Avila de Espindola  <espindola@google.com>
1035     
1036         PR40790
1037         * configure: Regenerate.
1038         * configure.ac: Add AC_TYPE_UINT64_T.
1040 2009-10-16  Rafael Avila de Espindola  <espindola@google.com>
1042         * lto-plugin.c (message): New variable.
1043         (check): New function.
1044         (parse_table_entry, translate, write_resolution,add_output_files,
1045         exec_lto_wrapper,claim_file_handler, onload): Use check instead of
1046         assert.
1047         (cleanup_handler): Use check instead of assert. Remove the arguments
1048         file if it exists.
1050 2009-10-15  Rafael Avila de Espindola  <espindola@google.com>
1052         * lto-plugin.c (resolution_file): New.
1053         (free_1): Update comment.
1054         (free_2): Free resolution_file.
1055         (write_resolution): Write resolution to specified file. Use the
1056         syms array from the symbol table.
1057         (all_symbols_read_handler): Delay call to free_1 past call to
1058         write_resolution.
1059         (process_option): Add a -resolution option.
1061 2009-10-13  Richard Guenther  <rguenther@suse.de>
1063         * Makefile.am (liblto_plugin_la_LIBADD): Link against the
1064         correct libiberty.
1065         * Makefile.in: Regenerated.
1067 2009-10-08  Rafael Avila de Espindola  <espindola@google.com>
1069         * lto-plugin.c (add_input_library): New.
1070         (all_symbols_read_handler): Use add_input_library for items that
1071         start with -l.
1072         (process_option): Fit in 80 columns.
1073         (onload): Handle LDPT_ADD_INPUT_LIBRARY.
1075 2009-10-02  Diego Novillo  <dnovillo@google.com>
1077         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
1078         and -D_FILE_OFFSET_BITS=64.
1079         * configure.ac: Add AC_SYS_LARGEFILE.
1080         * configure: Regenerate.
1081         * Makefile.in: Regenerate.
1082         * lto-plugin.c: Fix copyright boilerplate.
1084 2009-10-02  Diego Novillo  <dnovillo@google.com>
1086         * Makefile.am (ACLOCAL_AMFLAGS): Define.
1087         * aclocal.m4: Regenerate with aclocal-2.64
1088         * acinclude.m4: Remove.
1089         * Makefile.in: Regenerate with automake-1.11
1090         * configure.ac (AC_PREREQ): Update to 2.64.
1091         * configure: Regenerate.
1093 2009-10-02  Diego Novillo  <dnovillo@google.com>
1095         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
1096         and -D_FILE_OFFSET_BITS=64.
1097         * configure.ac: Add AC_SYS_LARGEFILE.
1098         * configure: Regenerate.
1099         * Makefile.in: Regenerate.
1100         * lto-plugin.c: Fix copyright boilerplate.
1102 2009-10-02  Diego Novillo  <dnovillo@google.com>
1104         * Makefile.am (ACLOCAL_AMFLAGS): Define.
1105         * aclocal.m4: Regenerate with aclocal-2.64
1106         * acinclude.m4: Remove.
1107         * Makefile.in: Regenerate with automake-1.11
1108         * configure.ac (AC_PREREQ): Update to 2.64.
1109         * configure: Regenerate.
1111 2009-10-02  Rafael Avila de Espindola  <espindola@google.com>
1113         * Makefile.am (liblto_plugin_la_SOURCES): Remove
1114         $(top_srcdir)/../gcc/lto/common.c
1115         * Makefile.in: Regenerate.
1117 2009-10-01  Rafael Avila de Espindola  <espindola@google.com>
1119         * lto-plugin.c (pass_through_items): New.
1120         (num_pass_through_items): New.
1121         (all_symbols_read_handler): Update to use the -pass-through option.
1122         (process_option): Replace -libgcc with -pass-through.
1123         
1124 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
1126         * lto-plugin.c (onload): Return a ld_plugin_status. Don't require
1127         register_cleanup to be set.
1129 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
1131         * Makefile.am: Remove all reference to ltosymtab.
1132         * Makefile.in: Regenerate.
1133         * lto-symtab.c: Remove.
1135 2009-05-21  Diego Novillo  <dnovillo@google.com>
1137         * configure.ac: Remove call to AC_CHECK_GELF.
1138         Call AC_ARG_VAR for LIBELFLIBS and LIBELFINC.
1139         * acinclude.m4: Do not include ../config/libelf.m4
1140         * Makefile.am (LIBELFLIBS): Define.
1141         (LIBELFINC): Define.
1142         (AM_CPPFLAGS): Add $(LIBELFINC).
1143         (ltosymtab_LDADD): Add $(LIBELFLIBS).
1144         (liblto_plugin_la_LIBADD): Add $(LIBELFLIBS)
1145         * lto-plugin.c: Always include <gelf.h>
1146         * lto-symtab.c: Likewise.
1147         * configure: Regenerate.
1148         * Makefile.in: Regenerate.
1150 2009-03-23  Rafael Avila de Espindola  <espindola@google.com>
1152         * lto-plugin.c (libgcc_filename): New.
1153         (all_symbols_read_handler): Pass libgcc to the linker.
1154         (all_symbols_read_handler): Parse -libgcc
1156 2009-02-05  Rafael Avila de Espindola  <espindola@google.com>
1158         * Makefile.am (liblto_plugin_la_LIBADD): Link with libiberty.
1159         * Makefile.in: Regenerate.
1160         * lto-plugin.c (add_output_files): Argument is now a FILE.
1161         (exec_lto_wrapper): Use writeargv and pex.
1163 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
1165         Revert:
1166         2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
1167         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
1170 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
1172         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
1174 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
1176         * lto-plugin.c: Include libiberty.h.
1177         (exec_lto_wrapper, claim_file_handler): Use asprintf instead of
1178         snprintf.
1180 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
1182         * lto-plugin.c (exec_lto_wrapper): Write argv to a file. Pass that
1183         file to lto-wrapper.
1185 2009-01-28  Rafael Avila de Espindola  <espindola@google.com>
1187         * lto-plugin.c (plugin_file_info): Remove fd and elf.
1188         (parse_table_entry): strdup entry->name and entry->comdat_key.
1189         (free_1): Free name and comdat_key. Don't close the file. Don't call
1190         elf_end.
1191         (claim_file_handler): Always call elf_end.
1193 2008-12-23  Rafael Avila de Espindola  <espindola@google.com>
1195         * Makefile.am (AM_CPPFLAGS): Add -D_LARGEFILE_SOURCE
1196         -D_FILE_OFFSET_BITS=64
1197         * Makefile.in: Regenerate
1199 2008-12-22  Rafael Avila de Espindola  <espindola@google.com>
1201         * Makefile.am (gcc_version, target_noncanonical, libexecsubdir): New.
1202         (lib_LTLIBRARIES): Rename to libexecsub_LTLIBRARIES.
1203         * Makefile.in: Regenerate.
1204         * acinclude.m4: Include ../config/acx.m4 and ../lt~obsolete.m4
1205         * configure: Regenerate.
1206         * configure.ac: Add AC_SUBST(target_noncanonical).
1208 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
1210         * lto-plugin.c: Include stdbool.h.
1211         (debug, nop): Declare as bool.
1213 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
1215         * lto-plugin.c (nop): New.
1216         (use_original_files): New.
1217         (all_symbols_read_handler): Call use_original_files if nop is true.
1218         (process_option): Parse the -nop option.
1220 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
1222         * lto-plugin.c (debug): New.
1223         (exec_lto_wrapper): Print argv if debug is true.
1224         (process_option): Process the -debug command line option.
1226 2008-12-03  Rafael Avila de Espindola  <espindola@google.com>
1228         * lto-plugin.c (process_option): The argument is now a single option,
1229         not a space separated list.
1231 2008-12-02  Rafael Avila de Espindola  <espindola@google.com>
1233         * lto-plugin.c: Include sys/types.h and sys/wait.h
1234         (output_files, num_output_files, lto_wrapper_argv,
1235         lto_wrapper_num_args): New.
1236         (free_2): Free output_files.
1237         (write_resolution): Disable.
1238         (add_output_files): New.
1239         (exec_lto_wrapper): New.
1240         (all_symbols_read_handler): Run lto-wrapper.
1241         (claim_file_handler): Free lto_file.name and call elf_end.
1242         (process_option): New.
1244 2008-11-26  Rafael Espindola  <espindola@google.com>
1246         * lto-plugin.c (add_input_file): New.
1247         (get_section): Return NULL if get_section fails.
1248         (write_resolution): New.
1249         (all_symbols_read_handler): Call add_input_file.
1250         (claim_file_handler): Unlink the correct file.
1251         (onload): Record add_input_file.
1253 2008-09-23 Rafael Espindola  <espindola@google.com>
1255         * Makefile.am (ltosymtab_SOURCES, liblto_plugin_la_SOURCES):
1256         Update the location of common.c.
1257         * Makefile.in: Regenerate.
1258         * common.c: Moved to gcc/lto.
1259         * common.h: Moved to gcc/lto.
1260         * lto-plugin.c: Update the location of common.h.
1261         * lto-symtab.c: Update the location of common.h.
1263 2008-09-23 Rafael Espindola  <espindola@google.com>
1265         * common.c: Include common.h.
1266         (lto_kind_str, lto_visibility_str, lto_resolution_str): Use explicit
1267         sizes.
1268         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str): Use
1269         explicit sizes.
1271 2008-09-23 Rafael Espindola  <espindola@google.com>
1273         * lto-plugin.c (plugin_file_info): Add temp.
1274         (cleanup_handler): Only delete temporary files.
1275         (claim_file_handler): Initialize lto_file.temp.
1277 2008-09-23  Rafael Espindola  <espindola@google.com>
1279         * plugin-api.h: Moved to include.
1281 2008-09-23 Rafael Espindola  <espindola@google.com>
1283         * lto-plugin.c (all_symbols_read_handler): Print resolution in a new
1284         format.
1286 2008-09-22 Rafael Espindola  <espindola@google.com>
1288         * plugin-api.h: Copy from binutils' cvs.
1290 2008-09-22 Rafael Espindola  <espindola@google.com>
1292         * lto-symtab.c (get_symbols, add_symbols): Update signature.
1293         * plugin-api.h: Copy from binutils' cvs.
1295 2008-09-22 Rafael Espindola  <espindola@google.com>
1297         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str):
1298         Make extern
1300 2008-09-10 Rafael Espindola  <espindola@google.com>
1302         * lto-plugin.c (onload): add missing break statements and asserts.
1303         * lto-symtab.c (claim_file_handler): Make it static.
1304         (all_symbols_read_handler): Make it static.
1305         (all_file_handles): Make it static.
1306         (num_file_handles): Make it static.
1307         (register_claim_file): Make it static.
1308         (register_object): Indent properly.
1310 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
1312         * Makefile.am (ltosymtab_LDADD): Add -lelf.
1313         * Makefiel.in: Regenerate.
1314         * lto-plugin.c: Include ar.h.
1315         (claim_file_handler): Handle file->offset != 0.
1316         * lto-symtab.c: Include gelf.h.
1317         (all_file_handles): Change type.
1318         (register_object): New.
1319         (register_file): Add support for archives.
1320         (resolve): Update to new type of all_file_handles.
1321         (print): Update to new type of all_file_handles.
1322         (free_all): Update to new type of all_file_handles.
1323         (main): Update to new type of all_file_handles.
1325 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
1327         * lto-plugin.c (get_string_table): Remove.
1328         (get_section): Use elf_strptr instead of get_string_table.
1330 2008-09-08  Doug Kwan  <dougkwan@google.com>
1332         * lto-plugin.c (all_symbols_read_handler): Widen fprintf arguments
1333         to 64-bit to fix a 32-bit bootstrap failure due to format warnings.
1335 2008-09-08  Rafael Avila de Espindola  <espindola@google.com>
1337         * Makefile.am (ltosymtab_SOURCES): add common.c.
1338         (ltosymtab_CFLAGS): New.
1339         (liblto_plugin_la_SOURCES): Add common.c.
1340         * Makefile.in: Regenerate.
1341         * common.c: New.
1342         * common.h: New.
1343         * lto-plugin.c: Include stdio.h, inttypes.h and common.h.
1344         (plugin_symtab): New.
1345         (plugin_file_info): New.
1346         (register_all_symbols_read): New.
1347         (get_symbols): New.
1348         (claimed_files): New.
1349         (num_claimed_files): New.
1350         (translate): Don't drop the slot number.
1351         (free_1): New.
1352         (free_2): New.
1353         (all_symbols_read_handler): New.
1354         (claim_file_handler): Record every claimed file.
1355         (onload): Handle LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
1356         LDPT_GET_SYMBOLS.
1357         * lto-symtab.c: Include stdlib.h, string.h and common.h.
1358         (current_file_handle): Remove.
1359         (ld_plugin_all_symbols_read_handler): New.
1360         (plugin_handle): New.
1361         (file_handle): New.
1362         (all_file_handles): New.
1363         (num_file_handles): New.
1364         (get_symbols): New.
1365         (register_all_symbols_read): New.
1366         (add_symbols): Don't print the symbols, just record them.
1367         (ld_plugin_tv): Add LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
1368         LDPT_GET_SYMBOLS.
1369         (load_plugin): Use plugin_handle.
1370         (register_file): Add the file handle to all_file_handles.
1371         (resolve): New.
1372         (print): New.
1373         (unload_plugin): New.
1374         (free_all): New.
1375         (main): Call all_symbols_read_handler and free resources.
1377 2008-09-03  Rafael Avila de Espindola  <espindola@google.com>
1379         * Makefile.am (AM_CFLAGS): New.
1380         (ltosymtab_LDADD): Remove -lelf. Add -ldl.
1381         (lib_LTLIBRARIES): New.
1382         (liblto_plugin_la_SOURCES): New.
1383         (liblto_plugin_la_LIBADD): New.
1384         * Makefile.in: Regenerate.
1385         * acinclude.m4: Don't include ../config/acx.m4 and
1386         ../config/no-executables.m4.
1387         Include ../ltsugar.m4, ../ltoptions.m4, ../ltversion.m4 and
1388         ../libtool.m4.
1389         * aclocal.m4: Regenerate.
1390         * configure: Regenerate.
1391         * configure.ac: Use AM_PROG_LIBTOOL.
1392         * lto-plugin.c: New.
1393         * lto-symtab.c: Rewrite to use the plugin.
1394         * plugin-api.h: New.
1396 2008-08-25  Rafael Avila de Espindola  <espindola@google.com>
1398         * configure: Regenerate.
1399         * configure.ac: Use AC_CHECK_GELF.
1400         * lto-symtab.c: Include gelf.h.
1401         (get_string_table): Use size independent API.
1402         (printTable): Use lld to print 64 bit integers.
1404 2008-08-22  Rafael Avila de Espindola  <espindola@google.com>
1406         * lto-symtab.c (parse_table_entry): Assert entry->kind and
1407         entry->visibility are valid.
1409 2008-07-22  Rafael Avila de Espindola  <espindola@google.com>
1410         * lto-symtab.c (table_entry): Add comdat.
1411         (parse_table_entry): Read comdat.
1413 2008-08-21  Rafael Espindola  <espindola@google.com>
1415         * Makefile.am: New.
1416         * Makefile.in: New.
1417         * acinclude.m4: New.
1418         * aclocal.m4: New.
1419         * configure: New.
1420         * configure.ac: New.
1421         * lto-symtab.c: New.