(elf_metag_adjust_dynamic_symbol): Don't error on zero size dynbss symbol.
[platform/upstream/binutils.git] / bfd / ChangeLog
1 2013-02-08  Markos Chandras  <markos.chandras@imgtec.com>
2
3         * elf32-metag.c: Use bfd_get_linker_section to get SEC_LINKER_CREATED
4         sections.
5         (elf_metag_adjust_dynamic_symbol): Don't error on zero size dynbss
6         symbol.
7
8 2013-02-08  Yufeng Zhang  <yufeng.zhang@arm.com>
9
10         * elf64-aarch64.c (elf64_aarch64_grok_prstatus): Change 'size' from
11         288 to 272.
12
13 2013-02-08  Alan Modra  <amodra@gmail.com>
14
15         PR binutils/15106
16         * elf-bfd.h (struct elf_obj_tdata): Add elf_find_function_cache.
17         * elf.c (elf_find_function): Revert last change.  Use new
18         tdata field rather than static vars for cache.
19
20 2013-02-07  H.J. Lu  <hongjiu.lu@intel.com>
21
22         PR ld/15107
23         * elflink.c (elf_link_output_extsym): Set STB_GNU_UNIQUE only if
24         symbol is defined in regular object.
25
26 2013-02-07  Roberto Agostino Vitillo  <ra.vitillo@gmail.com>
27
28         PR binutils/15106
29         * elf.c (elf_find_function): Don't cache if symbols change.
30
31 2013-02-07  Alan Modra  <amodra@gmail.com>
32
33         PR binutils/14873
34         * elf-attrs.c (_bfd_elf_copy_obj_attributes): Don't attempt to
35         copy attributes from or to non-ELF.
36
37 2013-02-06  H.J. Lu  <hongjiu.lu@intel.com>
38
39         * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't clear pc_count
40         for non-zero TLS symbol.
41         (elf_i386_relocate_section): Don't resolve size relocation against
42         non-zero TLS symbol.
43         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Don't clear
44         pc_count for non-zero TLS symbol.
45         (elf_x86_64_relocate_section): Don't resolve size relocation
46         against non-zero TLS symbol.
47
48 2013-02-06  Sandra Loosemore  <sandra@codesourcery.com>
49             Andrew Jenner <andrew@codesourcery.com>
50
51         Based on patches from Altera Corporation.
52
53         * Makefile.am (ALL_MACHINES): Add cpu-nios2.lo.
54         (ALL_MACHINES_CFILES): Add cpu-nios2.c.
55         (BFD_BACKENDS): Add elf32-nios2.lo.
56         (BFD32_BACKENDS_CFILES): Add elf32-nios2.c.
57         * Makefile.in: Regenerated.
58         * configure.in: Add entries for bfd_elf32_bignios2_vec and
59         bfd_elf32_littlenios2_vec.
60         * configure: Regenerated.
61         * config.bfd: Add cases for nios2.
62         * archures.c (enum bfd_architecture): Add bfd_arch_nios2.
63         (bfd_mach_nios2): Define.
64         (bfd_nios2_arch): Declare.
65         (bfd_archures_list): Add bfd_nios2_arch.
66         * targets.c (bfd_elf32_bignios2_vec): Declare.
67         (bfd_elf32_littlenios2_vec): Declare.
68         (_bfd_target_vector): Add entries for bfd_elf32_bignios2_vec and
69         bfd_elf32_littlenios2_vec.
70         * elf-bfd.h (enum elf_target_id): Add NIOS2_ELF_DATA.
71         * reloc.c (enum bfd_reloc_code_real): Add Nios II relocations.
72         * bfd-in2.h: Regenerated.
73         * libbfd.h: Regenerated.
74         * cpu-nios2.c: New file.
75         * elf32-nios2.c: New file.
76
77 2013-02-06  Alan Modra  <amodra@gmail.com>
78
79         * elf32-arm.c (elf32_arm_final_link_relocate): Only test for
80         stubs in stub_bfd.
81
82 2013-02-06  Alan Modra  <amodra@gmail.com>
83
84         * Makefile.am (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
85         * Makefile.in: Regenerate.
86
87 2013-02-04  Sergio Durigan Junior  <sergiodj@redhat.com>
88             Pedro Alves  <palves@redhat.com>
89
90         * Makefile.in (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
91         * elf-bfd.h (elf_internal_linux_prpsinfo): New structure
92         declaration.
93         (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64)
94         (elfcore_write_ppc32_linux_prpsinfo32): New declarations.
95         * elf-linux-psinfo.h: New file.
96         * elf.c: Include elf-linux-psinfo.h.
97         (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64):
98         New functions.
99         * elf32-ppc.c: Include `elf-linux-psinfo.h'.
100         (elf_external_ppc_linux_prpsinfo32): New structure declaration.
101         (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): New macro.
102         (elfcore_write_ppc_linux_prpsinfo32): New function.
103
104 2013-02-04  Tristan Gingold  <gingold@adacore.com>
105
106         * mach-o.c (bfd_mach_o_scan_start_address): Do not fail if no
107         start address.
108
109 2013-02-04  Alan Modra  <amodra@gmail.com>
110
111         * Makefile.am (BFD64_BACKENDS): Remove elf-nacl.lo.
112         (BFD64_BACKENDS_CFILES): Remove elf-nacl.c.
113         * Makefile.in: Regenerate.
114         * po/SRC-POTFILES.in: Regenerate.
115
116 2013-02-04  Alan Modra  <amodra@gmail.com>
117
118         * coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Delete.
119         * coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Delete.
120
121 2013-02-01  Alan Modra  <amodra@gmail.com>
122
123         * elf64-ppc.c (dec_dynrel_count): Don't error when elf_gc_sweep_symbol
124         clears def_regular.
125
126 2013-01-31  Tristan Gingold  <gingold@adacore.com>
127
128         * mach-o.c (bfd_mach_o_scan): Call bfd_mach_o_flatten_sections
129         earlier.  Fix status checking of bfd_mach_o_scan_start_address.
130         (bfd_mach_o_scan_start_address): Handle LC_MAIN.
131
132 2013-01-31  Alan Modra  <amodra@gmail.com>
133             David S. Miller  <davem@davemloft.net>
134
135         PR ld/15056
136         * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Handle implicit
137         references to __tls_get_addr.
138         * elf32-tilpro.c (tilepro_elf_gc_mark_hook): Likewise.  Correct
139         vtinherit and vtentry reloc handling too.
140         * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): As for tilepro.
141
142 2013-01-31  Alan Modra  <amodra@gmail.com>
143
144         * elf64-ppc.c (ppc_stub_name): Trim off trailing "+0".
145
146 2013-01-31  Alan Modra  <amodra@gmail.com>
147
148         * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
149
150 2013-01-28  Alan Modra  <amodra@gmail.com>
151
152         * elf64-ppc.c: Use %T to print symbols names and remove redundant
153         "relocation" in error messages throughout file.
154         (ppc64_elf_relocate_section): Remove sibling call error message,
155         replace with "call lacks nop".  Specially report errors for
156         branches to function entry points via OPD lookup and branches
157         to stubs.  Remove NULL symbol handling now done by %T.
158
159 2013-01-28  Alan Modra  <amodra@gmail.com>
160
161         * archive.c (bfd_generic_archive_p): Return target and keep
162         ardata on partial matches.
163         * format.c (bfd_check_format_matches): Adjust for above
164         change.  Remove bfd_error_file_ambiguously_recognized dead
165         code.
166
167 2013-01-26  Alan Modra  <amodra@gmail.com>
168
169         * bfd.c (struct bfd_preserve, bfd_preserve_save, bfd_preserve_restore,
170         bfd_preserve_finish): Move to..
171         * format.c: ..here, splitting out..
172         (bfd_reinit): ..this.  New function.
173         (bfd_check_format_matches): Use bfd_preserve_save/restore to
174         keep bfd state for a match.
175         * elfcode.h (elf_object_p): Don't use bfd_preserve_save/restore.
176         * elfcore.h (elf_core_file_p): Likewise.
177         * mach-o.c (bfd_mach_o_header_p): Likewise.
178         * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise.
179         * xsym.c (bfd_sym_object_p): Likewise.
180         * mmo.c (mmo_scan): Clear abfd->symcount.
181         * opncls.c (_bfd_new_bfd): Use a smaller section hash table.
182         * section.c (bfd_section_list_clear): Clear section_htab.count.
183         * bfd-in2.h: Regenerate.
184
185 2013-01-25  Michael Schewe  <michael.schewe@gmx.net>
186
187         * elf32-h8300.c (elf32_h8_relax_section): When checking for a
188         second reloc, make sure that the reloc potentially exists first.
189
190 2013-01-24  Nick Clifton  <nickc@redhat.com>
191
192         * archures.c: Add bfd_mach_v850e3v5.
193         * bfd-in2.h: Regenerate.
194         * cpu-v850.c: Add entries for v850e2v5 and v850e3v5.
195         * cpu-v850_rh850.c: Likewise.
196         * elf32-v850.c: Add support for v850e3v5 architecture.
197
198 2013-01-23  Markos Chandras  <markos.chandras@imgtec.com>
199
200         * elf32-metag.c: Error on HIADDR16/LOADDR16 in shared link.
201
202 2013-01-23  Leif Ekblad  <leif@rdos.net>
203
204         * config.bfd (x86_64-*-rdos*): Remove targ_selvecs.
205
206 2013-01-18  H.J. Lu  <hongjiu.lu@intel.com>
207
208         * elf32-i386.c (elf_i386_allocate_dynrelocs): Clear pc_count for
209         non-zero TLS symbol.
210         (elf_i386_relocate_section): Resolve size relocation against
211         non-zero TLS symbol.
212         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Clear pc_count
213         for non-zero TLS symbol.
214         (elf_x86_64_relocate_section): Resolve size relocation against
215         non-zero TLS symbol.
216
217 2013-01-18  Mike Frysinger  <vapier@gentoo.org>
218
219         * elflink.c (bfd_elf_size_dynamic_sections): Only add DT_RPATH
220         when new_dtags is false.  Only add DT_RUNPATH when new_dtags is
221         true.
222
223 2013-01-17  H.J. Lu  <hongjiu.lu@intel.com>
224
225         * elf32-i386.c (elf_i386_check_relocs): Count size relocation as
226         PC-relative relocation.
227         * elf64-x86-64.c (elf_x86_64_check_relocs): Count size relocation
228         as PC-relative relocation.
229
230 2013-01-16  H.J. Lu  <hongjiu.lu@intel.com>
231
232         * elf32-i386.c (elf_i386_check_relocs): Update R_386_SIZE32
233         check.
234         (elf_i386_relocate_section): Don't check TLS for R_386_SIZE32.
235
236         * elf64-x86-64.c (elf_x86_64_check_relocs): Update R_X86_64_SIZE32
237         and R_X86_64_SIZE64 check.
238         (elf_x86_64_relocate_section): Don't check TLS for R_X86_64_SIZE32
239         nor R_X86_64_SIZE64.
240
241 2013-01-16  H.J. Lu  <hongjiu.lu@intel.com>
242
243         * bfd-in2.h: Regenerated.
244         * libbfd.h: Likewise.
245
246         * elf32-i386.c (elf_howto_table): Fill R_386_SIZE32 entry.
247         (elf_i386_reloc_type_lookup): Support BFD_RELOC_SIZE32.
248         (elf_i386_check_relocs): Handle R_386_SIZE32.
249         (elf_i386_gc_sweep_hook): Likewise.
250         (elf_i386_relocate_section): Likewise.
251
252         * elf64-x86-64.c (x86_64_elf_howto_table): Fill R_X86_64_SIZE32
253         and R_X86_64_SIZE64 entries.
254         (x86_64_reloc_map): Add BFD_RELOC_SIZE32 and BFD_RELOC_SIZE64,
255         (elf_x86_64_rtype_to_howto): Handle R_X86_64_SIZE32 for x32.
256         (elf_x86_64_reloc_name_lookup): Likewise.
257         (elf_x86_64_check_relocs): Handle R_X86_64_SIZE32 and
258         R_X86_64_SIZE64.
259         (elf_x86_64_gc_sweep_hook): Likewise.
260         (elf_x86_64_relocate_section): Likewise.
261
262         * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SIZE32 and
263         BFD_RELOC_SIZE64.
264
265 2013-01-15  H.J. Lu  <hongjiu.lu@intel.com>
266
267         * elf64-x86-64.c (R_X86_64_standard): Replace R_X86_64_IRELATIVE
268         with R_X86_64_RELATIVE64.
269
270 2013-01-15  Nick Clifton  <nickc@redhat.com>
271
272         * elf32-msp430.c: Fix spelling typo.
273
274 2013-01-15  Alan Modra  <amodra@gmail.com>
275
276         * elf64-ppc.c (ppc64_elf_size_stubs): Default shared libs to
277         plt-thread-safe.
278
279 2013-01-14  Alan Modra  <amodra@gmail.com>
280
281         PR binutils/14813
282         * bfdio.c (struct bfd_iovec <bclose>): Revert 2012-11-06.
283         (memory_bclose): Likewise.  Return 0 on success.
284         * cache.c (cache_bclose): Likewise.
285         * opncls.c (opncls_bclose, bfd_close): Likewise.
286         * vms-lib.c (vms_lib_bclose): Likewise.
287         * libbfd.h: Regenerate.
288
289 2013-01-13  Alan Modra  <amodra@gmail.com>
290
291         * elf-bfd.h (struct elf_link_hash_entry): Delete dynamic_weak.
292         Add ref_dynamic_nonweak.
293         * elflink.c (_bfd_elf_mark_dynamic_def_weak): Delete.
294         (_bfd_elf_merge_symbol): Don't call above function.  Move
295         setting of ref_dynamic_nonweak and dynamic_def earlier.  Don't
296         clear dynamic_def.
297         (elf_link_add_object_symbols): Delete redundant "override" test.
298         Don't set dynamic_def here.
299         (elf_link_output_extsym): Update.
300
301 2013-01-12  H.J. Lu  <hongjiu.lu@intel.com>
302
303         * elf32-i386.c (elf_i386_check_relocs): Set bfd errror for
304         normal and TLS symbol access.
305         * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
306
307 2013-01-12  Alan Modra  <amodra@gmail.com>
308
309         * elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
310         * elf-strtab.c (_bfd_elf_strtab_refcount): New function.
311         * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
312
313 2013-01-12  Alan Modra  <amodra@gmail.com>
314
315         PR ld/12549
316         * elf-bfd.h (_bfd_elf_strtab_clear_refs): Declare.
317         (_bfd_elf_strtab_clear_all_refs): Define.
318         * elf-strtab.c (_bfd_elf_strtab_clear_refs): New function.
319         (_bfd_elf_strtab_clear_all_refs): Delete.
320         * elflink.c (elf_link_add_object_symbols): Clear out added
321         strtab refs.  Correct handling of warning common symbols.
322
323 2013-01-10  H.J. Lu  <hongjiu.lu@intel.com>
324
325         * aout0.c: Remove trailing white spaces.
326         * archive.c: Likewise.
327         * archures.c: Likewise.
328         * bfd-in.h: Likewise.
329         * bfd-in2.h: Likewise.
330         * coff-alpha.c: Likewise.
331         * coff-i860.c: Likewise.
332         * coff-mips.c: Likewise.
333         * coff-ppc.c: Likewise.
334         * coff-tic80.c: Likewise.
335         * coff-x86_64.c: Likewise.
336         * coff-z80.c: Likewise.
337         * coffcode.h: Likewise.
338         * coffgen.c: Likewise.
339         * cofflink.c: Likewise.
340         * compress.c: Likewise.
341         * corefile.c: Likewise.
342         * cpu-arm.c: Likewise.
343         * cpu-avr.c: Likewise.
344         * cpu-bfin.c: Likewise.
345         * cpu-cr16.c: Likewise.
346         * cpu-cr16c.c: Likewise.
347         * cpu-crx.c: Likewise.
348         * cpu-h8300.c: Likewise.
349         * cpu-i386.c: Likewise.
350         * cpu-lm32.c: Likewise.
351         * cpu-m68k.c: Likewise.
352         * cpu-moxie.c: Likewise.
353         * cpu-msp430.c: Likewise.
354         * cpu-sh.c: Likewise.
355         * cpu-xc16x.c: Likewise.
356         * dwarf2.c: Likewise.
357         * ecofflink.c: Likewise.
358         * ecoffswap.h: Likewise.
359         * elf-ifunc.c: Likewise.
360         * elf-m10300.c: Likewise.
361         * elf-vxworks.c: Likewise.
362         * elf32-avr.c: Likewise.
363         * elf32-avr.h: Likewise.
364         * elf32-cr16.c: Likewise.
365         * elf32-cr16c.c: Likewise.
366         * elf32-cris.c: Likewise.
367         * elf32-crx.c: Likewise.
368         * elf32-frv.c: Likewise.
369         * elf32-hppa.c: Likewise.
370         * elf32-i860.c: Likewise.
371         * elf32-ip2k.c: Likewise.
372         * elf32-iq2000.c: Likewise.
373         * elf32-m32c.c: Likewise.
374         * elf32-m68hc1x.c: Likewise.
375         * elf32-msp430.c: Likewise.
376         * elf32-mt.c: Likewise.
377         * elf32-ppc.c: Likewise.
378         * elf32-rl78.c: Likewise.
379         * elf32-s390.c: Likewise.
380         * elf32-score.h: Likewise.
381         * elf32-sh-symbian.c: Likewise.
382         * elf32-sh.c: Likewise.
383         * elf32-spu.c: Likewise.
384         * elf32-tic6x.c: Likewise.
385         * elf32-v850.c: Likewise.
386         * elf32-xc16x.c: Likewise.
387         * elf32-xtensa.c: Likewise.
388         * elf64-alpha.c: Likewise.
389         * elf64-hppa.c: Likewise.
390         * elf64-ppc.c: Likewise.
391         * elf64-s390.c: Likewise.
392         * elfcore.h: Likewise.
393         * elflink.c: Likewise.
394         * elfxx-mips.c: Likewise.
395         * elfxx-sparc.c: Likewise.
396         * elfxx-tilegx.c: Likewise.
397         * ieee.c: Likewise.
398         * libcoff.h: Likewise.
399         * libpei.h: Likewise.
400         * libxcoff.h: Likewise.
401         * linker.c: Likewise.
402         * mach-o-i386.c: Likewise.
403         * mach-o-target.c: Likewise.
404         * mach-o.c: Likewise.
405         * mach-o.h: Likewise.
406         * mmo.c: Likewise.
407         * opncls.c: Likewise.
408         * pdp11.c: Likewise.
409         * pe-x86_64.c: Likewise.
410         * peXXigen.c: Likewise.
411         * pef-traceback.h: Likewise.
412         * pei-x86_64.c: Likewise.
413         * peicode.h: Likewise.
414         * plugin.c: Likewise.
415         * reloc.c: Likewise.
416         * riscix.c: Likewise.
417         * section.c: Likewise.
418         * som.c: Likewise.
419         * syms.c: Likewise.
420         * tekhex.c: Likewise.
421         * ticoff.h: Likewise.
422         * vaxbsd.c: Likewise.
423         * xcofflink.c: Likewise.
424         * xtensa-isa.c: Likewise.
425
426 2013-01-10  Will Newton <will.newton@imgtec.com>
427
428         * Makefile.am: Add Meta.
429         * Makefile.in: Regenerate.
430         * archures.c (bfd_mach_metag): New.
431         * bfd-in2.h: Regenerate.
432         * config.bfd: Add Meta.
433         * configure: Regenerate.
434         * configure.in: Add Meta.
435         * cpu-metag.c: New file.
436         * elf-bfd.h: Add Meta.
437         * elf32-metag.c: New file.
438         * elf32-metag.h: New file.
439         * libbfd.h: Regenerate.
440         * reloc.c: Add Meta relocations.
441         * targets.c: Add Meta.
442
443 2013-01-08  Yufeng Zhang  <yufeng.zhang@arm.com>
444
445         * elf-bfd.h (elfcore_write_aarch_tls): Add prototype.
446         (elfcore_write_aarch_hw_break): Likewise.
447         (elfcore_write_aarch_hw_watch): Likewise.
448         * elf.c (elfcore_grok_aarch_tls): New function.
449         (elfcore_grok_aarch_hw_break): Likewise.
450         (elfcore_grok_aarch_hw_watch): Likewise.
451         (elfcore_grok_note): Call the new functions to handle the
452         corresponding notes.
453         (elfcore_write_aarch_tls): New function.
454         (elfcore_write_aarch_hw_break): Likewise.
455         (elfcore_write_aarch_hw_watch): Likewise.
456         (elfcore_write_register_note): Call the new functions to handle the
457         corresponding pseudo sections.
458
459 2013-01-07  Tom Tromey  <tromey@redhat.com>
460
461         * section.c (_bfd_std_section): Rename from std_section.
462         (bfd_com_section_ptr, bfd_und_section_ptr, bfd_abs_section_ptr)
463         (STD_SECTION): Update.
464         * bfd-in2.h: Rebuild.
465
466 2013-01-04  Juergen Urban <JuergenUrban@gmx.de>
467
468         * archures.c (bfd_mach_mips5900): Define.
469         * bfd-in2.h: Regenerate.
470         * config.bfd: Add mips64-ps2-elf and mips-ps2-elf targets.
471         * cpu-mips.c: Add support for MIPS r5900.
472         * elfxx-mips.c: Add support for MIPS r5900 (extension of r4000).
473
474 2013-01-03  Nickolai Zeldovich  <nickolai@csail.mit.edu>
475             Nick Clifton  <nickc@redhat.com>
476
477         * elflink.c (get_value): Prevent the use of an undefined shift
478         operation.  Add sanity checks.
479
480 2013-01-02  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
481
482         * config.bfd (cr16*-*-uclinux*): New target support.
483
484
485 For older changes see ChangeLog-2012
486 \f
487 Copyright (C) 2013 Free Software Foundation, Inc.
488
489 Copying and distribution of this file, with or without modification,
490 are permitted in any medium without royalty provided the copyright
491 notice and this notice are preserved.
492
493 Local Variables:
494 mode: change-log
495 left-margin: 8
496 fill-column: 74
497 version-control: never
498 End: