* configure.ac (ia64*-*-*vms*): Add support for ld.
[external/binutils.git] / ld / ChangeLog
1 2012-04-11  Tristan Gingold  <gingold@adacore.com>
2
3         * scripttempl/ia64vms.sc: New file.
4         * emultempl/vms.em (_before_parse): Support for ia64.
5         (elf64-ia64-vms): New fragment for ia64.
6         * emulparams/elf64_ia64_vms.sh: New file.
7         * configure.tgt (ia64-*-*vms*): Add.
8         * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64_ia64_vms.c
9         (eelf64_ia64_vms.c): New rule.
10         * Makefile.in: Regenerate.
11
12 2012-04-06  Roland McGrath  <mcgrathr@google.com>
13
14         * configure.in (AC_CHECK_HEADERS): Add locale.h.
15         * config.in: Regenerate.
16         * configure: Regenerate.
17
18 2012-04-05  Nick Clifton  <nickc@redhat.com>
19
20         * configure.in (AC_CHECK_FUNCS): Add setlocale.
21         (AM_LC_MESSAGES): Add.
22         * aclocal.m4: Regenerate.
23         * config.in: Regenerate.
24         * configure: Regenerate.
25
26 2012-04-03  Roland McGrath  <mcgrathr@google.com>
27
28         * configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
29         * emulparams/elf_nacl.sh: New file.
30         * emulparams/elf_i386_nacl.sh: New file.
31         * emulparams/elf32_x86_64_nacl.sh: New file.
32         * emulparams/elf_x86_64_nacl.sh: New file.
33         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf_i386_nacl.c here.
34         (ALL_64_EMULATION_SOURCES): Add eelf32_x86_64_nacl.c and
35         eelf_x86_64_nacl.c here.
36         (eelf_i386_nacl.c, eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c):
37         New targets.
38         * Makefile.in: Regenerated.
39
40         * scripttempl/elf.sc: Handle SEPARATE_CODE cases.
41
42 2012-04-02  Mike Frysinger  <vapier@gentoo.org>
43
44         * ldmisc.c (vfinfo): Assign new local str to fmt.  Delete
45         putc call.  If str and fmt are different, call fwrite on
46         the difference.
47
48 2012-03-30  Nick Clifton  <nickc@redhat.com>
49
50         * po/vi.po: Updated Vietnamese translation.
51
52 2012-03-27  Roland McGrath  <mcgrathr@google.com>
53
54         * configure.in: Set want64 on a 64-bit host regardless of
55         --enable-targets=all.
56         * configure: Regenerated.
57
58 2012-03-26  Tristan Gingold  <gingold@adacore.com>
59
60         * lexsup.c (parse_args): Add a missing '\n'.
61
62 2012-03-25  Alan Modra  <amodra@gmail.com>
63
64         * ldemul.c (before_allocation_default): Revert last change.
65         ldlang.c (lang_add_section): Likewise.
66         (strip_excluded_output_sections): Don't strip output sections with
67         user input sections when emitrelocations, unless all are SEC_EXCLUDE.
68
69 2012-03-23  Alan Modra  <amodra@gmail.com>
70
71         * ldemul.c (before_allocation_default): When emitrelocations,
72         don't strip sections..
73         * ldlang.c (lang_add_section): ..and don't set up map_head, map_tail.
74
75 2012-03-14  Kai Tietz  <ktietz@redhat.com>
76             Pascal Obry  <pascal@obry.net>
77
78         * pe-dll.c (found_sym): New static variable.
79         (undef_count): Likewise.
80         (key_value): New structure.
81         (undef_sort_cmp): Compare routine for qsort/bsearch.
82         (pe_find_cdecl_alias_match): Add new argument.
83         (pe_undef_alias_cdecl_match): Removed.
84         (pe_undef_count): New helper routine.
85         (pe_create_undef_table): Likewise.
86         (pe_process_import_defs): Use pe_create_undef_table and
87         new pe_undef_alias_cdecl_match function.
88
89 2012-03-14  Alan Modra  <amodra@gmail.com>
90
91         PR ld/13839
92         * ldexp.c (fold_name): Ignore undefined symbols when assigning to
93         dot in mark phase.
94         (exp_fold_tree_1): Evaluate assignment to dot expressions even when
95         discarding result, for side effects.  Fix typo in error message.
96
97 2012-03-08  Tristan Gingold  <gingold@adacore.com>
98
99         * ldexp.c (exp_print_tree): Special case for SEGMENT_START.
100         (exp_print_token): Constify.
101
102 2012-03-08  Alan Modra  <amodra@gmail.com>
103
104         PR ld/10340
105         * ldfile.c (is_sysrooted_pathname): Remove notsame param.
106         (ldfile_add_library_path): Don't set sysrooted flag.
107         (ldfile_open_file_search): Likewise, and don't copy them.
108         (try_open): Delete exten and code handling such.  Add sysrooted
109         param and return whether path is in sysroot.
110         (ldfile_find_command_file): Delete extend param.  Add sysrooted
111         param.  Rename local var.  Update try_open calls.
112         (ldfile_open_command_file_1): Pass sysrooted to lex_push_file.
113         * ldfile.h (search_dirs_type): Remove sysrooted field.
114         * ldlang.c (new_afile): Always set sysrooted from input_flags.
115         (load_symbols): Don't set input_flags.sysrooted.
116         * ldlang.h (struct lang_input_statement_flags): Revise sysrooted
117         comment.
118         * ldlex.h (lex_push_file): Update prototype.
119         * ldlex.l (sysrooted_stack): New array.
120         (EOF): Pop input_flags.sysrooted.
121         (lex_push_file): Add sysrooted param.  Save and set
122         input_flags.sysrooted.
123
124 2012-03-06  Alan Modra  <amodra@gmail.com>
125
126         * ldlang.h (struct lang_input_statement_flags): New, extract from..
127         (lang_input_statement_type): ..here.  New field "flags".
128         (input_flags): Declare.
129         (missing_file): Delete.
130         * ldmain.h (whole_archive): Delete.
131         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
132         * ld.h (ld_config_type <dynamic_link>): Delete.
133         * ldmain.c (whole_archive): Delete.
134         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
135         * ldlang.c (missing_file, ldlang_sysrooted_script): Delete.
136         (input_flags): New variable.  Replace all uses of config.dynamic_link,
137         missing_file, ldlang_sysrooted_script, whole_archive,
138         add_DT_NEEDED_for_regular and add_DT_NEEDED_for_dynamic with fields
139         from here.
140         * ldfile.c: Likewise.
141         * ldgram.y: Likewise.
142         * ldmain.c: Likewise.
143         * ldwrite.c: Likewise.
144         * lexsup.c: Likewise.
145         * plugin.c: Likewise.
146         * emultempl/aix.em: Likewise.
147         * emultempl/armelf.em: Likewise.
148         * emultempl/elf32.em: Likewise.
149         * emultempl/hppaelf.em: Likewise.
150         * emultempl/linux.em: Likewise.
151         * emultempl/pe.em: Likewise.
152         * emultempl/pep.em: Likewise.
153         * emultempl/ppc64elf.em: Likewise.
154         * emultempl/scoreelf.em: Likewise.
155         * emultempl/spuelf.em: Likewise.
156         * emultempl/sunos.em: Likewise.
157         * emultempl/vms.em: Likewise.
158         * ldlang.c (new_afile): Use memset to init zero fields.
159         (load_symbols): Simplify save and restore of flags around command
160         file processing.
161         * ldfile.c (is_sysrooted_pathname): Tidy.
162
163 2012-03-05  Hans-Peter Nilsson  <hp@axis.com>
164
165         * configure.tgt (mips64*el-*-freebsd*, mips64*-*-freebsd*)
166         (mips*el-*-freebsd*, mips*-*-freebsd*): Correct triplets by
167         replacing trailing "-*" with "*".
168
169 2012-02-25  Walter Lee  <walt@tilera.com>
170
171         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx_be.c.
172         (ALL_64_EMULATION_SOURCES): Add eelf64tilegx_be.c.
173         (eelf32tilegx_be.c): Add rule to build this file.
174         (eelf64tilegx_be.c): Ditto.
175         * Makefile.in: Regenerate.
176         * configure.tgt (tilegx-*-*): Support big endian.
177         (tilegxbe-*-*): New.
178         * emulparams/elf32tilegx.sh (OUTPUT_FORMAT): Rename.
179         (BIG_OUTPUT_FORMAT): Define.
180         (LITTLE_OUTPUT_FORMAT): Define.
181         * emulparams/elf32tilegx_be.sh: New.
182         * emulparams/elf64tilegx.sh (OUTPUT_FORMAT): Rename.
183         (BIG_OUTPUT_FORMAT): Define.
184         (LITTLE_OUTPUT_FORMAT): Define.
185         * emulparams/elf64tilegx_be.sh: New.
186
187 2012-02-24  Kai Tietz  <ktietz@redhat.com>
188
189         PR binutils/13710
190         * deffilep.y (keyword_as_name): Disable LIBRARY
191         keyword.
192
193 2012-02-22  Alan Modra  <amodra@gmail.com>
194
195         PR ld/13683
196         * ldlang.c (lang_process): Rerun lang_do_assignments before
197         starting garbage collection.
198         * ldexp.c (fold_name): Generate a reloc for defined symbols
199         found without an associated output section during the mark phase.
200         (exp_fold_tree_1): Continue processing an expression, even if we
201         are unable to fold it, if we are in the first two evaluation
202         phases.
203         * ldexp.h (enum lang_phase_type): Add descriptions of the phases.
204
205 2012-02-19  Kai Tietz  <ktietz@redhat.com>
206
207         * deffilep.y (cmp_import_elem): Sort first by module name.
208         * pe-dll.c (process_def_file_and_drectve): Free strings
209         from removed export-element.
210         (add_bfd_to_link): Optimize loop on import-elements and lower
211         allocated memory.
212         (pe_implied_import_dll): Pass NULL instead of 0 for pointer
213         argument.
214
215 2012-02-18  Hans-Peter Nilsson  <hp@axis.com>
216
217         * ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
218         temporary variable node used for NULL argument.
219
220 2012-02-18  Alan Modra  <amodra@gmail.com>
221
222         PR ld/13343
223         * ld.h (parsing_defsym): Delete.
224         * ldexp.c (exp_intop, exp_bigintop, exp_relop): Set type.filename.
225         (fold_binary, fold_name, exp_fold_tree_1, exp_get_vma, exp_get_fill,
226         exp_get_abs_int): Add tree arg for %S in error messages.  Don't
227         fudge lineno.
228         (exp_binop, exp_unop, exp_nameop, exp_assop, exp_assert): Copy
229         type.filename from sub-tree.
230         (exp_trinop): Likewise, and use "cond" rather than "lhs".
231         * ldexp.h (node_type): Add filename field to struct.
232         * ldfile.c (ldfile_input_filename): Delete.  Remove all refs.
233         * ldfile.h (ldfile_input_filename): Delete.
234         * ldgram.y (phdr_type, phdr_qualifiers, yyerror): Add NULL arg for
235         %S in error messages.
236         * ldemul.c (syslib_default, hll_default): Likewise.
237         * ldlang.c (lang_memory_region_lookup, lang_memory_region_alias,
238         lang_get_regions, lang_new_phdr): Likewise.
239         (lang_size_sections_1): Pass addr_tree for %S.
240         * ldlex.h (lex_redirect): Update prototype.
241         (ldlex_filename): Declare.
242         * ldlex.l (<EOF>): Don't set ldfile_input_filename.
243         (lex_redirect): Add fake_filename and count params.  Push
244         fake_filename to file_name_stack and init lineno from count.
245         (ldlex_filename): New function.
246         (lex_warn_invalid): Use above.
247         * ldmain.c (main): Update lex_redirect call.
248         * ldmisc.c (vfinfo <%S>): Take file name and line number from
249         etree_type arg, or use current if arg is NULL.
250         * lexsup.c (parsing_defsym): Delete.
251         (parse_args <OPTION_DEFSYM>): Update lex_redirect call.
252
253 2012-02-13  Kai Tietz  <ktietz@redhat.com>
254
255         * deffilep.y (find_export_in_list): Set is_indent for
256         first or last element, if identical.
257         (find_import_in_list): Likewise.
258
259 2012-02-11  Kai Tietz  <ktietz@redhat.com>
260
261         * deffilep.y (%union): New type id_const.
262         (opt_name2): New rule.
263         (keyword_as_name): New rule.
264         (dot_name): Replaced by opt_name2 rule.
265         (opt_name): Adjust rule.
266         (opt_equal_name): Likewise.
267
268 2012-02-11  Pascal Obry  <pascal@obry.net>
269
270         * pe-dll.c (auto_export): Use bsearch to speed up scan of exports
271         table.
272         (process_def_file_and_drectve): Maintain sorting of exports table
273         after stripping leading @ signs.
274
275 2012-02-09  Alan Modra  <amodra@gmail.com>
276
277         * ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.
278
279 2012-01-31  H.J. Lu  <hongjiu.lu@intel.com>
280
281         PR ld/13616
282         * emulparams/elf32_x86_64.sh: Remove NOP.
283         * emulparams/elf_i386.sh: Likewise.
284         * emulparams/elf_i386_be.sh: Likewise.
285         * emulparams/elf_i386_ldso.sh: Likewise.
286         * emulparams/elf_i386_vxworks.sh: Likewise.
287         * emulparams/elf_k1om.sh: Likewise.
288         * emulparams/elf_l1om.sh: Likewise.
289         * emulparams/elf_x86_64.sh: Likewise.
290
291         * ldlang.c (zero_fill): Initialized to 0.
292
293         * ldwrite.c (build_link_order): Set data size to linker odrder
294         size when they are the same.
295
296         * scripttempl/elf.sc: Don't specify fill if NOP is undefined.
297
298 2012-01-17  Alan Modra  <amodra@gmail.com>
299
300         * ldver.c (ldversion): Update copyright message year.
301
302 2012-01-15  Alan Modra  <amodra@gmail.com>
303
304         PR ld/12758
305         * ldlang.c (lang_process): Don't reopen all files, just those
306         newly added by plugin.
307
308 2012-01-11  Alan Modra  <amodra@gmail.com>
309
310         * emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
311         PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
312         PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
313         --{no-,}plt-align.
314         (plt_thread_safe, plt_stub_align): New vars.
315         (gld${EMULATION_NAME}_after_allocation): Pass them to
316         ppc64_elf_size_stubs.  Align stub sections according to plt_stub_align.
317         * ld.texinfo: Document new command line options, and an old
318         undocumented option.
319
320 2012-01-09  Roland McGrath  <mcgrathr@google.com>
321
322         * configure.in: Use AM_ZLIB.
323         * configure: Regenerated.
324
325 For older changes see ChangeLog-2011
326 \f
327 Local Variables:
328 mode: change-log
329 left-margin: 8
330 fill-column: 74
331 version-control: never
332 End: