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