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