OSDN Git Service

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