bfd/
[platform/upstream/binutils.git] / bfd / ChangeLog
1 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
2
3         * elfxx-mips.c (mips_elf_primary_global_got_index): New function,
4         split out from...
5         (mips_elf_global_got_index): ...here.  Reorder arguments so that
6         the output bfd and info come first.
7         (mips_elf_calculate_relocation): Update the call to
8         mips_elf_global_got_index accordingly.
9         (_bfd_mips_elf_finish_dynamic_symbol): Use
10         mips_elf_primary_global_got_index rather than
11         mips_elf_global_got_index.
12         (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
13
14 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
15
16         * elfxx-mips.c (mips_got_entry): Update comments.
17         (mips_elf_multi_got_entry_eq): Rename to...
18         (mips_elf_got_entry_eq): ...this, deleting the old definition.
19         (mips_elf_create_got_info): Remove master_got_p argument.
20         Always use mips_elf_got_entry_eq.
21         (mips_elf_bfd_got, mips_elf_multi_got, mips_elf_create_got_section):
22         Update calls accordingly.
23
24 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
25
26         * elfxx-mips.c (mips_got_info): Remove bfd2got.
27         (mips_elf_bfd2got_hash): Delete.
28         (mips_elf_got_per_bfd_arg): Remove bfd2got.
29         (mips_elf_replace_bfd_got, mips_elf_count_got_entries): New functions.
30         (mips_elf_global_got_index, mips_elf_create_local_got_entry): Use
31         g->next to test for the multigot case.  Use mips_elf_bfd_got rather
32         than mips_elf_got_for_ibfd.
33         (mips_elf_bfd2got_entry_hash, mips_elf_bfd2got_entry_eq)
34         (mips_elf_got_for_ibfd, mips_elf_get_got_for_bfd): Delete.
35         (mips_elf_make_got_per_bfd): Replace with...
36         (mips_elf_add_got_entry): ...this new function.
37         (mips_elf_make_got_pages_per_bfd): Replace with...
38         (mips_elf_add_got_page_entry): ...this new function.
39         (mips_elf_merge_got_with): Replace bfd2got argument with separate
40         bfd and GOT arguments.  Use mips_elf_add_got_entry and
41         mips_elf_add_got_page_entry instead of mips_elf_make_got_per_bfd
42         and mips_elf_make_got_pages_per_bfd.  Use mips_elf_replace_bfd_got
43         to set the BFD's GOT and free the old table.
44         (mips_elf_merge_got): Replace bfd2got argument with separate
45         bfd and GOT arguments.  Apply mips_elf_resolve_final_got_entries.
46         Use mips_elf_count_got_entries to count the number of entries in
47         each GOT.  Update the calls to mips_elf_merge_got_with.
48         (mips_elf_adjust_gp): Use g->next to test for the multigot case.
49         Use mips_elf_bfd_got rather than mips_elf_got_for_ibfd.
50         (mips_elf_multi_got): Don't create the bfd2got hash table.
51         Replace hash table traversal with a walk over the input bfds,
52         updating the call to mips_elf_merge_got.  Use mips_elf_replace_bfd_got
53         to set the output bfd's GOT.
54         (mips_elf_lay_out_got): Rename "sub" to "ibfd".  Record that all
55         bfds use the master GOT in the single-GOT case.
56         (_bfd_mips_elf_finish_dynamic_sections): Use mips_elf_bfd_got
57         rather than mips_elf_got_for_ibfd.
58
59 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
60
61         * elfxx-mips.c (mips_elf_obj_tdata): Add a got field.
62         (mips_elf_bfd_got, mips_elf_record_got_entry): New functions.
63         (mips_elf_record_global_got_symbol): Update the hash entry before
64         adding the mips_got_entry.  Use mips_elf_record_got_entry to do
65         the latter.
66         (mips_elf_record_local_got_symbol): Use mips_elf_record_got_entry.
67         (mips_elf_record_got_page_entry): Record the entry in both the
68         master and bfd GOTs.
69
70 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
71
72         * elfxx-mips.c (mips_elf_recreate_got): Don't change the entry;
73         create another one if necessary.
74         (mips_elf_set_gotidx): New function.
75         (mips_elf_set_global_gotidx): Use it.
76         (mips_elf_initialize_tls_index): Likewise.  Take a
77         mips_elf_traverse_got_arg as argument.
78         (mips_elf_lay_out_got): Update use of mips_elf_initialize_tls_index.
79         (mips_elf_multi_got): Likewise.  Cope with error returns from
80         mips_elf_set_global_gotidx.
81
82 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
83
84         * elfxx-mips.c (mips_got_info): Add relocs field.
85         (mips_elf_set_global_got_offset_arg, mips_elf_count_tls_arg): Replace
86         with...
87         (mips_elf_traverse_got_arg): ...this new structure.
88         (mips_elf_count_local_tls_relocs): Delete.
89         (mips_elf_count_global_tls_relocs): Likewise.
90         (mips_elf_count_got_entry): New function.
91         (mips_elf_count_local_got_entries): Likewise.
92         (mips_elf_count_global_tls_entries): Take a mips_elf_traverse_got_arg
93         rather than a mips_elf_count_tls_arg.  Count both relocs and entries.
94         (mips_elf_record_local_got_symbol): Don't count got entries here.
95         (mips_elf_make_got_per_bfd): Use mips_elf_count_got_entry.
96         (mips_elf_set_global_got_offset): Split into...
97         (mips_elf_set_global_got_area, mips_elf_set_global_gotidx): ...these
98         new functions.  Take a mips_elf_traverse_got_arg rather than a
99         mips_elf_set_global_got_offset_arg.  Don't count TLS relocs here.
100         Use g->relocs to record the number of relocs needed for global GOT
101         entries.
102         (mips_elf_multi_got): Use mips_elf_traverse_got_arg rather than
103         mips_elf_set_global_got_offset_arg.  Use the relocs field to count
104         relocations.  Update for above function split.
105         (mips_elf_lay_out_got): Use mips_elf_count_local_got_entries
106         to count both the number of GOT entries and the number of TLS
107         relocs required by local entries.  Likewise
108         mips_elf_count_global_tls_entries and global entries.
109         Remove uses of mips_elf_count_local_tls_relocs and
110         mips_elf_count_global_tls_relocs.
111
112 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
113
114         * elfxx-mips.c (mips_got_entry): Update comment above tls_type entry
115         to say that each structure represents only one type of TLS reference.
116         (GOT_TLS_TYPE): New define.
117         (mips_elf_link_hash_entry): Temporarily split tls_type and
118         tls_got_offset into two variables each.
119         (mips_elf_link_hash_newfunc): Update accordingly.
120         (mips_elf_got_entry_eq, mips_elf_got_entry_hash)
121         (mips_elf_multi_got_entry_eq): Require the tls_type to be the same.
122         (mips_elf_reloc_tls_type, mips_tls_got_entries): New functions.
123         (mips_tls_got_relocs): Use a switch statement.
124         (mips_elf_count_global_tls_entries): Handle the new hash entry fields.
125         (mips_elf_initialize_tls_slots): Use a switch statement.  Avoid
126         local "offset" variable.
127         (mips_tls_got_index): Remove r_type argument and assert.  Remove
128         code that handled entries with two TLS types; always use the
129         original got_index instead.
130         (mips_tls_single_got_index): New function.
131         (mips_elf_local_got_index): Use entry->tls_type to check for
132         TLS entries.  Use mips_tls_single_got_index.  Update call to
133         mips_tls_got_index.
134         (mips_elf_global_got_index): Use mips_elf_reloc_tls_type.
135         Use p->tls_type to check for TLS entries.  Update call to
136         mips_tls_got_index.  Use mips_tls_single_got_index.
137         (mips_elf_create_local_got_entry): Use mips_elf_reloc_tls_type.
138         Use entry.tls_type to check for TLS entries.
139         (mips_elf_record_global_got_symbol): Replace tls_flag argument
140         with r_type argument.  Use mips_elf_reloc_tls_type.
141         Set up the new hash entry fields.
142         (mips_elf_record_local_got_symbol): Replace tls_flag argument
143         with r_type argument.  Use mips_elf_reloc_tls_type and
144         mips_tls_got_entries.  Remove code that handled entries
145         with multiple TLS types.
146         (mips_elf_make_got_per_bfd): Use mips_tls_got_entries.
147         (mips_elf_initialize_tls_index): Handle new hash entry fields.
148         Use equality rather than masks when checking for specific TLS types.
149         Use mips_tls_got_entries.  Remove code that handled entries
150         with multiple TLS types.
151         (mips_elf_calculate_relocation): Use TLS_RELOC_P instead of
152         testing the hash table entry.
153         (_bfd_mips_elf_check_relocs): Update calls to
154         mips_elf_record_global_got_symbol and mips_elf_record_local_got_symbol.
155         (_bfd_mips_elf_finish_dynamic_symbol): Don't check h->type.
156         (_bfd_mips_elf_copy_indirect_symbol): Handle new hash entry fields.
157
158 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
159
160         * elfxx-mips.c (mips_elf_multi_got_entry_hash): Rename to...
161         (mips_elf_got_entry_hash): ...this, deleting the old version.
162         (mips_elf_create_got_info): Use mips_elf_got_entry_hash for
163         both types of GOT.
164
165 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
166
167         * elfxx-mips.c (mips_elf_create_got_info): New function.
168         (mips_elf_get_got_for_bfd, mips_elf_multi_got): Use it.
169         (mips_elf_create_got_section): Likewise.
170
171 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
172
173         * elfxx-mips.c (mips_elf_record_local_got_symbol): Always set
174         gotidx to -1.
175
176 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
177
178         * elfxx-mips.c (mips_elf_multi_got): Simplify size calculation.
179
180 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
181
182         * elfxx-mips.c (mips_got_info): Move global_gotsym to...
183         (mips_elf_link_hash_table): ...here.  Update rest of file accordingly.
184
185 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
186
187         * elfxx-mips.c (mips_elf_count_global_tls_entries)
188         (mips_elf_count_global_tls_relocs): Don't count indirect or
189         warning symbols.
190         (mips_elf_multi_got, mips_elf_lay_out_got): Assert that the right
191         number of TLS entries were allocated.
192
193 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
194
195         * elfxx-mips.c (mips_elf_sort_hash_table_f): Remove asserts.
196
197 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
198
199         * elfxx-mips.c (mips_elf_merge_got_with): Only use arg->global_count
200         if there are TLS relocations.
201
202 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
203
204         * elfxx-mips.c (mips_elf_recreate_got): Remove free.
205         (mips_elf_resolve_final_got_entries): Remove bogus comment.
206
207 2013-02-10  Alan Modra  <amodra@gmail.com>
208
209         * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_zmalloc.
210         * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
211         * m68klinux.c (linux_link_hash_table_create): Likewise.
212         * sparclinux.c (linux_link_hash_table_create): Likewise.
213         * sunos.c (sunos_link_hash_table_create): Likewise.
214         * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
215         * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
216         * elf32-arm.c (elf32_arm_link_hash_table_create): Likewise.
217         * elf32-avr.c (elf32_avr_link_hash_table_create): Likewise.
218         * elf32-cr16.c (elf32_cr16_link_hash_table_create): Likewise.
219         * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
220         * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
221         * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
222         * elf32-lm32.c (lm32_elf_link_hash_table_create): Likewise.
223         * elf32-m32r.c (m32r_elf_link_hash_table_create): Likewise.
224         * elf32-m68hc1x.c (m68hc11_elf_hash_table_create): Likewise.
225         * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
226         * elf32-metag.c (elf_metag_link_hash_table_create): Likewise.
227         * elf32-nios2.c (nios2_elf32_link_hash_table_create): Likewise.
228         * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
229         * elf32-score.c (elf32_score_link_hash_table_create): Likewise.
230         * elf32-spu.c (spu_elf_link_hash_table_create): Likewise.
231         * elf32-tic6x.c (elf32_tic6x_link_hash_table_create): Likewise.
232         * elf32-vax.c (elf_vax_link_hash_table_create): Likewise.
233         * elf32-xgate.c (xgate_elf_bfd_link_hash_table_create): Likewise.
234         * elf32-xtensa.c (elf_xtensa_link_hash_table_create): Likewise.
235         * elf64-aarch64.c (elf64_aarch64_link_hash_table_create): Likewise.
236         * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
237         * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
238         * elf64-x86-64.c (elf_x86_64_link_hash_table_create): Likewise.
239         * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
240         * elflink.c (_bfd_elf_link_hash_table_create): Likewise.
241         (_bfd_elf_link_hash_table_init): Assume zero fill table on entry.
242
243 2013-02-10  Alan Modra  <amodra@gmail.com>
244
245         * i386linux.c (linux_link_hash_table_create): Allocate table
246         with bfd_zmalloc, not bfd_alloc.
247         * pdp11.c (link_hash_table_create): Allocate table with
248         bfd_malloc, not bfd_alloc.
249         * elf32-bfin.c (bfinfdpic_elf_link_hash_table_create): Allocate table
250         with bfd_zmalloc, not bfd_zalloc.
251         (bfin_link_hash_table_create): Likewise.
252         * elf32-frv.c (frvfdpic_elf_link_hash_table_create): Likewise.
253         * elf64-hppa.c (elf64_hppa_hash_table_create): Likewise.
254
255 2013-02-10  Alan Modra  <amodra@gmail.com>
256
257         PR ld/15113
258         * elf32-sh.c (sh_elf_link_hash_table_create): Use bfd_zmalloc.
259
260 2013-02-08  Markos Chandras  <markos.chandras@imgtec.com>
261
262         * elf32-metag.c: Use bfd_get_linker_section to get SEC_LINKER_CREATED
263         sections.
264         (elf_metag_adjust_dynamic_symbol): Don't error on zero size dynbss
265         symbol.
266
267 2013-02-08  Yufeng Zhang  <yufeng.zhang@arm.com>
268
269         * elf64-aarch64.c (elf64_aarch64_grok_prstatus): Change 'size' from
270         288 to 272.
271
272 2013-02-08  Alan Modra  <amodra@gmail.com>
273
274         PR binutils/15106
275         * elf-bfd.h (struct elf_obj_tdata): Add elf_find_function_cache.
276         * elf.c (elf_find_function): Revert last change.  Use new
277         tdata field rather than static vars for cache.
278
279 2013-02-07  H.J. Lu  <hongjiu.lu@intel.com>
280
281         PR ld/15107
282         * elflink.c (elf_link_output_extsym): Set STB_GNU_UNIQUE only if
283         symbol is defined in regular object.
284
285 2013-02-07  Roberto Agostino Vitillo  <ra.vitillo@gmail.com>
286
287         PR binutils/15106
288         * elf.c (elf_find_function): Don't cache if symbols change.
289
290 2013-02-07  Alan Modra  <amodra@gmail.com>
291
292         PR binutils/14873
293         * elf-attrs.c (_bfd_elf_copy_obj_attributes): Don't attempt to
294         copy attributes from or to non-ELF.
295
296 2013-02-06  H.J. Lu  <hongjiu.lu@intel.com>
297
298         * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't clear pc_count
299         for non-zero TLS symbol.
300         (elf_i386_relocate_section): Don't resolve size relocation against
301         non-zero TLS symbol.
302         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Don't clear
303         pc_count for non-zero TLS symbol.
304         (elf_x86_64_relocate_section): Don't resolve size relocation
305         against non-zero TLS symbol.
306
307 2013-02-06  Sandra Loosemore  <sandra@codesourcery.com>
308             Andrew Jenner <andrew@codesourcery.com>
309
310         Based on patches from Altera Corporation.
311
312         * Makefile.am (ALL_MACHINES): Add cpu-nios2.lo.
313         (ALL_MACHINES_CFILES): Add cpu-nios2.c.
314         (BFD_BACKENDS): Add elf32-nios2.lo.
315         (BFD32_BACKENDS_CFILES): Add elf32-nios2.c.
316         * Makefile.in: Regenerated.
317         * configure.in: Add entries for bfd_elf32_bignios2_vec and
318         bfd_elf32_littlenios2_vec.
319         * configure: Regenerated.
320         * config.bfd: Add cases for nios2.
321         * archures.c (enum bfd_architecture): Add bfd_arch_nios2.
322         (bfd_mach_nios2): Define.
323         (bfd_nios2_arch): Declare.
324         (bfd_archures_list): Add bfd_nios2_arch.
325         * targets.c (bfd_elf32_bignios2_vec): Declare.
326         (bfd_elf32_littlenios2_vec): Declare.
327         (_bfd_target_vector): Add entries for bfd_elf32_bignios2_vec and
328         bfd_elf32_littlenios2_vec.
329         * elf-bfd.h (enum elf_target_id): Add NIOS2_ELF_DATA.
330         * reloc.c (enum bfd_reloc_code_real): Add Nios II relocations.
331         * bfd-in2.h: Regenerated.
332         * libbfd.h: Regenerated.
333         * cpu-nios2.c: New file.
334         * elf32-nios2.c: New file.
335
336 2013-02-06  Alan Modra  <amodra@gmail.com>
337
338         * elf32-arm.c (elf32_arm_final_link_relocate): Only test for
339         stubs in stub_bfd.
340
341 2013-02-06  Alan Modra  <amodra@gmail.com>
342
343         * Makefile.am (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
344         * Makefile.in: Regenerate.
345
346 2013-02-04  Sergio Durigan Junior  <sergiodj@redhat.com>
347             Pedro Alves  <palves@redhat.com>
348
349         * Makefile.in (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
350         * elf-bfd.h (elf_internal_linux_prpsinfo): New structure
351         declaration.
352         (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64)
353         (elfcore_write_ppc32_linux_prpsinfo32): New declarations.
354         * elf-linux-psinfo.h: New file.
355         * elf.c: Include elf-linux-psinfo.h.
356         (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64):
357         New functions.
358         * elf32-ppc.c: Include `elf-linux-psinfo.h'.
359         (elf_external_ppc_linux_prpsinfo32): New structure declaration.
360         (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): New macro.
361         (elfcore_write_ppc_linux_prpsinfo32): New function.
362
363 2013-02-04  Tristan Gingold  <gingold@adacore.com>
364
365         * mach-o.c (bfd_mach_o_scan_start_address): Do not fail if no
366         start address.
367
368 2013-02-04  Alan Modra  <amodra@gmail.com>
369
370         * Makefile.am (BFD64_BACKENDS): Remove elf-nacl.lo.
371         (BFD64_BACKENDS_CFILES): Remove elf-nacl.c.
372         * Makefile.in: Regenerate.
373         * po/SRC-POTFILES.in: Regenerate.
374
375 2013-02-04  Alan Modra  <amodra@gmail.com>
376
377         * coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Delete.
378         * coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Delete.
379
380 2013-02-01  Alan Modra  <amodra@gmail.com>
381
382         * elf64-ppc.c (dec_dynrel_count): Don't error when elf_gc_sweep_symbol
383         clears def_regular.
384
385 2013-01-31  Tristan Gingold  <gingold@adacore.com>
386
387         * mach-o.c (bfd_mach_o_scan): Call bfd_mach_o_flatten_sections
388         earlier.  Fix status checking of bfd_mach_o_scan_start_address.
389         (bfd_mach_o_scan_start_address): Handle LC_MAIN.
390
391 2013-01-31  Alan Modra  <amodra@gmail.com>
392             David S. Miller  <davem@davemloft.net>
393
394         PR ld/15056
395         * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Handle implicit
396         references to __tls_get_addr.
397         * elf32-tilpro.c (tilepro_elf_gc_mark_hook): Likewise.  Correct
398         vtinherit and vtentry reloc handling too.
399         * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): As for tilepro.
400
401 2013-01-31  Alan Modra  <amodra@gmail.com>
402
403         * elf64-ppc.c (ppc_stub_name): Trim off trailing "+0".
404
405 2013-01-31  Alan Modra  <amodra@gmail.com>
406
407         * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
408
409 2013-01-28  Alan Modra  <amodra@gmail.com>
410
411         * elf64-ppc.c: Use %T to print symbols names and remove redundant
412         "relocation" in error messages throughout file.
413         (ppc64_elf_relocate_section): Remove sibling call error message,
414         replace with "call lacks nop".  Specially report errors for
415         branches to function entry points via OPD lookup and branches
416         to stubs.  Remove NULL symbol handling now done by %T.
417
418 2013-01-28  Alan Modra  <amodra@gmail.com>
419
420         * archive.c (bfd_generic_archive_p): Return target and keep
421         ardata on partial matches.
422         * format.c (bfd_check_format_matches): Adjust for above
423         change.  Remove bfd_error_file_ambiguously_recognized dead
424         code.
425
426 2013-01-26  Alan Modra  <amodra@gmail.com>
427
428         * bfd.c (struct bfd_preserve, bfd_preserve_save, bfd_preserve_restore,
429         bfd_preserve_finish): Move to..
430         * format.c: ..here, splitting out..
431         (bfd_reinit): ..this.  New function.
432         (bfd_check_format_matches): Use bfd_preserve_save/restore to
433         keep bfd state for a match.
434         * elfcode.h (elf_object_p): Don't use bfd_preserve_save/restore.
435         * elfcore.h (elf_core_file_p): Likewise.
436         * mach-o.c (bfd_mach_o_header_p): Likewise.
437         * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise.
438         * xsym.c (bfd_sym_object_p): Likewise.
439         * mmo.c (mmo_scan): Clear abfd->symcount.
440         * opncls.c (_bfd_new_bfd): Use a smaller section hash table.
441         * section.c (bfd_section_list_clear): Clear section_htab.count.
442         * bfd-in2.h: Regenerate.
443
444 2013-01-25  Michael Schewe  <michael.schewe@gmx.net>
445
446         * elf32-h8300.c (elf32_h8_relax_section): When checking for a
447         second reloc, make sure that the reloc potentially exists first.
448
449 2013-01-24  Nick Clifton  <nickc@redhat.com>
450
451         * archures.c: Add bfd_mach_v850e3v5.
452         * bfd-in2.h: Regenerate.
453         * cpu-v850.c: Add entries for v850e2v5 and v850e3v5.
454         * cpu-v850_rh850.c: Likewise.
455         * elf32-v850.c: Add support for v850e3v5 architecture.
456
457 2013-01-23  Markos Chandras  <markos.chandras@imgtec.com>
458
459         * elf32-metag.c: Error on HIADDR16/LOADDR16 in shared link.
460
461 2013-01-23  Leif Ekblad  <leif@rdos.net>
462
463         * config.bfd (x86_64-*-rdos*): Remove targ_selvecs.
464
465 2013-01-18  H.J. Lu  <hongjiu.lu@intel.com>
466
467         * elf32-i386.c (elf_i386_allocate_dynrelocs): Clear pc_count for
468         non-zero TLS symbol.
469         (elf_i386_relocate_section): Resolve size relocation against
470         non-zero TLS symbol.
471         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Clear pc_count
472         for non-zero TLS symbol.
473         (elf_x86_64_relocate_section): Resolve size relocation against
474         non-zero TLS symbol.
475
476 2013-01-18  Mike Frysinger  <vapier@gentoo.org>
477
478         * elflink.c (bfd_elf_size_dynamic_sections): Only add DT_RPATH
479         when new_dtags is false.  Only add DT_RUNPATH when new_dtags is
480         true.
481
482 2013-01-17  H.J. Lu  <hongjiu.lu@intel.com>
483
484         * elf32-i386.c (elf_i386_check_relocs): Count size relocation as
485         PC-relative relocation.
486         * elf64-x86-64.c (elf_x86_64_check_relocs): Count size relocation
487         as PC-relative relocation.
488
489 2013-01-16  H.J. Lu  <hongjiu.lu@intel.com>
490
491         * elf32-i386.c (elf_i386_check_relocs): Update R_386_SIZE32
492         check.
493         (elf_i386_relocate_section): Don't check TLS for R_386_SIZE32.
494
495         * elf64-x86-64.c (elf_x86_64_check_relocs): Update R_X86_64_SIZE32
496         and R_X86_64_SIZE64 check.
497         (elf_x86_64_relocate_section): Don't check TLS for R_X86_64_SIZE32
498         nor R_X86_64_SIZE64.
499
500 2013-01-16  H.J. Lu  <hongjiu.lu@intel.com>
501
502         * bfd-in2.h: Regenerated.
503         * libbfd.h: Likewise.
504
505         * elf32-i386.c (elf_howto_table): Fill R_386_SIZE32 entry.
506         (elf_i386_reloc_type_lookup): Support BFD_RELOC_SIZE32.
507         (elf_i386_check_relocs): Handle R_386_SIZE32.
508         (elf_i386_gc_sweep_hook): Likewise.
509         (elf_i386_relocate_section): Likewise.
510
511         * elf64-x86-64.c (x86_64_elf_howto_table): Fill R_X86_64_SIZE32
512         and R_X86_64_SIZE64 entries.
513         (x86_64_reloc_map): Add BFD_RELOC_SIZE32 and BFD_RELOC_SIZE64,
514         (elf_x86_64_rtype_to_howto): Handle R_X86_64_SIZE32 for x32.
515         (elf_x86_64_reloc_name_lookup): Likewise.
516         (elf_x86_64_check_relocs): Handle R_X86_64_SIZE32 and
517         R_X86_64_SIZE64.
518         (elf_x86_64_gc_sweep_hook): Likewise.
519         (elf_x86_64_relocate_section): Likewise.
520
521         * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SIZE32 and
522         BFD_RELOC_SIZE64.
523
524 2013-01-15  H.J. Lu  <hongjiu.lu@intel.com>
525
526         * elf64-x86-64.c (R_X86_64_standard): Replace R_X86_64_IRELATIVE
527         with R_X86_64_RELATIVE64.
528
529 2013-01-15  Nick Clifton  <nickc@redhat.com>
530
531         * elf32-msp430.c: Fix spelling typo.
532
533 2013-01-15  Alan Modra  <amodra@gmail.com>
534
535         * elf64-ppc.c (ppc64_elf_size_stubs): Default shared libs to
536         plt-thread-safe.
537
538 2013-01-14  Alan Modra  <amodra@gmail.com>
539
540         PR binutils/14813
541         * bfdio.c (struct bfd_iovec <bclose>): Revert 2012-11-06.
542         (memory_bclose): Likewise.  Return 0 on success.
543         * cache.c (cache_bclose): Likewise.
544         * opncls.c (opncls_bclose, bfd_close): Likewise.
545         * vms-lib.c (vms_lib_bclose): Likewise.
546         * libbfd.h: Regenerate.
547
548 2013-01-13  Alan Modra  <amodra@gmail.com>
549
550         * elf-bfd.h (struct elf_link_hash_entry): Delete dynamic_weak.
551         Add ref_dynamic_nonweak.
552         * elflink.c (_bfd_elf_mark_dynamic_def_weak): Delete.
553         (_bfd_elf_merge_symbol): Don't call above function.  Move
554         setting of ref_dynamic_nonweak and dynamic_def earlier.  Don't
555         clear dynamic_def.
556         (elf_link_add_object_symbols): Delete redundant "override" test.
557         Don't set dynamic_def here.
558         (elf_link_output_extsym): Update.
559
560 2013-01-12  H.J. Lu  <hongjiu.lu@intel.com>
561
562         * elf32-i386.c (elf_i386_check_relocs): Set bfd errror for
563         normal and TLS symbol access.
564         * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
565
566 2013-01-12  Alan Modra  <amodra@gmail.com>
567
568         * elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
569         * elf-strtab.c (_bfd_elf_strtab_refcount): New function.
570         * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
571
572 2013-01-12  Alan Modra  <amodra@gmail.com>
573
574         PR ld/12549
575         * elf-bfd.h (_bfd_elf_strtab_clear_refs): Declare.
576         (_bfd_elf_strtab_clear_all_refs): Define.
577         * elf-strtab.c (_bfd_elf_strtab_clear_refs): New function.
578         (_bfd_elf_strtab_clear_all_refs): Delete.
579         * elflink.c (elf_link_add_object_symbols): Clear out added
580         strtab refs.  Correct handling of warning common symbols.
581
582 2013-01-10  H.J. Lu  <hongjiu.lu@intel.com>
583
584         * aout0.c: Remove trailing white spaces.
585         * archive.c: Likewise.
586         * archures.c: Likewise.
587         * bfd-in.h: Likewise.
588         * bfd-in2.h: Likewise.
589         * coff-alpha.c: Likewise.
590         * coff-i860.c: Likewise.
591         * coff-mips.c: Likewise.
592         * coff-ppc.c: Likewise.
593         * coff-tic80.c: Likewise.
594         * coff-x86_64.c: Likewise.
595         * coff-z80.c: Likewise.
596         * coffcode.h: Likewise.
597         * coffgen.c: Likewise.
598         * cofflink.c: Likewise.
599         * compress.c: Likewise.
600         * corefile.c: Likewise.
601         * cpu-arm.c: Likewise.
602         * cpu-avr.c: Likewise.
603         * cpu-bfin.c: Likewise.
604         * cpu-cr16.c: Likewise.
605         * cpu-cr16c.c: Likewise.
606         * cpu-crx.c: Likewise.
607         * cpu-h8300.c: Likewise.
608         * cpu-i386.c: Likewise.
609         * cpu-lm32.c: Likewise.
610         * cpu-m68k.c: Likewise.
611         * cpu-moxie.c: Likewise.
612         * cpu-msp430.c: Likewise.
613         * cpu-sh.c: Likewise.
614         * cpu-xc16x.c: Likewise.
615         * dwarf2.c: Likewise.
616         * ecofflink.c: Likewise.
617         * ecoffswap.h: Likewise.
618         * elf-ifunc.c: Likewise.
619         * elf-m10300.c: Likewise.
620         * elf-vxworks.c: Likewise.
621         * elf32-avr.c: Likewise.
622         * elf32-avr.h: Likewise.
623         * elf32-cr16.c: Likewise.
624         * elf32-cr16c.c: Likewise.
625         * elf32-cris.c: Likewise.
626         * elf32-crx.c: Likewise.
627         * elf32-frv.c: Likewise.
628         * elf32-hppa.c: Likewise.
629         * elf32-i860.c: Likewise.
630         * elf32-ip2k.c: Likewise.
631         * elf32-iq2000.c: Likewise.
632         * elf32-m32c.c: Likewise.
633         * elf32-m68hc1x.c: Likewise.
634         * elf32-msp430.c: Likewise.
635         * elf32-mt.c: Likewise.
636         * elf32-ppc.c: Likewise.
637         * elf32-rl78.c: Likewise.
638         * elf32-s390.c: Likewise.
639         * elf32-score.h: Likewise.
640         * elf32-sh-symbian.c: Likewise.
641         * elf32-sh.c: Likewise.
642         * elf32-spu.c: Likewise.
643         * elf32-tic6x.c: Likewise.
644         * elf32-v850.c: Likewise.
645         * elf32-xc16x.c: Likewise.
646         * elf32-xtensa.c: Likewise.
647         * elf64-alpha.c: Likewise.
648         * elf64-hppa.c: Likewise.
649         * elf64-ppc.c: Likewise.
650         * elf64-s390.c: Likewise.
651         * elfcore.h: Likewise.
652         * elflink.c: Likewise.
653         * elfxx-mips.c: Likewise.
654         * elfxx-sparc.c: Likewise.
655         * elfxx-tilegx.c: Likewise.
656         * ieee.c: Likewise.
657         * libcoff.h: Likewise.
658         * libpei.h: Likewise.
659         * libxcoff.h: Likewise.
660         * linker.c: Likewise.
661         * mach-o-i386.c: Likewise.
662         * mach-o-target.c: Likewise.
663         * mach-o.c: Likewise.
664         * mach-o.h: Likewise.
665         * mmo.c: Likewise.
666         * opncls.c: Likewise.
667         * pdp11.c: Likewise.
668         * pe-x86_64.c: Likewise.
669         * peXXigen.c: Likewise.
670         * pef-traceback.h: Likewise.
671         * pei-x86_64.c: Likewise.
672         * peicode.h: Likewise.
673         * plugin.c: Likewise.
674         * reloc.c: Likewise.
675         * riscix.c: Likewise.
676         * section.c: Likewise.
677         * som.c: Likewise.
678         * syms.c: Likewise.
679         * tekhex.c: Likewise.
680         * ticoff.h: Likewise.
681         * vaxbsd.c: Likewise.
682         * xcofflink.c: Likewise.
683         * xtensa-isa.c: Likewise.
684
685 2013-01-10  Will Newton <will.newton@imgtec.com>
686
687         * Makefile.am: Add Meta.
688         * Makefile.in: Regenerate.
689         * archures.c (bfd_mach_metag): New.
690         * bfd-in2.h: Regenerate.
691         * config.bfd: Add Meta.
692         * configure: Regenerate.
693         * configure.in: Add Meta.
694         * cpu-metag.c: New file.
695         * elf-bfd.h: Add Meta.
696         * elf32-metag.c: New file.
697         * elf32-metag.h: New file.
698         * libbfd.h: Regenerate.
699         * reloc.c: Add Meta relocations.
700         * targets.c: Add Meta.
701
702 2013-01-08  Yufeng Zhang  <yufeng.zhang@arm.com>
703
704         * elf-bfd.h (elfcore_write_aarch_tls): Add prototype.
705         (elfcore_write_aarch_hw_break): Likewise.
706         (elfcore_write_aarch_hw_watch): Likewise.
707         * elf.c (elfcore_grok_aarch_tls): New function.
708         (elfcore_grok_aarch_hw_break): Likewise.
709         (elfcore_grok_aarch_hw_watch): Likewise.
710         (elfcore_grok_note): Call the new functions to handle the
711         corresponding notes.
712         (elfcore_write_aarch_tls): New function.
713         (elfcore_write_aarch_hw_break): Likewise.
714         (elfcore_write_aarch_hw_watch): Likewise.
715         (elfcore_write_register_note): Call the new functions to handle the
716         corresponding pseudo sections.
717
718 2013-01-07  Tom Tromey  <tromey@redhat.com>
719
720         * section.c (_bfd_std_section): Rename from std_section.
721         (bfd_com_section_ptr, bfd_und_section_ptr, bfd_abs_section_ptr)
722         (STD_SECTION): Update.
723         * bfd-in2.h: Rebuild.
724
725 2013-01-04  Juergen Urban <JuergenUrban@gmx.de>
726
727         * archures.c (bfd_mach_mips5900): Define.
728         * bfd-in2.h: Regenerate.
729         * config.bfd: Add mips64-ps2-elf and mips-ps2-elf targets.
730         * cpu-mips.c: Add support for MIPS r5900.
731         * elfxx-mips.c: Add support for MIPS r5900 (extension of r4000).
732
733 2013-01-03  Nickolai Zeldovich  <nickolai@csail.mit.edu>
734             Nick Clifton  <nickc@redhat.com>
735
736         * elflink.c (get_value): Prevent the use of an undefined shift
737         operation.  Add sanity checks.
738
739 2013-01-02  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
740
741         * config.bfd (cr16*-*-uclinux*): New target support.
742
743
744 For older changes see ChangeLog-2012
745 \f
746 Copyright (C) 2013 Free Software Foundation, Inc.
747
748 Copying and distribution of this file, with or without modification,
749 are permitted in any medium without royalty provided the copyright
750 notice and this notice are preserved.
751
752 Local Variables:
753 mode: change-log
754 left-margin: 8
755 fill-column: 74
756 version-control: never
757 End: