PR ld/14069
[external/binutils.git] / ld / ChangeLog
1 2012-05-16  Samuel Thibault  <samuel.thibault@ens-lyon.org>
2
3         PR ld/14069
4         * emultempl/elf32.em: Include *-*-gnu* targets in ld.so.conf
5         support.
6
7 2012-05-15  James Murray <jsm@jsm-net.demon.co.uk>
8
9         * NEWS: Mention the support for S12X processors.
10
11 2012-05-14  James Lemke  <jwlemke@codesourcery.com>
12
13         * ldlang.c (walk_wild_consider_section): Don't copy section_flag_list.
14         Pass it to callback.
15         (walk_wild_section_general): Pass section_flag_list to callback.
16         (lang_add_section): Add sflag_list parm.
17         Move out logic to keep / omit a section & call bfd_lookup_section_flags.
18         (output_section_callback_fast): Add sflag_list parm.
19         Add new parm to lang_add_section calls.
20         (output_section_callback): Likewise.
21         (check_section_callback): Add sflag_list parm.
22         (lang_place_orphans): Add new parm to lang_add_section calls.
23         (gc_section_callback): Add sflag_list parm.
24         (find_relro_section_callback): Likewise.
25         * ldlang.h (callback_t): Add flag_info parm.
26         (lang_add_section): Add sflag_list parm.
27         * emultempl/armelf.em (elf32_arm_add_stub_section):
28         Add lang_add_section parm.
29         * emultempl/beos.em (gld*_place_orphan): Likewise.
30         * emultempl/elf32.em (gld*_place_orphan): Likewise.
31         * emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
32         * emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
33         * emultempl/mipself.em (mips_add_stub_section): Likewise.
34         * emultempl/mmo.em (mmo_place_orphan): Likewise.
35         * emultempl/pe.em (gld_*_place_orphan): Likewise.
36         * emultempl/pep.em (gld_*_place_orphan): Likewise.
37         * emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
38         * emultempl/spuelf.em (spu_place_special_section): Likewise.
39         * emultempl/vms.em (vms_place_orphan): Likewise.
40
41 2012-05-14  Catherine Moore  <clm@codesourcery.com>
42
43         * NEWS:  Mention PowerPC VLE port.
44
45 2012-05-11  Daniel Richard G.  <skunk@iskunk.org>
46
47         PR binutils/14028
48         * configure.in: Invoke ACX_HEADER_STRING.
49         * configure: Regenerate.
50         * config.in: Regenerate.
51         * sysdep.h: If STRINGS_WITH_STRING is defined then include both
52         string.h and strings.h.
53
54 2012-05-08  Alan Modra  <amodra@gmail.com>
55
56         * Makefile.am (check_DEJAGNU): Export LC_ALL=C in place of other
57         LC and LANG environment vars.
58         * Makefile.in: Regenerate.
59
60 2012-05-07  Tristan Gingold  <gingold@adacore.com>
61
62         * pe-dll.c (udef_table): Make it static.
63
64 2012-05-05  Alan Modra  <amodra@gmail.com>
65
66         * pe-dll.c (process_def_file_and_drectve): Use bfd_und_section_ptr.
67         (generate_reloc): Use bfd_abs_section_ptr.
68
69 2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>
70
71         * configure.tgt: Support x86_64-*-linux-gnux32.
72
73 2012-05-03  Sean Keys  <skeys@ipdatasys.com>
74
75         * Makefile.am (ALL_EMULATIONS): Added new emulation for XGATE
76         and XGATE (elf).
77         * Makefile.in: Rebuild.
78         * configure.tgt: Recognize XGATE.
79         * scripttempl/elfxgate.sc: New file, mostly cloned from m68hc12.
80         * emulparams/xgateelf: New emulation, mostly cloned from m68hc12.
81         * NEWS: Mention new support.
82
83 2012-04-26  Hans-Peter Nilsson  <hp@axis.com>
84
85         Make bfd asserts cause linker errors.
86         * ldmain.c (default_bfd_assert_handler): New variable.
87         (ld_bfd_assert_handler): New function.
88         (main): Call bfd_set_assert_handler.
89
90 2012-04-24  Alan Modra  <amodra@gmail.com>
91
92         * ld/ldlang.c (size_input_section): Use sec_info_type rather than
93         usrdata->flags.just_syms.
94         * ld/ldwrite.c (build_link_order): Likewise.
95         * ld/emultempl/hppaelf.em (build_section_lists): Likewise.
96         * ld/emultempl/ppc64elf.em (build_toc_list): Likewise.
97         * ld/emultempl/armelf.em (build_section_lists): Likewise.
98         (after_allocation): Update for renamed sec_info_type value.
99         * ld/emultempl/tic6xdsbt.em: Likewise.
100
101 2012-04-12  Roland McGrath  <mcgrathr@google.com>
102
103         * configure.tgt (arm*-*-nacl*, arm*b-*-nacl*): Handle them.
104         * emulparams/armelf_nacl.sh: New file.
105         * emulparams/armelfb_nacl.sh: New file.
106         * Makefile.am (ALL_EMULATION_SOURCES): Add earmelf_nacl.c
107         and earmelfb_nacl.c here.
108         (earmelf_nacl.c, earmelfb_nacl.c): New targets.
109         * Makefile.in: Regenerated.
110
111 2012-04-11  Tristan Gingold  <gingold@adacore.com>
112
113         * scripttempl/ia64vms.sc: New file.
114         * emultempl/vms.em (_before_parse): Support for ia64.
115         (elf64-ia64-vms): New fragment for ia64.
116         * emulparams/elf64_ia64_vms.sh: New file.
117         * configure.tgt (ia64-*-*vms*): Add.
118         * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64_ia64_vms.c
119         (eelf64_ia64_vms.c): New rule.
120         * Makefile.in: Regenerate.
121
122 2012-04-06  Roland McGrath  <mcgrathr@google.com>
123
124         * configure.in (AC_CHECK_HEADERS): Add locale.h.
125         * config.in: Regenerate.
126         * configure: Regenerate.
127
128 2012-04-05  Nick Clifton  <nickc@redhat.com>
129
130         * configure.in (AC_CHECK_FUNCS): Add setlocale.
131         (AM_LC_MESSAGES): Add.
132         * aclocal.m4: Regenerate.
133         * config.in: Regenerate.
134         * configure: Regenerate.
135
136 2012-04-03  Roland McGrath  <mcgrathr@google.com>
137
138         * configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
139         * emulparams/elf_nacl.sh: New file.
140         * emulparams/elf_i386_nacl.sh: New file.
141         * emulparams/elf32_x86_64_nacl.sh: New file.
142         * emulparams/elf_x86_64_nacl.sh: New file.
143         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf_i386_nacl.c here.
144         (ALL_64_EMULATION_SOURCES): Add eelf32_x86_64_nacl.c and
145         eelf_x86_64_nacl.c here.
146         (eelf_i386_nacl.c, eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c):
147         New targets.
148         * Makefile.in: Regenerated.
149
150         * scripttempl/elf.sc: Handle SEPARATE_CODE cases.
151
152 2012-04-02  Mike Frysinger  <vapier@gentoo.org>
153
154         * ldmisc.c (vfinfo): Assign new local str to fmt.  Delete
155         putc call.  If str and fmt are different, call fwrite on
156         the difference.
157
158 2012-03-30  Nick Clifton  <nickc@redhat.com>
159
160         * po/vi.po: Updated Vietnamese translation.
161
162 2012-03-27  Roland McGrath  <mcgrathr@google.com>
163
164         * configure.in: Set want64 on a 64-bit host regardless of
165         --enable-targets=all.
166         * configure: Regenerated.
167
168 2012-03-26  Tristan Gingold  <gingold@adacore.com>
169
170         * lexsup.c (parse_args): Add a missing '\n'.
171
172 2012-03-25  Alan Modra  <amodra@gmail.com>
173
174         * ldemul.c (before_allocation_default): Revert last change.
175         ldlang.c (lang_add_section): Likewise.
176         (strip_excluded_output_sections): Don't strip output sections with
177         user input sections when emitrelocations, unless all are SEC_EXCLUDE.
178
179 2012-03-23  Alan Modra  <amodra@gmail.com>
180
181         * ldemul.c (before_allocation_default): When emitrelocations,
182         don't strip sections..
183         * ldlang.c (lang_add_section): ..and don't set up map_head, map_tail.
184
185 2012-03-14  Kai Tietz  <ktietz@redhat.com>
186             Pascal Obry  <pascal@obry.net>
187
188         * pe-dll.c (found_sym): New static variable.
189         (undef_count): Likewise.
190         (key_value): New structure.
191         (undef_sort_cmp): Compare routine for qsort/bsearch.
192         (pe_find_cdecl_alias_match): Add new argument.
193         (pe_undef_alias_cdecl_match): Removed.
194         (pe_undef_count): New helper routine.
195         (pe_create_undef_table): Likewise.
196         (pe_process_import_defs): Use pe_create_undef_table and
197         new pe_undef_alias_cdecl_match function.
198
199 2012-03-14  Alan Modra  <amodra@gmail.com>
200
201         PR ld/13839
202         * ldexp.c (fold_name): Ignore undefined symbols when assigning to
203         dot in mark phase.
204         (exp_fold_tree_1): Evaluate assignment to dot expressions even when
205         discarding result, for side effects.  Fix typo in error message.
206
207 2012-03-08  Tristan Gingold  <gingold@adacore.com>
208
209         * ldexp.c (exp_print_tree): Special case for SEGMENT_START.
210         (exp_print_token): Constify.
211
212 2012-03-08  Alan Modra  <amodra@gmail.com>
213
214         PR ld/10340
215         * ldfile.c (is_sysrooted_pathname): Remove notsame param.
216         (ldfile_add_library_path): Don't set sysrooted flag.
217         (ldfile_open_file_search): Likewise, and don't copy them.
218         (try_open): Delete exten and code handling such.  Add sysrooted
219         param and return whether path is in sysroot.
220         (ldfile_find_command_file): Delete extend param.  Add sysrooted
221         param.  Rename local var.  Update try_open calls.
222         (ldfile_open_command_file_1): Pass sysrooted to lex_push_file.
223         * ldfile.h (search_dirs_type): Remove sysrooted field.
224         * ldlang.c (new_afile): Always set sysrooted from input_flags.
225         (load_symbols): Don't set input_flags.sysrooted.
226         * ldlang.h (struct lang_input_statement_flags): Revise sysrooted
227         comment.
228         * ldlex.h (lex_push_file): Update prototype.
229         * ldlex.l (sysrooted_stack): New array.
230         (EOF): Pop input_flags.sysrooted.
231         (lex_push_file): Add sysrooted param.  Save and set
232         input_flags.sysrooted.
233
234 2012-03-06  Alan Modra  <amodra@gmail.com>
235
236         * ldlang.h (struct lang_input_statement_flags): New, extract from..
237         (lang_input_statement_type): ..here.  New field "flags".
238         (input_flags): Declare.
239         (missing_file): Delete.
240         * ldmain.h (whole_archive): Delete.
241         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
242         * ld.h (ld_config_type <dynamic_link>): Delete.
243         * ldmain.c (whole_archive): Delete.
244         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
245         * ldlang.c (missing_file, ldlang_sysrooted_script): Delete.
246         (input_flags): New variable.  Replace all uses of config.dynamic_link,
247         missing_file, ldlang_sysrooted_script, whole_archive,
248         add_DT_NEEDED_for_regular and add_DT_NEEDED_for_dynamic with fields
249         from here.
250         * ldfile.c: Likewise.
251         * ldgram.y: Likewise.
252         * ldmain.c: Likewise.
253         * ldwrite.c: Likewise.
254         * lexsup.c: Likewise.
255         * plugin.c: Likewise.
256         * emultempl/aix.em: Likewise.
257         * emultempl/armelf.em: Likewise.
258         * emultempl/elf32.em: Likewise.
259         * emultempl/hppaelf.em: Likewise.
260         * emultempl/linux.em: Likewise.
261         * emultempl/pe.em: Likewise.
262         * emultempl/pep.em: Likewise.
263         * emultempl/ppc64elf.em: Likewise.
264         * emultempl/scoreelf.em: Likewise.
265         * emultempl/spuelf.em: Likewise.
266         * emultempl/sunos.em: Likewise.
267         * emultempl/vms.em: Likewise.
268         * ldlang.c (new_afile): Use memset to init zero fields.
269         (load_symbols): Simplify save and restore of flags around command
270         file processing.
271         * ldfile.c (is_sysrooted_pathname): Tidy.
272
273 2012-03-05  Hans-Peter Nilsson  <hp@axis.com>
274
275         * configure.tgt (mips64*el-*-freebsd*, mips64*-*-freebsd*)
276         (mips*el-*-freebsd*, mips*-*-freebsd*): Correct triplets by
277         replacing trailing "-*" with "*".
278
279 2012-02-25  Walter Lee  <walt@tilera.com>
280
281         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx_be.c.
282         (ALL_64_EMULATION_SOURCES): Add eelf64tilegx_be.c.
283         (eelf32tilegx_be.c): Add rule to build this file.
284         (eelf64tilegx_be.c): Ditto.
285         * Makefile.in: Regenerate.
286         * configure.tgt (tilegx-*-*): Support big endian.
287         (tilegxbe-*-*): New.
288         * emulparams/elf32tilegx.sh (OUTPUT_FORMAT): Rename.
289         (BIG_OUTPUT_FORMAT): Define.
290         (LITTLE_OUTPUT_FORMAT): Define.
291         * emulparams/elf32tilegx_be.sh: New.
292         * emulparams/elf64tilegx.sh (OUTPUT_FORMAT): Rename.
293         (BIG_OUTPUT_FORMAT): Define.
294         (LITTLE_OUTPUT_FORMAT): Define.
295         * emulparams/elf64tilegx_be.sh: New.
296
297 2012-02-24  Kai Tietz  <ktietz@redhat.com>
298
299         PR binutils/13710
300         * deffilep.y (keyword_as_name): Disable LIBRARY
301         keyword.
302
303 2012-02-22  Alan Modra  <amodra@gmail.com>
304
305         PR ld/13683
306         * ldlang.c (lang_process): Rerun lang_do_assignments before
307         starting garbage collection.
308         * ldexp.c (fold_name): Generate a reloc for defined symbols
309         found without an associated output section during the mark phase.
310         (exp_fold_tree_1): Continue processing an expression, even if we
311         are unable to fold it, if we are in the first two evaluation
312         phases.
313         * ldexp.h (enum lang_phase_type): Add descriptions of the phases.
314
315 2012-02-19  Kai Tietz  <ktietz@redhat.com>
316
317         * deffilep.y (cmp_import_elem): Sort first by module name.
318         * pe-dll.c (process_def_file_and_drectve): Free strings
319         from removed export-element.
320         (add_bfd_to_link): Optimize loop on import-elements and lower
321         allocated memory.
322         (pe_implied_import_dll): Pass NULL instead of 0 for pointer
323         argument.
324
325 2012-02-18  Hans-Peter Nilsson  <hp@axis.com>
326
327         * ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
328         temporary variable node used for NULL argument.
329
330 2012-02-18  Alan Modra  <amodra@gmail.com>
331
332         PR ld/13343
333         * ld.h (parsing_defsym): Delete.
334         * ldexp.c (exp_intop, exp_bigintop, exp_relop): Set type.filename.
335         (fold_binary, fold_name, exp_fold_tree_1, exp_get_vma, exp_get_fill,
336         exp_get_abs_int): Add tree arg for %S in error messages.  Don't
337         fudge lineno.
338         (exp_binop, exp_unop, exp_nameop, exp_assop, exp_assert): Copy
339         type.filename from sub-tree.
340         (exp_trinop): Likewise, and use "cond" rather than "lhs".
341         * ldexp.h (node_type): Add filename field to struct.
342         * ldfile.c (ldfile_input_filename): Delete.  Remove all refs.
343         * ldfile.h (ldfile_input_filename): Delete.
344         * ldgram.y (phdr_type, phdr_qualifiers, yyerror): Add NULL arg for
345         %S in error messages.
346         * ldemul.c (syslib_default, hll_default): Likewise.
347         * ldlang.c (lang_memory_region_lookup, lang_memory_region_alias,
348         lang_get_regions, lang_new_phdr): Likewise.
349         (lang_size_sections_1): Pass addr_tree for %S.
350         * ldlex.h (lex_redirect): Update prototype.
351         (ldlex_filename): Declare.
352         * ldlex.l (<EOF>): Don't set ldfile_input_filename.
353         (lex_redirect): Add fake_filename and count params.  Push
354         fake_filename to file_name_stack and init lineno from count.
355         (ldlex_filename): New function.
356         (lex_warn_invalid): Use above.
357         * ldmain.c (main): Update lex_redirect call.
358         * ldmisc.c (vfinfo <%S>): Take file name and line number from
359         etree_type arg, or use current if arg is NULL.
360         * lexsup.c (parsing_defsym): Delete.
361         (parse_args <OPTION_DEFSYM>): Update lex_redirect call.
362
363 2012-02-13  Kai Tietz  <ktietz@redhat.com>
364
365         * deffilep.y (find_export_in_list): Set is_indent for
366         first or last element, if identical.
367         (find_import_in_list): Likewise.
368
369 2012-02-11  Kai Tietz  <ktietz@redhat.com>
370
371         * deffilep.y (%union): New type id_const.
372         (opt_name2): New rule.
373         (keyword_as_name): New rule.
374         (dot_name): Replaced by opt_name2 rule.
375         (opt_name): Adjust rule.
376         (opt_equal_name): Likewise.
377
378 2012-02-11  Pascal Obry  <pascal@obry.net>
379
380         * pe-dll.c (auto_export): Use bsearch to speed up scan of exports
381         table.
382         (process_def_file_and_drectve): Maintain sorting of exports table
383         after stripping leading @ signs.
384
385 2012-02-09  Alan Modra  <amodra@gmail.com>
386
387         * ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.
388
389 2012-01-31  H.J. Lu  <hongjiu.lu@intel.com>
390
391         PR ld/13616
392         * emulparams/elf32_x86_64.sh: Remove NOP.
393         * emulparams/elf_i386.sh: Likewise.
394         * emulparams/elf_i386_be.sh: Likewise.
395         * emulparams/elf_i386_ldso.sh: Likewise.
396         * emulparams/elf_i386_vxworks.sh: Likewise.
397         * emulparams/elf_k1om.sh: Likewise.
398         * emulparams/elf_l1om.sh: Likewise.
399         * emulparams/elf_x86_64.sh: Likewise.
400
401         * ldlang.c (zero_fill): Initialized to 0.
402
403         * ldwrite.c (build_link_order): Set data size to linker odrder
404         size when they are the same.
405
406         * scripttempl/elf.sc: Don't specify fill if NOP is undefined.
407
408 2012-01-17  Alan Modra  <amodra@gmail.com>
409
410         * ldver.c (ldversion): Update copyright message year.
411
412 2012-01-15  Alan Modra  <amodra@gmail.com>
413
414         PR ld/12758
415         * ldlang.c (lang_process): Don't reopen all files, just those
416         newly added by plugin.
417
418 2012-01-11  Alan Modra  <amodra@gmail.com>
419
420         * emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
421         PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
422         PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
423         --{no-,}plt-align.
424         (plt_thread_safe, plt_stub_align): New vars.
425         (gld${EMULATION_NAME}_after_allocation): Pass them to
426         ppc64_elf_size_stubs.  Align stub sections according to plt_stub_align.
427         * ld.texinfo: Document new command line options, and an old
428         undocumented option.
429
430 2012-01-09  Roland McGrath  <mcgrathr@google.com>
431
432         * configure.in: Use AM_ZLIB.
433         * configure: Regenerated.
434
435 For older changes see ChangeLog-2011
436 \f
437 Local Variables:
438 mode: change-log
439 left-margin: 8
440 fill-column: 74
441 version-control: never
442 End: