* runtime/environ.c: Include unistd.h.
[official-gcc.git] / lto-plugin / ChangeLog
blobc8ed0f3f6e796295a86b1fbad3f79ae3b481522c
1 2012-09-14  David Edelsohn  <dje.gcc@gmail.com>
3         * configure: Regenerated.
5 2012-05-29  Joseph Myers  <joseph@codesourcery.com>
7         * lto-plugin.c: Fix typo.
9 2012-05-16  H.J. Lu  <hongjiu.lu@intel.com>
11         * configure: Regenerated.
13 2012-02-22  Kai Tietz  <ktietz@redhat.com>
15         PR lto/50616
16         * lto-plugin.c (PRI_LL): New macro.
17         (dump_symtab): Use PRI_LL instead of ll in print.
18         (process_symtab): Use PRI_LL instead of ll in scan.
20 2011-12-20  Andreas Schwab  <schwab@linux-m68k.org>
22         * configure: Regenerate.
24 2011-12-19  Andreas Schwab  <schwab@linux-m68k.org>
26         * configure: Regenerate.
28 2011-11-21  Andreas Tobler  <andreast@fgznet.ch>
30         * configure: Regenerate.
32 2011-10-02  Jan Hubicka  <jh@suse.cz>
34         PR lto/47247
35         * lto-plugin.c (get_symbols_v2): New variable.
36         (write_resolution): Use V2 API when available.
37         (onload): Handle LDPT_GET_SYMBOLS_V2.
39 2011-09-30  H.J. Lu  <hongjiu.lu@intel.com>
40             Andi Kleen  <ak@linux.intel.com>
42         PR lto/50568
43         * lto-plugin.c (sym_aux): Change id to unsigned long long.
44         (plugin_symtab): Likewise.
45         (dump_symtab): Likewise.
46         (resolve_conflicts): Likewise.
47         (process_symtab): Likewise.
49 2011-08-10  Richard Guenther  <rguenther@suse.de>
51         PR bootstrap/49907
52         lto-plugin/
53         * configure.ac: Use ACX_PROG_CC_WARNING_OPTS to detect -Wall presence.
54         * Makefile.am (AM_CFLAGS): Adjust.  Do not build with -Werror.
55         * configure: Regenerate.
56         * Makefile.in: Likewise.
57         * aclocal.m4: Likewise.
59 2011-04-20  Jim Meyering  <meyering@redhat.com>
61         * lto-plugin.c (free_1, free_2): Remove useless if-before-free.
63 2011-04-05  Richard Guenther  <rguenther@suse.de>
65         PR bootstrap/48431
66         * lto-plugin.c (claim_file_handler): Do not declare vars in code.
68 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
70         * Makefile.in: Regenerate.
71         * aclocal.m4: Regenerate.
72         * configure: Regenerate.
74 2011-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
76         * Makefile.am (all-local): Rename from 'all'.
77         * Makefile.in: Regenerate.
79 2011-02-12  Alexandre Oliva  <aoliva@redhat.com>
81         PR lto/47225
82         * Makefile.am (gcc_build_dir, in_gcc_libs): New.
83         (liblto_plugin_la_LDFLAGS): Add -module.
84         (copy_lto_plugin): Renamed to...
85         ($(in_gcc_libs)): ... this.  Add mkinstalldirs.  Skip copying
86         of static modules.
87         * Makefile.in: Rebuild.
89 2011-02-07  Kai Tietz  <kai.tietz@onevision.com>
91         PR lto/47225
92         * Makefile.am (Wc): New helper for encoding -Wc,.
93         (liblto_plugin_la_LIBADD): Use Wc for libiberty library.
94         (liblto_plugin_la_DEPENDENCIES): Special case pic libiberty.
95         * Makefile.in: Regenerated.
97 2011-02-07  Paolo Bonzini  <bonzini@gnu.org>
99         Revert:
101         2011-02-07  Kai Tietz  <kai.tietz@onevision.com>
103         PR lto/47225
104         * Makefile.am (Wl): New helper for encoding -Wl,.
105         (liblto_plugin_la_LIBADD): Use -Wl for libiberty library.
106         * Makefile.in: Regenerated.
108 2011-02-07  Kai Tietz  <kai.tietz@onevision.com>
110         PR lto/47225
111         * Makefile.am (Wl): New helper for encoding -Wl,.
112         (liblto_plugin_la_LIBADD): Use -Wl for libiberty library.
113         * Makefile.in: Regenerated.
115 2011-01-25  Ian Lance Taylor  <iant@google.com>
117         * lto-plugin.c (gold_version): New static variable.
118         (all_symbols_read_handler): Don't check pass_through_items if
119         using gold 1.11 or later.
120         (onload): Set gold_version if we see LDPT_GOLD_VERSION.
122 2011-01-12  Richard Guenther  <rguenther@suse.de>
124         PR lto/47264
125         * lto-plugin.c (parse_table_entry): Use memcpy to access
126         unaligned fields.
128 2010-12-20  Dave Korn  <dave.korn.cygwin@gmail.com>
130         * Makefile.am (AM_LIBTOOLFLAGS): Define, adding disable-static tag.
131         * Makefile.in: Regenerate.
133 2010-12-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
135         Revert last change.
137 2010-12-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
139         * Makefile.am (liblto_plugin_la_DEPENDENCIES): Define.
140         (liblto_plugin_la_LIBADD): Use -L../libiberty/pic -liberty.
141         (liblto_plugin_la_LDFLAGS): Use -L../libiberty -liberty.
142         * Makefile.in: Regenerate.
144 2010-12-10  Dave Korn  <dave.korn.cygwin@gmail.com>
146         PR middle-end/46674
147         PR lto/43157
148         * configure.ac (SYM_STYLE): Don't AC_DEFINE.
149         * lto-plugin.c (sym_style): Don't use it; default to ss_none.
150         * configure: Regenerate.
151         * config.h.in: Likewise.
153 2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
155         PR target/40125
156         PR lto/46695
157         * configure.ac: Invoke ACX_LT_HOST_FLAGS.
158         * Makefile.am (liblto_plugin_la_LDFLAGS): Use lt_host_flags but
159         override -bindir setting.
160         * aclocal.m4: Regenerate.
161         * configure: Regenerate.
162         * Makefile.in: Regenerate.
164 2010-12-05  Kai Tietz  <kai.tietz@onevision.com>
166         * config.h.in: Regenerated.
167         * configure: Regenerated.
168         * configure.ac (AC_CHECK_HEADERS): Replaced by AC_HEADER_SYS_WAIT.
169         * lto-plugin.c (WIFEXITED): Define default.
170         (WEXITSTATUS): Likeiwse.
172 2010-12-01  Kai Tietz  <kai.tietz@onevision.com>
174         * config.h.in: Regenerated.
175         * configure: Regenerated.
176         * Makefile.in: Regenerated.
177         * configure.ac (AC_CHECK_HEADERS): Check for sys/wait.h.
178         * lto-plugin.c:  Include sys/wait.h conditionally.
179         * aclocal.m4: Regenerated.
181 2010-11-13  Kai Tietz  <kai.tietz@onevision.com>
183         * lto-plugin.c (add_output_files): Fix memory leak.
185 2010-11-11  Dave Korn  <dave.korn.cygwin@gmail.com>
187         PR bootstrap/46397
188         PR bootstrap/46362
189         * configure.ac: Add AC_TYPE_INT64_T test.
190         * config.h.in: Regenerate.
191         * configure: Likewise.
192         * lto-plugin.c (debug): Use char not bool.
193         (nop): Likewise.
194         (check_1): Rename from check, and use int not bool for gate argument.
195         (check): Macro wrapper for the above to coerce gate argument into
196         boolean-valued integer in case it has pointer type.
197         (parse_table_entry): Use 0 not false.
198         (claim_file_handler): Avoid use of PRIx64 by splitting 64-bit size
199         into two 32-bit parts and printing as hex ints.
201 2010-11-03  Dave Korn  <dave.korn.cygwin@gmail.com>
203         PR lto/46291
204         * lto-plugin.c (claim_file_handler): Don't close file descriptor.
206 2010-11-03  Dave Korn  <dave.korn.cygwin@gmail.com>
208         PR lto/46273
209         * lto-plugin.h: Delete.
210         * lto-plugin-elf.c: Likewise.
211         * lto-plugin-coff.c: Likewise.
212         * configure.ac: Don't use libelf, don't source config.gcc.
213         (LIBELFLIBS): Delete.
214         (LIBELFINC): Delete.
215         (LTO_FORMAT): Delete.
216         (SYM_STYLE): Add AC_DEFINE var, set based on $target.
217         (config.h): Add AC_CONFIG_HEADERS directive.
218         * Makefile.am (LIBELFLIBS): Delete.
219         (LIBELFINC): Delete.
220         (LTO_FORMAT): Delete.
221         (DEFS): Import.
222         (AM_CPPFLAGS): Use it.  Don't use LIBELFINC.
223         (liblto_plugin_la_SOURCES): Don't use LTO_FORMAT, don't include
224         any object-format-specific source file in the link.
225         (liblto_plugin_la_LIBADD): Don't use LIBELFLIBS.
226         * config.h.in: Generate.
227         * configure: Regenerate.
228         * Makefile.in: Likewise.
229         * lto-plugin.c (O_BINARY): Definition moved here from lto-plugin.h.
230         (LTO_SEGMENT_NAME): New definition.
231         (LTO_SECTION_PREFIX): Definition moved here from lto-plugin.h.
232         (LTO_SECTION_PREFIX_LEN): New definition.
233         (struct sym_aux): Struct definition moved here from lto-plugin.h.
234         (struct plugin_symtab): Likewise.
235         (struct plugin_objfile): Likewise.
236         (struct plugin_objfile): New struct def.
237         (enum symbol_style): New enum type.
238         (add_symbols): Make static.
239         (claimed_files): Likewise.
240         (num_claimed_files): Likewise.
241         (sym_style): New global.
242         (check): Make static.
243         (parse_table_entry): Likewise.  Respect sym_style when extracting
244         symbol from symtab entry.
245         (translate): Make static.
246         (resolve_conflicts): Likewise.
247         (process_symtab): New function, per-section callback version of
248         old object-format-specific handling from deleted lto-plugin-elf.c.
249         (claim_file_handler): Convert ELF-specific version from deleted
250         lto-plugin-elf.c to simple_object interface and move here.
251         (process_options): Allow new '-sym-style=' option.
252         (onload): Don't call deleted onload_format_checks hook.
254 2010-10-11  Kai Tietz  <kai.tietz@onevision.com>
256         * lto-plugin.c (dump_symtab): Correct printf argument type.
257         (finish_conflict_resolution): Initialize resolution.
259 2010-10-08  H.J. Lu  <hongjiu.lu@intel.com>
261         PR bootstrap/45951
262         * configure.ac: Add AC_CANONICAL_SYSTEM.
263         * configure: Regenerated.
265 2010-10-07  Dave Korn  <dave.korn.cygwin@gmail.com>
267         * configure.ac: Source config.gcc to determine lto_binary_reader.
268         (LTO_FORMAT): New AC_SUBST variable inferred from lto_binary_reader.
269         * Makefile.am (LTO_FORMAT): Import.
270         (liblto_plugin_la_SOURCES): Add object format dependent module
271         defined by LTO_FORMAT.
272         (liblto_plugin_la_LIBADD): Allow for both PIC and non-PIC libiberty,
273         and work around libtool warning.
274         * configure: Regenerate.
275         * Makefile.in: Likewise.
276         * lto-plugin.c (struct sym_aux): Move to new lto-plugin.h.
277         (struct sym_aux): Likewise.
278         (struct plugin_symtab): Likewise.
279         (struct plugin_file_info): Likewise.
280         (LTO_SECTION_PREFIX): Likewise.
281         (add_symbols):  Make non-static.
282         (claimed_files): Likewise.
283         (num_claimed_files): Likewise.
284         (check): Likewise.
285         (parse_table_entry): Likewise.
286         (translate): Likewise.
287         (resolve_conflicts): Likewise.
288         (process_symtab): Move to new lto-plugin-elf.c object format dependent
289         source file.
290         (claim_file_handler): Likewise, and make non-static.
291         (onload): Call new onload_format_checks function.
292         * lto-plugin.h: New file.
293         (LTO_SECTION_PREFIX): Move here.
294         (struct sym_aux): Likewise.
295         (struct plugin_symtab): Likewise.
296         (struct plugin_file_info): Likewise.
297         (claim_file_handler): Add new function prototype.
298         (onload_format_checks): Likewise.
299         (check): Declare extern.
300         (translate): Likewise.
301         (parse_table_entry): Likewise.
302         (resolve_conflicts): Likewise.
303         (add_symbols):  Likewise.
304         (claimed_files): Likewise.
305         (num_claimed_files): Likewise.
306         * lto-plugin-elf.c (process_symtab): Move here.
307         (claim_file_handler): Likewise, and make non-static.
308         (onload_format_checks): New function factored out from onload.
309         * lto-plugin-coff.c (claim_file_handler): New function stub.
310         (onload_format_checks): Likewise.
312 2010-08-05  Andi Kleen  <ak@linux.intel.com>
314         * lto-plugin.c: Include <hashtab.h>
315         (sym_aux): Add next_conflict field to save conflict chains.
316         (plugin_file_info): Add conflicts symtab.
317         (parse_table_entry): Initialize aux->next_conflict.
318         (process_symtab): Increment found.
319         (dump_symtab): Add.
320         (finish_conflict_resolution): Add.
321         (free_symtab): Add.
322         (write_resolution): Remove symbols loop and move into
323         dump_symtab. Call dump_symtab for main symbol and conflicts table.
324         Call free_symtab to free conflicts table.
325         (SWAP): Add.
326         (eq_sym): Add.
327         (hash_sym): Add.
328         (symbol_strength): Add.
329         (resolve_conflicts): Add.
330         (claim_file_handler): Add n variable. Check return value of
331         process_symtab. Call resolve_conflicts.
333 2010-07-27  Andi Kleen <ak@linux.intel.com>
335         * lto-plugin.c (translate): Remove debug fprintf.
337 2010-07-23  H.J. Lu  <hongjiu.lu@intel.com>
339         PR bootstrap/45042
340         * lto-plugin.c (translate): Cast to unsigned long.
342 2010-07-23   Andi Kleen <ak@linux.intel.com>
344         PR lto/44992
345         * lto-plugin.c (sym_aux): Add.
346         (plugin_symtab): Remove slots. Add aux and id.
347         (parse_table_entry): Change to use aux instead of slots.
348         (LTO_SECTION_PREFIX): Add.
349         (translate): Improve buffer allocation. Change to append
350         symbols to existing out buffer.
351         (get_section): Remove.
352         (process_symtab): Add.
353         (free_2): Free symtab->aux.
354         (write_resolution): Handle aux instead of slots.
355         Print sub id to resolution file.
356         (claim_file_handler): Clear lto_file. Replace get_symtab/translate
357         calls with call to process_symtab.
359 2010-07-22  Richard Guenther  <rguenther@suse.de>
361         * Makefile.am: New copy_lto_plugin rule to install the plugin
362         into ../gcc.
363         * Makefile.in: Regenerated.
365 2010-05-21  Richard Guenther  <rguenther@suse.de>
367         * lto-plugin.c (write_resolution): Do not assert syms is non-NULL.
369 2010-05-07  Richard Guenther <rguenther@suse.de>
371         * lto-plugin.c (free_2): Do not free resolution_file.
372         (write_resolution): Check that we were passed a resolution file.
373         (all_symbols_read_handler): Adjust.
374         (cleanup_handler): Do not remove the resolution file.
375         (process_option): Handle -fresolution=.
377 2010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
379         PR other/43620
380         * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
381         * Makefile.in: Regenerate.
383 2010-04-23  Richard Guenther  <rguenther@suse.de>
385         PR lto/41550
386         * lto-plugin.c (parse_table_entry): Use xstrdup and xrealloc.
387         (translate): Likewise.
388         (all_symbols_read_handler): Likewise.
389         (claim_file_handler): Likewise.
390         (process_option): Likewise.
391         (add_output_files): Likewise.  Remove filename length limit.
393 2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
395         * Makefile.in: Regenerate.
396         * aclocal.m4: Regenerate.
398 2010-03-16  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
400         PR lto/43336
401         * lto-plugin.c (cleanup_handler): Delete temporary output files.
403 2010-01-11  Richard Guenther  <rguenther@suse.de>
405         PR lto/41569
406         * Makefile.am: Disable dependencies.
407         * Makefile.in: Regenerated.
409 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
411         PR lto/42520
412         * lto-plugin.c (exec_lto_wrapper): Output lto-wrapper command
413         if -v is passed.
415 2009-12-05  H.J. Lu  <hongjiu.lu@intel.com>
417         PR bootstrap/42306
418         * configure: Regenerated.
419         * Makefile.in: Likewise.
421 2009-11-19  Rafael Avila de Espindola  <espindola@google.com>
423         PR bootstrap/42096
424         * lto-plugin.c (claim_file_handler): Print offsets in hex.
426 2009-11-12  Rafael Avila de Espindola  <espindola@google.com>
428         * lto-plugin.c (write_resolution): Assume resolution_file is set.
429         Print the symbol name.
430         (all_symbols_read_handler): Create a resolution file.
431         Pass it to gcc.
432         (cleanup_handler): Remove the resolution file.
433         (process_option): Drop the -resolution option.
435 2009-11-05  Rafael Avila de Espindola  <espindola@google.com>
437         * lto-plugin.c (temp_obj_dir_name): Remove.
438         (arguments_file_name): New.
439         (free_2): Free arguments_file_name instead of temp_obj_dir_name.
440         (exec_lto_wrapper):  Create arguments file with make_temp_file.
441         (cleanup_handler): Don't remove the temporary directory. Remove the
442         arguments file.
443         (onload): Don't create the temporary directory.
445 2009-11-04  Richard Guenther  <rguenther@suse.de>
446             Rafael Avila de Espindola  <espindola@google.com>
448         * lto-plugin.c (plugin_file_info): Remove temp field.
449         (cleanup_handler): Don't delete temporary objects.
450         (claim_file_handler): Don't create temporary objects.
452 2009-11-04  Rafael Avila de Espindola  <espindola@google.com>
454         * lto-plugin.c (cleanup_handler): Don't cleanup if debugging.
456 2009-10-30  Rafael Avila de Espindola  <espindola@google.com>
458         PR41871
459         * lto-plugin.c (claim_file_handler): Close files that we created.
461 2009-10-28  Rafael Avila de Espindola  <espindola@google.com>
463         * lto-plugin.c (all_symbols_read_handler): Use LDPL_FATAL instead of
464         LDPL_ERROR
466 2009-10-27  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
468         PR lto/41652
469         * configure.ac: Call AC_SYS_LARGEFILE before AC_OUTPUT.
470         * configure: Regenerate.
472 2009-10-26  Richard Guenther  <rguenther@suse.de>
474         * configure.ac: Use AM_MAINTAINER_MODE.
475         * acinclude.m4: Remove.
476         * configure: Re-generate.
477         * Makefile.in: Likewise.
478         * aclocal.m4: Likewise.
480 2009-10-19  Rafael Avila de Espindola  <espindola@google.com>
481     
482         PR40790
483         * configure: Regenerate.
484         * configure.ac: Add AC_TYPE_UINT64_T.
486 2009-10-16  Rafael Avila de Espindola  <espindola@google.com>
488         * lto-plugin.c (message): New variable.
489         (check): New function.
490         (parse_table_entry, translate, write_resolution,add_output_files,
491         exec_lto_wrapper,claim_file_handler, onload): Use check instead of
492         assert.
493         (cleanup_handler): Use check instead of assert. Remove the arguments
494         file if it exists.
496 2009-10-15  Rafael Avila de Espindola  <espindola@google.com>
498         * lto-plugin.c (resolution_file): New.
499         (free_1): Update comment.
500         (free_2): Free resolution_file.
501         (write_resolution): Write resolution to specified file. Use the
502         syms array from the symbol table.
503         (all_symbols_read_handler): Delay call to free_1 past call to
504         write_resolution.
505         (process_option): Add a -resolution option.
507 2009-10-13  Richard Guenther  <rguenther@suse.de>
509         * Makefile.am (liblto_plugin_la_LIBADD): Link against the
510         correct libiberty.
511         * Makefile.in: Regenerated.
513 2009-10-08  Rafael Avila de Espindola  <espindola@google.com>
515         * lto-plugin.c (add_input_library): New.
516         (all_symbols_read_handler): Use add_input_library for items that
517         start with -l.
518         (process_option): Fit in 80 columns.
519         (onload): Handle LDPT_ADD_INPUT_LIBRARY.
521 2009-10-02  Diego Novillo  <dnovillo@google.com>
523         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
524         and -D_FILE_OFFSET_BITS=64.
525         * configure.ac: Add AC_SYS_LARGEFILE.
526         * configure: Regenerate.
527         * Makefile.in: Regenerate.
528         * lto-plugin.c: Fix copyright boilerplate.
530 2009-10-02  Diego Novillo  <dnovillo@google.com>
532         * Makefile.am (ACLOCAL_AMFLAGS): Define.
533         * aclocal.m4: Regenerate with aclocal-2.64
534         * acinclude.m4: Remove.
535         * Makefile.in: Regenerate with automake-1.11
536         * configure.ac (AC_PREREQ): Update to 2.64.
537         * configure: Regenerate.
539 2009-10-02  Diego Novillo  <dnovillo@google.com>
541         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
542         and -D_FILE_OFFSET_BITS=64.
543         * configure.ac: Add AC_SYS_LARGEFILE.
544         * configure: Regenerate.
545         * Makefile.in: Regenerate.
546         * lto-plugin.c: Fix copyright boilerplate.
548 2009-10-02  Diego Novillo  <dnovillo@google.com>
550         * Makefile.am (ACLOCAL_AMFLAGS): Define.
551         * aclocal.m4: Regenerate with aclocal-2.64
552         * acinclude.m4: Remove.
553         * Makefile.in: Regenerate with automake-1.11
554         * configure.ac (AC_PREREQ): Update to 2.64.
555         * configure: Regenerate.
557 2009-10-02  Rafael Avila de Espindola  <espindola@google.com>
559         * Makefile.am (liblto_plugin_la_SOURCES): Remove
560         $(top_srcdir)/../gcc/lto/common.c
561         * Makefile.in: Regenerate.
563 2009-10-01  Rafael Avila de Espindola  <espindola@google.com>
565         * lto-plugin.c (pass_through_items): New.
566         (num_pass_through_items): New.
567         (all_symbols_read_handler): Update to use the -pass-through option.
568         (process_option): Replace -libgcc with -pass-through.
569         
570 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
572         * lto-plugin.c (onload): Return a ld_plugin_status. Don't require
573         register_cleanup to be set.
575 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
577         * Makefile.am: Remove all reference to ltosymtab.
578         * Makefile.in: Regenerate.
579         * lto-symtab.c: Remove.
581 2009-05-21  Diego Novillo  <dnovillo@google.com>
583         * configure.ac: Remove call to AC_CHECK_GELF.
584         Call AC_ARG_VAR for LIBELFLIBS and LIBELFINC.
585         * acinclude.m4: Do not include ../config/libelf.m4
586         * Makefile.am (LIBELFLIBS): Define.
587         (LIBELFINC): Define.
588         (AM_CPPFLAGS): Add $(LIBELFINC).
589         (ltosymtab_LDADD): Add $(LIBELFLIBS).
590         (liblto_plugin_la_LIBADD): Add $(LIBELFLIBS)
591         * lto-plugin.c: Always include <gelf.h>
592         * lto-symtab.c: Likewise.
593         * configure: Regenerate.
594         * Makefile.in: Regenerate.
596 2009-03-23  Rafael Avila de Espindola  <espindola@google.com>
598         * lto-plugin.c (libgcc_filename): New.
599         (all_symbols_read_handler): Pass libgcc to the linker.
600         (all_symbols_read_handler): Parse -libgcc
602 2009-02-05  Rafael Avila de Espindola  <espindola@google.com>
604         * Makefile.am (liblto_plugin_la_LIBADD): Link with libiberty.
605         * Makefile.in: Regenerate.
606         * lto-plugin.c (add_output_files): Argument is now a FILE.
607         (exec_lto_wrapper): Use writeargv and pex.
609 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
611         Revert:
612         2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
613         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
616 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
618         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
620 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
622         * lto-plugin.c: Include libiberty.h.
623         (exec_lto_wrapper, claim_file_handler): Use asprintf instead of
624         snprintf.
626 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
628         * lto-plugin.c (exec_lto_wrapper): Write argv to a file. Pass that
629         file to lto-wrapper.
631 2009-01-28  Rafael Avila de Espindola  <espindola@google.com>
633         * lto-plugin.c (plugin_file_info): Remove fd and elf.
634         (parse_table_entry): strdup entry->name and entry->comdat_key.
635         (free_1): Free name and comdat_key. Don't close the file. Don't call
636         elf_end.
637         (claim_file_handler): Always call elf_end.
639 2008-12-23  Rafael Avila de Espindola  <espindola@google.com>
641         * Makefile.am (AM_CPPFLAGS): Add -D_LARGEFILE_SOURCE
642         -D_FILE_OFFSET_BITS=64
643         * Makefile.in: Regenerate
645 2008-12-22  Rafael Avila de Espindola  <espindola@google.com>
647         * Makefile.am (gcc_version, target_noncanonical, libexecsubdir): New.
648         (lib_LTLIBRARIES): Rename to libexecsub_LTLIBRARIES.
649         * Makefile.in: Regenerate.
650         * acinclude.m4: Include ../config/acx.m4 and ../lt~obsolete.m4
651         * configure: Regenerate.
652         * configure.ac: Add AC_SUBST(target_noncanonical).
654 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
656         * lto-plugin.c: Include stdbool.h.
657         (debug, nop): Declare as bool.
659 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
661         * lto-plugin.c (nop): New.
662         (use_original_files): New.
663         (all_symbols_read_handler): Call use_original_files if nop is true.
664         (process_option): Parse the -nop option.
666 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
668         * lto-plugin.c (debug): New.
669         (exec_lto_wrapper): Print argv if debug is true.
670         (process_option): Process the -debug command line option.
672 2008-12-03  Rafael Avila de Espindola  <espindola@google.com>
674         * lto-plugin.c (process_option): The argument is now a single option,
675         not a space separated list.
677 2008-12-02  Rafael Avila de Espindola  <espindola@google.com>
679         * lto-plugin.c: Include sys/types.h and sys/wait.h
680         (output_files, num_output_files, lto_wrapper_argv,
681         lto_wrapper_num_args): New.
682         (free_2): Free output_files.
683         (write_resolution): Disable.
684         (add_output_files): New.
685         (exec_lto_wrapper): New.
686         (all_symbols_read_handler): Run lto-wrapper.
687         (claim_file_handler): Free lto_file.name and call elf_end.
688         (process_option): New.
690 2008-11-26  Rafael Espindola  <espindola@google.com>
692         * lto-plugin.c (add_input_file): New.
693         (get_section): Return NULL if get_section fails.
694         (write_resolution): New.
695         (all_symbols_read_handler): Call add_input_file.
696         (claim_file_handler): Unlink the correct file.
697         (onload): Record add_input_file.
699 2008-09-23 Rafael Espindola  <espindola@google.com>
701         * Makefile.am (ltosymtab_SOURCES, liblto_plugin_la_SOURCES):
702         Update the location of common.c.
703         * Makefile.in: Regenerate.
704         * common.c: Moved to gcc/lto.
705         * common.h: Moved to gcc/lto.
706         * lto-plugin.c: Update the location of common.h.
707         * lto-symtab.c: Update the location of common.h.
709 2008-09-23 Rafael Espindola  <espindola@google.com>
711         * common.c: Include common.h.
712         (lto_kind_str, lto_visibility_str, lto_resolution_str): Use explicit
713         sizes.
714         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str): Use
715         explicit sizes.
717 2008-09-23 Rafael Espindola  <espindola@google.com>
719         * lto-plugin.c (plugin_file_info): Add temp.
720         (cleanup_handler): Only delete temporary files.
721         (claim_file_handler): Initialize lto_file.temp.
723 2008-09-23  Rafael Espindola  <espindola@google.com>
725         * plugin-api.h: Moved to include.
727 2008-09-23 Rafael Espindola  <espindola@google.com>
729         * lto-plugin.c (all_symbols_read_handler): Print resolution in a new
730         format.
732 2008-09-22 Rafael Espindola  <espindola@google.com>
734         * plugin-api.h: Copy from binutils' cvs.
736 2008-09-22 Rafael Espindola  <espindola@google.com>
738         * lto-symtab.c (get_symbols, add_symbols): Update signature.
739         * plugin-api.h: Copy from binutils' cvs.
741 2008-09-22 Rafael Espindola  <espindola@google.com>
743         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str):
744         Make extern
746 2008-09-10 Rafael Espindola  <espindola@google.com>
748         * lto-plugin.c (onload): add missing break statements and asserts.
749         * lto-symtab.c (claim_file_handler): Make it static.
750         (all_symbols_read_handler): Make it static.
751         (all_file_handles): Make it static.
752         (num_file_handles): Make it static.
753         (register_claim_file): Make it static.
754         (register_object): Indent properly.
756 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
758         * Makefile.am (ltosymtab_LDADD): Add -lelf.
759         * Makefiel.in: Regenerate.
760         * lto-plugin.c: Include ar.h.
761         (claim_file_handler): Handle file->offset != 0.
762         * lto-symtab.c: Include gelf.h.
763         (all_file_handles): Change type.
764         (register_object): New.
765         (register_file): Add support for archives.
766         (resolve): Update to new type of all_file_handles.
767         (print): Update to new type of all_file_handles.
768         (free_all): Update to new type of all_file_handles.
769         (main): Update to new type of all_file_handles.
771 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
773         * lto-plugin.c (get_string_table): Remove.
774         (get_section): Use elf_strptr instead of get_string_table.
776 2008-09-08  Doug Kwan  <dougkwan@google.com>
778         * lto-plugin.c (all_symbols_read_handler): Widen fprintf arguments
779         to 64-bit to fix a 32-bit bootstrap failure due to format warnings.
781 2008-09-08  Rafael Avila de Espindola  <espindola@google.com>
783         * Makefile.am (ltosymtab_SOURCES): add common.c.
784         (ltosymtab_CFLAGS): New.
785         (liblto_plugin_la_SOURCES): Add common.c.
786         * Makefile.in: Regenerate.
787         * common.c: New.
788         * common.h: New.
789         * lto-plugin.c: Include stdio.h, inttypes.h and common.h.
790         (plugin_symtab): New.
791         (plugin_file_info): New.
792         (register_all_symbols_read): New.
793         (get_symbols): New.
794         (claimed_files): New.
795         (num_claimed_files): New.
796         (translate): Don't drop the slot number.
797         (free_1): New.
798         (free_2): New.
799         (all_symbols_read_handler): New.
800         (claim_file_handler): Record every claimed file.
801         (onload): Handle LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
802         LDPT_GET_SYMBOLS.
803         * lto-symtab.c: Include stdlib.h, string.h and common.h.
804         (current_file_handle): Remove.
805         (ld_plugin_all_symbols_read_handler): New.
806         (plugin_handle): New.
807         (file_handle): New.
808         (all_file_handles): New.
809         (num_file_handles): New.
810         (get_symbols): New.
811         (register_all_symbols_read): New.
812         (add_symbols): Don't print the symbols, just record them.
813         (ld_plugin_tv): Add LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
814         LDPT_GET_SYMBOLS.
815         (load_plugin): Use plugin_handle.
816         (register_file): Add the file handle to all_file_handles.
817         (resolve): New.
818         (print): New.
819         (unload_plugin): New.
820         (free_all): New.
821         (main): Call all_symbols_read_handler and free resources.
823 2008-09-03  Rafael Avila de Espindola  <espindola@google.com>
825         * Makefile.am (AM_CFLAGS): New.
826         (ltosymtab_LDADD): Remove -lelf. Add -ldl.
827         (lib_LTLIBRARIES): New.
828         (liblto_plugin_la_SOURCES): New.
829         (liblto_plugin_la_LIBADD): New.
830         * Makefile.in: Regenerate.
831         * acinclude.m4: Don't include ../config/acx.m4 and
832         ../config/no-executables.m4.
833         Include ../ltsugar.m4, ../ltoptions.m4, ../ltversion.m4 and
834         ../libtool.m4.
835         * aclocal.m4: Regenerate.
836         * configure: Regenerate.
837         * configure.ac: Use AM_PROG_LIBTOOL.
838         * lto-plugin.c: New.
839         * lto-symtab.c: Rewrite to use the plugin.
840         * plugin-api.h: New.
842 2008-08-25  Rafael Avila de Espindola  <espindola@google.com>
844         * configure: Regenerate.
845         * configure.ac: Use AC_CHECK_GELF.
846         * lto-symtab.c: Include gelf.h.
847         (get_string_table): Use size independent API.
848         (printTable): Use lld to print 64 bit integers.
850 2008-08-22  Rafael Avila de Espindola  <espindola@google.com>
852         * lto-symtab.c (parse_table_entry): Assert entry->kind and
853         entry->visibility are valid.
855 2008-07-22  Rafael Avila de Espindola  <espindola@google.com>
856         * lto-symtab.c (table_entry): Add comdat.
857         (parse_table_entry): Read comdat.
859 2008-08-21  Rafael Espindola  <espindola@google.com>
861         * Makefile.am: New.
862         * Makefile.in: New.
863         * acinclude.m4: New.
864         * aclocal.m4: New.
865         * configure: New.
866         * configure.ac: New.
867         * lto-symtab.c: New.