lto-plugin.c (message): New variable.
[official-gcc.git] / lto-plugin / ChangeLog
blob01d7f4c87da262b3e9f28ab7cfc445d4885d993e
1 2009-10-16  Rafael Avila de Espindola  <espindola@google.com>
3         * lto-plugin.c (message): New variable.
4         (check): New function.
5         (parse_table_entry, translate, write_resolution,add_output_files,
6         exec_lto_wrapper,claim_file_handler, onload): Use check instead of
7         assert.
8         (cleanup_handler): Use check instead of assert. Remove the arguments
9         file if it exists.
11 2009-10-15  Rafael Avila de Espindola  <espindola@google.com>
13         * lto-plugin.c (resolution_file): New.
14         (free_1): Update comment.
15         (free_2): Free resolution_file.
16         (write_resolution): Write resolution to specified file. Use the
17         syms array from the symbol table.
18         (all_symbols_read_handler): Delay call to free_1 past call to
19         write_resolution.
20         (process_option): Add a -resolution option.
22 2009-10-13  Richard Guenther  <rguenther@suse.de>
24         * Makefile.am (liblto_plugin_la_LIBADD): Link against the
25         correct libiberty.
26         * Makefile.in: Regenerated.
28 2009-10-08  Rafael Avila de Espindola  <espindola@google.com>
30         * lto-plugin.c (add_input_library): New.
31         (all_symbols_read_handler): Use add_input_library for items that
32         start with -l.
33         (process_option): Fit in 80 columns.
34         (onload): Handle LDPT_ADD_INPUT_LIBRARY.
36 2009-10-02  Diego Novillo  <dnovillo@google.com>
38         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
39         and -D_FILE_OFFSET_BITS=64.
40         * configure.ac: Add AC_SYS_LARGEFILE.
41         * configure: Regenerate.
42         * Makefile.in: Regenerate.
43         * lto-plugin.c: Fix copyright boilerplate.
45 2009-10-02  Diego Novillo  <dnovillo@google.com>
47         * Makefile.am (ACLOCAL_AMFLAGS): Define.
48         * aclocal.m4: Regenerate with aclocal-2.64
49         * acinclude.m4: Remove.
50         * Makefile.in: Regenerate with automake-1.11
51         * configure.ac (AC_PREREQ): Update to 2.64.
52         * configure: Regenerate.
54 2009-10-02  Diego Novillo  <dnovillo@google.com>
56         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
57         and -D_FILE_OFFSET_BITS=64.
58         * configure.ac: Add AC_SYS_LARGEFILE.
59         * configure: Regenerate.
60         * Makefile.in: Regenerate.
61         * lto-plugin.c: Fix copyright boilerplate.
63 2009-10-02  Diego Novillo  <dnovillo@google.com>
65         * Makefile.am (ACLOCAL_AMFLAGS): Define.
66         * aclocal.m4: Regenerate with aclocal-2.64
67         * acinclude.m4: Remove.
68         * Makefile.in: Regenerate with automake-1.11
69         * configure.ac (AC_PREREQ): Update to 2.64.
70         * configure: Regenerate.
72 2009-10-02  Rafael Avila de Espindola  <espindola@google.com>
74         * Makefile.am (liblto_plugin_la_SOURCES): Remove
75         $(top_srcdir)/../gcc/lto/common.c
76         * Makefile.in: Regenerate.
78 2009-10-01  Rafael Avila de Espindola  <espindola@google.com>
80         * lto-plugin.c (pass_through_items): New.
81         (num_pass_through_items): New.
82         (all_symbols_read_handler): Update to use the -pass-through option.
83         (process_option): Replace -libgcc with -pass-through.
84         
85 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
87         * lto-plugin.c (onload): Return a ld_plugin_status. Don't require
88         register_cleanup to be set.
90 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
92         * Makefile.am: Remove all reference to ltosymtab.
93         * Makefile.in: Regenerate.
94         * lto-symtab.c: Remove.
96 2009-05-21  Diego Novillo  <dnovillo@google.com>
98         * configure.ac: Remove call to AC_CHECK_GELF.
99         Call AC_ARG_VAR for LIBELFLIBS and LIBELFINC.
100         * acinclude.m4: Do not include ../config/libelf.m4
101         * Makefile.am (LIBELFLIBS): Define.
102         (LIBELFINC): Define.
103         (AM_CPPFLAGS): Add $(LIBELFINC).
104         (ltosymtab_LDADD): Add $(LIBELFLIBS).
105         (liblto_plugin_la_LIBADD): Add $(LIBELFLIBS)
106         * lto-plugin.c: Always include <gelf.h>
107         * lto-symtab.c: Likewise.
108         * configure: Regenerate.
109         * Makefile.in: Regenerate.
111 2009-03-23  Rafael Avila de Espindola  <espindola@google.com>
113         * lto-plugin.c (libgcc_filename): New.
114         (all_symbols_read_handler): Pass libgcc to the linker.
115         (all_symbols_read_handler): Parse -libgcc
117 2009-02-05  Rafael Avila de Espindola  <espindola@google.com>
119         * Makefile.am (liblto_plugin_la_LIBADD): Link with libiberty.
120         * Makefile.in: Regenerate.
121         * lto-plugin.c (add_output_files): Argument is now a FILE.
122         (exec_lto_wrapper): Use writeargv and pex.
124 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
126         Revert:
127         2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
128         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
131 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
133         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
135 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
137         * lto-plugin.c: Include libiberty.h.
138         (exec_lto_wrapper, claim_file_handler): Use asprintf instead of
139         snprintf.
141 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
143         * lto-plugin.c (exec_lto_wrapper): Write argv to a file. Pass that
144         file to lto-wrapper.
146 2009-01-28  Rafael Avila de Espindola  <espindola@google.com>
148         * lto-plugin.c (plugin_file_info): Remove fd and elf.
149         (parse_table_entry): strdup entry->name and entry->comdat_key.
150         (free_1): Free name and comdat_key. Don't close the file. Don't call
151         elf_end.
152         (claim_file_handler): Always call elf_end.
154 2008-12-23  Rafael Avila de Espindola  <espindola@google.com>
156         * Makefile.am (AM_CPPFLAGS): Add -D_LARGEFILE_SOURCE
157         -D_FILE_OFFSET_BITS=64
158         * Makefile.in: Regenerate
160 2008-12-22  Rafael Avila de Espindola  <espindola@google.com>
162         * Makefile.am (gcc_version, target_noncanonical, libexecsubdir): New.
163         (lib_LTLIBRARIES): Rename to libexecsub_LTLIBRARIES.
164         * Makefile.in: Regenerate.
165         * acinclude.m4: Include ../config/acx.m4 and ../lt~obsolete.m4
166         * configure: Regenerate.
167         * configure.ac: Add AC_SUBST(target_noncanonical).
169 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
171         * lto-plugin.c: Include stdbool.h.
172         (debug, nop): Declare as bool.
174 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
176         * lto-plugin.c (nop): New.
177         (use_original_files): New.
178         (all_symbols_read_handler): Call use_original_files if nop is true.
179         (process_option): Parse the -nop option.
181 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
183         * lto-plugin.c (debug): New.
184         (exec_lto_wrapper): Print argv if debug is true.
185         (process_option): Process the -debug command line option.
187 2008-12-03  Rafael Avila de Espindola  <espindola@google.com>
189         * lto-plugin.c (process_option): The argument is now a single option,
190         not a space separated list.
192 2008-12-02  Rafael Avila de Espindola  <espindola@google.com>
194         * lto-plugin.c: Include sys/types.h and sys/wait.h
195         (output_files, num_output_files, lto_wrapper_argv,
196         lto_wrapper_num_args): New.
197         (free_2): Free output_files.
198         (write_resolution): Disable.
199         (add_output_files): New.
200         (exec_lto_wrapper): New.
201         (all_symbols_read_handler): Run lto-wrapper.
202         (claim_file_handler): Free lto_file.name and call elf_end.
203         (process_option): New.
205 2008-11-26  Rafael Espindola  <espindola@google.com>
207         * lto-plugin.c (add_input_file): New.
208         (get_section): Return NULL if get_section fails.
209         (write_resolution): New.
210         (all_symbols_read_handler): Call add_input_file.
211         (claim_file_handler): Unlink the correct file.
212         (onload): Record add_input_file.
214 2008-09-23 Rafael Espindola  <espindola@google.com>
216         * Makefile.am (ltosymtab_SOURCES, liblto_plugin_la_SOURCES):
217         Update the location of common.c.
218         * Makefile.in: Regenerate.
219         * common.c: Moved to gcc/lto.
220         * common.h: Moved to gcc/lto.
221         * lto-plugin.c: Update the location of common.h.
222         * lto-symtab.c: Update the location of common.h.
224 2008-09-23 Rafael Espindola  <espindola@google.com>
226         * common.c: Include common.h.
227         (lto_kind_str, lto_visibility_str, lto_resolution_str): Use explicit
228         sizes.
229         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str): Use
230         explicit sizes.
232 2008-09-23 Rafael Espindola  <espindola@google.com>
234         * lto-plugin.c (plugin_file_info): Add temp.
235         (cleanup_handler): Only delete temporary files.
236         (claim_file_handler): Initialize lto_file.temp.
238 2008-09-23  Rafael Espindola  <espindola@google.com>
240         * plugin-api.h: Moved to include.
242 2008-09-23 Rafael Espindola  <espindola@google.com>
244         * lto-plugin.c (all_symbols_read_handler): Print resolution in a new
245         format.
247 2008-09-22 Rafael Espindola  <espindola@google.com>
249         * plugin-api.h: Copy from binutils' cvs.
251 2008-09-22 Rafael Espindola  <espindola@google.com>
253         * lto-symtab.c (get_symbols, add_symbols): Update signature.
254         * plugin-api.h: Copy from binutils' cvs.
256 2008-09-22 Rafael Espindola  <espindola@google.com>
258         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str):
259         Make extern
261 2008-09-10 Rafael Espindola  <espindola@google.com>
263         * lto-plugin.c (onload): add missing break statements and asserts.
264         * lto-symtab.c (claim_file_handler): Make it static.
265         (all_symbols_read_handler): Make it static.
266         (all_file_handles): Make it static.
267         (num_file_handles): Make it static.
268         (register_claim_file): Make it static.
269         (register_object): Indent properly.
271 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
273         * Makefile.am (ltosymtab_LDADD): Add -lelf.
274         * Makefiel.in: Regenerate.
275         * lto-plugin.c: Include ar.h.
276         (claim_file_handler): Handle file->offset != 0.
277         * lto-symtab.c: Include gelf.h.
278         (all_file_handles): Change type.
279         (register_object): New.
280         (register_file): Add support for archives.
281         (resolve): Update to new type of all_file_handles.
282         (print): Update to new type of all_file_handles.
283         (free_all): Update to new type of all_file_handles.
284         (main): Update to new type of all_file_handles.
286 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
288         * lto-plugin.c (get_string_table): Remove.
289         (get_section): Use elf_strptr instead of get_string_table.
291 2008-09-08  Doug Kwan  <dougkwan@google.com>
293         * lto-plugin.c (all_symbols_read_handler): Widen fprintf arguments
294         to 64-bit to fix a 32-bit bootstrap failure due to format warnings.
296 2008-09-08  Rafael Avila de Espindola  <espindola@google.com>
298         * Makefile.am (ltosymtab_SOURCES): add common.c.
299         (ltosymtab_CFLAGS): New.
300         (liblto_plugin_la_SOURCES): Add common.c.
301         * Makefile.in: Regenerate.
302         * common.c: New.
303         * common.h: New.
304         * lto-plugin.c: Include stdio.h, inttypes.h and common.h.
305         (plugin_symtab): New.
306         (plugin_file_info): New.
307         (register_all_symbols_read): New.
308         (get_symbols): New.
309         (claimed_files): New.
310         (num_claimed_files): New.
311         (translate): Don't drop the slot number.
312         (free_1): New.
313         (free_2): New.
314         (all_symbols_read_handler): New.
315         (claim_file_handler): Record every claimed file.
316         (onload): Handle LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
317         LDPT_GET_SYMBOLS.
318         * lto-symtab.c: Include stdlib.h, string.h and common.h.
319         (current_file_handle): Remove.
320         (ld_plugin_all_symbols_read_handler): New.
321         (plugin_handle): New.
322         (file_handle): New.
323         (all_file_handles): New.
324         (num_file_handles): New.
325         (get_symbols): New.
326         (register_all_symbols_read): New.
327         (add_symbols): Don't print the symbols, just record them.
328         (ld_plugin_tv): Add LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
329         LDPT_GET_SYMBOLS.
330         (load_plugin): Use plugin_handle.
331         (register_file): Add the file handle to all_file_handles.
332         (resolve): New.
333         (print): New.
334         (unload_plugin): New.
335         (free_all): New.
336         (main): Call all_symbols_read_handler and free resources.
338 2008-09-03  Rafael Avila de Espindola  <espindola@google.com>
340         * Makefile.am (AM_CFLAGS): New.
341         (ltosymtab_LDADD): Remove -lelf. Add -ldl.
342         (lib_LTLIBRARIES): New.
343         (liblto_plugin_la_SOURCES): New.
344         (liblto_plugin_la_LIBADD): New.
345         * Makefile.in: Regenerate.
346         * acinclude.m4: Don't include ../config/acx.m4 and
347         ../config/no-executables.m4.
348         Include ../ltsugar.m4, ../ltoptions.m4, ../ltversion.m4 and
349         ../libtool.m4.
350         * aclocal.m4: Regenerate.
351         * configure: Regenerate.
352         * configure.ac: Use AM_PROG_LIBTOOL.
353         * lto-plugin.c: New.
354         * lto-symtab.c: Rewrite to use the plugin.
355         * plugin-api.h: New.
357 2008-08-25  Rafael Avila de Espindola  <espindola@google.com>
359         * configure: Regenerate.
360         * configure.ac: Use AC_CHECK_GELF.
361         * lto-symtab.c: Include gelf.h.
362         (get_string_table): Use size independent API.
363         (printTable): Use lld to print 64 bit integers.
365 2008-08-22  Rafael Avila de Espindola  <espindola@google.com>
367         * lto-symtab.c (parse_table_entry): Assert entry->kind and
368         entry->visibility are valid.
370 2008-07-22  Rafael Avila de Espindola  <espindola@google.com>
371         * lto-symtab.c (table_entry): Add comdat.
372         (parse_table_entry): Read comdat.
374 2008-08-21  Rafael Espindola  <espindola@google.com>
376         * Makefile.am: New.
377         * Makefile.in: New.
378         * acinclude.m4: New.
379         * aclocal.m4: New.
380         * configure: New.
381         * configure.ac: New.
382         * lto-symtab.c: New.