2010-11-27 François Dumont <francois.cppdevs@free.fr>
[official-gcc.git] / lto-plugin / ChangeLog
blob95b6f5efbe9a731cc830d5e85b8c6be9e30d2d39
1 2010-11-13  Kai Tietz  <kai.tietz@onevision.com>
3         * lto-plugin.c (add_output_files): Fix memory leak.
5 2010-11-11  Dave Korn  <dave.korn.cygwin@gmail.com>
7         PR bootstrap/46397
8         PR bootstrap/46362
9         * configure.ac: Add AC_TYPE_INT64_T test.
10         * config.h.in: Regenerate.
11         * configure: Likewise.
12         * lto-plugin.c (debug): Use char not bool.
13         (nop): Likewise.
14         (check_1): Rename from check, and use int not bool for gate argument.
15         (check): Macro wrapper for the above to coerce gate argument into
16         boolean-valued integer in case it has pointer type.
17         (parse_table_entry): Use 0 not false.
18         (claim_file_handler): Avoid use of PRIx64 by splitting 64-bit size
19         into two 32-bit parts and printing as hex ints.
21 2010-11-03  Dave Korn  <dave.korn.cygwin@gmail.com>
23         PR lto/46291
24         * lto-plugin.c (claim_file_handler): Don't close file descriptor.
26 2010-11-03  Dave Korn  <dave.korn.cygwin@gmail.com>
28         PR lto/46273
29         * lto-plugin.h: Delete.
30         * lto-plugin-elf.c: Likewise.
31         * lto-plugin-coff.c: Likewise.
32         * configure.ac: Don't use libelf, don't source config.gcc.
33         (LIBELFLIBS): Delete.
34         (LIBELFINC): Delete.
35         (LTO_FORMAT): Delete.
36         (SYM_STYLE): Add AC_DEFINE var, set based on $target.
37         (config.h): Add AC_CONFIG_HEADERS directive.
38         * Makefile.am (LIBELFLIBS): Delete.
39         (LIBELFINC): Delete.
40         (LTO_FORMAT): Delete.
41         (DEFS): Import.
42         (AM_CPPFLAGS): Use it.  Don't use LIBELFINC.
43         (liblto_plugin_la_SOURCES): Don't use LTO_FORMAT, don't include
44         any object-format-specific source file in the link.
45         (liblto_plugin_la_LIBADD): Don't use LIBELFLIBS.
46         * config.h.in: Generate.
47         * configure: Regenerate.
48         * Makefile.in: Likewise.
49         * lto-plugin.c (O_BINARY): Definition moved here from lto-plugin.h.
50         (LTO_SEGMENT_NAME): New definition.
51         (LTO_SECTION_PREFIX): Definition moved here from lto-plugin.h.
52         (LTO_SECTION_PREFIX_LEN): New definition.
53         (struct sym_aux): Struct definition moved here from lto-plugin.h.
54         (struct plugin_symtab): Likewise.
55         (struct plugin_objfile): Likewise.
56         (struct plugin_objfile): New struct def.
57         (enum symbol_style): New enum type.
58         (add_symbols): Make static.
59         (claimed_files): Likewise.
60         (num_claimed_files): Likewise.
61         (sym_style): New global.
62         (check): Make static.
63         (parse_table_entry): Likewise.  Respect sym_style when extracting
64         symbol from symtab entry.
65         (translate): Make static.
66         (resolve_conflicts): Likewise.
67         (process_symtab): New function, per-section callback version of
68         old object-format-specific handling from deleted lto-plugin-elf.c.
69         (claim_file_handler): Convert ELF-specific version from deleted
70         lto-plugin-elf.c to simple_object interface and move here.
71         (process_options): Allow new '-sym-style=' option.
72         (onload): Don't call deleted onload_format_checks hook.
74 2010-10-11  Kai Tietz  <kai.tietz@onevision.com>
76         * lto-plugin.c (dump_symtab): Correct printf argument type.
77         (finish_conflict_resolution): Initialize resolution.
79 2010-10-08  H.J. Lu  <hongjiu.lu@intel.com>
81         PR bootstrap/45951
82         * configure.ac: Add AC_CANONICAL_SYSTEM.
83         * configure: Regenerated.
85 2010-10-07  Dave Korn  <dave.korn.cygwin@gmail.com>
87         * configure.ac: Source config.gcc to determine lto_binary_reader.
88         (LTO_FORMAT): New AC_SUBST variable inferred from lto_binary_reader.
89         * Makefile.am (LTO_FORMAT): Import.
90         (liblto_plugin_la_SOURCES): Add object format dependent module
91         defined by LTO_FORMAT.
92         (liblto_plugin_la_LIBADD): Allow for both PIC and non-PIC libiberty,
93         and work around libtool warning.
94         * configure: Regenerate.
95         * Makefile.in: Likewise.
96         * lto-plugin.c (struct sym_aux): Move to new lto-plugin.h.
97         (struct sym_aux): Likewise.
98         (struct plugin_symtab): Likewise.
99         (struct plugin_file_info): Likewise.
100         (LTO_SECTION_PREFIX): Likewise.
101         (add_symbols):  Make non-static.
102         (claimed_files): Likewise.
103         (num_claimed_files): Likewise.
104         (check): Likewise.
105         (parse_table_entry): Likewise.
106         (translate): Likewise.
107         (resolve_conflicts): Likewise.
108         (process_symtab): Move to new lto-plugin-elf.c object format dependent
109         source file.
110         (claim_file_handler): Likewise, and make non-static.
111         (onload): Call new onload_format_checks function.
112         * lto-plugin.h: New file.
113         (LTO_SECTION_PREFIX): Move here.
114         (struct sym_aux): Likewise.
115         (struct plugin_symtab): Likewise.
116         (struct plugin_file_info): Likewise.
117         (claim_file_handler): Add new function prototype.
118         (onload_format_checks): Likewise.
119         (check): Declare extern.
120         (translate): Likewise.
121         (parse_table_entry): Likewise.
122         (resolve_conflicts): Likewise.
123         (add_symbols):  Likewise.
124         (claimed_files): Likewise.
125         (num_claimed_files): Likewise.
126         * lto-plugin-elf.c (process_symtab): Move here.
127         (claim_file_handler): Likewise, and make non-static.
128         (onload_format_checks): New function factored out from onload.
129         * lto-plugin-coff.c (claim_file_handler): New function stub.
130         (onload_format_checks): Likewise.
132 2010-08-05  Andi Kleen  <ak@linux.intel.com>
134         * lto-plugin.c: Include <hashtab.h>
135         (sym_aux): Add next_conflict field to save conflict chains.
136         (plugin_file_info): Add conflicts symtab.
137         (parse_table_entry): Initialize aux->next_conflict.
138         (process_symtab): Increment found.
139         (dump_symtab): Add.
140         (finish_conflict_resolution): Add.
141         (free_symtab): Add.
142         (write_resolution): Remove symbols loop and move into
143         dump_symtab. Call dump_symtab for main symbol and conflicts table.
144         Call free_symtab to free conflicts table.
145         (SWAP): Add.
146         (eq_sym): Add.
147         (hash_sym): Add.
148         (symbol_strength): Add.
149         (resolve_conflicts): Add.
150         (claim_file_handler): Add n variable. Check return value of
151         process_symtab. Call resolve_conflicts.
153 2010-07-27  Andi Kleen <ak@linux.intel.com>
155         * lto-plugin.c (translate): Remove debug fprintf.
157 2010-07-23  H.J. Lu  <hongjiu.lu@intel.com>
159         PR bootstrap/45042
160         * lto-plugin.c (translate): Cast to unsigned long.
162 2010-07-23   Andi Kleen <ak@linux.intel.com>
164         PR lto/44992
165         * lto-plugin.c (sym_aux): Add.
166         (plugin_symtab): Remove slots. Add aux and id.
167         (parse_table_entry): Change to use aux instead of slots.
168         (LTO_SECTION_PREFIX): Add.
169         (translate): Improve buffer allocation. Change to append
170         symbols to existing out buffer.
171         (get_section): Remove.
172         (process_symtab): Add.
173         (free_2): Free symtab->aux.
174         (write_resolution): Handle aux instead of slots.
175         Print sub id to resolution file.
176         (claim_file_handler): Clear lto_file. Replace get_symtab/translate
177         calls with call to process_symtab.
179 2010-07-22  Richard Guenther  <rguenther@suse.de>
181         * Makefile.am: New copy_lto_plugin rule to install the plugin
182         into ../gcc.
183         * Makefile.in: Regenerated.
185 2010-05-21  Richard Guenther  <rguenther@suse.de>
187         * lto-plugin.c (write_resolution): Do not assert syms is non-NULL.
189 2010-05-07  Richard Guenther <rguenther@suse.de>
191         * lto-plugin.c (free_2): Do not free resolution_file.
192         (write_resolution): Check that we were passed a resolution file.
193         (all_symbols_read_handler): Adjust.
194         (cleanup_handler): Do not remove the resolution file.
195         (process_option): Handle -fresolution=.
197 2010-05-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
199         PR other/43620
200         * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
201         * Makefile.in: Regenerate.
203 2010-04-23  Richard Guenther  <rguenther@suse.de>
205         PR lto/41550
206         * lto-plugin.c (parse_table_entry): Use xstrdup and xrealloc.
207         (translate): Likewise.
208         (all_symbols_read_handler): Likewise.
209         (claim_file_handler): Likewise.
210         (process_option): Likewise.
211         (add_output_files): Likewise.  Remove filename length limit.
213 2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
215         * Makefile.in: Regenerate.
216         * aclocal.m4: Regenerate.
218 2010-03-16  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
220         PR lto/43336
221         * lto-plugin.c (cleanup_handler): Delete temporary output files.
223 2010-01-11  Richard Guenther  <rguenther@suse.de>
225         PR lto/41569
226         * Makefile.am: Disable dependencies.
227         * Makefile.in: Regenerated.
229 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
231         PR lto/42520
232         * lto-plugin.c (exec_lto_wrapper): Output lto-wrapper command
233         if -v is passed.
235 2009-12-05  H.J. Lu  <hongjiu.lu@intel.com>
237         PR bootstrap/42306
238         * configure: Regenerated.
239         * Makefile.in: Likewise.
241 2009-11-19  Rafael Avila de Espindola  <espindola@google.com>
243         PR bootstrap/42096
244         * lto-plugin.c (claim_file_handler): Print offsets in hex.
246 2009-11-12  Rafael Avila de Espindola  <espindola@google.com>
248         * lto-plugin.c (write_resolution): Assume resolution_file is set.
249         Print the symbol name.
250         (all_symbols_read_handler): Create a resolution file.
251         Pass it to gcc.
252         (cleanup_handler): Remove the resolution file.
253         (process_option): Drop the -resolution option.
255 2009-11-05  Rafael Avila de Espindola  <espindola@google.com>
257         * lto-plugin.c (temp_obj_dir_name): Remove.
258         (arguments_file_name): New.
259         (free_2): Free arguments_file_name instead of temp_obj_dir_name.
260         (exec_lto_wrapper):  Create arguments file with make_temp_file.
261         (cleanup_handler): Don't remove the temporary directory. Remove the
262         arguments file.
263         (onload): Don't create the temporary directory.
265 2009-11-04  Richard Guenther  <rguenther@suse.de>
266             Rafael Avila de Espindola  <espindola@google.com>
268         * lto-plugin.c (plugin_file_info): Remove temp field.
269         (cleanup_handler): Don't delete temporary objects.
270         (claim_file_handler): Don't create temporary objects.
272 2009-11-04  Rafael Avila de Espindola  <espindola@google.com>
274         * lto-plugin.c (cleanup_handler): Don't cleanup if debugging.
276 2009-10-30  Rafael Avila de Espindola  <espindola@google.com>
278         PR41871
279         * lto-plugin.c (claim_file_handler): Close files that we created.
281 2009-10-28  Rafael Avila de Espindola  <espindola@google.com>
283         * lto-plugin.c (all_symbols_read_handler): Use LDPL_FATAL instead of
284         LDPL_ERROR
286 2009-10-27  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
288         PR lto/41652
289         * configure.ac: Call AC_SYS_LARGEFILE before AC_OUTPUT.
290         * configure: Regenerate.
292 2009-10-26  Richard Guenther  <rguenther@suse.de>
294         * configure.ac: Use AM_MAINTAINER_MODE.
295         * acinclude.m4: Remove.
296         * configure: Re-generate.
297         * Makefile.in: Likewise.
298         * aclocal.m4: Likewise.
300 2009-10-19  Rafael Avila de Espindola  <espindola@google.com>
301     
302         PR40790
303         * configure: Regenerate.
304         * configure.ac: Add AC_TYPE_UINT64_T.
306 2009-10-16  Rafael Avila de Espindola  <espindola@google.com>
308         * lto-plugin.c (message): New variable.
309         (check): New function.
310         (parse_table_entry, translate, write_resolution,add_output_files,
311         exec_lto_wrapper,claim_file_handler, onload): Use check instead of
312         assert.
313         (cleanup_handler): Use check instead of assert. Remove the arguments
314         file if it exists.
316 2009-10-15  Rafael Avila de Espindola  <espindola@google.com>
318         * lto-plugin.c (resolution_file): New.
319         (free_1): Update comment.
320         (free_2): Free resolution_file.
321         (write_resolution): Write resolution to specified file. Use the
322         syms array from the symbol table.
323         (all_symbols_read_handler): Delay call to free_1 past call to
324         write_resolution.
325         (process_option): Add a -resolution option.
327 2009-10-13  Richard Guenther  <rguenther@suse.de>
329         * Makefile.am (liblto_plugin_la_LIBADD): Link against the
330         correct libiberty.
331         * Makefile.in: Regenerated.
333 2009-10-08  Rafael Avila de Espindola  <espindola@google.com>
335         * lto-plugin.c (add_input_library): New.
336         (all_symbols_read_handler): Use add_input_library for items that
337         start with -l.
338         (process_option): Fit in 80 columns.
339         (onload): Handle LDPT_ADD_INPUT_LIBRARY.
341 2009-10-02  Diego Novillo  <dnovillo@google.com>
343         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
344         and -D_FILE_OFFSET_BITS=64.
345         * configure.ac: Add AC_SYS_LARGEFILE.
346         * configure: Regenerate.
347         * Makefile.in: Regenerate.
348         * lto-plugin.c: Fix copyright boilerplate.
350 2009-10-02  Diego Novillo  <dnovillo@google.com>
352         * Makefile.am (ACLOCAL_AMFLAGS): Define.
353         * aclocal.m4: Regenerate with aclocal-2.64
354         * acinclude.m4: Remove.
355         * Makefile.in: Regenerate with automake-1.11
356         * configure.ac (AC_PREREQ): Update to 2.64.
357         * configure: Regenerate.
359 2009-10-02  Diego Novillo  <dnovillo@google.com>
361         * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
362         and -D_FILE_OFFSET_BITS=64.
363         * configure.ac: Add AC_SYS_LARGEFILE.
364         * configure: Regenerate.
365         * Makefile.in: Regenerate.
366         * lto-plugin.c: Fix copyright boilerplate.
368 2009-10-02  Diego Novillo  <dnovillo@google.com>
370         * Makefile.am (ACLOCAL_AMFLAGS): Define.
371         * aclocal.m4: Regenerate with aclocal-2.64
372         * acinclude.m4: Remove.
373         * Makefile.in: Regenerate with automake-1.11
374         * configure.ac (AC_PREREQ): Update to 2.64.
375         * configure: Regenerate.
377 2009-10-02  Rafael Avila de Espindola  <espindola@google.com>
379         * Makefile.am (liblto_plugin_la_SOURCES): Remove
380         $(top_srcdir)/../gcc/lto/common.c
381         * Makefile.in: Regenerate.
383 2009-10-01  Rafael Avila de Espindola  <espindola@google.com>
385         * lto-plugin.c (pass_through_items): New.
386         (num_pass_through_items): New.
387         (all_symbols_read_handler): Update to use the -pass-through option.
388         (process_option): Replace -libgcc with -pass-through.
389         
390 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
392         * lto-plugin.c (onload): Return a ld_plugin_status. Don't require
393         register_cleanup to be set.
395 2009-09-30  Rafael Avila de Espindola  <espindola@google.com>
397         * Makefile.am: Remove all reference to ltosymtab.
398         * Makefile.in: Regenerate.
399         * lto-symtab.c: Remove.
401 2009-05-21  Diego Novillo  <dnovillo@google.com>
403         * configure.ac: Remove call to AC_CHECK_GELF.
404         Call AC_ARG_VAR for LIBELFLIBS and LIBELFINC.
405         * acinclude.m4: Do not include ../config/libelf.m4
406         * Makefile.am (LIBELFLIBS): Define.
407         (LIBELFINC): Define.
408         (AM_CPPFLAGS): Add $(LIBELFINC).
409         (ltosymtab_LDADD): Add $(LIBELFLIBS).
410         (liblto_plugin_la_LIBADD): Add $(LIBELFLIBS)
411         * lto-plugin.c: Always include <gelf.h>
412         * lto-symtab.c: Likewise.
413         * configure: Regenerate.
414         * Makefile.in: Regenerate.
416 2009-03-23  Rafael Avila de Espindola  <espindola@google.com>
418         * lto-plugin.c (libgcc_filename): New.
419         (all_symbols_read_handler): Pass libgcc to the linker.
420         (all_symbols_read_handler): Parse -libgcc
422 2009-02-05  Rafael Avila de Espindola  <espindola@google.com>
424         * Makefile.am (liblto_plugin_la_LIBADD): Link with libiberty.
425         * Makefile.in: Regenerate.
426         * lto-plugin.c (add_output_files): Argument is now a FILE.
427         (exec_lto_wrapper): Use writeargv and pex.
429 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
431         Revert:
432         2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
433         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
436 2009-02-04  Rafael Avila de Espindola  <espindola@google.com>
438         * lto-plugin.c (exec_lto_wrapper): Use writeargv.
440 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
442         * lto-plugin.c: Include libiberty.h.
443         (exec_lto_wrapper, claim_file_handler): Use asprintf instead of
444         snprintf.
446 2009-01-29  Rafael Avila de Espindola  <espindola@google.com>
448         * lto-plugin.c (exec_lto_wrapper): Write argv to a file. Pass that
449         file to lto-wrapper.
451 2009-01-28  Rafael Avila de Espindola  <espindola@google.com>
453         * lto-plugin.c (plugin_file_info): Remove fd and elf.
454         (parse_table_entry): strdup entry->name and entry->comdat_key.
455         (free_1): Free name and comdat_key. Don't close the file. Don't call
456         elf_end.
457         (claim_file_handler): Always call elf_end.
459 2008-12-23  Rafael Avila de Espindola  <espindola@google.com>
461         * Makefile.am (AM_CPPFLAGS): Add -D_LARGEFILE_SOURCE
462         -D_FILE_OFFSET_BITS=64
463         * Makefile.in: Regenerate
465 2008-12-22  Rafael Avila de Espindola  <espindola@google.com>
467         * Makefile.am (gcc_version, target_noncanonical, libexecsubdir): New.
468         (lib_LTLIBRARIES): Rename to libexecsub_LTLIBRARIES.
469         * Makefile.in: Regenerate.
470         * acinclude.m4: Include ../config/acx.m4 and ../lt~obsolete.m4
471         * configure: Regenerate.
472         * configure.ac: Add AC_SUBST(target_noncanonical).
474 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
476         * lto-plugin.c: Include stdbool.h.
477         (debug, nop): Declare as bool.
479 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
481         * lto-plugin.c (nop): New.
482         (use_original_files): New.
483         (all_symbols_read_handler): Call use_original_files if nop is true.
484         (process_option): Parse the -nop option.
486 2008-12-08  Rafael Avila de Espindola  <espindola@google.com>
488         * lto-plugin.c (debug): New.
489         (exec_lto_wrapper): Print argv if debug is true.
490         (process_option): Process the -debug command line option.
492 2008-12-03  Rafael Avila de Espindola  <espindola@google.com>
494         * lto-plugin.c (process_option): The argument is now a single option,
495         not a space separated list.
497 2008-12-02  Rafael Avila de Espindola  <espindola@google.com>
499         * lto-plugin.c: Include sys/types.h and sys/wait.h
500         (output_files, num_output_files, lto_wrapper_argv,
501         lto_wrapper_num_args): New.
502         (free_2): Free output_files.
503         (write_resolution): Disable.
504         (add_output_files): New.
505         (exec_lto_wrapper): New.
506         (all_symbols_read_handler): Run lto-wrapper.
507         (claim_file_handler): Free lto_file.name and call elf_end.
508         (process_option): New.
510 2008-11-26  Rafael Espindola  <espindola@google.com>
512         * lto-plugin.c (add_input_file): New.
513         (get_section): Return NULL if get_section fails.
514         (write_resolution): New.
515         (all_symbols_read_handler): Call add_input_file.
516         (claim_file_handler): Unlink the correct file.
517         (onload): Record add_input_file.
519 2008-09-23 Rafael Espindola  <espindola@google.com>
521         * Makefile.am (ltosymtab_SOURCES, liblto_plugin_la_SOURCES):
522         Update the location of common.c.
523         * Makefile.in: Regenerate.
524         * common.c: Moved to gcc/lto.
525         * common.h: Moved to gcc/lto.
526         * lto-plugin.c: Update the location of common.h.
527         * lto-symtab.c: Update the location of common.h.
529 2008-09-23 Rafael Espindola  <espindola@google.com>
531         * common.c: Include common.h.
532         (lto_kind_str, lto_visibility_str, lto_resolution_str): Use explicit
533         sizes.
534         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str): Use
535         explicit sizes.
537 2008-09-23 Rafael Espindola  <espindola@google.com>
539         * lto-plugin.c (plugin_file_info): Add temp.
540         (cleanup_handler): Only delete temporary files.
541         (claim_file_handler): Initialize lto_file.temp.
543 2008-09-23  Rafael Espindola  <espindola@google.com>
545         * plugin-api.h: Moved to include.
547 2008-09-23 Rafael Espindola  <espindola@google.com>
549         * lto-plugin.c (all_symbols_read_handler): Print resolution in a new
550         format.
552 2008-09-22 Rafael Espindola  <espindola@google.com>
554         * plugin-api.h: Copy from binutils' cvs.
556 2008-09-22 Rafael Espindola  <espindola@google.com>
558         * lto-symtab.c (get_symbols, add_symbols): Update signature.
559         * plugin-api.h: Copy from binutils' cvs.
561 2008-09-22 Rafael Espindola  <espindola@google.com>
563         * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str):
564         Make extern
566 2008-09-10 Rafael Espindola  <espindola@google.com>
568         * lto-plugin.c (onload): add missing break statements and asserts.
569         * lto-symtab.c (claim_file_handler): Make it static.
570         (all_symbols_read_handler): Make it static.
571         (all_file_handles): Make it static.
572         (num_file_handles): Make it static.
573         (register_claim_file): Make it static.
574         (register_object): Indent properly.
576 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
578         * Makefile.am (ltosymtab_LDADD): Add -lelf.
579         * Makefiel.in: Regenerate.
580         * lto-plugin.c: Include ar.h.
581         (claim_file_handler): Handle file->offset != 0.
582         * lto-symtab.c: Include gelf.h.
583         (all_file_handles): Change type.
584         (register_object): New.
585         (register_file): Add support for archives.
586         (resolve): Update to new type of all_file_handles.
587         (print): Update to new type of all_file_handles.
588         (free_all): Update to new type of all_file_handles.
589         (main): Update to new type of all_file_handles.
591 2008-09-10  Rafael Avila de Espindola  <espindola@google.com>
593         * lto-plugin.c (get_string_table): Remove.
594         (get_section): Use elf_strptr instead of get_string_table.
596 2008-09-08  Doug Kwan  <dougkwan@google.com>
598         * lto-plugin.c (all_symbols_read_handler): Widen fprintf arguments
599         to 64-bit to fix a 32-bit bootstrap failure due to format warnings.
601 2008-09-08  Rafael Avila de Espindola  <espindola@google.com>
603         * Makefile.am (ltosymtab_SOURCES): add common.c.
604         (ltosymtab_CFLAGS): New.
605         (liblto_plugin_la_SOURCES): Add common.c.
606         * Makefile.in: Regenerate.
607         * common.c: New.
608         * common.h: New.
609         * lto-plugin.c: Include stdio.h, inttypes.h and common.h.
610         (plugin_symtab): New.
611         (plugin_file_info): New.
612         (register_all_symbols_read): New.
613         (get_symbols): New.
614         (claimed_files): New.
615         (num_claimed_files): New.
616         (translate): Don't drop the slot number.
617         (free_1): New.
618         (free_2): New.
619         (all_symbols_read_handler): New.
620         (claim_file_handler): Record every claimed file.
621         (onload): Handle LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
622         LDPT_GET_SYMBOLS.
623         * lto-symtab.c: Include stdlib.h, string.h and common.h.
624         (current_file_handle): Remove.
625         (ld_plugin_all_symbols_read_handler): New.
626         (plugin_handle): New.
627         (file_handle): New.
628         (all_file_handles): New.
629         (num_file_handles): New.
630         (get_symbols): New.
631         (register_all_symbols_read): New.
632         (add_symbols): Don't print the symbols, just record them.
633         (ld_plugin_tv): Add LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and
634         LDPT_GET_SYMBOLS.
635         (load_plugin): Use plugin_handle.
636         (register_file): Add the file handle to all_file_handles.
637         (resolve): New.
638         (print): New.
639         (unload_plugin): New.
640         (free_all): New.
641         (main): Call all_symbols_read_handler and free resources.
643 2008-09-03  Rafael Avila de Espindola  <espindola@google.com>
645         * Makefile.am (AM_CFLAGS): New.
646         (ltosymtab_LDADD): Remove -lelf. Add -ldl.
647         (lib_LTLIBRARIES): New.
648         (liblto_plugin_la_SOURCES): New.
649         (liblto_plugin_la_LIBADD): New.
650         * Makefile.in: Regenerate.
651         * acinclude.m4: Don't include ../config/acx.m4 and
652         ../config/no-executables.m4.
653         Include ../ltsugar.m4, ../ltoptions.m4, ../ltversion.m4 and
654         ../libtool.m4.
655         * aclocal.m4: Regenerate.
656         * configure: Regenerate.
657         * configure.ac: Use AM_PROG_LIBTOOL.
658         * lto-plugin.c: New.
659         * lto-symtab.c: Rewrite to use the plugin.
660         * plugin-api.h: New.
662 2008-08-25  Rafael Avila de Espindola  <espindola@google.com>
664         * configure: Regenerate.
665         * configure.ac: Use AC_CHECK_GELF.
666         * lto-symtab.c: Include gelf.h.
667         (get_string_table): Use size independent API.
668         (printTable): Use lld to print 64 bit integers.
670 2008-08-22  Rafael Avila de Espindola  <espindola@google.com>
672         * lto-symtab.c (parse_table_entry): Assert entry->kind and
673         entry->visibility are valid.
675 2008-07-22  Rafael Avila de Espindola  <espindola@google.com>
676         * lto-symtab.c (table_entry): Add comdat.
677         (parse_table_entry): Read comdat.
679 2008-08-21  Rafael Espindola  <espindola@google.com>
681         * Makefile.am: New.
682         * Makefile.in: New.
683         * acinclude.m4: New.
684         * aclocal.m4: New.
685         * configure: New.
686         * configure.ac: New.
687         * lto-symtab.c: New.