* emulparams/elf32rx.sh (OTHER_READONLY_SECTIONS): Add W_* sections.
[external/binutils.git] / ld / ChangeLog
1 2012-09-12  DJ Delorie  <dj@redhat.com>
2
3         * emulparams/elf32rx.sh (OTHER_READONLY_SECTIONS): Add W_* sections.
4
5 2012-09-10  Matthias Klose  <doko@ubuntu.com>
6
7         * config.in: Disable sanity check for kfreebsd.
8
9 2012-09-10  H.J. Lu  <hongjiu.lu@intel.com>
10
11         * configure: Regenerated.
12
13 2012-09-10  Iain Sandoe  <iain@codesourcery.com>
14             Alan Modra  <amodra@gmail.com>
15
16         * configure.tgt (powerpc-*-elf, et al): Define targ_extra_libpath.
17         Correct whitespace.
18         (powerpcle-*-elf, et al): Likewise.  Correct targ_extra_emuls.
19
20 2012-09-10  Iain Sandoe  <iain@codesourcery.com>
21
22         * configure.tgt (powerpc-*-elf, et al): Define targ64_extra_emuls
23         and targ64_extra_libpath.
24         (powerpcle-*-elf, et al): Likewise.
25
26 2012-09-09  Hans-Peter Nilsson  <hp@bitrange.com>
27
28         * emultempl/mmo.em (mmo_place_orphan): Rewrite to also attach
29         orphan sections to .data and .bss output sections, not just .text.
30         When giving up on finding a suitable output section, attach to any
31         output section other than .MMIX.reg_contents, if it exists.
32         * scripttempl/mmo.sc: Move output debug sections to just before
33         .MMIX.reg_contents.  Add .gnu.attributes.  Add new . = . NOP
34         assignments and move end-of-section provide-symbols after them
35         to force the end-of-section symbols to the address after orphan
36         placement.  Add SORT_NONE to .init and .fini sections.
37
38 2012-08-30  H.J. Lu  <hongjiu.lu@intel.com>
39
40         PR ld/14525
41         * scripttempl/elf.sc: Also provide __executable_start for PIE.
42
43 2012-08-17  Kai Tietz  <ktietz@redhat.com>
44
45         PR ld/14326
46         * scripttempl/pe.sc: Add _etext symbol.
47
48 2012-08-14  Nick Clifton  <nickc@redhat.com>
49
50         * configure.in (ALL_LINGUGAS): Add uk.
51         * configure: Regenerate.
52         * po/uk.po: New Ukranian translation.
53
54 2012-08-13  Ian Bolton  <ian.bolton@arm.com>
55             Laurent Desnogues  <laurent.desnogues@arm.com>
56             Jim MacArthur  <jim.macarthur@arm.com>
57             Marcus Shawcroft  <marcus.shawcroft@arm.com>
58             Nigel Stephens  <nigel.stephens@arm.com>
59             Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
60             Richard Earnshaw  <rearnsha@arm.com>
61             Sofiane Naci  <sofiane.naci@arm.com>
62             Tejas Belagod  <tejas.belagod@arm.com>
63             Yufeng Zhang  <yufeng.zhang@arm.com>
64
65         * Makefile.am: Add AArch64.
66         * Makefile.in: Regenerate.
67         * configure.tgt: Add AArch64.
68         * emulparams/aarch64elf.sh: New file.
69         * emulparams/aarch64elfb.sh: New file.
70         * emulparams/aarch64linux.sh: New file.
71         * emulparams/aarch64linuxb.sh: New file.
72         * emultempl/aarch64elf.em: New file.
73         * NEWS: Mention the new feature.
74
75 2012-08-09  Nick Clifton  <nickc@redhat.com>
76
77         * po/vi.po: Updated Vietnamese translation.
78
79 2012-08-07  Daniel Green  <venix1@gmail.com>
80
81         * scripttempl/pe.sc (R_TLS): Add .tls$AAA and .tls$ZZZ.
82         * scripttempl/pep.sc (R_TLS): Add .tls$AAA and .tls$ZZZ.
83
84 2012-08-07  Nick Clifton  <nickc@redhat.com>
85
86         * po/ja.po: Updated Japanese translation.
87
88 2012-08-06  Maciej W. Rozycki  <macro@codesourcery.com>
89
90         * emulparams/elf32bmip.sh: Make _gp hidden.
91         * emulparams/elf32bmipn32-defs.sh: Likewise.
92         * emulparams/elf32mipswindiss.sh: Likewise.
93         * scripttempl/mips.sc: Likewise.
94
95 2012-08-06  Maciej W. Rozycki  <macro@codesourcery.com>
96
97         * ldexp.h (etree_union): Add defsym member to the assign member
98         structure.
99         (exp_assign): Add hidden argument to prototype.
100         * ldexp.c (exp_fold_tree_1): Use the defsym member to handle
101         --defsym symbols.
102         (exp_assop): Add defsym argument, initialize the defsym member
103         of the assign structure.
104         (exp_assign): Handle hidden symbols.
105         (exp_defsym): Update to use the defsym argument to exp_assop.
106         (exp_provide): Update to handle the defsym argument to exp_assop.
107         * ldlex.l (HIDDEN): New token.
108         * ldgram.y (HIDDEN): Likewise.
109         (assignment, section): Update calls to exp_assign.
110         * ldctor.c (ldctor_build_sets): Likewise.
111         * mri.c (mri_format): Likewise.
112         * ldlang.c (lang_insert_orphan, lang_leave_overlay): Likewise.
113         (open_input_bfds): Remove --defsym symbols special case.
114         * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Update
115         call to exp_assign.
116         * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
117         * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
118         * emultempl/spuelf.em (spu_place_special_section): Likewise.
119         * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets):
120         Likewise.
121         * ld.texinfo (Assigning Values to Symbols): Add HIDDEN.
122         (HIDDEN): New subsection.
123
124 2012-07-31  H.J. Lu  <hongjiu.lu@intel.com>
125
126         PR ld/14156
127         * ldlang.c (wild_sort): Properly handle by_none.
128
129         * scripttempl/elf.sc: Add SORT_NONE to .init and .fini sections.
130         * scripttempl/elf32msp430.sc: Likewise.
131         * scripttempl/elf32msp430_3.sc: Likewise.
132         * scripttempl/elfd10v.sc: Likewise.
133         * scripttempl/elfd30v.sc: Likewise.
134         * scripttempl/elfxtensa.sc: Likewise.
135
136 2012-07-30  Nick Clifton  <nickc@redhat.com>
137
138         * po/ld.pot: Updated template.
139         * po/bg.po: Updated Bulgarian translation.
140         * po/es.po: Updated Spanish translation.
141         * po/fi.po: Updated Finnish translation.
142
143 2012-07-27  Mike Frysinger  <vapier@gentoo.org>
144
145         * configure.in (BFD_VERSION): Run bfd/configure --version and
146         parse the output of that.
147         * configure: Regenerate.
148
149 2012-07-27  Tristan Gingold  <gingold@adacore.com>
150
151         * NEWS: Add marker for 2.23.
152
153 2012-07-24  Jan Waclawek <konfera@efton.sk>
154
155         PR ld/14058
156         * emultempl/avrelf.em (avr_elf_after_allocation): Call
157         elf32_avr_size_stubs with is_prealloc_run as TRUE.
158
159 2012-07-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
160
161         * emulparams/elf_s390.sh (IREL_IN_PLT): Define.
162         * emulparams/elf64_s390.sh (IREL_IN_PLT): Define.
163
164 2012-07-13  Nick Clifton  <nickc@redhat.com>
165
166         PR ld/14357
167         * ldmain.c (trace_file_tries): Rename to 'verbose'.
168         * ldfile.c: Likewise.
169         * ldlang.c: Likewise.
170         * ldmain.h: Likewise.
171         * lexsup.c: Likewise.
172         * emultempl/elf32.em: Likewise.
173         * emultemp/spuelf.em: Likewise.
174         * pe-dll.c (pe_dll_generate_implib): Only print creation message
175         in verbose mode.
176
177 2012-07-10  H.J. Lu  <hongjiu.lu@intel.com>
178
179         PR ld/14156
180         * NEWS: Mention SORT_NONE.
181
182         * ld.h (sort_type): Add by_none.
183
184         * ld.texinfo: Document SORT_NONE.
185
186         * ldgram.y: Handle SORT_NONE.
187
188         * ldlang.c (update_wild_statements): Handle by_none.  Don't
189         sort .init/.fini sections.
190
191         * ldlex.l: Add SORT_NONE.
192
193 2012-07-02  H.J. Lu  <hongjiu.lu@intel.com>
194
195         * ld.texinfo: Replace __end_SECNAME with __stop_SECNAME.
196
197 2012-06-29  Nick Clifton  <nickc@redhat.com>
198
199         * scripttempl/alphavms.sc: Add .debug_macro section.
200         * scripttempl/elf.sc: Likewise.
201         * scripttempl/elf64hppa.sc: Likewise.
202         * scripttempl/elf_chaos.sc: Likewise.
203         * scripttempl/elfxtensa.sc: Likewise.
204         * scripttempl/ia64vms.sc: Likewise.
205
206         * scripttempl/armbpabi.sc: Add .debug_pubtypes, .debug_ranges and
207         .debug_macro sections.
208         * scripttempl/avr.sc: Likewise.
209         * scripttempl/elf32cr16.sc: Likewise.
210         * scripttempl/elf32crx.sc: Likewise.
211         * scripttempl/elf32msp430.sc: Likewise.
212         * scripttempl/elf32msp430_3.sc: Likewise.
213         * scripttempl/elf32sh-symbian.sc: Likewise.
214         * scripttempl/elfd30v.sc: Likewise.
215         * scripttempl/elfi370.sc: Likewise.
216         * scripttempl/elfm68hc11.sc: Likewise.
217         * scripttempl/elfm68hc12.sc: Likewise.
218         * scripttempl/elfxgate.sc: Likewise.
219         * scripttempl/i386beos.sc: Likewise.
220         * scripttempl/i386go32.sc: Likewise.
221         * scripttempl/ip2k.sc: Likewise.
222         * scripttempl/iq2000.sc: Likewise.
223         * scripttempl/mep.sc: Likewise.
224         * scripttempl/mmo.sc: Likewise.
225         * scripttempl/v850.sc: Likewise.
226         * scripttempl/xstormy16.sc: Likewise.
227
228 2012-06-28  H.J. Lu  <hongjiu.lu@intel.com>
229
230         * ldlang.c (update_wild_statements): Remove redundant statement.
231
232 2012-06-25  Alan Modra  <amodra@gmail.com>
233
234         * ldlang.c (load_symbols): Close file and set flags.loaded
235         after parsing script file.
236         (open_input_bfds): Don't segv on closed script.
237
238 2012-06-24  H.J. Lu  <hongjiu.lu@intel.com>
239
240         * configure.tgt: Enable elf_k1om for x86_64-*-linux-gnux32.
241         Remove x32 in tdir_i386linux and tdir_elf_i386.
242
243 2012-06-22  Roland McGrath  <mcgrathr@google.com>
244
245         * NEWS: Mention __ehdr_start.
246
247 2012-06-21  Alan Modra  <amodra@gmail.com>
248
249         * ldlang.c (lang_insert_orphan): Don't make __start_<sec> symbol
250         absolute, and remove unnecessary alignment.
251
252 2012-06-16  Alan Modra  <amodra@gmail.com>
253
254         * ldlang.h (lang_output_section_statement_type): Add after_end field.
255         (lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
256         (section_for_dot): Declare.
257         * ldlang.c (lang_size_sections_1): Correct comment.
258         (current_section): Move earlier.
259         (current_assign, prefer_next_section): New static vars.
260         (lang_do_assignments_1): Add found_end param.  Detect _end
261         assignment to set found_end.  Set os->after_end.  Set above statics.
262         (lang_do_assignments): Adjust lang_do_assignments_1 call.  Init
263         vars.
264         (section_for_dot): New function.
265         (lang_set_startof): Don't make an absolute symbol.
266         (lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
267         * ldexp.c (new_rel_from_abs): Use section_for_dot.
268         * emultempl/lnk960.em (symbol_at_beginning_of): New function.
269         (symbol_at_end_of): Likewise.
270         (lnk960_after_allocation): Use them.
271         * scripttempl/elf.sc: Precede OTHER_GOT_SYMBOLS with . = .; and
272         likewise before __bss_start.
273
274 2012-06-14  H.J. Lu  <hongjiu.lu@intel.com>
275
276         * plugin.c (set_tv_header): Handle link_info.pie.
277
278 2012-06-11  Alan Modra  <amodra@gmail.com>
279
280         PR ld/14215
281         * ldexp.c (fold_name <SIZEOF, ALIGNOF>): Allow forward section
282         references.
283         * emulparams/elf32_x86_64.sh (SEPARATE_GOTPLT): Depend on size of
284         .got.plt.
285         * emulparams/elf32mb_linux.sh (SEPARATE_GOTPLT): Likewise.
286         * emulparams/elf32tilegx.sh (SEPARATE_GOTPLT): Likewise.
287         * emulparams/elf32tilepro.sh (SEPARATE_GOTPLT): Likewise.
288         * emulparams/elf64tilegx.sh (SEPARATE_GOTPLT): Likewise.
289         * emulparams/elf_i386.sh (SEPARATE_GOTPLT): Likewise.
290         * emulparams/elf_k1om.sh (SEPARATE_GOTPLT): Likewise.
291         * emulparams/elf_l1om.sh (SEPARATE_GOTPLT): Likewise.
292         * emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Likewise.
293
294 2012-06-07  Georg-Johann Lay  <avr@gjlay.de>
295
296         PR 13697
297         * scripttempl/avr.sc (.data): Keep it.
298
299 2012-06-02  Andreas Schwab  <schwab@linux-m68k.org>
300
301         * Makefile.am (TEXINFO_TEX): Remove $(top_srcdir) prefix.
302         * Makefile.in: Regenerate.
303
304 2012-05-30  Alan Modra  <amodra@gmail.com>
305
306         * ldlang.h (lang_output_section_statement_type): Rename
307         "section_relative_symbol" field to "update_dot".
308         * ldlang.c: Update all uses.
309         (strip_excluded_output_sections): Don't test update_dot_tree here..
310         (lang_leave_overlay): ..set update_dot here.
311
312 2012-05-26  Alan Modra  <amodra@gmail.com>
313
314         * ldlex.h (enum option_values): Move from..
315         * lexsup.c: ..here.
316         * emultempl/ppc32elf.em: Include ldlex.h.
317         (PARSE_AND_LIST_ARGS_CASES): Disable optimisations when
318         --traditional-format.
319         * emultempl/ppc64elf.em: Likewise.
320
321 2012-05-25  Alan Modra  <amodra@gmail.com>
322
323         PR ld/13909
324         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Handle
325         multiple .eh_frame sections attached to bfd.
326
327 2012-05-23  Cary Coutant  <ccoutant@google.com>
328
329         * scripttempl/armbpabi.sc: Match .data.rel.ro.* sections more
330         carefully.  Fix typo where .rela.data.rel.ro matches
331         .rel.data.rel.ro.
332         * scripttempl/mep.sc: Likewise.
333         * scripttempl/elf.sc: Match .data.rel.ro.* sections more carefully.
334         * scripttempl/elf64hppa.sc: Likewise.
335         * scripttempl/elfxtensa.sc: Likewise.
336
337 2012-05-17  Daniel Richard G.  <skunk@iskunk.org>
338             Nick Clifton  <nickc@redhat.com>
339
340         PR 14072
341         * configure.in: Add check that sysdep.h has been included before
342         any system header files.
343         * configure: Regenerate.
344         * config.in: Regenerate.
345         * sysdep.h: Generate an error if included before config.h.
346
347 2012-05-16  Sergio Durigan Junior  <sergiodj@redhat.com>
348
349         * emultempl/m68hc1xelf.em (hook_in_stub): Pass proper `bfd'
350         as the first argument for `bfd_get_section_name'.
351
352 2012-05-16  Samuel Thibault  <samuel.thibault@ens-lyon.org>
353
354         PR ld/14069
355         * emultempl/elf32.em: Include *-*-gnu* targets in ld.so.conf
356         support.
357
358 2012-05-15  James Murray <jsm@jsm-net.demon.co.uk>
359
360         * NEWS: Mention the support for S12X processors.
361
362 2012-05-14  James Lemke  <jwlemke@codesourcery.com>
363
364         * ldlang.c (walk_wild_consider_section): Don't copy section_flag_list.
365         Pass it to callback.
366         (walk_wild_section_general): Pass section_flag_list to callback.
367         (lang_add_section): Add sflag_list parm.
368         Move out logic to keep / omit a section & call bfd_lookup_section_flags.
369         (output_section_callback_fast): Add sflag_list parm.
370         Add new parm to lang_add_section calls.
371         (output_section_callback): Likewise.
372         (check_section_callback): Add sflag_list parm.
373         (lang_place_orphans): Add new parm to lang_add_section calls.
374         (gc_section_callback): Add sflag_list parm.
375         (find_relro_section_callback): Likewise.
376         * ldlang.h (callback_t): Add flag_info parm.
377         (lang_add_section): Add sflag_list parm.
378         * emultempl/armelf.em (elf32_arm_add_stub_section):
379         Add lang_add_section parm.
380         * emultempl/beos.em (gld*_place_orphan): Likewise.
381         * emultempl/elf32.em (gld*_place_orphan): Likewise.
382         * emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
383         * emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
384         * emultempl/mipself.em (mips_add_stub_section): Likewise.
385         * emultempl/mmo.em (mmo_place_orphan): Likewise.
386         * emultempl/pe.em (gld_*_place_orphan): Likewise.
387         * emultempl/pep.em (gld_*_place_orphan): Likewise.
388         * emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
389         * emultempl/spuelf.em (spu_place_special_section): Likewise.
390         * emultempl/vms.em (vms_place_orphan): Likewise.
391
392 2012-05-14  Catherine Moore  <clm@codesourcery.com>
393
394         * NEWS:  Mention PowerPC VLE port.
395
396 2012-05-11  Daniel Richard G.  <skunk@iskunk.org>
397
398         PR binutils/14028
399         * configure.in: Invoke ACX_HEADER_STRING.
400         * configure: Regenerate.
401         * config.in: Regenerate.
402         * sysdep.h: If STRINGS_WITH_STRING is defined then include both
403         string.h and strings.h.
404
405 2012-05-08  Alan Modra  <amodra@gmail.com>
406
407         * Makefile.am (check_DEJAGNU): Export LC_ALL=C in place of other
408         LC and LANG environment vars.
409         * Makefile.in: Regenerate.
410
411 2012-05-07  Tristan Gingold  <gingold@adacore.com>
412
413         * pe-dll.c (udef_table): Make it static.
414
415 2012-05-05  Alan Modra  <amodra@gmail.com>
416
417         * pe-dll.c (process_def_file_and_drectve): Use bfd_und_section_ptr.
418         (generate_reloc): Use bfd_abs_section_ptr.
419
420 2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>
421
422         * configure.tgt: Support x86_64-*-linux-gnux32.
423
424 2012-05-03  Sean Keys  <skeys@ipdatasys.com>
425
426         * Makefile.am (ALL_EMULATIONS): Added new emulation for XGATE
427         and XGATE (elf).
428         * Makefile.in: Rebuild.
429         * configure.tgt: Recognize XGATE.
430         * scripttempl/elfxgate.sc: New file, mostly cloned from m68hc12.
431         * emulparams/xgateelf: New emulation, mostly cloned from m68hc12.
432         * NEWS: Mention new support.
433
434 2012-04-26  Hans-Peter Nilsson  <hp@axis.com>
435
436         Make bfd asserts cause linker errors.
437         * ldmain.c (default_bfd_assert_handler): New variable.
438         (ld_bfd_assert_handler): New function.
439         (main): Call bfd_set_assert_handler.
440
441 2012-04-24  Alan Modra  <amodra@gmail.com>
442
443         * ldlang.c (size_input_section): Use sec_info_type rather than
444         usrdata->flags.just_syms.
445         * ldwrite.c (build_link_order): Likewise.
446         * emultempl/hppaelf.em (build_section_lists): Likewise.
447         * emultempl/ppc64elf.em (build_toc_list): Likewise.
448         * emultempl/armelf.em (build_section_lists): Likewise.
449         (after_allocation): Update for renamed sec_info_type value.
450         * emultempl/tic6xdsbt.em: Likewise.
451
452 2012-04-12  Roland McGrath  <mcgrathr@google.com>
453
454         * configure.tgt (arm*-*-nacl*, arm*b-*-nacl*): Handle them.
455         * emulparams/armelf_nacl.sh: New file.
456         * emulparams/armelfb_nacl.sh: New file.
457         * Makefile.am (ALL_EMULATION_SOURCES): Add earmelf_nacl.c
458         and earmelfb_nacl.c here.
459         (earmelf_nacl.c, earmelfb_nacl.c): New targets.
460         * Makefile.in: Regenerated.
461
462 2012-04-11  Tristan Gingold  <gingold@adacore.com>
463
464         * scripttempl/ia64vms.sc: New file.
465         * emultempl/vms.em (_before_parse): Support for ia64.
466         (elf64-ia64-vms): New fragment for ia64.
467         * emulparams/elf64_ia64_vms.sh: New file.
468         * configure.tgt (ia64-*-*vms*): Add.
469         * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64_ia64_vms.c
470         (eelf64_ia64_vms.c): New rule.
471         * Makefile.in: Regenerate.
472
473 2012-04-06  Roland McGrath  <mcgrathr@google.com>
474
475         * configure.in (AC_CHECK_HEADERS): Add locale.h.
476         * config.in: Regenerate.
477         * configure: Regenerate.
478
479 2012-04-05  Nick Clifton  <nickc@redhat.com>
480
481         * configure.in (AC_CHECK_FUNCS): Add setlocale.
482         (AM_LC_MESSAGES): Add.
483         * aclocal.m4: Regenerate.
484         * config.in: Regenerate.
485         * configure: Regenerate.
486
487 2012-04-03  Roland McGrath  <mcgrathr@google.com>
488
489         * configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
490         * emulparams/elf_nacl.sh: New file.
491         * emulparams/elf_i386_nacl.sh: New file.
492         * emulparams/elf32_x86_64_nacl.sh: New file.
493         * emulparams/elf_x86_64_nacl.sh: New file.
494         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf_i386_nacl.c here.
495         (ALL_64_EMULATION_SOURCES): Add eelf32_x86_64_nacl.c and
496         eelf_x86_64_nacl.c here.
497         (eelf_i386_nacl.c, eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c):
498         New targets.
499         * Makefile.in: Regenerated.
500
501         * scripttempl/elf.sc: Handle SEPARATE_CODE cases.
502
503 2012-04-02  Mike Frysinger  <vapier@gentoo.org>
504
505         * ldmisc.c (vfinfo): Assign new local str to fmt.  Delete
506         putc call.  If str and fmt are different, call fwrite on
507         the difference.
508
509 2012-03-30  Nick Clifton  <nickc@redhat.com>
510
511         * po/vi.po: Updated Vietnamese translation.
512
513 2012-03-27  Roland McGrath  <mcgrathr@google.com>
514
515         * configure.in: Set want64 on a 64-bit host regardless of
516         --enable-targets=all.
517         * configure: Regenerated.
518
519 2012-03-26  Tristan Gingold  <gingold@adacore.com>
520
521         * lexsup.c (parse_args): Add a missing '\n'.
522
523 2012-03-25  Alan Modra  <amodra@gmail.com>
524
525         * ldemul.c (before_allocation_default): Revert last change.
526         * ldlang.c (lang_add_section): Likewise.
527         (strip_excluded_output_sections): Don't strip output sections with
528         user input sections when emitrelocations, unless all are SEC_EXCLUDE.
529
530 2012-03-23  Alan Modra  <amodra@gmail.com>
531
532         * ldemul.c (before_allocation_default): When emitrelocations,
533         don't strip sections..
534         * ldlang.c (lang_add_section): ..and don't set up map_head, map_tail.
535
536 2012-03-14  Kai Tietz  <ktietz@redhat.com>
537             Pascal Obry  <pascal@obry.net>
538
539         * pe-dll.c (found_sym): New static variable.
540         (undef_count): Likewise.
541         (key_value): New structure.
542         (undef_sort_cmp): Compare routine for qsort/bsearch.
543         (pe_find_cdecl_alias_match): Add new argument.
544         (pe_undef_alias_cdecl_match): Removed.
545         (pe_undef_count): New helper routine.
546         (pe_create_undef_table): Likewise.
547         (pe_process_import_defs): Use pe_create_undef_table and
548         new pe_undef_alias_cdecl_match function.
549
550 2012-03-14  Alan Modra  <amodra@gmail.com>
551
552         PR ld/13839
553         * ldexp.c (fold_name): Ignore undefined symbols when assigning to
554         dot in mark phase.
555         (exp_fold_tree_1): Evaluate assignment to dot expressions even when
556         discarding result, for side effects.  Fix typo in error message.
557
558 2012-03-08  Tristan Gingold  <gingold@adacore.com>
559
560         * ldexp.c (exp_print_tree): Special case for SEGMENT_START.
561         (exp_print_token): Constify.
562
563 2012-03-08  Alan Modra  <amodra@gmail.com>
564
565         PR ld/10340
566         * ldfile.c (is_sysrooted_pathname): Remove notsame param.
567         (ldfile_add_library_path): Don't set sysrooted flag.
568         (ldfile_open_file_search): Likewise, and don't copy them.
569         (try_open): Delete exten and code handling such.  Add sysrooted
570         param and return whether path is in sysroot.
571         (ldfile_find_command_file): Delete extend param.  Add sysrooted
572         param.  Rename local var.  Update try_open calls.
573         (ldfile_open_command_file_1): Pass sysrooted to lex_push_file.
574         * ldfile.h (search_dirs_type): Remove sysrooted field.
575         * ldlang.c (new_afile): Always set sysrooted from input_flags.
576         (load_symbols): Don't set input_flags.sysrooted.
577         * ldlang.h (struct lang_input_statement_flags): Revise sysrooted
578         comment.
579         * ldlex.h (lex_push_file): Update prototype.
580         * ldlex.l (sysrooted_stack): New array.
581         (EOF): Pop input_flags.sysrooted.
582         (lex_push_file): Add sysrooted param.  Save and set
583         input_flags.sysrooted.
584
585 2012-03-06  Alan Modra  <amodra@gmail.com>
586
587         * ldlang.h (struct lang_input_statement_flags): New, extract from..
588         (lang_input_statement_type): ..here.  New field "flags".
589         (input_flags): Declare.
590         (missing_file): Delete.
591         * ldmain.h (whole_archive): Delete.
592         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
593         * ld.h (ld_config_type <dynamic_link>): Delete.
594         * ldmain.c (whole_archive): Delete.
595         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
596         * ldlang.c (missing_file, ldlang_sysrooted_script): Delete.
597         (input_flags): New variable.  Replace all uses of config.dynamic_link,
598         missing_file, ldlang_sysrooted_script, whole_archive,
599         add_DT_NEEDED_for_regular and add_DT_NEEDED_for_dynamic with fields
600         from here.
601         * ldfile.c: Likewise.
602         * ldgram.y: Likewise.
603         * ldmain.c: Likewise.
604         * ldwrite.c: Likewise.
605         * lexsup.c: Likewise.
606         * plugin.c: Likewise.
607         * emultempl/aix.em: Likewise.
608         * emultempl/armelf.em: Likewise.
609         * emultempl/elf32.em: Likewise.
610         * emultempl/hppaelf.em: Likewise.
611         * emultempl/linux.em: Likewise.
612         * emultempl/pe.em: Likewise.
613         * emultempl/pep.em: Likewise.
614         * emultempl/ppc64elf.em: Likewise.
615         * emultempl/scoreelf.em: Likewise.
616         * emultempl/spuelf.em: Likewise.
617         * emultempl/sunos.em: Likewise.
618         * emultempl/vms.em: Likewise.
619         * ldlang.c (new_afile): Use memset to init zero fields.
620         (load_symbols): Simplify save and restore of flags around command
621         file processing.
622         * ldfile.c (is_sysrooted_pathname): Tidy.
623
624 2012-03-05  Hans-Peter Nilsson  <hp@axis.com>
625
626         * configure.tgt (mips64*el-*-freebsd*, mips64*-*-freebsd*)
627         (mips*el-*-freebsd*, mips*-*-freebsd*): Correct triplets by
628         replacing trailing "-*" with "*".
629
630 2012-02-25  Walter Lee  <walt@tilera.com>
631
632         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx_be.c.
633         (ALL_64_EMULATION_SOURCES): Add eelf64tilegx_be.c.
634         (eelf32tilegx_be.c): Add rule to build this file.
635         (eelf64tilegx_be.c): Ditto.
636         * Makefile.in: Regenerate.
637         * configure.tgt (tilegx-*-*): Support big endian.
638         (tilegxbe-*-*): New.
639         * emulparams/elf32tilegx.sh (OUTPUT_FORMAT): Rename.
640         (BIG_OUTPUT_FORMAT): Define.
641         (LITTLE_OUTPUT_FORMAT): Define.
642         * emulparams/elf32tilegx_be.sh: New.
643         * emulparams/elf64tilegx.sh (OUTPUT_FORMAT): Rename.
644         (BIG_OUTPUT_FORMAT): Define.
645         (LITTLE_OUTPUT_FORMAT): Define.
646         * emulparams/elf64tilegx_be.sh: New.
647
648 2012-02-24  Kai Tietz  <ktietz@redhat.com>
649
650         PR binutils/13710
651         * deffilep.y (keyword_as_name): Disable LIBRARY
652         keyword.
653
654 2012-02-22  Alan Modra  <amodra@gmail.com>
655
656         PR ld/13683
657         * ldlang.c (lang_process): Rerun lang_do_assignments before
658         starting garbage collection.
659         * ldexp.c (fold_name): Generate a reloc for defined symbols
660         found without an associated output section during the mark phase.
661         (exp_fold_tree_1): Continue processing an expression, even if we
662         are unable to fold it, if we are in the first two evaluation
663         phases.
664         * ldexp.h (enum lang_phase_type): Add descriptions of the phases.
665
666 2012-02-19  Kai Tietz  <ktietz@redhat.com>
667
668         * deffilep.y (cmp_import_elem): Sort first by module name.
669         * pe-dll.c (process_def_file_and_drectve): Free strings
670         from removed export-element.
671         (add_bfd_to_link): Optimize loop on import-elements and lower
672         allocated memory.
673         (pe_implied_import_dll): Pass NULL instead of 0 for pointer
674         argument.
675
676 2012-02-18  Hans-Peter Nilsson  <hp@axis.com>
677
678         * ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
679         temporary variable node used for NULL argument.
680
681 2012-02-18  Alan Modra  <amodra@gmail.com>
682
683         PR ld/13343
684         * ld.h (parsing_defsym): Delete.
685         * ldexp.c (exp_intop, exp_bigintop, exp_relop): Set type.filename.
686         (fold_binary, fold_name, exp_fold_tree_1, exp_get_vma, exp_get_fill,
687         exp_get_abs_int): Add tree arg for %S in error messages.  Don't
688         fudge lineno.
689         (exp_binop, exp_unop, exp_nameop, exp_assop, exp_assert): Copy
690         type.filename from sub-tree.
691         (exp_trinop): Likewise, and use "cond" rather than "lhs".
692         * ldexp.h (node_type): Add filename field to struct.
693         * ldfile.c (ldfile_input_filename): Delete.  Remove all refs.
694         * ldfile.h (ldfile_input_filename): Delete.
695         * ldgram.y (phdr_type, phdr_qualifiers, yyerror): Add NULL arg for
696         %S in error messages.
697         * ldemul.c (syslib_default, hll_default): Likewise.
698         * ldlang.c (lang_memory_region_lookup, lang_memory_region_alias,
699         lang_get_regions, lang_new_phdr): Likewise.
700         (lang_size_sections_1): Pass addr_tree for %S.
701         * ldlex.h (lex_redirect): Update prototype.
702         (ldlex_filename): Declare.
703         * ldlex.l (<EOF>): Don't set ldfile_input_filename.
704         (lex_redirect): Add fake_filename and count params.  Push
705         fake_filename to file_name_stack and init lineno from count.
706         (ldlex_filename): New function.
707         (lex_warn_invalid): Use above.
708         * ldmain.c (main): Update lex_redirect call.
709         * ldmisc.c (vfinfo <%S>): Take file name and line number from
710         etree_type arg, or use current if arg is NULL.
711         * lexsup.c (parsing_defsym): Delete.
712         (parse_args <OPTION_DEFSYM>): Update lex_redirect call.
713
714 2012-02-13  Kai Tietz  <ktietz@redhat.com>
715
716         * deffilep.y (find_export_in_list): Set is_indent for
717         first or last element, if identical.
718         (find_import_in_list): Likewise.
719
720 2012-02-11  Kai Tietz  <ktietz@redhat.com>
721
722         * deffilep.y (%union): New type id_const.
723         (opt_name2): New rule.
724         (keyword_as_name): New rule.
725         (dot_name): Replaced by opt_name2 rule.
726         (opt_name): Adjust rule.
727         (opt_equal_name): Likewise.
728
729 2012-02-11  Pascal Obry  <pascal@obry.net>
730
731         * pe-dll.c (auto_export): Use bsearch to speed up scan of exports
732         table.
733         (process_def_file_and_drectve): Maintain sorting of exports table
734         after stripping leading @ signs.
735
736 2012-02-09  Alan Modra  <amodra@gmail.com>
737
738         * ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.
739
740 2012-01-31  H.J. Lu  <hongjiu.lu@intel.com>
741
742         PR ld/13616
743         * emulparams/elf32_x86_64.sh: Remove NOP.
744         * emulparams/elf_i386.sh: Likewise.
745         * emulparams/elf_i386_be.sh: Likewise.
746         * emulparams/elf_i386_ldso.sh: Likewise.
747         * emulparams/elf_i386_vxworks.sh: Likewise.
748         * emulparams/elf_k1om.sh: Likewise.
749         * emulparams/elf_l1om.sh: Likewise.
750         * emulparams/elf_x86_64.sh: Likewise.
751
752         * ldlang.c (zero_fill): Initialized to 0.
753
754         * ldwrite.c (build_link_order): Set data size to linker odrder
755         size when they are the same.
756
757         * scripttempl/elf.sc: Don't specify fill if NOP is undefined.
758
759 2012-01-17  Alan Modra  <amodra@gmail.com>
760
761         * ldver.c (ldversion): Update copyright message year.
762
763 2012-01-15  Alan Modra  <amodra@gmail.com>
764
765         PR ld/12758
766         * ldlang.c (lang_process): Don't reopen all files, just those
767         newly added by plugin.
768
769 2012-01-11  Alan Modra  <amodra@gmail.com>
770
771         * emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
772         PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
773         PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
774         --{no-,}plt-align.
775         (plt_thread_safe, plt_stub_align): New vars.
776         (gld${EMULATION_NAME}_after_allocation): Pass them to
777         ppc64_elf_size_stubs.  Align stub sections according to plt_stub_align.
778         * ld.texinfo: Document new command line options, and an old
779         undocumented option.
780
781 2012-01-09  Roland McGrath  <mcgrathr@google.com>
782
783         * configure.in: Use AM_ZLIB.
784         * configure: Regenerated.
785
786 For older changes see ChangeLog-2011
787 \f
788 Local Variables:
789 mode: change-log
790 left-margin: 8
791 fill-column: 74
792 version-control: never
793 End: