12021-04-08 Release Manager 2 3 * GCC 10.3.0 released. 4 52020-09-09 Nick Clifton <nickc@redhat.com> 6 7 * lto-plugin.c (struct plugin_symtab): Add last_sym field. 8 (parse_symtab_extension): Only read as many entries as are 9 available in the buffer. Store the data read into the symbol 10 table indexed from last_sym. Increment last_sym. 11 122020-07-23 Release Manager 13 14 * GCC 10.2.0 released. 15 162020-06-22 H.J. Lu <hjl.tools@gmail.com> 17 18 Backported from master: 19 2020-05-12 H.J. Lu <hjl.tools@gmail.com> 20 21 PR bootstrap/94998 22 * configure: Regenerated. 23 242020-05-07 Release Manager 25 26 * GCC 10.1.0 released. 27 282020-04-28 H.J. Lu <hongjiu.lu@intel.com> 29 30 PR bootstrap/94739 31 * configure: Regenerated. 32 332020-04-25 H.J. Lu <hongjiu.lu@intel.com> 34 35 PR bootstrap/94739 36 * Makefile.am (AM_CFLAGS): Add $(CET_HOST_FLAGS). 37 * configure.ac: Add GCC_CET_HOST_FLAGS(CET_HOST_FLAGS) and 38 AC_SUBST(CET_HOST_FLAGS). 39 * Makefile.in: Regenerated. 40 * aclocal.m4: Likewise. 41 * configure: Likewise. 42 432020-03-19 Martin Liska <mliska@suse.cz> 44 45 * lto-plugin.c (LTO_SECTION_PREFIX): Rename to ... 46 (LTO_SYMTAB_PREFIX): ... this. 47 (LTO_SECTION_PREFIX_LEN): Rename to ... 48 (LTO_SYMTAB_PREFIX_LEN): ... this. 49 (LTO_SYMTAB_EXT_PREFIX): New. 50 (LTO_SYMTAB_EXT_PREFIX_LEN): New. 51 (LTO_LTO_PREFIX): New. 52 (LTO_LTO_PREFIX_LEN): New. 53 (parse_table_entry): Fill up unused to zero. 54 (parse_table_entry_extension): New. 55 (parse_symtab_extension): New. 56 (finish_conflict_resolution): Change type 57 for resolution. 58 (process_symtab): Use new macro name. 59 (process_symtab_extension): New. 60 (claim_file_handler): Parse also process_symtab_extension. 61 (onload): Call new add_symbols_v2. 62 632020-01-01 Jakub Jelinek <jakub@redhat.com> 64 65 Update copyright years. 66 672019-09-27 Maciej W. Rozycki <macro@wdc.com> 68 69 * configure: Regenerate. 70 712019-05-15 Iain Sandoe <iain@sandoe.co.uk> 72 73 * lto-plugin.c (cleanup_handler): Remove unused var. 74 752019-05-15 Iain Sandoe <iain@sandoe.co.uk> 76 77 * lto-plugin.c (exec_lto_wrapper): Make the wrapper 78 arguments filename more user-friendly. 79 (file_exists, maybe_unlink): New. 80 (cleanup_handler): Use maybe unlink to handle the 81 case when temps should be saved. 82 (process_option): Look for -v, —-version, -save-temps. 83 (onload): Record the linker output file name. 84 Check for -v, —-version, -save-temps in the GCC collect 85 options environment. 86 872019-02-26 Martin Liska <mliska@suse.cz> 88 89 * lto-symtab.c: Remove. 90 912019-01-01 Jakub Jelinek <jakub@redhat.com> 92 93 Update copyright years. 94 952018-10-31 Joseph Myers <joseph@codesourcery.com> 96 97 PR bootstrap/82856 98 * configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE. 99 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate. 100 1012018-05-30 Jan Hubicka <jh@suse.cz> 102 103 * lto-plugin.c: (non_claimed_files): New static var. 104 (linker_ouput_known): New static var. 105 (all_symbols_read_handler): When user specifies linker output do not 106 imply it; output warning when nonlto-rel mode is forced. 107 (claim_file_header): Record number of nonclaimed files. 108 (process_option): Remember if linker output is known 109 1102018-04-18 David Malcolm <dmalcolm@redhat.com> 111 112 PR jit/85384 113 * configure: Regenerate. 114 1152018-01-03 Jakub Jelinek <jakub@redhat.com> 116 117 Update copyright years. 118 1192017-07-21 Georg-Johann Lay <avr@gjlay.de> 120 121 PR lto/81487 122 * lto-plugin.c (claim_file_handler): Use xasprintf instead of 123 asprintf. 124 [hi!=0]: Swap hi and lo arguments supplied to xasprintf. 125 1262017-01-17 Jakub Jelinek <jakub@redhat.com> 127 128 PR other/79046 129 * configure.ac: Add GCC_BASE_VER. 130 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to 131 get version from BASE-VER file. 132 * configure: Regenerated. 133 * Makefile.in: Regenerated. 134 1352017-01-04 Jakub Jelinek <jakub@redhat.com> 136 137 Update copyright years. 138 1392016-11-15 Matthias Klose <doko@ubuntu.com> 140 141 * configure: Regenerate. 142 1432016-02-25 Ilya Verbin <ilya.verbin@intel.com> 144 145 PR driver/68463 146 * lto-plugin.c (struct plugin_offload_file): New. 147 (offload_files): Change type. 148 (offload_files_last, offload_files_last_obj): New. 149 (offload_files_last_lto): New. 150 (free_2): Adjust accordingly. 151 (all_symbols_read_handler): Don't add offload files to lto_arg_ptr. 152 Don't call free_1 for offload_files. Write names of object files with 153 offloading to the temporary file. Add new option to lto_arg_ptr. 154 (claim_file_handler): Don't claim file if it contains offload sections 155 without LTO sections. If it contains offload sections, add to the list. 156 1572016-01-15 Martin Liska <mliska@suse.cz> 158 159 * lto-plugin.c (all_symbols_read_handler): Assign default 160 value to a string variable. 161 1622015-11-25 Jan Hubicka <jh@suse.cz> 163 164 PR lto/67548 165 * lto-plugin.c (linker_output, linker_output_set): New statics. 166 (all_symbols_read_handler): Add -flinker-output option. 167 (onload): Record linker_output info. 168 1692015-07-02 Uros Bizjak <ubizjak@gmail.com> 170 171 * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS. 172 * configure: Regenerate. 173 * config.h.in: Ditto. 174 1752015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> 176 177 * Makefile.am: Drop 'by automake version' from top-level comment. 178 * Makefile.in: Regenerated with automake-1.11.6. 179 * aclocal.m4: Likewise. 180 * configure: Likewise. 181 1822015-02-06 H.J. Lu <hongjiu.lu@intel.com> 183 184 * lto-plugin.c (release_input_file): Removed. 185 (claim_file_handler): Don't call release_input_file. 186 (onload): Don't set release_input_file. 187 1882015-02-05 H.J. Lu <hongjiu.lu@intel.com> 189 190 * lto-plugin.c (claim_file_handler): Pass handle to 191 release_input_file. 192 1932015-02-05 H.J. Lu <hongjiu.lu@intel.com> 194 195 * lto-plugin.c (claim_file_handler): Call release_input_file only 196 if file is claimed. 197 1982015-01-28 H.J. Lu <hongjiu.lu@intel.com> 199 200 * lto-plugin.c (claim_file_handler): Call release_input_file only 201 if it is not NULL. 202 2032015-01-28 H.J. Lu <hongjiu.lu@intel.com> 204 205 PR lto/64837 206 * lto-plugin.c (release_input_file): New. 207 (claim_file_handler): Call release_input_file. 208 (onload): Set release_input_file. 209 2102014-12-09 Ilya Verbin <ilya.verbin@intel.com> 211 212 * lto-plugin.c (offload_files, num_offload_files): New static variables. 213 (free_1): Use arguments instead of global variables. 214 (free_2): Free offload_files. 215 (all_symbols_read_handler): Add names from offload_files to lto-wrapper 216 arguments. 217 (claim_file_handler): Do not add file to claimed_files if it contains 218 offload sections without LTO sections. Add it to offload_files instead. 219 2202014-11-21 H.J. Lu <hongjiu.lu@intel.com> 221 222 PR bootstrap/63784 223 * configure: Regenerated. 224 2252014-11-13 Ilya Verbin <ilya.verbin@intel.com> 226 Bernd Schmidt <bernds@codesourcery.com> 227 Andrey Turetskiy <andrey.turetskiy@intel.com> 228 Michael Zolotukhin <michael.v.zolotukhin@intel.com> 229 230 * lto-plugin.c (OFFLOAD_SECTION, OFFLOAD_SECTION_LEN): Define. 231 (struct plugin_objfile): Add new field "offload". 232 (process_offload_section): New static function. 233 (claim_file_handler): Claim file if it contains offload sections. 234 2352014-11-13 Bernd Schmidt <bernds@codesourcery.com> 236 Thomas Schwinge <thomas@codesourcery.com> 237 Ilya Verbin <ilya.verbin@intel.com> 238 Andrey Turetskiy <andrey.turetskiy@intel.com> 239 240 * Makefile.am (libexecsubdir): Tweak for the possibility of being 241 configured for offload compiler. 242 (accel_dir_suffix, real_target_noncanonical): New variables substituted 243 by configure. 244 * Makefile.in: Regenerate. 245 * configure: Regenerate. 246 * configure.ac (accel_dir_suffix, real_target_noncanonical): Compute new 247 variables. 248 2492014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> 250 251 PR target/63610 252 * configure: Regenerate. 253 2542014-08-26 H.J. Lu <hongjiu.lu@intel.com> 255 256 PR bootstrap/62260 257 * Makefile.am (gcc_build_dir): Set to @gcc_build_dir@. 258 * configure.ac (gcc_build_dir): Set and AC_SUBST according to 259 $host_subdir. 260 * Makefile.in: Regenerated. 261 * configure: Likewise. 262 2632014-06-13 Thomas Schwinge <thomas@codesourcery.com> 264 265 * configure.ac (--with-libiberty): New configure option. 266 * configure: Regenerate. 267 * Makefile.am (libiberty, libiberty_noasan, libiberty_pic): New 268 variables. 269 (liblto_plugin_la_LIBADD, liblto_plugin_la_LDFLAGS) 270 (liblto_plugin_la_DEPENDENCIES): Use them. 271 * Makefile.in: Regenerate. 272 2732014-05-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 274 275 PR lto/60981 276 * configure.ac: Check for -static-libgcc. 277 * configure: Regenerate. 278 2792014-04-17 Jakub Jelinek <jakub@redhat.com> 280 281 PR sanitizer/56781 282 * Makefile.am (CFLAGS, LDFLAGS): Filter out -fsanitize=address. 283 (liblto_plugin_la_LIBADD, liblto_plugin_la_LDFLAGS, 284 liblto_plugin_la_DEPENDENCIES): Prefer ../libiberty/noasan/libiberty.a 285 over ../libiberty/pic/libiberty.a if the former exists. 286 * Makefile.in: Regenerated. 287 288 PR sanitizer/56781 289 * Makefile.am (LTLDFLAGS, liblto_plugin_la_LINK): New variables. 290 * Makefile.in: Regenerated. 291 2922014-04-02 Richard Biener <rguenther@suse.de> 293 294 * lto-plugin.c (onload): Fail to load if -fno-use-linker-plugin 295 is set in COLLECT_GCC_OPTIONS. 296 2972014-03-28 Richard Biener <rguenther@suse.de> 298 299 * lto-plugin.c (process_symtab): Handle EINTR and short reads. 300 3012014-03-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 302 303 * configure.ac (ac_lto_plugin_ldflags): Set to -Wc,-static-libgcc 304 for gcc. 305 * configure: Regenerate. 306 * Makefile.am (AM_LDFLAGS): New variable. 307 (liblto_plugin_la_LDFLAGS): Add it. 308 * Makefile.in: Regenerate. 309 3102013-09-20 Alan Modra <amodra@gmail.com> 311 312 * configure: Regenerate. 313 3142012-09-14 David Edelsohn <dje.gcc@gmail.com> 315 316 * configure: Regenerated. 317 3182012-05-29 Joseph Myers <joseph@codesourcery.com> 319 320 * lto-plugin.c: Fix typo. 321 3222012-05-16 H.J. Lu <hongjiu.lu@intel.com> 323 324 * configure: Regenerated. 325 3262012-02-22 Kai Tietz <ktietz@redhat.com> 327 328 PR lto/50616 329 * lto-plugin.c (PRI_LL): New macro. 330 (dump_symtab): Use PRI_LL instead of ll in print. 331 (process_symtab): Use PRI_LL instead of ll in scan. 332 3332011-12-20 Andreas Schwab <schwab@linux-m68k.org> 334 335 * configure: Regenerate. 336 3372011-12-19 Andreas Schwab <schwab@linux-m68k.org> 338 339 * configure: Regenerate. 340 3412011-11-21 Andreas Tobler <andreast@fgznet.ch> 342 343 * configure: Regenerate. 344 3452011-10-02 Jan Hubicka <jh@suse.cz> 346 347 PR lto/47247 348 * lto-plugin.c (get_symbols_v2): New variable. 349 (write_resolution): Use V2 API when available. 350 (onload): Handle LDPT_GET_SYMBOLS_V2. 351 3522011-09-30 H.J. Lu <hongjiu.lu@intel.com> 353 Andi Kleen <ak@linux.intel.com> 354 355 PR lto/50568 356 * lto-plugin.c (sym_aux): Change id to unsigned long long. 357 (plugin_symtab): Likewise. 358 (dump_symtab): Likewise. 359 (resolve_conflicts): Likewise. 360 (process_symtab): Likewise. 361 3622011-08-10 Richard Guenther <rguenther@suse.de> 363 364 PR bootstrap/49907 365 lto-plugin/ 366 * configure.ac: Use ACX_PROG_CC_WARNING_OPTS to detect -Wall presence. 367 * Makefile.am (AM_CFLAGS): Adjust. Do not build with -Werror. 368 * configure: Regenerate. 369 * Makefile.in: Likewise. 370 * aclocal.m4: Likewise. 371 3722011-04-20 Jim Meyering <meyering@redhat.com> 373 374 * lto-plugin.c (free_1, free_2): Remove useless if-before-free. 375 3762011-04-05 Richard Guenther <rguenther@suse.de> 377 378 PR bootstrap/48431 379 * lto-plugin.c (claim_file_handler): Do not declare vars in code. 380 3812011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 382 383 * Makefile.in: Regenerate. 384 * aclocal.m4: Regenerate. 385 * configure: Regenerate. 386 3872011-02-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 388 389 * Makefile.am (all-local): Rename from 'all'. 390 * Makefile.in: Regenerate. 391 3922011-02-12 Alexandre Oliva <aoliva@redhat.com> 393 394 PR lto/47225 395 * Makefile.am (gcc_build_dir, in_gcc_libs): New. 396 (liblto_plugin_la_LDFLAGS): Add -module. 397 (copy_lto_plugin): Renamed to... 398 ($(in_gcc_libs)): ... this. Add mkinstalldirs. Skip copying 399 of static modules. 400 * Makefile.in: Rebuild. 401 4022011-02-07 Kai Tietz <kai.tietz@onevision.com> 403 404 PR lto/47225 405 * Makefile.am (Wc): New helper for encoding -Wc,. 406 (liblto_plugin_la_LIBADD): Use Wc for libiberty library. 407 (liblto_plugin_la_DEPENDENCIES): Special case pic libiberty. 408 * Makefile.in: Regenerated. 409 4102011-02-07 Paolo Bonzini <bonzini@gnu.org> 411 412 Revert: 413 414 2011-02-07 Kai Tietz <kai.tietz@onevision.com> 415 416 PR lto/47225 417 * Makefile.am (Wl): New helper for encoding -Wl,. 418 (liblto_plugin_la_LIBADD): Use -Wl for libiberty library. 419 * Makefile.in: Regenerated. 420 4212011-02-07 Kai Tietz <kai.tietz@onevision.com> 422 423 PR lto/47225 424 * Makefile.am (Wl): New helper for encoding -Wl,. 425 (liblto_plugin_la_LIBADD): Use -Wl for libiberty library. 426 * Makefile.in: Regenerated. 427 4282011-01-25 Ian Lance Taylor <iant@google.com> 429 430 * lto-plugin.c (gold_version): New static variable. 431 (all_symbols_read_handler): Don't check pass_through_items if 432 using gold 1.11 or later. 433 (onload): Set gold_version if we see LDPT_GOLD_VERSION. 434 4352011-01-12 Richard Guenther <rguenther@suse.de> 436 437 PR lto/47264 438 * lto-plugin.c (parse_table_entry): Use memcpy to access 439 unaligned fields. 440 4412010-12-20 Dave Korn <dave.korn.cygwin@gmail.com> 442 443 * Makefile.am (AM_LIBTOOLFLAGS): Define, adding disable-static tag. 444 * Makefile.in: Regenerate. 445 4462010-12-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 447 448 Revert last change. 449 4502010-12-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 451 452 * Makefile.am (liblto_plugin_la_DEPENDENCIES): Define. 453 (liblto_plugin_la_LIBADD): Use -L../libiberty/pic -liberty. 454 (liblto_plugin_la_LDFLAGS): Use -L../libiberty -liberty. 455 * Makefile.in: Regenerate. 456 4572010-12-10 Dave Korn <dave.korn.cygwin@gmail.com> 458 459 PR middle-end/46674 460 PR lto/43157 461 * configure.ac (SYM_STYLE): Don't AC_DEFINE. 462 * lto-plugin.c (sym_style): Don't use it; default to ss_none. 463 * configure: Regenerate. 464 * config.h.in: Likewise. 465 4662010-12-06 Dave Korn <dave.korn.cygwin@gmail.com> 467 468 PR target/40125 469 PR lto/46695 470 * configure.ac: Invoke ACX_LT_HOST_FLAGS. 471 * Makefile.am (liblto_plugin_la_LDFLAGS): Use lt_host_flags but 472 override -bindir setting. 473 * aclocal.m4: Regenerate. 474 * configure: Regenerate. 475 * Makefile.in: Regenerate. 476 4772010-12-05 Kai Tietz <kai.tietz@onevision.com> 478 479 * config.h.in: Regenerated. 480 * configure: Regenerated. 481 * configure.ac (AC_CHECK_HEADERS): Replaced by AC_HEADER_SYS_WAIT. 482 * lto-plugin.c (WIFEXITED): Define default. 483 (WEXITSTATUS): Likeiwse. 484 4852010-12-01 Kai Tietz <kai.tietz@onevision.com> 486 487 * config.h.in: Regenerated. 488 * configure: Regenerated. 489 * Makefile.in: Regenerated. 490 * configure.ac (AC_CHECK_HEADERS): Check for sys/wait.h. 491 * lto-plugin.c: Include sys/wait.h conditionally. 492 * aclocal.m4: Regenerated. 493 4942010-11-13 Kai Tietz <kai.tietz@onevision.com> 495 496 * lto-plugin.c (add_output_files): Fix memory leak. 497 4982010-11-11 Dave Korn <dave.korn.cygwin@gmail.com> 499 500 PR bootstrap/46397 501 PR bootstrap/46362 502 * configure.ac: Add AC_TYPE_INT64_T test. 503 * config.h.in: Regenerate. 504 * configure: Likewise. 505 * lto-plugin.c (debug): Use char not bool. 506 (nop): Likewise. 507 (check_1): Rename from check, and use int not bool for gate argument. 508 (check): Macro wrapper for the above to coerce gate argument into 509 boolean-valued integer in case it has pointer type. 510 (parse_table_entry): Use 0 not false. 511 (claim_file_handler): Avoid use of PRIx64 by splitting 64-bit size 512 into two 32-bit parts and printing as hex ints. 513 5142010-11-03 Dave Korn <dave.korn.cygwin@gmail.com> 515 516 PR lto/46291 517 * lto-plugin.c (claim_file_handler): Don't close file descriptor. 518 5192010-11-03 Dave Korn <dave.korn.cygwin@gmail.com> 520 521 PR lto/46273 522 * lto-plugin.h: Delete. 523 * lto-plugin-elf.c: Likewise. 524 * lto-plugin-coff.c: Likewise. 525 * configure.ac: Don't use libelf, don't source config.gcc. 526 (LIBELFLIBS): Delete. 527 (LIBELFINC): Delete. 528 (LTO_FORMAT): Delete. 529 (SYM_STYLE): Add AC_DEFINE var, set based on $target. 530 (config.h): Add AC_CONFIG_HEADERS directive. 531 * Makefile.am (LIBELFLIBS): Delete. 532 (LIBELFINC): Delete. 533 (LTO_FORMAT): Delete. 534 (DEFS): Import. 535 (AM_CPPFLAGS): Use it. Don't use LIBELFINC. 536 (liblto_plugin_la_SOURCES): Don't use LTO_FORMAT, don't include 537 any object-format-specific source file in the link. 538 (liblto_plugin_la_LIBADD): Don't use LIBELFLIBS. 539 * config.h.in: Generate. 540 * configure: Regenerate. 541 * Makefile.in: Likewise. 542 * lto-plugin.c (O_BINARY): Definition moved here from lto-plugin.h. 543 (LTO_SEGMENT_NAME): New definition. 544 (LTO_SECTION_PREFIX): Definition moved here from lto-plugin.h. 545 (LTO_SECTION_PREFIX_LEN): New definition. 546 (struct sym_aux): Struct definition moved here from lto-plugin.h. 547 (struct plugin_symtab): Likewise. 548 (struct plugin_objfile): Likewise. 549 (struct plugin_objfile): New struct def. 550 (enum symbol_style): New enum type. 551 (add_symbols): Make static. 552 (claimed_files): Likewise. 553 (num_claimed_files): Likewise. 554 (sym_style): New global. 555 (check): Make static. 556 (parse_table_entry): Likewise. Respect sym_style when extracting 557 symbol from symtab entry. 558 (translate): Make static. 559 (resolve_conflicts): Likewise. 560 (process_symtab): New function, per-section callback version of 561 old object-format-specific handling from deleted lto-plugin-elf.c. 562 (claim_file_handler): Convert ELF-specific version from deleted 563 lto-plugin-elf.c to simple_object interface and move here. 564 (process_options): Allow new '-sym-style=' option. 565 (onload): Don't call deleted onload_format_checks hook. 566 5672010-10-11 Kai Tietz <kai.tietz@onevision.com> 568 569 * lto-plugin.c (dump_symtab): Correct printf argument type. 570 (finish_conflict_resolution): Initialize resolution. 571 5722010-10-08 H.J. Lu <hongjiu.lu@intel.com> 573 574 PR bootstrap/45951 575 * configure.ac: Add AC_CANONICAL_SYSTEM. 576 * configure: Regenerated. 577 5782010-10-07 Dave Korn <dave.korn.cygwin@gmail.com> 579 580 * configure.ac: Source config.gcc to determine lto_binary_reader. 581 (LTO_FORMAT): New AC_SUBST variable inferred from lto_binary_reader. 582 * Makefile.am (LTO_FORMAT): Import. 583 (liblto_plugin_la_SOURCES): Add object format dependent module 584 defined by LTO_FORMAT. 585 (liblto_plugin_la_LIBADD): Allow for both PIC and non-PIC libiberty, 586 and work around libtool warning. 587 * configure: Regenerate. 588 * Makefile.in: Likewise. 589 * lto-plugin.c (struct sym_aux): Move to new lto-plugin.h. 590 (struct sym_aux): Likewise. 591 (struct plugin_symtab): Likewise. 592 (struct plugin_file_info): Likewise. 593 (LTO_SECTION_PREFIX): Likewise. 594 (add_symbols): Make non-static. 595 (claimed_files): Likewise. 596 (num_claimed_files): Likewise. 597 (check): Likewise. 598 (parse_table_entry): Likewise. 599 (translate): Likewise. 600 (resolve_conflicts): Likewise. 601 (process_symtab): Move to new lto-plugin-elf.c object format dependent 602 source file. 603 (claim_file_handler): Likewise, and make non-static. 604 (onload): Call new onload_format_checks function. 605 * lto-plugin.h: New file. 606 (LTO_SECTION_PREFIX): Move here. 607 (struct sym_aux): Likewise. 608 (struct plugin_symtab): Likewise. 609 (struct plugin_file_info): Likewise. 610 (claim_file_handler): Add new function prototype. 611 (onload_format_checks): Likewise. 612 (check): Declare extern. 613 (translate): Likewise. 614 (parse_table_entry): Likewise. 615 (resolve_conflicts): Likewise. 616 (add_symbols): Likewise. 617 (claimed_files): Likewise. 618 (num_claimed_files): Likewise. 619 * lto-plugin-elf.c (process_symtab): Move here. 620 (claim_file_handler): Likewise, and make non-static. 621 (onload_format_checks): New function factored out from onload. 622 * lto-plugin-coff.c (claim_file_handler): New function stub. 623 (onload_format_checks): Likewise. 624 6252010-08-05 Andi Kleen <ak@linux.intel.com> 626 627 * lto-plugin.c: Include <hashtab.h> 628 (sym_aux): Add next_conflict field to save conflict chains. 629 (plugin_file_info): Add conflicts symtab. 630 (parse_table_entry): Initialize aux->next_conflict. 631 (process_symtab): Increment found. 632 (dump_symtab): Add. 633 (finish_conflict_resolution): Add. 634 (free_symtab): Add. 635 (write_resolution): Remove symbols loop and move into 636 dump_symtab. Call dump_symtab for main symbol and conflicts table. 637 Call free_symtab to free conflicts table. 638 (SWAP): Add. 639 (eq_sym): Add. 640 (hash_sym): Add. 641 (symbol_strength): Add. 642 (resolve_conflicts): Add. 643 (claim_file_handler): Add n variable. Check return value of 644 process_symtab. Call resolve_conflicts. 645 6462010-07-27 Andi Kleen <ak@linux.intel.com> 647 648 * lto-plugin.c (translate): Remove debug fprintf. 649 6502010-07-23 H.J. Lu <hongjiu.lu@intel.com> 651 652 PR bootstrap/45042 653 * lto-plugin.c (translate): Cast to unsigned long. 654 6552010-07-23 Andi Kleen <ak@linux.intel.com> 656 657 PR lto/44992 658 * lto-plugin.c (sym_aux): Add. 659 (plugin_symtab): Remove slots. Add aux and id. 660 (parse_table_entry): Change to use aux instead of slots. 661 (LTO_SECTION_PREFIX): Add. 662 (translate): Improve buffer allocation. Change to append 663 symbols to existing out buffer. 664 (get_section): Remove. 665 (process_symtab): Add. 666 (free_2): Free symtab->aux. 667 (write_resolution): Handle aux instead of slots. 668 Print sub id to resolution file. 669 (claim_file_handler): Clear lto_file. Replace get_symtab/translate 670 calls with call to process_symtab. 671 6722010-07-22 Richard Guenther <rguenther@suse.de> 673 674 * Makefile.am: New copy_lto_plugin rule to install the plugin 675 into ../gcc. 676 * Makefile.in: Regenerated. 677 6782010-05-21 Richard Guenther <rguenther@suse.de> 679 680 * lto-plugin.c (write_resolution): Do not assert syms is non-NULL. 681 6822010-05-07 Richard Guenther <rguenther@suse.de> 683 684 * lto-plugin.c (free_2): Do not free resolution_file. 685 (write_resolution): Check that we were passed a resolution file. 686 (all_symbols_read_handler): Adjust. 687 (cleanup_handler): Do not remove the resolution file. 688 (process_option): Handle -fresolution=. 689 6902010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 691 692 PR other/43620 693 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist. 694 * Makefile.in: Regenerate. 695 6962010-04-23 Richard Guenther <rguenther@suse.de> 697 698 PR lto/41550 699 * lto-plugin.c (parse_table_entry): Use xstrdup and xrealloc. 700 (translate): Likewise. 701 (all_symbols_read_handler): Likewise. 702 (claim_file_handler): Likewise. 703 (process_option): Likewise. 704 (add_output_files): Likewise. Remove filename length limit. 705 7062010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 707 708 * Makefile.in: Regenerate. 709 * aclocal.m4: Regenerate. 710 7112010-03-16 Dmitry Gorbachev <d.g.gorbachev@gmail.com> 712 713 PR lto/43336 714 * lto-plugin.c (cleanup_handler): Delete temporary output files. 715 7162010-01-11 Richard Guenther <rguenther@suse.de> 717 718 PR lto/41569 719 * Makefile.am: Disable dependencies. 720 * Makefile.in: Regenerated. 721 7222010-01-03 H.J. Lu <hongjiu.lu@intel.com> 723 724 PR lto/42520 725 * lto-plugin.c (exec_lto_wrapper): Output lto-wrapper command 726 if -v is passed. 727 7282009-12-05 H.J. Lu <hongjiu.lu@intel.com> 729 730 PR bootstrap/42306 731 * configure: Regenerated. 732 * Makefile.in: Likewise. 733 7342009-11-19 Rafael Avila de Espindola <espindola@google.com> 735 736 PR bootstrap/42096 737 * lto-plugin.c (claim_file_handler): Print offsets in hex. 738 7392009-11-12 Rafael Avila de Espindola <espindola@google.com> 740 741 * lto-plugin.c (write_resolution): Assume resolution_file is set. 742 Print the symbol name. 743 (all_symbols_read_handler): Create a resolution file. 744 Pass it to gcc. 745 (cleanup_handler): Remove the resolution file. 746 (process_option): Drop the -resolution option. 747 7482009-11-05 Rafael Avila de Espindola <espindola@google.com> 749 750 * lto-plugin.c (temp_obj_dir_name): Remove. 751 (arguments_file_name): New. 752 (free_2): Free arguments_file_name instead of temp_obj_dir_name. 753 (exec_lto_wrapper): Create arguments file with make_temp_file. 754 (cleanup_handler): Don't remove the temporary directory. Remove the 755 arguments file. 756 (onload): Don't create the temporary directory. 757 7582009-11-04 Richard Guenther <rguenther@suse.de> 759 Rafael Avila de Espindola <espindola@google.com> 760 761 * lto-plugin.c (plugin_file_info): Remove temp field. 762 (cleanup_handler): Don't delete temporary objects. 763 (claim_file_handler): Don't create temporary objects. 764 7652009-11-04 Rafael Avila de Espindola <espindola@google.com> 766 767 * lto-plugin.c (cleanup_handler): Don't cleanup if debugging. 768 7692009-10-30 Rafael Avila de Espindola <espindola@google.com> 770 771 PR41871 772 * lto-plugin.c (claim_file_handler): Close files that we created. 773 7742009-10-28 Rafael Avila de Espindola <espindola@google.com> 775 776 * lto-plugin.c (all_symbols_read_handler): Use LDPL_FATAL instead of 777 LDPL_ERROR 778 7792009-10-27 Dmitry Gorbachev <d.g.gorbachev@gmail.com> 780 781 PR lto/41652 782 * configure.ac: Call AC_SYS_LARGEFILE before AC_OUTPUT. 783 * configure: Regenerate. 784 7852009-10-26 Richard Guenther <rguenther@suse.de> 786 787 * configure.ac: Use AM_MAINTAINER_MODE. 788 * acinclude.m4: Remove. 789 * configure: Re-generate. 790 * Makefile.in: Likewise. 791 * aclocal.m4: Likewise. 792 7932009-10-19 Rafael Avila de Espindola <espindola@google.com> 794 795 PR40790 796 * configure: Regenerate. 797 * configure.ac: Add AC_TYPE_UINT64_T. 798 7992009-10-16 Rafael Avila de Espindola <espindola@google.com> 800 801 * lto-plugin.c (message): New variable. 802 (check): New function. 803 (parse_table_entry, translate, write_resolution,add_output_files, 804 exec_lto_wrapper,claim_file_handler, onload): Use check instead of 805 assert. 806 (cleanup_handler): Use check instead of assert. Remove the arguments 807 file if it exists. 808 8092009-10-15 Rafael Avila de Espindola <espindola@google.com> 810 811 * lto-plugin.c (resolution_file): New. 812 (free_1): Update comment. 813 (free_2): Free resolution_file. 814 (write_resolution): Write resolution to specified file. Use the 815 syms array from the symbol table. 816 (all_symbols_read_handler): Delay call to free_1 past call to 817 write_resolution. 818 (process_option): Add a -resolution option. 819 8202009-10-13 Richard Guenther <rguenther@suse.de> 821 822 * Makefile.am (liblto_plugin_la_LIBADD): Link against the 823 correct libiberty. 824 * Makefile.in: Regenerated. 825 8262009-10-08 Rafael Avila de Espindola <espindola@google.com> 827 828 * lto-plugin.c (add_input_library): New. 829 (all_symbols_read_handler): Use add_input_library for items that 830 start with -l. 831 (process_option): Fit in 80 columns. 832 (onload): Handle LDPT_ADD_INPUT_LIBRARY. 833 8342009-10-02 Diego Novillo <dnovillo@google.com> 835 836 * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE 837 and -D_FILE_OFFSET_BITS=64. 838 * configure.ac: Add AC_SYS_LARGEFILE. 839 * configure: Regenerate. 840 * Makefile.in: Regenerate. 841 * lto-plugin.c: Fix copyright boilerplate. 842 8432009-10-02 Diego Novillo <dnovillo@google.com> 844 845 * Makefile.am (ACLOCAL_AMFLAGS): Define. 846 * aclocal.m4: Regenerate with aclocal-2.64 847 * acinclude.m4: Remove. 848 * Makefile.in: Regenerate with automake-1.11 849 * configure.ac (AC_PREREQ): Update to 2.64. 850 * configure: Regenerate. 851 8522009-10-02 Diego Novillo <dnovillo@google.com> 853 854 * Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE 855 and -D_FILE_OFFSET_BITS=64. 856 * configure.ac: Add AC_SYS_LARGEFILE. 857 * configure: Regenerate. 858 * Makefile.in: Regenerate. 859 * lto-plugin.c: Fix copyright boilerplate. 860 8612009-10-02 Diego Novillo <dnovillo@google.com> 862 863 * Makefile.am (ACLOCAL_AMFLAGS): Define. 864 * aclocal.m4: Regenerate with aclocal-2.64 865 * acinclude.m4: Remove. 866 * Makefile.in: Regenerate with automake-1.11 867 * configure.ac (AC_PREREQ): Update to 2.64. 868 * configure: Regenerate. 869 8702009-10-02 Rafael Avila de Espindola <espindola@google.com> 871 872 * Makefile.am (liblto_plugin_la_SOURCES): Remove 873 $(top_srcdir)/../gcc/lto/common.c 874 * Makefile.in: Regenerate. 875 8762009-10-01 Rafael Avila de Espindola <espindola@google.com> 877 878 * lto-plugin.c (pass_through_items): New. 879 (num_pass_through_items): New. 880 (all_symbols_read_handler): Update to use the -pass-through option. 881 (process_option): Replace -libgcc with -pass-through. 882 8832009-09-30 Rafael Avila de Espindola <espindola@google.com> 884 885 * lto-plugin.c (onload): Return a ld_plugin_status. Don't require 886 register_cleanup to be set. 887 8882009-09-30 Rafael Avila de Espindola <espindola@google.com> 889 890 * Makefile.am: Remove all reference to ltosymtab. 891 * Makefile.in: Regenerate. 892 * lto-symtab.c: Remove. 893 8942009-05-21 Diego Novillo <dnovillo@google.com> 895 896 * configure.ac: Remove call to AC_CHECK_GELF. 897 Call AC_ARG_VAR for LIBELFLIBS and LIBELFINC. 898 * acinclude.m4: Do not include ../config/libelf.m4 899 * Makefile.am (LIBELFLIBS): Define. 900 (LIBELFINC): Define. 901 (AM_CPPFLAGS): Add $(LIBELFINC). 902 (ltosymtab_LDADD): Add $(LIBELFLIBS). 903 (liblto_plugin_la_LIBADD): Add $(LIBELFLIBS) 904 * lto-plugin.c: Always include <gelf.h> 905 * lto-symtab.c: Likewise. 906 * configure: Regenerate. 907 * Makefile.in: Regenerate. 908 9092009-03-23 Rafael Avila de Espindola <espindola@google.com> 910 911 * lto-plugin.c (libgcc_filename): New. 912 (all_symbols_read_handler): Pass libgcc to the linker. 913 (all_symbols_read_handler): Parse -libgcc 914 9152009-02-05 Rafael Avila de Espindola <espindola@google.com> 916 917 * Makefile.am (liblto_plugin_la_LIBADD): Link with libiberty. 918 * Makefile.in: Regenerate. 919 * lto-plugin.c (add_output_files): Argument is now a FILE. 920 (exec_lto_wrapper): Use writeargv and pex. 921 9222009-02-04 Rafael Avila de Espindola <espindola@google.com> 923 924 Revert: 925 2009-02-04 Rafael Avila de Espindola <espindola@google.com> 926 * lto-plugin.c (exec_lto_wrapper): Use writeargv. 927 928 9292009-02-04 Rafael Avila de Espindola <espindola@google.com> 930 931 * lto-plugin.c (exec_lto_wrapper): Use writeargv. 932 9332009-01-29 Rafael Avila de Espindola <espindola@google.com> 934 935 * lto-plugin.c: Include libiberty.h. 936 (exec_lto_wrapper, claim_file_handler): Use asprintf instead of 937 snprintf. 938 9392009-01-29 Rafael Avila de Espindola <espindola@google.com> 940 941 * lto-plugin.c (exec_lto_wrapper): Write argv to a file. Pass that 942 file to lto-wrapper. 943 9442009-01-28 Rafael Avila de Espindola <espindola@google.com> 945 946 * lto-plugin.c (plugin_file_info): Remove fd and elf. 947 (parse_table_entry): strdup entry->name and entry->comdat_key. 948 (free_1): Free name and comdat_key. Don't close the file. Don't call 949 elf_end. 950 (claim_file_handler): Always call elf_end. 951 9522008-12-23 Rafael Avila de Espindola <espindola@google.com> 953 954 * Makefile.am (AM_CPPFLAGS): Add -D_LARGEFILE_SOURCE 955 -D_FILE_OFFSET_BITS=64 956 * Makefile.in: Regenerate 957 9582008-12-22 Rafael Avila de Espindola <espindola@google.com> 959 960 * Makefile.am (gcc_version, target_noncanonical, libexecsubdir): New. 961 (lib_LTLIBRARIES): Rename to libexecsub_LTLIBRARIES. 962 * Makefile.in: Regenerate. 963 * acinclude.m4: Include ../config/acx.m4 and ../lt~obsolete.m4 964 * configure: Regenerate. 965 * configure.ac: Add AC_SUBST(target_noncanonical). 966 9672008-12-08 Rafael Avila de Espindola <espindola@google.com> 968 969 * lto-plugin.c: Include stdbool.h. 970 (debug, nop): Declare as bool. 971 9722008-12-08 Rafael Avila de Espindola <espindola@google.com> 973 974 * lto-plugin.c (nop): New. 975 (use_original_files): New. 976 (all_symbols_read_handler): Call use_original_files if nop is true. 977 (process_option): Parse the -nop option. 978 9792008-12-08 Rafael Avila de Espindola <espindola@google.com> 980 981 * lto-plugin.c (debug): New. 982 (exec_lto_wrapper): Print argv if debug is true. 983 (process_option): Process the -debug command line option. 984 9852008-12-03 Rafael Avila de Espindola <espindola@google.com> 986 987 * lto-plugin.c (process_option): The argument is now a single option, 988 not a space separated list. 989 9902008-12-02 Rafael Avila de Espindola <espindola@google.com> 991 992 * lto-plugin.c: Include sys/types.h and sys/wait.h 993 (output_files, num_output_files, lto_wrapper_argv, 994 lto_wrapper_num_args): New. 995 (free_2): Free output_files. 996 (write_resolution): Disable. 997 (add_output_files): New. 998 (exec_lto_wrapper): New. 999 (all_symbols_read_handler): Run lto-wrapper. 1000 (claim_file_handler): Free lto_file.name and call elf_end. 1001 (process_option): New. 1002 10032008-11-26 Rafael Espindola <espindola@google.com> 1004 1005 * lto-plugin.c (add_input_file): New. 1006 (get_section): Return NULL if get_section fails. 1007 (write_resolution): New. 1008 (all_symbols_read_handler): Call add_input_file. 1009 (claim_file_handler): Unlink the correct file. 1010 (onload): Record add_input_file. 1011 10122008-09-23 Rafael Espindola <espindola@google.com> 1013 1014 * Makefile.am (ltosymtab_SOURCES, liblto_plugin_la_SOURCES): 1015 Update the location of common.c. 1016 * Makefile.in: Regenerate. 1017 * common.c: Moved to gcc/lto. 1018 * common.h: Moved to gcc/lto. 1019 * lto-plugin.c: Update the location of common.h. 1020 * lto-symtab.c: Update the location of common.h. 1021 10222008-09-23 Rafael Espindola <espindola@google.com> 1023 1024 * common.c: Include common.h. 1025 (lto_kind_str, lto_visibility_str, lto_resolution_str): Use explicit 1026 sizes. 1027 * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str): Use 1028 explicit sizes. 1029 10302008-09-23 Rafael Espindola <espindola@google.com> 1031 1032 * lto-plugin.c (plugin_file_info): Add temp. 1033 (cleanup_handler): Only delete temporary files. 1034 (claim_file_handler): Initialize lto_file.temp. 1035 10362008-09-23 Rafael Espindola <espindola@google.com> 1037 1038 * plugin-api.h: Moved to include. 1039 10402008-09-23 Rafael Espindola <espindola@google.com> 1041 1042 * lto-plugin.c (all_symbols_read_handler): Print resolution in a new 1043 format. 1044 10452008-09-22 Rafael Espindola <espindola@google.com> 1046 1047 * plugin-api.h: Copy from binutils' cvs. 1048 10492008-09-22 Rafael Espindola <espindola@google.com> 1050 1051 * lto-symtab.c (get_symbols, add_symbols): Update signature. 1052 * plugin-api.h: Copy from binutils' cvs. 1053 10542008-09-22 Rafael Espindola <espindola@google.com> 1055 1056 * common.h (lto_kind_str, lto_visibility_str, lto_resolution_str): 1057 Make extern 1058 10592008-09-10 Rafael Espindola <espindola@google.com> 1060 1061 * lto-plugin.c (onload): add missing break statements and asserts. 1062 * lto-symtab.c (claim_file_handler): Make it static. 1063 (all_symbols_read_handler): Make it static. 1064 (all_file_handles): Make it static. 1065 (num_file_handles): Make it static. 1066 (register_claim_file): Make it static. 1067 (register_object): Indent properly. 1068 10692008-09-10 Rafael Avila de Espindola <espindola@google.com> 1070 1071 * Makefile.am (ltosymtab_LDADD): Add -lelf. 1072 * Makefiel.in: Regenerate. 1073 * lto-plugin.c: Include ar.h. 1074 (claim_file_handler): Handle file->offset != 0. 1075 * lto-symtab.c: Include gelf.h. 1076 (all_file_handles): Change type. 1077 (register_object): New. 1078 (register_file): Add support for archives. 1079 (resolve): Update to new type of all_file_handles. 1080 (print): Update to new type of all_file_handles. 1081 (free_all): Update to new type of all_file_handles. 1082 (main): Update to new type of all_file_handles. 1083 10842008-09-10 Rafael Avila de Espindola <espindola@google.com> 1085 1086 * lto-plugin.c (get_string_table): Remove. 1087 (get_section): Use elf_strptr instead of get_string_table. 1088 10892008-09-08 Doug Kwan <dougkwan@google.com> 1090 1091 * lto-plugin.c (all_symbols_read_handler): Widen fprintf arguments 1092 to 64-bit to fix a 32-bit bootstrap failure due to format warnings. 1093 10942008-09-08 Rafael Avila de Espindola <espindola@google.com> 1095 1096 * Makefile.am (ltosymtab_SOURCES): add common.c. 1097 (ltosymtab_CFLAGS): New. 1098 (liblto_plugin_la_SOURCES): Add common.c. 1099 * Makefile.in: Regenerate. 1100 * common.c: New. 1101 * common.h: New. 1102 * lto-plugin.c: Include stdio.h, inttypes.h and common.h. 1103 (plugin_symtab): New. 1104 (plugin_file_info): New. 1105 (register_all_symbols_read): New. 1106 (get_symbols): New. 1107 (claimed_files): New. 1108 (num_claimed_files): New. 1109 (translate): Don't drop the slot number. 1110 (free_1): New. 1111 (free_2): New. 1112 (all_symbols_read_handler): New. 1113 (claim_file_handler): Record every claimed file. 1114 (onload): Handle LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and 1115 LDPT_GET_SYMBOLS. 1116 * lto-symtab.c: Include stdlib.h, string.h and common.h. 1117 (current_file_handle): Remove. 1118 (ld_plugin_all_symbols_read_handler): New. 1119 (plugin_handle): New. 1120 (file_handle): New. 1121 (all_file_handles): New. 1122 (num_file_handles): New. 1123 (get_symbols): New. 1124 (register_all_symbols_read): New. 1125 (add_symbols): Don't print the symbols, just record them. 1126 (ld_plugin_tv): Add LDPT_REGISTER_ALL_SYMBOLS_READ_HOOK and 1127 LDPT_GET_SYMBOLS. 1128 (load_plugin): Use plugin_handle. 1129 (register_file): Add the file handle to all_file_handles. 1130 (resolve): New. 1131 (print): New. 1132 (unload_plugin): New. 1133 (free_all): New. 1134 (main): Call all_symbols_read_handler and free resources. 1135 11362008-09-03 Rafael Avila de Espindola <espindola@google.com> 1137 1138 * Makefile.am (AM_CFLAGS): New. 1139 (ltosymtab_LDADD): Remove -lelf. Add -ldl. 1140 (lib_LTLIBRARIES): New. 1141 (liblto_plugin_la_SOURCES): New. 1142 (liblto_plugin_la_LIBADD): New. 1143 * Makefile.in: Regenerate. 1144 * acinclude.m4: Don't include ../config/acx.m4 and 1145 ../config/no-executables.m4. 1146 Include ../ltsugar.m4, ../ltoptions.m4, ../ltversion.m4 and 1147 ../libtool.m4. 1148 * aclocal.m4: Regenerate. 1149 * configure: Regenerate. 1150 * configure.ac: Use AM_PROG_LIBTOOL. 1151 * lto-plugin.c: New. 1152 * lto-symtab.c: Rewrite to use the plugin. 1153 * plugin-api.h: New. 1154 11552008-08-25 Rafael Avila de Espindola <espindola@google.com> 1156 1157 * configure: Regenerate. 1158 * configure.ac: Use AC_CHECK_GELF. 1159 * lto-symtab.c: Include gelf.h. 1160 (get_string_table): Use size independent API. 1161 (printTable): Use lld to print 64 bit integers. 1162 11632008-08-22 Rafael Avila de Espindola <espindola@google.com> 1164 1165 * lto-symtab.c (parse_table_entry): Assert entry->kind and 1166 entry->visibility are valid. 1167 11682008-07-22 Rafael Avila de Espindola <espindola@google.com> 1169 * lto-symtab.c (table_entry): Add comdat. 1170 (parse_table_entry): Read comdat. 1171 11722008-08-21 Rafael Espindola <espindola@google.com> 1173 1174 * Makefile.am: New. 1175 * Makefile.in: New. 1176 * acinclude.m4: New. 1177 * aclocal.m4: New. 1178 * configure: New. 1179 * configure.ac: New. 1180 * lto-symtab.c: New. 1181