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