26164a9a794a72c6992e00c77b1ab95b36c5ac0a
[deliverable/binutils-gdb.git] / ld / ChangeLog
1 2011-04-18 Kai Tietz <ktietz@redhat.com>
2
3 * deffilep.y (def_aligncomm): Avoid duplets.
4
5 * deffilep.y (def_pool_str): New type.
6 (pool_strs): Local static.
7 (def_pool_alloc): Local function.
8 (def_pool_strdup): Likewise.
9 (def_pool_free): Likewise.
10 (opt_name): Replace xmalloc/xstrdup by
11 def_pool_alloc/def_pool_strdup.
12 (dot_name): Likewise.
13 (anylang_id): Likewise.
14 (def_lex): Likewise.
15 (def_file_parse): Call def_pool_free on
16 exit and cleanup directives elements.
17 (def_file_add_directive): Call def_pool_free.
18
19 2011-04-18 Paul Brook <paul@codesourcery.com>
20
21 * emulparams/elf32_tic6x_le.sh: Define OTHER_READONLY_SECTIONS
22 for unwinding tables.
23
24 2011-04-18 Alan Modra <amodra@gmail.com>
25
26 PR ld/12365
27 PR ld/12672
28 * ldfile.c (ldfile_try_open_bfd): Don't attempt any plugin action
29 when no_more_claiming.
30 * ldmain.c (add_archive_element): Likewise.
31 (multiple_definition): Remove plugin_multiple_definition call.
32 (notice): Remove plugin_notice call.
33 * ldlang.c (lang_list_insert_after, void lang_list_remove_tail): Move.
34 Delete prototype.
35 (plugin_insert): New static var.
36 (open_input_bfds): Only rescan libs after plugin insert point.
37 (lang_gc_sections): Omit plugin claimed files.
38 (lang_process): Set plugin_insert. Only rescan when plugin adds
39 objects.
40 * plugin.h (no_more_claiming): Declare.
41 (plugin_notice, plugin_multiple_definition): Don't declare.
42 * plugin.c: Formatting.
43 (orig_notice_all, orig_allow_multiple_defs, orig_callbacks,
44 plugin_callbacks): New static vars.
45 (no_more_claiming): Make global.
46 (plugin_cached_allow_multiple_defs): Delete.
47 (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy .text section,
48 use newer bfd_make_section variant. Make COMMON section too.
49 Error handling. Correct setting of gp size.
50 (asymbol_from_plugin_symbol): Properly cast last arg of concat.
51 (message): Likewise for ACONCAT.
52 (asymbol_from_plugin_symbol): Use our COMMON section.
53 (get_symbols): When report_plugin_symbols, show visibility too.
54 (init_non_ironly_hash): Move. Don't test non_ironly_hash.
55 (plugin_load_plugins): Save state of linker callbacks, set up to
56 call plugin_notice instead. Call init_non_ironly_hash here.
57 (plugin_call_all_symbols_read): Set plugin_multiple_definition in
58 plugin callbacks.
59 (plugin_notice): Rewrite.
60 (plugin_multiple_definition): Make static, call original callback.
61
62 2011-04-15 Alan Modra <amodra@gmail.com>
63
64 PR ld/12672
65 * ldlang.c (enum open_bfd_mode): New.
66 (open_input_bfds): Replace "force" param with "mode". Reload
67 archives for rescan. Update all callers.
68 (lang_process): Make another open_input_bfds pass for plugins.
69
70 2011-04-13 Kai Tietz <ktietz@redhat.com>
71
72 PR binutils/12658
73 * deffile.h (def_file_add_export): Add is_dup argument.
74 (def_file_add_import): Likewise.
75 * deffilep.y (are_names_equal): New helper.
76 (cmp_export_elem): New helper.
77 (find_export_in_list): Add search routine for exports.
78 (def_file_add_export): Check for duplicates.
79 (cmp_import_elem): New helper.
80 (find_import_in_list): Add search routine for imports.
81 (def_file_add_import): Check for duplicates.
82 (def_exports): Handle duplicates.
83 (def_imports): Likewise.
84 * pe-dll.c (process_def_file_and_drectve): Likewise.
85 (pe_implied_import_dll): Likewise.
86
87 2011-04-11 Chris Quenelle <chris.quenelle@oracle.com>
88
89 * scripttempl/elf.sc (.exception_ranges): Add new section.
90
91 2011-04-08 Hector Oron <hector.oron@gmail.com>
92
93 PR ld/12643
94 * configure.tgt: Add support for arm-*-gnueabihf targets.
95
96 2011-04-07 Eric B. Weddington <eric.weddington@atmel.com>
97
98 * Makefile.in: Regenerate. Remove stray eavrtiny10 rules.
99
100 2011-04-07 Joseph Myers <joseph@codesourcery.com>
101
102 * configure.tgt: Remove stray ;;.
103
104 2011-04-06 Joseph Myers <joseph@codesourcery.com>
105
106 * configure.tgt (thumb-*-linux-* | thumb-*-uclinux*,
107 strongarm-*-coff, strongarm-*-elf, strongarm-*-kaos*,
108 thumb-*-coff, thumb-*-elf, thumb-epoc-pe, thumb-*-pe,
109 xscale-*-coff, xscale-*-elf): Remove targets.
110
111 2011-03-31 H.J. Lu <hongjiu.lu@intel.com>
112
113 * configure.tgt: Add elf_l1om to targ_extra_libpath for
114 x86_64-*-linux-*.
115
116 * emulparams/elf_l1om.sh: Remove duplicates.
117
118 2011-03-31 Bernd Schmidt <bernds@codesourcery.com>
119
120 * emulparams/elf32_tic6x_le.sh (BIG_OUTPUT_FORMAT, EXTRA_EM_FILE,
121 GENERATE_SHLIB_SCRIPT): New defines.
122 (TEXT_START_ADDR): Define differently depending on target.
123 (.got): Redefine to include "*(.dsbt)".
124 (SDATA_START_SYMBOLS): Remove, replace with
125 (OTHER_GOT_SYMBOLS): New.
126 (OTHER_BSS_SECTIONS): Define only for ELF targets.
127 * emultempl/tic6xdsbt.em: New file.
128 * gen-doc.texi: Set C6X.
129 * ld.texinfo: Likewise.
130 (Options specific to C6X uClinux targets): New section.
131
132 2011-03-29 Alan Modra <amodra@gmail.com>
133
134 PR ld/12613
135 * ldlex.l (lex_warn_invalid): Don't assume char is unsigned.
136
137 2011-03-26 John Marino <binutils@marino.st>
138
139 * configure.host: Update *-*-dragonfly* host entry.
140 * configure.tgt: Update *-*-dragonfly* target entry.
141 * ldlex.l: Prevent redefinition of YY_NO_UNPUT.
142
143 2011-03-28 Joseph Myers <joseph@codesourcery.com>
144
145 * configure.in: Check for windows.h, not Windows.h.
146 * configure: Regenerate.
147 * plugin.c: Include windows.h, not Windows.h.
148
149 2011-03-25 Eric B. Weddington <eric.weddington@atmel.com>
150
151 * Makefile.in: Regenerate.
152
153 2011-03-23 Joseph Myers <joseph@codesourcery.com>
154
155 * lexsup.c (parse_args): Only set report_plugin_symbols if plugins
156 are enabled. Mark level as possibly unused.
157
158 2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
159
160 * Makefile.am (ALL_EMULATION_SOURCES): Add AVR XMEGA architectures.
161 (eavrxmega?.c): Likewise.
162 * configure.tgt (targ_extra_emuls): Likewise.
163 * emulparams/avrxmega1.sh: New file.
164 * emulparams/avrxmega2.sh: Likewise.
165 * emulparams/avrxmega3.sh: Likewise.
166 * emulparams/avrxmega4.sh: Likewise.
167 * emulparams/avrxmega5.sh: Likewise.
168 * emulparams/avrxmega6.sh: Likewise.
169 * emulparams/avrxmega7.sh: Likewise.
170 * emultempl/avrelf.em (avr_elf_${EMULATION_NAME}_before_allocation):
171 Add avrxmega6, avrxmega7 to list of architectures for no stubs.
172
173 2011-03-21 Eric B. Weddington <eric.weddington@atmel.com>
174
175 * scripttempl/avr.sc: Add fuse, lock, and signature memory regions.
176
177 2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
178
179 * emultempl/armelf.em (gld${EMULATION_NAME}_finish): Check
180 eh->target_internal.
181
182 2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
183
184 * emultempl/armelf.em (arm_elf_before_allocation): Check dynobj
185 instead of dynamic_sections_created.
186
187 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
188
189 * plugin.c (get_symbols): Use wrapped lookup for undefined symbols.
190
191 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
192
193 * ldlang.c (lang_check): Don't run checks on dummy IR BFDs.
194
195 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
196
197 * ldlang.h (lang_input_statement_type): Add new 'claim_archive' flag,
198 wrapping both it and 'claim' flag in #ifdef ENABLE_PLUGINS.
199 * ldmain.c (add_archive_element): Set it if the member is claimed.
200 * ldlang.c (new_afile): Initialise claim_archive and claimed members.
201 (find_replacements_insert_point): New helper function.
202 (lang_process): After adding and opening replacement files passed
203 from plugin, splice them into correct place in statement list and
204 file chains to preserve critical link order.
205 (lang_list_insert_after): New helper function.
206 (lang_list_remove_tail): Likewise.
207
208 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
209
210 * plugin.c (IRONLY_SUFFIX): Revise to nicely human-readable form.
211 (IRONLY_SUFFIX_LEN): Delete.
212 (plugin_get_ir_dummy_bfd): Don't append IRONLY_SUFFIX.
213 (is_ir_dummy_bfd): Don't look for suffix; check claimed flag of
214 enclosing lang input statement instead.
215
216 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
217
218 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Preserve
219 alignment of input sections when creating orphan output sections
220 during relocatable link.
221 * emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
222
223 2011-03-04 H.J. Lu <hongjiu.lu@intel.com>
224
225 * ld.texinfo: Document --verbose[=NUMBER].
226
227 * lexsup.c (ld_options): Update --verbose.
228 (parse_args): Set report_plugin_symbols.
229
230 * plugin.c (report_plugin_symbols): New.
231 (get_symbols): Report plugin symbols if report_plugin_symbols
232 is TRUE.
233
234 * plugin.h (report_plugin_symbols): New.
235
236 2011-03-01 H.J. Lu <hongjiu.lu@intel.com>
237
238 PR ld/12529
239 * testplug.c: Don't include "filenames.h".
240 (onclaim_file): Don't use filename_cmp.
241
242 2011-02-28 Kai Tietz <kai.tietz@onevision.com>
243
244 * emultempl/beos.em (sort_by_file_name): Use filename_(n)cmp.
245 * emultempl/elf32.em (gld${EMULATION_NAME}_vercheck):
246 Likewise.
247 (gld${EMULATION_NAME}_stat_needed): Likewise.
248 (gld${EMULATION_NAME}_check_needed): Likewise.
249 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise.
250 (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
251 * emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise.
252 (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
253 * ldfile.c (ldfile_open_file): Likewise.
254 * ldlang.c (wild_sort): Likewise.
255 (lookup_name): Likewise.
256 (check_excluded_libs): Likewise.
257 * ldmisc.c (vfinfo): Likewise.
258 * pe-dll.c (libnamencmp): Likewise.
259 (auto_export): Likewise.
260 (pe_dll_generate_implib): Likewise.
261 * testplug.c (onclaim_file): Likewise.
262
263 2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
264
265 PR ld/12507
266 * plugin.c (get_symbols): Don't check entry symbol here.
267 (init_non_ironly_hash): Add entry_symbol chain into
268 non_ironly_hash.
269
270 2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
271
272 PR ld/12507
273 * plugin.c (get_symbols): Don't mark entry symbol IR only.
274
275 2011-02-18 John David Anglin <dave.anglin@nrc-cnnrc.gc.ca>
276
277 PR ld/12376
278 emulparams/hppalinux.sh (DATA_ADDR): Define.
279 (SHLIB_DATA_ADDR): Likewise.
280
281 2011-02-16 H.J. Lu <hongjiu.lu@intel.com>
282
283 * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX): Changed to
284 x32 for x32.
285
286 2011-02-15 Kai Tietz <kai.tietz@onevision.com>
287
288 * pe-dll.c (process_def_file_and_drectve): Don't strip
289 leading underscore from symbol by calling bfd_find_version_for_sym.
290
291 2011-02-14 Mike Frysinger <vapier@gentoo.org>
292
293 * ldlang.c (lang_vers_match): Declare a new c_sym, assign it to
294 the bfd_demangle of sym, change users of sym to c_sym when not
295 already demangling, and free when done. Change callers of
296 cplus_demangle to bfd_demangle.
297
298 2011-02-14 Alan Modra <amodra@gmail.com>
299
300 * plugin.c (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy
301 .text section, use newer bfd_make_section variant. Error handling.
302 Correct setting of gp size.
303 (asymbol_from_plugin_symbol): Properly cast last arg of concat.
304 (message): Likewise for ACONCAT.
305 (get_symbols): Formatting.
306
307 2011-02-14 Alan Modra <amodra@gmail.com>
308
309 * ldmain.c (remove_output): Rename to..
310 (ld_cleanup): ..this. Call bfd_cache_close_all and plugin_call_cleanup.
311 (main): Adjust.
312 * plugin.c (plugin_call_cleanup): Make global.
313 (plugin_load_plugins): Don't register plugin_call_cleanup with xatexit.
314 * plugin.h (plugin_call_cleanup): Declare.
315
316 2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
317
318 * configure: Regenerate.
319
320 2011-02-10 Alan Modra <amodra@gmail.com>
321
322 * scripttempl/armbpabi.sc: Revert 2010-11-02 H.J. Lu.
323 * scripttempl/avr.sc: Likewise.
324 * scripttempl/elf32cr16.sc: Likewise.
325 * scripttempl/elf32crx.sc: Likewise.
326 * scripttempl/elf32msp430.sc: Likewise.
327 * scripttempl/elf32msp430_3.sc: Likewise.
328 * scripttempl/elf32sh-symbian.sc: Likewise.
329 * scripttempl/elf64hppa.sc: Likewise.
330 * scripttempl/elf_chaos.sc: Likewise.
331 * scripttempl/elfd10v.sc: Likewise.
332 * scripttempl/elfd30v.sc: Likewise.
333 * scripttempl/elfi370.sc: Likewise.
334 * scripttempl/elfm68hc11.sc: Likewise.
335 * scripttempl/elfm68hc12.sc: Likewise.
336 * scripttempl/elfxtensa.sc: Likewise.
337 * scripttempl/ip2k.sc: Likewise.
338 * scripttempl/iq2000.sc: Likewise.
339 * scripttempl/mep.sc: Likewise.
340 * scripttempl/mmo.sc: Likewise.
341 * scripttempl/v850.sc: Likewise.
342 * scripttempl/xstormy16.sc: Likewise.
343 * scripttempl/elf.sc: Revert 2010-10-29 H.J. Lu.
344
345 2011-01-22 H.J. Lu <hongjiu.lu@intel.com>
346
347 * Makefile.am (CXX): Removed.
348
349 * configure.in: Add AC_PROG_CXX.
350
351 * Makefile.in: Regenerated.
352 * configure: Likewise.
353
354 2011-01-22 Richard Sandiford <rdsandiford@googlemail.com>
355
356 * plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's
357 private data and GP size.
358
359 2011-01-21 Alan Modra <amodra@gmail.com>
360
361 * ldexp.c (fold_binary): Set result section for arithmetic and
362 logical operations to NULL when both operands are in same section.
363 * ld.texinfo (Expression Section): Describe this.
364
365 2011-01-14 Alan Modra <amodra@gmail.com>
366
367 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
368 attempt to put non-alloc orphans before debug sections, just place
369 them after .comment.
370
371 2011-01-14 J. Park <grassman@gmail.com>
372
373 PR ld/12339
374 * ldlang.c (sort_def_symbol): Handle bfd_link_hash_warning symbols.
375
376 2011-01-14 Alan Modra <amodra@gmail.com>
377
378 * Makefile.am: Sort emulation rules.
379 (eelf32am33lin.c): Delete.
380 (ALL_EMULATION_SOURCES): Sort, add missing entries.
381 (ALL_64_EMULATION_SOURCES): Likewise.
382 * Makefile.in: Regenerate.
383
384 2011-01-13 Alan Modra <amodra@gmail.com>
385
386 PR ld/12356
387 * ld.texinfo (Miscellaneous Commands): Describe LD_FEATURE.
388 (Expression Section): Update.
389 * ld.h (ld_config_type): Add sane_expr.
390 * ldgram.y (ifile_p1): Add LD_FEATURE.
391 * ldlex.l (LD_FEATYRE): New.
392 * ldemul.c (after_parse_default): Delete code handling ld_compatibility.
393 * ldexp.h (struct ldexp_control): Delete uses_defined.
394 * ldexp.c: Remove all uses of uses_defined.
395 (fold_name): Test config.sane_expr rather than ld_compatibility.
396 (exp_fold_tree_1): Likewise. Adjust handling of assignments
397 during first phase.
398 * ldlang.h (ld_compatibility): Delete.
399 (lang_ld_feature): Declare.
400 * ldlang.c (ld_compatibility): Delete.
401 (open_input_bfds): Only handle assignments for --defsym.
402 (lang_ld_feature): New function.
403
404 PR ld/12356
405 * ldexp.h (exp_assop): Delete.
406 (exp_assign, exp_defsym): Declare.
407 * ldexp.c (exp_assop): Make static, handle all assignment variations.
408 (exp_assign, exp_defsym): New functions.
409 (exp_provide): Use exp_assop.
410 * ldgram.y (defsym_expr): Use exp_defsym.
411 * ldctor.c, * ldgram.y, * ldlang.c, * mri.c, * emultempl/beos.em,
412 * emultempl/pe.em, * emultempl/pep.em, * emultempl/spuelf.em,
413 * emultempl/xtensaelf.em: Update exp_assop -> exp_assign.
414
415 2011-01-12 Alan Modra <amodra@gmail.com>
416
417 PR ld/12380
418 * ldexp.h (enum phase_enum): Comment. Add exp_dataseg_done.
419 * ldexp.c (fold_unary <DATA_SEGMENT_END>): Rearrange code. Test
420 for exp_dataseg_done rather than expld.phase == lang_final_phase_enum
421 to detect when we've finished sizing sections.
422 (fold_binary <DATA_SEGMENT_ALIGN>): Likewise.
423 (fold_binary <DATA_SEGMENT_RELRO_END>): Likewise. Also test
424 that we are not inside an output section statement.
425 * ldlang.c (lang_size_sections): Set exp_dataseg_done on exit if
426 not exp_dataseg_relro_adjust or exp_dataseg_adjust. Don't set
427 lang_final_phase_enum here.
428 (lang_process): Set lang_final_phase_enum here.
429
430 2011-01-10 Nick Clifton <nickc@redhat.com>
431
432 * po/da.po: Updated Danish translation.
433
434 2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
435
436 * ldlang.c (startup_file): Removed.
437 (lang_startup): Updated.
438
439 2011-01-05 H.J. Lu <hongjiu.lu@intel.com>
440
441 PR ld/12364
442 * plugin.c (get_symbols): Check if owner_sec->owner is NULL
443 before accessing its flags field.
444
445 2011-01-01 H.J. Lu <hongjiu.lu@intel.com>
446
447 * ldver.c (ldversion): Update copyright to 2011.
448
449 For older changes see ChangeLog-2010
450 \f
451 Local Variables:
452 mode: change-log
453 left-margin: 8
454 fill-column: 74
455 version-control: never
456 End:
This page took 0.043841 seconds and 4 git commands to generate.