1 2010-12-31 Robert Millan <rmh (a] gnu.org> 2 Richard Sandiford <rdsandiford (a] googlemail.com> 3 4 * configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu. 5 6 * emulparams/elf32btsmip_fbsd.sh: New file. 7 * emulparams/elf32btsmipn32_fbsd.sh: Likewise. 8 * emulparams/elf32ltsmip_fbsd.sh: Likewise. 9 * emulparams/elf32ltsmipn32_fbsd.sh: Likewise. 10 * emulparams/elf64btsmip_fbsd.sh: Likewise. 11 * emulparams/elf64ltsmip_fbsd.sh: Likewise. 12 13 * Makefile.am: Add build rules for `eelf32btsmip_fbsd.c', 14 `eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c', 15 `eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and 16 `eelf64ltsmip_fbsd.c'. 17 * Makefile.in: Regenerate. 18 19 2010-12-30 H.J. Lu <hongjiu.lu (a] intel.com> 20 21 * emulparams/elf32_x86_64.sh: New. 22 23 * configure.tgt (targ64_extra_emuls): Add elf32_x86_64 for 24 i[3-7]86-*-linux-*. 25 (targ_extra_libpath): Likewise. 26 (targ_extra_emuls): Add elf32_x86_64 for x86_64-*-linux-*. 27 (targ_extra_libpath): Likewise. 28 29 * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf32_x86_64.c. 30 (eelf32_x86_64.c): New. 31 * Makefile.in: Regenerated. 32 33 2010-12-20 Alan Modra <amodra (a] gmail.com> 34 35 PR ld/12327 36 * ld.texinfo (Expression Section): Describe treatment of numbers 37 and absolute symbols. 38 * ldemul.c (after_open_default): Look up __ld_compatibility. 39 * ldexp.c (fold_name): Convert absolute symbols to numbers when 40 inside output section definitions, or when __ld_compatibility >= 221. 41 (exp_fold_tree_1): Convert numbers to absolute when not in output 42 section definition and __ld_compatibility < 221. Don't always 43 convert values outside an output section definition to absolute. 44 * ldexp.h (uses_defined): Comment. 45 * ldlang.c (ld_compatibility): New variable. 46 * ldlang.h (ld_compatibility): Declare. 47 * emultempl/aix.em, * emultempl/armcoff.em, * emultempl/beos.em, 48 * emultempl/elf32.em, * emultempl/genelf.em, * emultempl/lnk960.em, 49 * emultempl/m68kcoff.em, * emultempl/mmo.em, * emultempl/pe.em, 50 * emultempl/pep.em, * emultempl/sunos.em, * emultempl/z80.em: Call 51 after_open_default from after_open function. 52 53 2010-12-20 Alan Modra <amodra (a] gmail.com> 54 55 PR ld/12001 56 Revert 2010-11-03 Nick Clifton 57 * ldlang.c (ldlang_def_chain_list): Delete. 58 (insert_defined, ldlang_add_def, lang_place_defineds): Delete. 59 (lang_process): Don't call lang_place_defineds. 60 (lang_add_assignment): Don't do anything special for --defsym. 61 62 * ldexp.h (struct ldexp_control): Add uses_defined. 63 (exp_fold_tree_no_dot): Declare. 64 * ldexp.c (exp_fold_tree): Clear uses_defined. 65 (exp_fold_tree_no_dot): Likewise. Make global. 66 (fold_name <DEFINED>): Set uses_defined. 67 (exp_fold_tree_1 <etree_assign>): Define symbol during first phase 68 even when the value being assigned isn't valid. 69 * ldlang.c (open_input_bfds): Process assignment statements. 70 (lang_process): Bump lang_statement_iteration. 71 (scan_for_self_assignment): Formatting. 72 (print_assignment): Style. 73 74 2010-12-15 H.J. Lu <hongjiu.lu (a] intel.com> 75 76 * Makefile.am (GENSCRIPTS): Add @enable_initfini_array@. 77 78 * NEWS: Mention SORT_BY_INIT_PRIORITY. 79 80 * configure.in: Add AC_CANONICAL_BUILD. 81 Add --enable-initfini-array. 82 83 * genscripts.sh (ENABLE_INITFINI_ARRAY): New. 84 85 * ld.h (sort_type): Add by_init_priority. 86 87 * ld.texinfo: Document SORT_BY_INIT_PRIORITY. 88 89 * ldgram.y (SORT_BY_INIT_PRIORITY): New. 90 (wildcard_spec): Handle SORT_BY_INIT_PRIORITY. 91 92 * ldlang.c (get_init_priority): New. 93 (compare_section): Use get_init_priority for by_init_priority. 94 95 * ldlex.l (SORT_BY_INIT_PRIORITY): New. 96 97 * scripttempl/elf.sc: Support ENABLE_INITFINI_ARRAY. 98 99 * Makefile.in: Regenerated. 100 * aclocal.m4: Regenerated. 101 * config.in: Likewise. 102 * configure: Likewise. 103 104 2010-12-13 Alan Modra <amodra (a] gmail.com> 105 106 * ldlang.c (load_symbols): Correct last change. 107 108 2010-12-12 H.J. Lu <hongjiu.lu (a] intel.com> 109 110 * ldlang.c (load_symbols): Optimize for add_archive_element. 111 112 2010-12-09 Mike Frysinger <vapier (a] gentoo.org> 113 114 * .gitignore: New file. 115 116 2010-12-06 H.J. Lu <hongjiu.lu (a] intel.com> 117 118 * lexsup.c (ld_options): Add -flto and -flto-partition= for 119 GCC LTO option compatibility. 120 121 2010-12-06 H.J. Lu <hongjiu.lu (a] intel.com> 122 123 PR ld/12288 124 * plugin.c (message): Don't add the trailing `\n' for 125 LDPL_ERROR. 126 127 2010-12-06 H.J. Lu <hongjiu.lu (a] intel.com> 128 129 PR ld/12288 130 * testplug.c: Remove the trailing `\n' from TV_MESSAGE. 131 132 2010-12-06 Dmitry Gorbachev <d.g.gorbachev (a] gmail.com> 133 134 PR ld/12288 135 * plugin.c (message): Use putchar for the trailing `\n'. 136 137 2010-12-06 H.J. Lu <hongjiu.lu (a] intel.com> 138 Dmitry Gorbachev <d.g.gorbachev (a] gmail.com> 139 140 PR ld/12289 141 * ldmain.c (main): Don't call plugin_call_cleanup. 142 143 * plugin.c (plugin_call_cleanup): Make it static. 144 (message): Don't call plugin_call_cleanup. 145 (plugin_load_plugins): Call xatexit with plugin_call_cleanup. 146 147 2010-12-05 H.J. Lu <hongjiu.lu (a] intel.com> 148 149 PR ld/12289 150 * plugin.c (message): Call plugin_call_cleanup on fatal 151 error. 152 153 2010-12-05 H.J. Lu <hongjiu.lu (a] intel.com> 154 155 * plugin.c (message): Add a space after `:' in error message. 156 157 2010-12-05 H.J. Lu <hongjiu.lu (a] intel.com> 158 159 * plugin.c (asymbol_from_plugin_symbol): Add the trailing `\n' 160 to einfo. 161 (get_symbols): Likewise. 162 (plugin_notice): Likewise. 163 (plugin_multiple_definition): Likewise. 164 165 2010-12-05 H.J. Lu <hongjiu.lu (a] intel.com> 166 167 PR ld/12288 168 * plugin.c (message): Add the trailing `\n'. 169 170 2010-12-05 H.J. Lu <hongjiu.lu (a] intel.com> 171 172 * ldfile.c (ldfile_open_file_search): Check maybe_archive instead 173 of is_archive. 174 * emultempl/aix.em: Likewise. 175 * emultempl/elf32.em: Likewise. 176 * emultempl/linux.em: Likewise. 177 * emultempl/pe.em: Likewise. 178 * emultempl/pep.em: Likewise. 179 * emultempl/sunos.em: Likewise. 180 * emultempl/vms.em: Likewise. 181 182 * ldlang.c (new_afile): Set maybe_archive instead of is_archive.. 183 184 * ldlang.h (lang_input_statement_struct): Replace is_archive 185 with maybe_archive. 186 187 2010-12-05 H.J. Lu <hongjiu.lu (a] intel.com> 188 189 PR ld/12277 190 * plugin.c (asymbol_from_plugin_symbol): Properly convert LTO 191 plugin visibility to ELF visibility. 192 (is_visible_from_outside): Re-indent. 193 194 2010-12-04 Alan Modra <amodra (a] gmail.com> 195 196 * ldlang.c (lang_size_sections_1): Align lma using same alignment 197 as for vma. 198 199 2010-12-03 H.J. Lu <hongjiu.lu (a] intel.com> 200 201 * lexsup.c (ld_options): Fix a typo in comments. 202 203 2010-12-01 H.J. Lu <hongjiu.lu (a] intel.com> 204 205 * plugin.h: Re-indent. 206 207 2010-11-30 Joel Sherrill <joel.sherrill (a] oarcorp.com> 208 209 * configure.tgt: Add sparc64-rtems. 210 211 2010-11-26 Alan Modra <amodra (a] gmail.com> 212 213 * po/ja.po: Update. 214 215 2010-11-25 Alan Modra <amodra (a] gmail.com> 216 217 * po/bg.po: Update. 218 * po/es.po: Update. 219 * po/fi.po: Update. 220 * po/ja.po: New. 221 * po/zh_CN.po: Update. 222 223 2010-11-25 Jan Hubicka <hubicka (a] ucw.cz> 224 225 * scripttempl/elf.sc: Group .text.exit, text.startup and .text.hot 226 sections. 227 228 2010-11-23 Matthias Klose <doko (a] ubuntu.com> 229 230 * configure.ac: For --enable-gold, handle value `default' instead of 231 `both*'. Always install ld as ld.gold, install as ld if gold is 232 the default. 233 * configure: Regenerate. 234 235 2010-11-21 H.J. Lu <hongjiu.lu (a] intel.com> 236 237 * ldfile.c: Re-indent plugin code. 238 * ldlang.c: Likewise. 239 * ldmain.c: Likewise. 240 * plugin.c: Likewise. 241 242 2010-11-20 H.J. Lu <hongjiu.lu (a] intel.com> 243 244 PR ld/12246 245 * plugin.c (asymbol_from_plugin_symbol): Set alignment of 246 common symbol to 1 for For ELF targets. 247 248 2010-11-20 H.J. Lu <hongjiu.lu (a] intel.com> 249 250 PR ld/12247 251 * lexsup.c (parse_args): Properly report loading plugin error. 252 253 2010-11-19 Dave Korn <dave.korn.cygwin (a] gmail.com> 254 255 * plugin.c (is_visible_from_outside): New function. 256 (get_symbols): Use it. 257 258 2010-11-16 Jie Zhang <jie.zhang (a] analog.com> 259 260 * Makefile.am (eelf32bfinfd.c, eelf32bfin.c): Depend on bfin.em. 261 * Makefile.in: Regenerated. 262 * emulparams/bfin.sh (EXTRA_EM_FILE): Set. 263 * emulparams/elf32bfinfd.sh (EXTRA_EM_FILE): Likewise. 264 * emultempl/bfin.em: New. 265 266 2010-11-16 Yasuaki Taniguchi <taniguchi.yasua (a] jp.fujitsu.com> 267 268 * emultempl/pe.em (_list_options): Correct typo. 269 * emultempl/pep.em (_list_options): Likewise. 270 271 2010-11-08 Thomas Schwinge <thomas (a] schwinge.name> 272 273 * configure.host: Add stanza for *-*-gnu*. 274 275 2010-11-05 Pierre Muller <muller (a] ics.u-strasbg.fr> 276 277 * emultempl/spuelf.em (new_tmp_file): Fix wrong first parameter. 278 279 2010-11-05 Tristan Gingold <gingold (a] adacore.com> 280 281 * po/ld.pot: Regenerate 282 * po/POTFILES.in: Regenerate 283 284 2010-11-05 Tristan Gingold <gingold (a] adacore.com> 285 286 * NEWS: Add marker for 2.21. 287 288 2010-11-05 Dave Korn <dave.korn.cygwin (a] gmail.com> 289 290 * plugin.h (plugin_active_plugins_p): New prototype. 291 (is_ir_dummy_bfd): Delete prototype. 292 * plugin.c: Fix formatting issues. 293 (is_ir_dummy_bfd): Make static. 294 (plugin_active_plugins_p): New function. 295 * ldfile.c (ldfile_try_open_bfd): Use it to save work if no plugins 296 are loaded. Always close file descriptor after claim handler returns. 297 * ldmain.c (add_archive_element): Likewise. 298 299 2010-11-05 Alan Modra <amodra (a] gmail.com> 300 301 * ldlang.c (lang_add_section): Distinguish ELF treatment of NOLOAD. 302 (map_input_to_output_sections): Likewise. 303 (lang_size_sections_1): Likewise. 304 (IGNORE_SECTION): Don't test SEC_NEVER_LOAD. 305 (lang_check_section_addresses): Likewise. 306 307 2010-11-04 Kai Tietz <kai.tietz (a] onevision.com> 308 309 * scripttempl/pe.sc (.debug_types): New. 310 * scripttempl/pep.sc: Likewise. 311 312 2010-11-04 Alan Modra <amodra (a] gmail.com> 313 314 * plugin.c (is_ir_dummy_bfd): Don't segfault on NULL abfd. 315 316 2010-11-03 Nick Clifton <nickc (a] redhat.com> 317 318 PR ld/12001 319 * ldlang.c (ldlang_def_chain_list): New variable. Contains a list 320 of symbols defined via the --defsym command line option and 321 currently waiting assignment. 322 (insert_defined): Add a defined symbol to the symbol table. 323 (ldlang_add_def): Add a entry to the ldlang_def_chain_list. 324 (lang_place_defineds): Walk ldlang_def_chain_list defining the 325 symbols. 326 (lang_process): Call lang_place_defineds. 327 (lang_add_assignment): If the assignment has come from a --defsym 328 command line option then call lang_add_def. 329 330 2010-11-03 Alan Modra <amodra (a] gmail.com> 331 332 * Makefile.am (eelf64hppa.c): Correct dependencies. 333 * Makefile.in: Regenerate. 334 335 2010-11-02 H.J. Lu <hongjiu.lu (a] intel.com> 336 337 * scripttempl/armbpabi.sc: Include compressed DWARF debug 338 sections. 339 * scripttempl/avr.sc: Likewise. 340 * scripttempl/elf32cr16.sc: Likewise. 341 * scripttempl/elf32crx.sc: Likewise. 342 * scripttempl/elf32msp430.sc: Likewise. 343 * scripttempl/elf32msp430_3.sc: Likewise. 344 * scripttempl/elf32sh-symbian.sc: Likewise. 345 * scripttempl/elf64hppa.sc: Likewise. 346 * scripttempl/elf_chaos.sc: Likewise. 347 * scripttempl/elfd10v.sc: Likewise. 348 * scripttempl/elfd30v.sc: Likewise. 349 * scripttempl/elfi370.sc: Likewise. 350 * scripttempl/elfm68hc11.sc: Likewise. 351 * scripttempl/elfm68hc12.sc: Likewise. 352 * scripttempl/elfxtensa.sc: Likewise. 353 * scripttempl/ip2k.sc: Likewise. 354 * scripttempl/iq2000.sc: Likewise. 355 * scripttempl/mep.sc: Likewise. 356 * scripttempl/mmo.sc: Likewise. 357 * scripttempl/v850.sc: Likewise. 358 * scripttempl/xstormy16.sc: Likewise. 359 360 2010-10-29 H.J. Lu <hongjiu.lu (a] intel.com> 361 362 * ldfile.c (ldfile_try_open_bfd): Set BFD_DECOMPRESS after 363 bfd_openr returns. 364 * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Likewise. 365 366 * scripttempl/elf.sc: Include compressed DWARF debug sections. 367 368 2010-10-28 Alan Modra <amodra (a] gmail.com> 369 370 * ldfile.c (find_scripts_dir): Don't look in absolute SCRIPTDIR. 371 372 2010-10-28 Matthias Klose <doko (a] ubuntu.com> 373 374 * ld.texinfo: Add directory section for info document. 375 * ldint.texinfo: Likewise. 376 377 2010-10-28 Alan Modra <amodra (a] gmail.com> 378 379 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): For 380 --no-undefined-version, don't report dot sym versions added by ld. 381 382 2010-10-28 Alan Modra <amodra (a] gmail.com> 383 384 * ldlang.h (ldlang_add_undef): Add cmdline param. 385 * ldlang.c (undef_from_cmdline): New var. 386 (ldlang_add_undef): Add cmdline param. Set undef_from_cmdline. 387 (lang_end): Really require -e or -u from command line on 388 relocatable --gc-sections. 389 * ldemul.c (after_parse_default): Adjust ldlang_add_undef call. 390 * ldgram.y (extern_name_list_body): Likewise. 391 * lexsup.c (parse_args): Likewise. 392 * emultempl/aix.em (gld${EMULATION_NAME}_read_file): Likewise. 393 394 2010-10-25 Alan Modra <amodra (a] gmail.com> 395 396 * plugin.c (plugin_get_ir_dummy_bfd): Set bfd_use_reserved_id. 397 Formatting. 398 399 2010-10-22 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE> 400 401 * emulparams/elf32_sparc_sol2.sh (OUTPUT_FORMAT): Set to 402 elf32-sparc-sol2. 403 * emulparams/elf64_sparc_sol2.sh (OUTPUT_FORMAT): Set to 404 elf64-sparc-sol2. 405 406 2010-10-22 Alan Modra <amodra (a] gmail.com> 407 408 * ldwrite.c (build_link_order <lang_data_statement_enum>): Don't 409 output when section has no contents. 410 (build_link_order <lang_reloc_statement_enum>): Likewise. 411 412 2010-10-21 Joseph Myers <joseph (a] codesourcery.com> 413 414 * emulparams/elf32_tic6x_le.sh (ATTRS_SECTIONS): Use 415 .c6xabi.attributes, not __TI_build_attributes. 416 417 2010-10-20 Dave Korn <dave.korn.cygwin (a] gmail.com> 418 419 * plugin.c (get_symbols): Check symbol type correctly. 420 421 2010-10-15 Dave Korn <dave.korn.cygwin (a] gmail.com> 422 423 * configure.in: If <dlfcn.h> can't be found, try for <Windows.h> 424 * configure: Regenerate. 425 * config.in: Likewise. 426 * plugin.c [!HAVE_DLFCN_H && HAVE_WINDOWS_H] (dlopen): Provide 427 trival LoadLibrary-based replacement for Windows systems. 428 [!HAVE_DLFCN_H && HAVE_WINDOWS_H] (dlsym): Likewise trivial 429 replacement based on GetProcAddress. 430 [!HAVE_DLFCN_H && HAVE_WINDOWS_H] (dlsym): Likewise FreeLibrary. 431 * sysdep.h: Don't infer presence of <dlfcn.h> from ENABLE_PLUGINS 432 anymore, use its own guard. 433 434 2010-10-15 Dave Korn <dave.korn.cygwin (a] gmail.com> 435 436 * plugin.c (add_input_file): Take copy of input string. 437 (add_input_library): Likewise. 438 (set_extra_library_path): Likewise. 439 440 2010-10-14 Dave Korn <dave.korn.cygwin (a] gmail.com> 441 442 Apply LD plugin patch series (part 6/6). 443 * ldlang.c (load_symbols): Handle bfd subsitution when calling the 444 add_archive_element callback. 445 * ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive 446 member to the plugins and if claimed set "subsbfd" output parameter to 447 point to the dummy IR-only BFD. 448 449 2010-10-14 Dave Korn <dave.korn.cygwin (a] gmail.com> 450 451 Apply LD plugin patch series (part 5/6). 452 * plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd, 453 find the elf symbol data and set the visibility in the st_other field. 454 455 2010-10-14 Dave Korn <dave.korn.cygwin (a] gmail.com> 456 457 Apply LD plugin patch series (part 4/6). 458 * ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of 459 plugin_call_all_symbols_read to before setting of gc_sym_list, and 460 open any new input files that may have been added during it. 461 * ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to 462 plugin_multiple_definition and let it have first say over what to do 463 with the clashing definitions. 464 * plugin.c (no_more_claiming): New boolean variable. 465 (plugin_cached_allow_multiple_defs): Likewise. 466 (add_input_file): Implement. 467 (add_input_library): Likewise. 468 (set_extra_library_path): Likewise. 469 (plugin_call_claim_file): Don't do anything when no_more_claiming set. 470 (plugin_call_all_symbols_read): Set it. Disable link info 471 "allow_multiple_definition" flag, but cache its value. 472 (plugin_multiple_definition): New function. 473 * plugin.h (plugin_multiple_definition): Add prototype. 474 * testplug.c (addfile_enum_t): New enumerated typedef. 475 (add_file_t): New struct typedef. 476 (addfiles_list): New variable. 477 (addfiles_tail_chain_ptr): Likewise. 478 (record_add_file): New function. 479 (parse_option): Parse "add:", "lib:" and "dir:" options and call it. 480 (onall_symbols_read): Iterate the list of new files, libs and dirs, 481 adding them. 482 483 2010-10-14 Dave Korn <dave.korn.cygwin (a] gmail.com> 484 485 Apply LD plugin patch series (part 3/6). 486 * ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice. 487 * plugin.c (non_ironly_hash): Add new bfd hash table. 488 (plugin_load_plugins): Exit early if no plugins to load. If plugins 489 do load successfully, set notice_all flag in link info. 490 (get_symbols): Implement. 491 (plugin_load_plugins): Exit early if no plugins to load, else after 492 loading plugins successfully enable notice_all mode. 493 (init_non_ironly_hash): Lazily init non_ironly_hash table. 494 (plugin_notice): Record symbols referenced from non-IR files in the 495 non_ironly_hash. Suppress tracing, cref generation and nocrossrefs 496 tracking for symbols from dummy IR bfds. 497 * plugin.h: Fix formatting. 498 (plugin_notice): Add prototype. 499 * testplug.c (dumpresolutions): New global var. 500 (parse_options): Accept "dumpresolutions". 501 (onall_symbols_read): Get syms and dump resolutions if it was given. 502 503 2010-10-14 Dave Korn <dave.korn.cygwin (a] gmail.com> 504 505 Apply LD plugin patch series (part 2/6). 506 * ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early 507 during compat checks if they pass, instead offer any successfully 508 opened and accepted file to the plugin claim file hooks chain. Create 509 a dummy bfd to accept symbols added by the plugin, if the plugin 510 claims the file. 511 * ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols 512 read hook chain before ldemul_after_open. 513 * ldlang.h (struct lang_input_statement_struct): Add new single-bit 514 'claimed' flag. 515 * plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix. 516 (IRONLY_SUFFIX_LEN): Length of the above string. 517 (plugin_get_ir_dummy_bfd): New function to create the dummy bfd used 518 to store symbols for ir-only files. 519 (is_ir_dummy_bfd): New function to check if a bfd is ir-only. 520 (asymbol_from_plugin_symbol): New function converts symbol formats. 521 (add_symbols): Call it to convert plugin syms to bfd syms and add 522 them to the dummy bfd. 523 * plugin.h: Add missing include guards. 524 (plugin_get_ir_dummy_bfd): Add prototype. 525 (is_ir_dummy_bfd): Likewise. 526 * testplug.c (TV_MESSAGE): New helper macro. 527 (struct claim_file): New struct. 528 (claim_file_t): New typedef. 529 (tag_names[]): Make static and const. 530 (claimfiles_list): New variable. 531 (claimfiles_tail_chain_ptr): Likewise. 532 (last_claimfile): Likewise. 533 (record_claim_file): Record a file to claim on a singly-linked list. 534 (parse_symdefstr): Parse an ASCII representation of a symbol from a 535 plugin option into the fields of a struct ld_plugin_symbol. 536 (record_claimed_file_symbol): Use it to parse plugin option for 537 adding a symbol. 538 (parse_option): Parse claim file and add symbol options. 539 (dump_tv_tag): Use TV_MESSAGE. 540 (onload): Likewise. 541 (onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to 542 claim and claim this file if required, adding any symbols specified. 543 (onall_symbols_read): Make static and use TV_MESSAGE. 544 (oncleanup): Likewise. 545 546 2010-10-14 Dave Korn <dave.korn.cygwin (a] gmail.com> 547 548 Apply LD plugin patch series (part 1/6). 549 * configure.in: Add AC_CHECKs for file io and dlfcn headers and 550 functions and AC_SEARCH for -ldl. 551 (enable_plugins): New shell variable set if above tests find dlopen 552 functionality. 553 (ENABLE_PLUGINS): Add related automake conditional. 554 * configure: Regenerate. 555 * config.in: Likewise. 556 * Makefile.am (PLUGIN_C): Declare plugin C source file, conditional 557 on ENABLE_PLUGINS being defined. 558 (PLUGIN_H): Likewise for header file. 559 (PLUGIN_OBJECT): Likewise for object file. 560 (PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support. 561 (AM_CPPFLAGS): Use PLUGIN_CFLAGS. 562 (CFILES): Use PLUGIN_C. 563 (HFILES): Use PLUGIN_H. 564 (OFILES): Use PLUGIN_OBJECT. 565 (ld_new_SOURCES): Use PLUGIN_C. 566 (noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin. 567 (libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition 568 for test plugin. 569 (libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise. 570 (libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise. 571 * Makefile.in: Regenerate. 572 * sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or 573 sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS. 574 (O_RDONLY): Supply default definition likewise to bfd's sysdep.h 575 (O_WRONLY): Likewise. 576 (O_RDWR): Likewise. 577 (O_ACCMODE): Likewise. 578 (O_BINARY): Likewise. 579 (SEEK_SET): Likewise. 580 (SEEK_CUR): Likewise. 581 (SEEK_END): Likewise. 582 * ldmisc.c (vfinfo): Make non-static. Add %p format char. 583 * ldmisc.h (vfinfo): Declare extern prototype. 584 * lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for 585 OPTION_PLUGIN and OPTION_PLUGIN_OPT. 586 (ld_options[])[ENABLE_PLUGINS]: Add option data for the above two. 587 (parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once 588 option parsing is complete. 589 * ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just 590 after lang_finish. 591 * plugin.c: New source file. 592 * plugin.h: Likewise new header. 593 * testplug.c: New source file. 594 595 2010-10-12 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE> 596 597 * emultempl/solaris2.em (elf_solaris2_before_allocation): Renamed 598 basever_syms to global_syms. 599 Emit global_syms into .dynamic section for all executables and 600 shared objects. 601 (elf_solaris2_after_allocation): New function. 602 (LDEMUL_AFTER_ALLOCATION): Use it. 603 * emulparams/solaris2.sh: New file. 604 * emulparams/elf32_sparc_sol2.sh: Use it. 605 * emulparams/elf64_sparc_sol2.sh: Likewise. 606 * emulparams/elf_i386_sol2.sh: Likewise. 607 * emulparams/elf_x86_64_sol2.sh: Likewise. 608 * Makefile.am (eelf32_sparc_sol2.c): Depend on 609 $(srcdir)/emulparams/solaris2.sh. 610 (eelf64_sparc_sol2.c): Likewise. 611 (eelf_x86_64_sol2.c): Likewise. 612 (eelf_i386_sol2.c): Likewise. 613 * Makefile.in: Regenerate. 614 615 2010-10-06 Nick Clifton <nickc (a] redhat.com> 616 617 * ld.texinfo: Update description of computation of VMA and LMA 618 addresses for output sections. 619 620 2010-10-06 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de> 621 622 * Makefile.am (ALL_64_EMULATIONS): Fix typo in last commit. 623 * Makefile.in: Regenerate. 624 625 * Makefile.am (ALL_EMULATIONS): Rewrite in terms of ... 626 (ALL_EMULATION_SOURCES): ... this new variable. 627 (ALL_64_EMULATIONS): Rewrite in terms of ... 628 (ALL_64_EMULATION_SOURCES): ... this new variable. 629 (EXTRA_ld_new_SOURCES): Rewrite in terms of the _SOURCES 630 variables. 631 (eelf32microblaze.c): Fix indentation. 632 * Makefile.in: Regenerate. 633 634 2010-10-04 Bernd Schmidt <bernds (a] codesourcery.com> 635 636 * emultempl/xtensaelf.em (replace_insn_sec_with_prop_sec): Use 637 _bfd_elf_single_rel_hdr. 638 639 2010-10-01 Alan Modra <amodra (a] gmail.com> 640 641 PR ld/12066 642 * ldexp.c (fold_name): Treat absolute symbols as plain numbers. 643 * ld.texinfo (Expression Section): Don't say absolute symbols 644 are addresses. 645 646 2010-09-29 Alan Modra <amodra (a] gmail.com> 647 648 * ldlang.c (lang_place_orphans): Zero vma when relocatable or non-load 649 section for orphans handled here. 650 651 2010-09-27 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de> 652 653 * configure: Regenerate. 654 655 2010-09-23 Dave Korn <dave.korn.cygwin (a] gmail.com> 656 657 * scripttempl/armcoff.sc: Revert 2010-09-22 change. 658 659 2010-09-23 Alan Modra <amodra (a] gmail.com> 660 661 * ldlang.c (lang_add_section): Don't copy SEC_RELOC from input 662 to output section on a final link. 663 664 2010-09-22 Kai Tietz <kai.tietz (a] onevision.com> 665 666 * ldlang.c (lang_add_section): Allow for debugging 667 section to be marked as noload but to keep content. 668 (IGNORE_SECTION): Likewise. 669 (lang_check_section_addresses): Likewise. 670 * ldwrite.c (build_link_order): Likewise. 671 672 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Add 673 idata to orphan set. 674 * emultempl/pep.em: Likewise. 675 * scripttempl/armcoff.sc: Separate idata 676 and add __IAT_start__ and __IAT_end__ labels. 677 * scripttempl/pe.sc: Likewise. 678 * scripttempl/pep.sc: Likewise. 679 680 2010-09-20 David S. Miller <davem (a] davemloft.net> 681 682 * emulparams/elf32_sparc.sh: Set NOP to 0x01000000 683 684 2010-09-16 Alan Modra <amodra (a] gmail.com> 685 686 * ld.texinfo (NOLOAD): Do not erroneously state that contents will 687 appear in output file. 688 * ldlang.c (lang_add_section): Clear SEC_HAS_CONTENTS on noload 689 unless SEC_COFF_SHARED_LIBRARY. 690 (map_input_to_output_sections): Don't set SEC_HAS_CONTENTS for noload 691 output sections. 692 (lang_size_sections_1): Don't test SEC_NEVER_LOAD when deciding 693 to update dot in region. Ditto when setting SEC_ALLOC if dot 694 advanced due to assignment. 695 * ldwrite.c (build_link_order): Don't test SEC_NEVER_LOAD. 696 697 2010-09-15 Kai Tietz <kai.tietz (a] onevision.com> 698 699 * scripttempl/pep.sc: Add .xdata segment and 700 put into .pdata all segments beginning with .pdata. 701 702 2010-09-10 Alan Modra <amodra (a] gmail.com> 703 704 PR ld/11931 705 * ldlang.h (lang_for_each_statement_worker): Declare. 706 * ldlang.c (lang_for_each_statement_worker): Make global. Don't 707 recurse into children of output_section_statement with constraint 708 set to -1. 709 (print_assignment): Handle NULL output_section->bfd_section. 710 (lang_size_sections_1): Ignore output section statement address 711 when constraint is -1. 712 * emultempl/xtensaelf.em (lang_for_each_statement_worker): Delete. 713 714 2010-09-09 Tristan Gingold <gingold (a] adacore.com> 715 716 * NEWS: Add a entry for alpha-vms. 717 718 2010-09-07 Andrew Burgess <aburgess (a] broadcom.com> 719 720 * ldwrite.c (clone_section): Call bfd_copy_private_section_data on 721 newly cloned section. 722 723 2010-09-02 Richard Henderson <rth (a] redhat.com> 724 725 * configure.tgt (x86_64-*-mingw*): Add 32-bit pe emulations too. 726 727 2010-08-31 Nick Clifton <nickc (a] redhat.com> 728 729 * ldlex.l (WILDCHAR): Add the caret and exclamation point 730 characters, so that they can be used inside globs. 731 732 2010-08-31 Nick Clifton <nickc (a] redhat.com> 733 734 * ld.texinfo (MEMORY): Clarify the behaviour of the ! character in 735 a region's attributes. 736 737 2010-08-31 Alan Modra <amodra (a] gmail.com> 738 739 * scripttempl/mmo.sc: Move assignment to "Main" inside .text 740 output section statement. 741 742 2010-08-25 H.J. Lu <hongjiu.lu (a] intel.com> 743 744 PR ld/11946 745 * emultempl/elf32.em (_before_allocation): Check audit entry 746 only on ELF input. 747 748 2010-08-22 H.J. Lu <hongjiu.lu (a] intel.com> 749 750 PR ld/11937 751 * emultempl/elf32.em (_after_open): Find one .eh_frame section 752 for --eh-frame-hdr. 753 754 2010-08-22 H.J. Lu <hongjiu.lu (a] intel.com> 755 756 PR ld/11937 757 * emultempl/elf32.em (_after_open): Find an ELF input for 758 --build-id and --eh-frame-hdr. 759 760 2010-08-20 Maciej W. Rozycki <macro (a] codesourcery.com> 761 762 * Makefile.am (eshlelf_fd.c): Correct the name of the tool 763 directory. 764 * Makefile.in: Regenerate. 765 766 2010-08-20 Nick Clifton <nickc (a] redhat.com> 767 768 * emultempl/elf32.em (_after_open): Check for get_elf_backend_data 769 returning NULL. 770 771 2010-08-19 Alan Modra <amodra (a] gmail.com> 772 773 * NEWS: Mention change in linker script expression evaluation. 774 775 2010-08-19 Alan Modra <amodra (a] gmail.com> 776 777 * ld.texinfo (Expression Section): Detail expression evaluation. 778 (Builtin Functions <ADDR>): Correct. 779 (Builtin Functions <LOADADDR>): Don't mention LOADADDR normally 780 the same as ADDR. 781 (Builtin Functions <SEGMENT_START>): Typo fix. 782 * ldexp.c (new_number): New function. 783 (make_abs, exp_get_abs_int): Cope with NULL expld.result.section. 784 (fold_unary <'~', '!', '-'>): Don't make_abs. 785 (fold_binary): Simplify result section logic. Return NULL section 786 for logical ops. 787 (fold_binary <SEGMENT_START>): Use new_rel_from_abs to set value to 788 a consistent result. 789 (fold_name <SIZEOF_HEADERS>): Return new_number, not new_abs. 790 (fold_name <DEFINED, SIZEOF, ALIGNOF, LENGTH, CONSTANT>): Likewise. 791 (fold_name <NAME>): No need to handle absolute symbols differently 792 from relative ones. 793 (fold_name <ORIGIN>): Don't return valid result when 794 lang_first_phase_enum. Return new_rel_from_abs, not new_abs. 795 (exp_fold_tree_1 <etree_value>): Return new_number, not new_rel. 796 (exp_fold_tree_1): Ajust for NULL expld.result.section. When assigning 797 a plain number to dot, assume the value is relative to expld.section. 798 Make terms not in an output section, absolute. 799 * ldlang.c (print_assignment): Fix style nit. 800 (lang_size_sections_1): Cope with NULL expld.result.section. 801 (lang_do_assignments_1): Likewise. 802 803 2010-08-12 Alan Modra <amodra (a] gmail.com> 804 805 * ldexp.c (new_rel): Remove "str". Update all call sites. 806 (exp_fold_tree_1): When assigning to dot, calculate nextdot 807 using expld.result.section rather than expld.section. 808 809 2010-08-06 Alan Modra <amodra (a] gmail.com> 810 811 PR ld/11887 812 * ldlang.c (lang_add_vers_depend): Don't leave version_needed 813 uninitialised. 814 815 2010-07-28 Alan Modra <amodra (a] gmail.com> 816 817 * ldexp.c (exp_print_tree): Print function-like binary nodes as 818 functions rather than in-fix operators. Use fputs and fputc 819 where appropriate. 820 821 2010-07-23 Naveen.H.S <naveen.S (a] kpitcummins.com> 822 Ina Pandit <ina.pandit (a] kpitcummins.com> 823 824 * configure.tgt: Match all v850 targets. 825 826 2010-07-20 Mike Frysinger <vapier (a] gentoo.org> 827 828 * ld.texinfo (VERSION): Remove "int" from example script and add ";". 829 Declare the default language as C. 830 831 2010-07-17 Alan Modra <amodra (a] gmail.com> 832 833 * ldlang.c (lang_check_section_addresses): Catch overlap for 834 sections that wrap around the address space. 835 836 2010-06-29 Nick Clifton <nickc (a] redhat.com> 837 838 * scripttempl/xstormy16.sc (.gcc_except_table): Include sections 839 with the .gcc_except_table. prefix. 840 841 2010-06-29 Alan Modra <amodra (a] gmail.com> 842 843 * emulparams/maxqcoff.sh: Delete file. 844 * scripttempl/maxqcoff.sc: Delete file. 845 * Makefile.am: Remove references to maxq. 846 * configure.tgt: Likewise. 847 * Makefile.in: Regenerate. 848 * configure: Regenerate. 849 * po/POTFILES.in: Regenerate. 850 851 2010-06-27 Alan Modra <amodra (a] gmail.com> 852 853 * pe-dll.c (fill_edata): Avoid set but unused warning. 854 (pe_walk_relocs_of_symbol): Delete set but unused variables. 855 (generate_reloc, pe_implied_import_dll): Likewise. 856 * emultempl/aix.em (open_dynamic_archive): Likewise. 857 * emultempl/xtensaelf.em (replace_insn_sec_with_prop_sec): Likewise. 858 (xtensa_layout_wild): Likewise. 859 (xtensa_colocate_output_literals_callback): Likewise. 860 861 2010-06-25 Alan Modra <amodra (a] gmail.com> 862 863 * emultempl/ppc64elf.em (prelim_size_sections): New function. 864 (ppc_before_allocation): Use it. Size sections before toc edit too. 865 866 2010-06-25 Alan Modra <amodra (a] gmail.com> 867 868 * emultempl/elf32.em (find_exp_assignment): Handle etree_provided. 869 870 2010-06-20 Danny Smith <dannysmith (a] users.sourceforge.net> 871 872 * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): Make 873 auto-import and merge-rdata defaults same for i[3-7]86 and 874 x86_64 mingw. 875 876 2010-06-15 Joseph Myers <joseph (a] codesourcery.com> 877 878 * emulparams/elf32_tic6x_le.sh (ATTRS_SECTIONS): Define. 879 880 2010-06-09 Dave Korn <dave.korn.cygwin (a] gmail.com> 881 882 PR ld/11603 883 * pe-dll.c (process_def_file_and_drectve): Reorder check for 884 forwarded export name after check for ordinary export. 885 886 2010-06-08 Bernd Schmidt <bernds (a] codesourcery.com> 887 888 * emulparams/elf32_tic6x_le.sh (OTHER_BSS_SECTIONS): New. 889 890 2010-06-08 Nick Clifton <nickc (a] redhat.com> 891 892 * fdl.texi: Replace with v1.3 text. 893 * ld.texinfo: Replace abbreviated 20th century year numbers with 894 full versions. 895 * ldint.texinfo: Likewise. 896 Relicense under GFDL v1.3. Replace text of v1.1 FDL with an 897 include of the fdl.texi file. 898 899 2010-06-01 Tristan Gingold <gingold (a] adacore.com> 900 901 * scripttempl/alphavms.sc: Add comments. Move $LINK$ to the 902 readonly output-section. Handle LIB$INITIALIZE and sections 903 created by gcc. 904 * emultempl/vms.em (vms_place_orphan): Add comments. 905 906 2010-05-28 Nick Clifton <nickc (a] redhat.com> 907 908 * Makefile.am (eshlelf_fd.c): Fix typo in rule. 909 * Makefile.in: Regenerate. 910 911 2010-05-26 H.J. Lu <hongjiu.lu (a] intel.com> 912 913 PR ld/11628 914 * ldexp.c (fold_binary): Warn if value of SEGMENT_START isn't 915 multiple of maximum page size. 916 917 2010-05-25 Nick Clifton <nickc (a] redhat.com> 918 919 * Makefile.am: Fix typo. 920 * Makefile.in: Regenerate. 921 922 2010-05-25 Daniel Jacobowitz <dan (a] codesourcery.com> 923 Joseph Myers <joseph (a] codesourcery.com> 924 Andrew Stubbs <ams (a] codesourcery.com> 925 926 * Makefile.am (ALL_EMULATIONS): Add eshelf_fd.o and eshlelf_fd.o. 927 (eshelf_fd.c, eshlelf_fd.c): New rules. 928 * Makefile.in: Regenerate. 929 * configure.tgt (sh-*-uclinux*): Add shelf_fd and shlelf_fd 930 emulations. 931 * emulparams/shelf_fd.sh: New file. 932 * emulparams/shlelf_fd.sh: New file. 933 * emulparams/shlelf_linux.sh: Update comment. 934 935 2010-05-25 Jay Krell <jay.krell (a] cornell.edu> 936 937 PR ld/11621 938 * Makefile.am: Replace all occurences of .o with .@OBJEXT@ 939 * Makefile.in: Regenerate. 940 941 2010-05-25 Kai Tietz <kai.tietz (a] onevision.com> 942 943 * deffilep.y (opt_name): Allow leading dot. 944 (dot_name): Likewise. 945 (anylang_id): Likewise. 946 * emultempl/pep.em (gld_${EMULATION_NAME}_before_parse): Enable by 947 default auto_import. 948 (gld${EMULATION_NAME}_handle_option): Warn about v1. 949 (pep_find_data_imports): Remove superflous warnings about 950 auto-import. 951 (gld_${EMULATION_NAME}_get_script): Don't merge for auto-import 952 and active pseudo-relocation-v2 rdata into data section. 953 * emultempl/pe.em (default_merge_rdata): New shell variable. 954 (MERGE_RDATA_V2): New macro. 955 (gld_${EMULATION_NAME}_get_script): Adjust rule for auto-import 956 selected script. 957 958 2010-05-15 Kai Tietz <kai.tietz (a] onevision.com> 959 960 * emultempl/pe.em (is_underscoring): New helper function. 961 (gld_${EMULATION_NAME}_before_parse): Replace code 962 for pe(p)_leading_underscore detection by is_underscoring. 963 (U): Likewise. 964 (GET_INIT_SYMBOL_NAME): Likewise. 965 (U_SIZE): Likewise. 966 (set_pe_name): 967 (set_entry_point): 968 (gld_${EMULATION_NAME}_set_symbols): 969 * emultempl/pep.em: Likewise. 970 * pe-dll.c (pe_detail_list): Set default 971 underscoring for x64 target. 972 (pe_dll_id_target): Add initialization of 973 pe(p)_leading_underscore. 974 975 2010-05-15 Dave Korn <dave.korn.cygwin (a] gmail.com> 976 977 * pe-dll.c: Removed trailing whitespaces. 978 979 2010-05-14 Alan Modra <amodra (a] gmail.com> 980 981 PR ld/11583 982 * ldexp.c (exp_fold_tree_1): If assignment source expression is 983 invalid, make the destination symbol undefined. 984 985 2010-05-11 Kai Tietz <kai.tietz (a] onevision.com> 986 987 * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): 988 Initialize pe(p)_leading_underscore variable. 989 (set_pe_name): Likewise. 990 * emultempl/pep.em: Likewise. 991 Additional change default to non-underscore for 992 pep_leading_underscore equal to -1. 993 994 2010-05-07 Tristan Gingold <gingold (a] adacore.com> 995 996 * Makefile.in: Regenerate with automake 1.11.1. 997 * aclocal.m4: Ditto. 998 999 2010-05-05 Nick Clifton <nickc (a] redhat.com> 1000 1001 * po/es.po: Updated Spanish translation. 1002 1003 2010-04-27 Kai Tietz <kai.tietz (a] onevision.com> 1004 1005 * pe-dll.c (_nm_-symbols): Use always underscored variant 1006 for symbols. 1007 (__imp_-symbols): Likewise. 1008 (___imp_-symbols): Likewise. 1009 * NEWS: Mention ABI change for x64 PE-COFF. 1010 1011 2010-04-27 H.J. Lu <hongjiu.lu (a] intel.com> 1012 1013 * Makefile.am (install-exec-local): Properly install ld as 1014 default cross linker. 1015 * Makefile.in: Regenerated. 1016 1017 2010-04-27 H.J. Lu <hongjiu.lu (a] intel.com> 1018 Nick Clifton <nickc (a] redhat.com> 1019 1020 * configure.in (install_as_default): Define and set to true 1021 unless --enable-gold=both/gold has been specified. 1022 * configure: Regenerate. 1023 1024 * Makefile.am (transform): Use ld.bfd as the default name of 1025 the linker. 1026 (install-exec-local): Also install the executable as a binary 1027 named 'ld' if install_as_default is true. 1028 * Makefile.in: Regenerate. 1029 1030 2010-04-22 Nick Clifton <nickc (a] redhat.com> 1031 1032 * po/ld.pot: Updated by the Translation project. 1033 * po/vi.po: Updated Vietnamese translation. 1034 * po/bg.po: Updated Bulgarian translation. 1035 1036 2010-04-15 Andrew Haley <aph (a] redhat.com> 1037 1038 * emultempl/armelf.em (merge_exidx_entries): New variable. 1039 (OPTION_NO_MERGE_EXIDX_ENTRIES): New definition. 1040 ("no-merge-exidx-entries"): New option. 1041 * ld.texinfo (merge-exidx-entries): Document this option. 1042 1043 2010-04-14 Tristan Gingold <gingold (a] adacore.com> 1044 1045 * emulparams/alphavms.sh: New file. 1046 * emultempl/vms.em: New file. 1047 * scripttempl/alphavms.sc: New file. 1048 * configure.tgt (alpha*-*-*vms*): Added. 1049 * Makefile.am (ALL_EMULATIONS): Add ealphavms.o 1050 (ealphavms.c): New target. 1051 * Makefile.in: Regenerate. 1052 1053 2010-04-09 Nick Clifton <nickc (a] redhat.com> 1054 1055 * ldlang.c (wild_sort): Remove unused variable section_name. 1056 1057 2010-04-07 Alan Modra <amodra (a] gmail.com> 1058 1059 * configure: Regenerate. 1060 1061 2010-04-06 H.J. Lu <hongjiu.lu (a] intel.com> 1062 1063 PR ld/11434 1064 * ld/testsuite/ld-x86-64/unique1.d: New. 1065 * ld/testsuite/ld-x86-64/unique1.s: Likewise. 1066 1067 * ld-x86-64/x86-64.exp: Run unique1. 1068 1069 2010-04-05 Kai Tietz <kai.tietz (a] onevision.com> 1070 1071 * emultempl/pep.em (U): Macro modified. 1072 (U_SIZE): New helper macro. 1073 (GET_INIT_SYMBOL_NAME): Likewise. 1074 (enum options): Add OPTION_NO_LEADING_UNDERSCORE 1075 and OPTION_LEADING_UNDERSCORE enumerator-values. 1076 (gld${EMULATION_NAME}_add_options): Add --(no-)leading-underscore 1077 option. 1078 (definfo): Add new member is_c_symbol. 1079 (D): Add to macro underscore mode parameter. 1080 (init): Add definition for is_c_symbol. 1081 (gld_${EMULATION_NAME}_list_options): Display new options. 1082 (set_pep_name): Adjust underscoring dependent fixed 1083 symbol handling. 1084 (gld_${EMULATION_NAME}_set_symbols): Likewise. 1085 (saw_option): Likewise. 1086 (gld_${EMULATION_NAME}_unrecognized_file): Likewise. 1087 (set_entry_point): Initial initial_symbol_char dependent to 1088 target's default and new option flag pep_leading_underscore. 1089 * emultempl/pe.em (U): Macro modified. 1090 (U_SIZE): New helper macro. 1091 (GET_INIT_SYMBOL_NAME): Likewise. 1092 (OPTION_LEADING_UNDERSCORE): Add new option define. 1093 (OPTION_NO_LEADING_UNDERSCORE): Likewise. 1094 (gld${EMULATION_NAME}_add_options): Add --(no-)leading-underscore 1095 option. 1096 (definfo): Add new member is_c_symbol. 1097 (D): Add to macro underscore mode parameter. 1098 (init): Add definition for is_c_symbol. 1099 (gld_${EMULATION_NAME}_list_options): Display new options. 1100 (set_pep_name): Adjust underscoring dependent fixed 1101 symbol handling. 1102 (gld_${EMULATION_NAME}_set_symbols): Likewise. 1103 (saw_option): Likewise. 1104 (gld_${EMULATION_NAME}_unrecognized_file): Likewise. 1105 (set_entry_point): Initial initial_symbol_char dependent to 1106 target's default and new option flag pep_leading_underscore. 1107 * pe-dll.c (pe_leading_underscore): New flag variable. 1108 (pe_detail_list): Remove const to allow modify of 1109 member underscore. 1110 (pe_dll_id_target): Initialize pe_details' underscore variable 1111 dependent to target's default and flag pe_leading_underscore. 1112 * pe-dll.h (pe_leading_underscore): Add extern declaration of 1113 option flag. 1114 * pep-dll.c (pe_leading_underscore): Add alias define for 1115 pep_leading_underscore. 1116 * pep-dll.h (pep_leading_underscore) Add extern declaration of 1117 option flag. 1118 * ld.texinfo: Add documentation for --(no-)leading-underscore 1119 option. 1120 1121 2010-03-26 Alan Modra <amodra (a] gmail.com> 1122 1123 PR ld/11426 1124 * configure.host (many linux targets <HOSTING_CRT0>): Remove edits. 1125 (m68*-motorola-sysv <HOSTING_LIBS>): Use here doc, not echo. 1126 1127 2010-03-25 Joseph Myers <joseph (a] codesourcery.com> 1128 1129 * Makefile.am (ALL_EMULATIONS): Add eelf32_tic6x_be.o and 1130 eelf32_tic6x_le.o. 1131 (eelf32_tic6x_be.c, eelf32_tic6x_le.c): New. 1132 * NEWS: Add news entry for TI C6X support. 1133 * configure.tgt (tic6x-*-*): New. 1134 * emulparams/elf32_tic6x_be.sh, emulparams/elf32_tic6x_le.sh: New. 1135 1136 2010-03-23 Joseph Myers <joseph (a] codesourcery.com> 1137 1138 * scripttempl/elf.sc (RODATA_NAME, SDATA_NAME, SBSS_NAME, 1139 BSS_NAME): Define if not already defined. Use in place of some 1140 hardcoded section names. 1141 1142 2010-03-18 H.J. Lu <hongjiu.lu (a] intel.com> 1143 1144 * scripttempl/elf.sc (INIT_ARRAY): Re-indent. 1145 1146 2010-03-18 Aymeric Vincent <vincent (a] labri.fr> 1147 1148 PR ld/11384 1149 * emultempl/sh64elf.em: Add missing EOF. 1150 1151 2010-03-18 Doug Semler <dougsemler (a] gmail.com> 1152 1153 * pe-dll.c (make_one): Make text section readonly. 1154 (make_one): Add *ABS* symbol @feat.00 with value 1 to tag 1155 the jump stub on X86 as /SAFESEH compatible for 1156 native toolchains. 1157 1158 2010-03-17 Alan Modra <amodra (a] gmail.com> 1159 1160 * ldlang.c (lang_size_sections_1): Remove "s" param. Set "s" from 1161 *prev instead. Update all callers. 1162 1163 2010-03-15 Daniel Jacobowitz <dan (a] codesourcery.com> 1164 1165 * ldlang.c (lang_insert_orphan): Place loadable orphans in the same 1166 region and phdrs as their placement section. 1167 1168 2010-03-15 Alan Modra <amodra (a] gmail.com> 1169 1170 * emultempl/ppc64elf.em (move_input_section, sort_toc_sections): New. 1171 (ppc_before_allocation): Call sort_toc_sections. 1172 (no_toc_sort, OPTION_NO_TOC_SORT): New. 1173 (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS, 1174 PARSE_AND_LIST_OPTIONS): Handle --no-toc-sort. 1175 1176 2010-03-14 Alan Modra <amodra (a] gmail.com> 1177 1178 PR ld/11378 1179 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation): Call 1180 ppc64_elf_check_init_fini and warn if .init/.fini use different TOCs. 1181 1182 2010-03-11 George Gensure <werkt0 (a] gmail.com> 1183 1184 PR ld/11367 1185 * ldcref.c (handle_asneeded_cref): Correct copying of refs. 1186 1187 2010-03-05 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE> 1188 1189 * Makefile.am (ALL_EMULATIONS): Add eelf32_sparc_sol2.o, 1190 eelf_i386_sol2.o. 1191 (ALL_64_EMULATIONS): Add eelf_x86_64_sol2.o, eelf64_sparc_sol2.o. 1192 (eelf32_sparc_sol2.c): New rule. 1193 (eelf64_sparc_sol2.c): Likewise. 1194 (eelf_x86_64_sol2.c): Likewise. 1195 (eelf_i386_sol2.c): Likewise. 1196 * Makefile.in: Regenerate. 1197 * configure.tgt (i[3-7]86-*-solaris2*): Change targ_emul to 1198 elf_i386_sol2. 1199 Add elf_i386_ldso, elf_x86_64_sol2 to targ_extra_emuls. 1200 (x86_64-*-solaris2*): Change targ_emul to elf_x86_64_sol2. 1201 Add elf_x86_64, elf_i386_sol2, elf_i386 to targ_extra_emuls. 1202 (sparc-*-solaris2.[0-6]*): Change targ_emul to elf32_sparc_sol2. 1203 Add target_extra_emuls. 1204 (sparc-*-solaris2*): Change targ_emul to elf32_sparc_sol2. 1205 Add elf32_sparc, elf64_sparc_sol2 to targ_extra_emuls. 1206 (sparcv9-*-solaris2*): Change targ_emul to elf64_sparc_sol2. 1207 Add elf64_sparc, elf32_sparc_sol2 to target_extra_emuls. 1208 * emulparams/elf32_sparc_sol2.sh: New file. 1209 * emulparams/elf64_sparc_sol2.sh: New file. 1210 * emulparams/elf_i386_sol2.sh: New file. 1211 * emulparams/elf_x86_64_sol2.sh: New file. 1212 * emultempl/solaris2.em: New file. 1213 1214 2010-02-27 H.J. Lu <hongjiu.lu (a] intel.com> 1215 1216 PR ld/11330 1217 * ld.texinfo: Replace explicitely with explicitly. 1218 1219 2010-02-27 Jie Zhang <jie (a] codesourcery.com> 1220 1221 * scripttempl/armbpabi.sc: Don't combine .init_array.* or 1222 .fini_array.* when do relocatable linking. 1223 * scripttempl/elf.sc: Likewise. 1224 * scripttempl/elf32sh-symbian.sc: Likewise. 1225 * scripttempl/elf64hppa.sc: Likewise. 1226 * scripttempl/elfxtensa.sc: Likewise. 1227 1228 2010-02-26 Alan Modra <amodra (a] gmail.com> 1229 1230 * scripttempl/elf.sc (.fini_array): Place input .fini_array after 1231 .fini_array.*. 1232 * scripttempl/armbpabi.sc: Likewise. 1233 * scripttempl/elf32sh-symbian.sc: Likewise. 1234 * scripttempl/elf64hppa.sc: Likewise. 1235 * scripttempl/elfxtensa.sc: Likewise. 1236 1237 2010-02-25 Alan Modra <amodra (a] gmail.com> 1238 1239 PR ld/11304 1240 * ldlang.c (init_os): Remove isec param. Don't check for 1241 bfd_section already set or call bfd_init_private_section_data 1242 here. 1243 (exp_init_os): Update init_os call. 1244 (lang_add_section): Tidy. Really don't set SEC_LINK_ONCE 1245 flags. Call bfd_init_private_section_data here. 1246 (map_input_to_output_sections): Tidy. Update init_os calls. 1247 Use os->sectype to select sec flags for lang_data_statement. 1248 1249 2010-02-23 Alan Modra <amodra (a] gmail.com> 1250 1251 PR ld/11304 1252 * ldlang.c: Revert last patch. 1253 1254 2010-02-23 Nick Clifton <nickc (a] redhat.com> 1255 1256 * po/bg.po: Updated Bulgarian translation. 1257 1258 2010-02-22 Alan Modra <amodra (a] gmail.com> 1259 1260 PR ld/11304 1261 * ldlang.c (exp_init_os): Delete forward declaration. 1262 (init_os): Don't check for bfd_section already created and don't 1263 init addr_tree and load_base expressions here. 1264 (map_input_to_output_sections): Only map input to output sections 1265 and set constraints here, and as an exception, create output 1266 sections which have their address set. Move all the other code to.. 1267 (create_other_output_sections): ..here. New function. Handle init 1268 of addr_tree and load_base here too. 1269 (lang_process): Call create_other_output_sections. 1270 1271 2010-02-19 Alan Modra <amodra (a] gmail.com> 1272 1273 * Makefile.am (eelf32_i960.c): Depend on ELF_GEN_DEPS, not ELF_DEPS. 1274 * Makefile.in: Regenerate. 1275 1276 2010-02-19 Alan Modra <amodra (a] gmail.com> 1277 1278 * ldlang.c (unique_section_p): Add os param. Allow group 1279 sections to match /DISCARD/. Update all callers. 1280 * emultempl/genelf.em (gld${EMULATION_NAME}_before_allocation): New. 1281 (LDEMUL_BEFORE_ALLOCATION): Define. 1282 1283 2010-02-15 Nick Clifton <nickc (a] redhat.com> 1284 1285 * po/vi.po: Updated Vietnamese translation. 1286 1287 2010-02-10 Richard Sandiford <r.sandiford (a] uk.ibm.com> 1288 1289 * Makefile.am (CFILES): Add ldlex-wrapper.c. 1290 (OFILES): Replace ldlex.c with ldlex-wrapper.c. 1291 (ldlex.o): Replace with... 1292 (ldlex-wrapper.o): ...this new rule. 1293 (EXTRA_ld_new_SOURCES): Add ldlex.l. 1294 (ld_new_SOURCES): Replace ldlex.l with ldlex-wrapper.c. 1295 * Makefile.in: Regenerate. 1296 * ldlex.l (sysdep.h): Don't include here. 1297 * ldlex-wrapper.c: New file. 1298 1299 2010-02-09 Alan Modra <amodra (a] gmail.com> 1300 1301 * emultempl/ppc64elf.em (ppc_before_allocation): Update for changed 1302 function parameters. 1303 1304 2010-02-05 Nick Clifton <nickc (a] redhat.com> 1305 1306 * configure.in (ALL_LIBGUAS): Add bg. 1307 * configure: Regenerate. 1308 * po/bg.po: New Bulgarian translation. 1309 1310 2010-02-05 Ryan Mansfield <rmansfield (a] qnx.com> 1311 1312 * emultempl/armelf.em (PARSE_AND_LIST_OPTIONS): Fix help for 1313 --target1-abs and --target1-rel options. 1314 1315 2010-02-03 Nick Clifton <nickc (a] redhat.com> 1316 1317 * emultempl/alphaelf.em: Update value expected from elf_object_id. 1318 * emultempl/hppaelf.em: Likewise. 1319 * emultempl/mipself.em: Likewise. 1320 * emultempl/ppc32elf.em: Likewise. 1321 * emultempl/ppc64elf.em: Likewise. 1322 1323 2010-02-03 Alan Modra <amodra (a] gmail.com> 1324 1325 * emultempl/ppc64elf.em (build_toc_list): Report errors from 1326 ppc64_elf_next_toc_section. 1327 (after_allocation): Update for changed function names and params. 1328 Run second pass of multitoc partitioning. 1329 1330 2010-01-21 Jon Grant <jg (a] jguk.org> 1331 Nick Clifton <nickc (a] redhat.com> 1332 1333 PR 4437 1334 * ldfile.c: (ldfile_open_file): Do not stop link upon encountering 1335 a missing file or library. Instead mark the entry as missing and 1336 set the global flag to indicate that missing files were 1337 encountered. 1338 * ldlang.c (missing_files): New exported variable. 1339 (load_symbols): Skip loading if the file is missing. 1340 (open_input_bfds): Terminate link if any input files were 1341 missing. 1342 * ldlang.h (struct lang_input_statement_struct): Add missing_file 1343 field. 1344 Add export of missing_file variable. 1345 1346 2010-01-13 DJ Delorie <dj (a] redhat.com> 1347 1348 * emultempl/elf32.em (_place_orphan): If an input section doesn't 1349 match an existing output section, but an unused output section 1350 statement does match, use it. 1351 * emultempl/pe.em (_place_orphan): Likewise. 1352 * emultempl/pep.em (_place_orphan): Likewise. 1353 1354 2010-01-09 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de> 1355 1356 * configure: Regenerate. 1357 * Makefile.in: Regenerate. 1358 1359 2010-01-08 H.J. Lu <hongjiu.lu (a] intel.com> 1360 1361 * ldver.c (ldversion): Change to "Copyright 2010". 1362 1363 2010-01-08 Alan Modra <amodra (a] gmail.com> 1364 1365 PR 11107 1366 * emultempl/vxworks.em: Expand tr arguments to suit non-GNU tr. 1367 1368 For older changes see ChangeLog-2009 1369 1371 Copyright (C) 2010 Free Software Foundation, Inc. 1372 1373 Copying and distribution of this file, with or without modification, 1374 are permitted in any medium without royalty provided the copyright 1375 notice and this notice are preserved. 1376 1377 Local Variables: 1378 mode: change-log 1379 left-margin: 8 1380 fill-column: 74 1381 version-control: never 1382 End: 1383