[PATCH] Respect symbol wrappers when computing symbol resolutions.
[external/binutils.git] / ld / ChangeLog
1 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
2
3         * plugin.c (get_symbols): Use wrapped lookup for undefined symbols.
4
5 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
6
7         * ldlang.c (lang_check): Don't run checks on dummy IR BFDs.
8
9 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
10
11         * ldlang.h (lang_input_statement_type): Add new 'claim_archive' flag,
12         wrapping both it and 'claim' flag in #ifdef ENABLE_PLUGINS.
13         * ldmain.c (add_archive_element): Set it if the member is claimed.
14         * ldlang.c (new_afile): Initialise claim_archive and claimed members.
15         (find_replacements_insert_point): New helper function.
16         (lang_process): After adding and opening replacement files passed
17         from plugin, splice them into correct place in statement list and
18         file chains to preserve critical link order.
19         (lang_list_insert_after): New helper function.
20         (lang_list_remove_tail): Likewise.
21
22 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
23
24         * plugin.c (IRONLY_SUFFIX): Revise to nicely human-readable form.
25         (IRONLY_SUFFIX_LEN): Delete.
26         (plugin_get_ir_dummy_bfd): Don't append IRONLY_SUFFIX.
27         (is_ir_dummy_bfd): Don't look for suffix; check claimed flag of
28         enclosing lang input statement instead.
29
30 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
31
32         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Preserve
33         alignment of input sections when creating orphan output sections
34         during relocatable link.
35         * emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
36
37 2011-03-04  H.J. Lu  <hongjiu.lu@intel.com>
38
39         * ld.texinfo: Document --verbose[=NUMBER].
40
41         * lexsup.c (ld_options): Update --verbose.
42         (parse_args): Set report_plugin_symbols.
43
44         * plugin.c (report_plugin_symbols): New.
45         (get_symbols): Report plugin symbols if report_plugin_symbols
46         is TRUE.
47
48         * plugin.h (report_plugin_symbols): New.
49
50 2011-03-01  H.J. Lu  <hongjiu.lu@intel.com>
51
52         PR ld/12529
53         * testplug.c: Don't include "filenames.h".
54         (onclaim_file): Don't use filename_cmp.
55
56 2011-02-28  Kai Tietz  <kai.tietz@onevision.com>
57
58         * emultempl/beos.em (sort_by_file_name): Use filename_(n)cmp.
59         * emultempl/elf32.em (gld${EMULATION_NAME}_vercheck):
60         Likewise.
61         (gld${EMULATION_NAME}_stat_needed): Likewise.
62         (gld${EMULATION_NAME}_check_needed): Likewise.
63         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise.
64         (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
65         * emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise.
66         (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
67         * ldfile.c (ldfile_open_file): Likewise.
68         * ldlang.c (wild_sort): Likewise.
69         (lookup_name): Likewise.
70         (check_excluded_libs): Likewise.
71         * ldmisc.c (vfinfo): Likewise.
72         * pe-dll.c (libnamencmp): Likewise.
73         (auto_export): Likewise.
74         (pe_dll_generate_implib): Likewise.
75         * testplug.c (onclaim_file): Likewise.
76
77 2011-02-24  H.J. Lu  <hongjiu.lu@intel.com>
78
79         PR ld/12507
80         * plugin.c (get_symbols): Don't check entry symbol here.
81         (init_non_ironly_hash): Add entry_symbol chain into
82         non_ironly_hash.
83
84 2011-02-24  H.J. Lu  <hongjiu.lu@intel.com>
85
86         PR ld/12507
87         * plugin.c (get_symbols): Don't mark entry symbol IR only.
88
89 2011-02-18  John David Anglin  <dave.anglin@nrc-cnnrc.gc.ca>
90
91         PR ld/12376
92         emulparams/hppalinux.sh (DATA_ADDR): Define.
93         (SHLIB_DATA_ADDR): Likewise.
94
95 2011-02-16  H.J. Lu  <hongjiu.lu@intel.com>
96
97         * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX): Changed to
98         x32 for x32.
99
100 2011-02-15  Kai Tietz  <kai.tietz@onevision.com>
101
102         * pe-dll.c (process_def_file_and_drectve): Don't strip
103         leading underscore from symbol by calling bfd_find_version_for_sym.
104
105 2011-02-14  Mike Frysinger  <vapier@gentoo.org>
106
107         * ldlang.c (lang_vers_match): Declare a new c_sym, assign it to
108         the bfd_demangle of sym, change users of sym to c_sym when not
109         already demangling, and free when done.  Change callers of
110         cplus_demangle to bfd_demangle.
111
112 2011-02-14  Alan Modra  <amodra@gmail.com>
113
114         * ldmain.c (remove_output): Rename to..
115         (ld_cleanup): ..this. Call bfd_cache_close_all and plugin_call_cleanup.
116         (main): Adjust.
117         * plugin.c (plugin_call_cleanup): Make global.
118         (plugin_load_plugins): Don't register plugin_call_cleanup with xatexit.
119         * plugin.h (plugin_call_cleanup): Declare.
120
121 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
122
123         * configure: Regenerate.
124
125 2011-02-10  Alan Modra  <amodra@gmail.com>
126
127         * scripttempl/armbpabi.sc: Revert 2010-11-02  H.J. Lu.
128         * scripttempl/avr.sc: Likewise.
129         * scripttempl/elf32cr16.sc: Likewise.
130         * scripttempl/elf32crx.sc: Likewise.
131         * scripttempl/elf32msp430.sc: Likewise.
132         * scripttempl/elf32msp430_3.sc: Likewise.
133         * scripttempl/elf32sh-symbian.sc: Likewise.
134         * scripttempl/elf64hppa.sc: Likewise.
135         * scripttempl/elf_chaos.sc: Likewise.
136         * scripttempl/elfd10v.sc: Likewise.
137         * scripttempl/elfd30v.sc: Likewise.
138         * scripttempl/elfi370.sc: Likewise.
139         * scripttempl/elfm68hc11.sc: Likewise.
140         * scripttempl/elfm68hc12.sc: Likewise.
141         * scripttempl/elfxtensa.sc: Likewise.
142         * scripttempl/ip2k.sc: Likewise.
143         * scripttempl/iq2000.sc: Likewise.
144         * scripttempl/mep.sc: Likewise.
145         * scripttempl/mmo.sc: Likewise.
146         * scripttempl/v850.sc: Likewise.
147         * scripttempl/xstormy16.sc: Likewise.
148         * scripttempl/elf.sc: Revert 2010-10-29  H.J. Lu.
149
150 2011-01-22  H.J. Lu  <hongjiu.lu@intel.com>
151
152         * Makefile.am (CXX): Removed.
153
154         * configure.in: Add AC_PROG_CXX.
155
156         * Makefile.in: Regenerated.
157         * configure: Likewise.
158
159 2011-01-22  Richard Sandiford  <rdsandiford@googlemail.com>
160
161         * plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's
162         private data and GP size.
163
164 2011-01-21  Alan Modra  <amodra@gmail.com>
165
166         * ldexp.c (fold_binary): Set result section for arithmetic and
167         logical operations to NULL when both operands are in same section.
168         * ld.texinfo (Expression Section): Describe this.
169
170 2011-01-14  Alan Modra  <amodra@gmail.com>
171
172         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
173         attempt to put non-alloc orphans before debug sections, just place
174         them after .comment.
175
176 2011-01-14  J. Park  <grassman@gmail.com>
177
178         PR ld/12339
179         * ldlang.c (sort_def_symbol): Handle bfd_link_hash_warning symbols.
180
181 2011-01-14  Alan Modra  <amodra@gmail.com>
182
183         * Makefile.am: Sort emulation rules.
184         (eelf32am33lin.c): Delete.
185         (ALL_EMULATION_SOURCES): Sort, add missing entries.
186         (ALL_64_EMULATION_SOURCES): Likewise.
187         * Makefile.in: Regenerate.
188
189 2011-01-13  Alan Modra  <amodra@gmail.com>
190
191         PR ld/12356
192         * ld.texinfo (Miscellaneous Commands): Describe LD_FEATURE.
193         (Expression Section): Update.
194         * ld.h (ld_config_type): Add sane_expr.
195         * ldgram.y (ifile_p1): Add LD_FEATURE.
196         * ldlex.l (LD_FEATYRE): New.
197         * ldemul.c (after_parse_default): Delete code handling ld_compatibility.
198         * ldexp.h (struct ldexp_control): Delete uses_defined.
199         * ldexp.c: Remove all uses of uses_defined.
200         (fold_name): Test config.sane_expr rather than ld_compatibility.
201         (exp_fold_tree_1): Likewise.  Adjust handling of assignments
202         during first phase.
203         * ldlang.h (ld_compatibility): Delete.
204         (lang_ld_feature): Declare.
205         * ldlang.c (ld_compatibility): Delete.
206         (open_input_bfds): Only handle assignments for --defsym.
207         (lang_ld_feature): New function.
208
209         PR ld/12356
210         * ldexp.h (exp_assop): Delete.
211         (exp_assign, exp_defsym): Declare.
212         * ldexp.c (exp_assop): Make static, handle all assignment variations.
213         (exp_assign, exp_defsym): New functions.
214         (exp_provide): Use exp_assop.
215         * ldgram.y (defsym_expr): Use exp_defsym.
216         * ldctor.c, * ldgram.y, * ldlang.c, * mri.c, * emultempl/beos.em,
217         * emultempl/pe.em, * emultempl/pep.em, * emultempl/spuelf.em,
218         * emultempl/xtensaelf.em: Update exp_assop -> exp_assign.
219
220 2011-01-12  Alan Modra  <amodra@gmail.com>
221
222         PR ld/12380
223         * ldexp.h (enum phase_enum): Comment.  Add exp_dataseg_done.
224         * ldexp.c (fold_unary <DATA_SEGMENT_END>): Rearrange code.  Test
225         for exp_dataseg_done rather than expld.phase == lang_final_phase_enum
226         to detect when we've finished sizing sections.
227         (fold_binary <DATA_SEGMENT_ALIGN>): Likewise.
228         (fold_binary <DATA_SEGMENT_RELRO_END>): Likewise.  Also test
229         that we are not inside an output section statement.
230         * ldlang.c (lang_size_sections): Set exp_dataseg_done on exit if
231         not exp_dataseg_relro_adjust or exp_dataseg_adjust.  Don't set
232         lang_final_phase_enum here.
233         (lang_process): Set lang_final_phase_enum here.
234
235 2011-01-10  Nick Clifton  <nickc@redhat.com>
236
237         * po/da.po: Updated Danish translation.
238
239 2011-01-10  H.J. Lu  <hongjiu.lu@intel.com>
240
241         * ldlang.c (startup_file): Removed.
242         (lang_startup): Updated.
243
244 2011-01-05  H.J. Lu  <hongjiu.lu@intel.com>
245
246         PR ld/12364
247         * plugin.c (get_symbols): Check if owner_sec->owner is NULL
248         before accessing its flags field.
249
250 2011-01-01  H.J. Lu  <hongjiu.lu@intel.com>
251
252         * ldver.c (ldversion): Update copyright to 2011.
253
254 For older changes see ChangeLog-2010
255 \f
256 Local Variables:
257 mode: change-log
258 left-margin: 8
259 fill-column: 74
260 version-control: never
261 End: