da39d9fb5f33c9aafb176dc20c3485786d46f8ae
[external/binutils.git] / bfd / ChangeLog
1 2013-04-19  Luca Pizzamiglio  <luca.pizzamiglio@gmail.com>
2
3         * ecoff.c (_bfd_ecoff_sizeof_headers): Cast the return value of
4         BFD_ALIGN to int.
5         * elf32-tic6x.c (elf32_tic6x_size_dynamic_sections): Remove unused
6         variables.
7         * elf32-v850.c (v850_elf_relax_section): Redefine the type of 'i'
8         to bfd_vma.
9         * vms-alpha.c (evax_bfd_print_etir): Initialize sec_len.
10
11 2013-04-22  Alan Modra  <amodra@gmail.com>
12
13         PR ld/15382
14         * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Don't multiply
15         sh_size or reloc_count adjustment by count.
16
17 2013-04-22  Alan Modra  <amodra@gmail.com>
18
19         * elf64-ppc.c (ppc64_elf_check_relocs): Don't call
20         create_linkage_sections here..
21         (ppc64_elf_init_stub_bfd): ..do so here.  Return status.
22         (create_linkage_sections): Move earlier in file.
23         (ppc64_elf_setup_section_lists): Remove now useless htab->brlt test.
24         * elf64-ppc.h (ppc64_elf_init_stub_bfd): Update proto.
25
26 2013-04-19  Nick Clifton  <nickc@redhat.com>
27
28         PR binutils/15356
29         * compress.c (decompress_contents): Always call inflateEnd, even
30         when another inflation operation fails.
31
32 2013-04-17  H.J. Lu  <hongjiu.lu@intel.com>
33
34         * elf-ifunc.c: Update copyright year.
35
36 2013-04-17 Luca Pizzamiglio  <luca.pizzamiglio@gmail.com>
37
38         * coffcode.h: Added a cast to void when a bfd_set_section_*()
39         macro's return value is ignored.
40         * elf32-hppa.c: Likewise.
41         * elf32-tic6x.c: Likewise.
42         * mach-o.c: Likewise.
43         * mmo.c: Likewise.
44         * opncls.c: Likewise.
45         * peicode.h: Likewise.
46         * elf32-m32r.c: Check return value of bfd_set_section_*().
47         * elfnn-ia64.c: Likewise.
48         * elfxx-mips.c: Likewise.
49         * vms-alpha.c: Likewise.
50
51 2013-04-15  H.J. Lu  <hongjiu.lu@intel.com>
52
53         PR ld/15371
54         * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Check
55         regular reference without non-GOT reference when building
56         shared library.
57
58 2013-04-15  Alan Modra  <amodra@gmail.com>
59
60         * archive.c (_bfd_archive_close_and_cleanup): Clear parent
61         cache slot for archives.
62
63 2013-04-14  Hans-Peter Nilsson  <hp@bitrange.com>
64
65         * mmo.c (mmo_write_chunk): Break out abfd->tdata.mmo_data to new
66         local variable mmop.
67
68 2013-04-09  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
69
70         PR ld/12494
71         * bfd/elf32-avr.c: Consider all sections to determine if linker
72         relaxation can safely delete a ret after a call/jmp
73
74 2013-04-09  Mingjie Xing  <mingjie.xing@gmail.com>
75
76         * bfd.c (typedef bfd, Error reporting, Miscellaneous): Add
77         INODEs.
78
79 2013-04-08  Tom Tromey  <tromey@redhat.com>
80
81         * som.c (bfd_section_from_som_symbol): No longer static.
82         * som.h (bfd_section_from_som_symbol): Declare.
83
84 2013-04-06  Alan Modra  <amodra@gmail.com>
85
86         * elf32-ppc.c (ppc_elf_check_relocs): Use SYMBOLIC_BIND.
87         * elf64-ppc.c (ppc64_elf_check_relocs, dec_dynrel_count): Likewise.
88
89 2013-04-05  Nick Clifton  <nickc@redhat.com>
90
91         * elflink.c (elf_link_add_object_symbols): Revert accidental commit.
92
93 2013-04-04  Alan Modra  <amodra@gmail.com>
94
95         * bfd.c (bfd_error_type, bfd_errmsgs): Add bfd_error_missing_dso.
96         * bfd-in2.h: Regenerate.
97         * elflink.c (elf_link_add_object_symbols): Use new error.
98
99 2013-04-03  Nick Clifton  <nickc@redhat.com>
100
101         * elf32-v850.c (v850_elf_is_target_special_symbol): New function.
102         (bfd_elf32_bfd_is_target_special_symbol): Define.
103
104 2013-04-03   Venkataramanan Kumar  <venkataramanan.kumar@linaro.org>
105
106         * elf64-aarch64.c (elf64_aarch64_gc_sweep_hook): Use
107         elf64_aarch64_locals to get local GOT reference counts.
108
109 2013-04-02  DJ Delorie  <dj@redhat.com>
110
111         * elf32-rl78.c (GET_RELOC): Assert that there are relocs to get.
112         (rl78_elf_relax_section): Only fetch the next reloc if there is
113         one expected.
114
115 2013-03-30  Alan Modra  <amodra@gmail.com>
116
117         PR ld/15323
118         * elf-m10300.c (mn10300_elf_check_relocs): Set non_ir_ref for
119         global symbols referenced by relocs.
120         * elf32-arm.c (elf32_arm_check_relocs): Likewise.
121         * elf32-bfin.c (bfin_check_relocs): Likewise.
122         * elf32-cr16.c (cr16_elf_check_relocs): Likewise.
123         * elf32-cris.c (cris_elf_check_relocs): Likewise.
124         * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
125         * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
126         * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
127         * elf32-frv.c (elf32_frv_check_relocs): Likewise.
128         * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
129         * elf32-i370.c (i370_elf_check_relocs): Likewise.
130         * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
131         * elf32-lm32.c (lm32_elf_check_relocs): Likewise.
132         * elf32-m32c.c (m32c_elf_check_relocs): Likewise.
133         * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
134         * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
135         * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
136         * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
137         * elf32-metag.c (elf_metag_check_relocs): Likewise.
138         * elf32-microblaze.c (microblaze_elf_check_relocs): Likewise.
139         * elf32-moxie.c (moxie_elf_check_relocs): Likewise.
140         * elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
141         * elf32-mt.c (mt_elf_check_relocs): Likewise.
142         * elf32-nios2.c (nios2_elf32_check_relocs): Likewise.
143         * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
144         * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
145         * elf32-rl78.c (rl78_elf_check_relocs): Likewise.
146         * elf32-s390.c (elf_s390_check_relocs): Likewise.
147         * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise.
148         * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise.
149         * elf32-sh.c (sh_elf_check_relocs): Likewise.
150         * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise.
151         * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise.
152         * elf32-v850.c (v850_elf_check_relocs): Likewise.
153         * elf32-vax.c (elf_vax_check_relocs): Likewise.
154         * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
155         * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
156         * elf64-aarch64.c (elf64_aarch64_check_relocs): Likewise.
157         * elf64-alpha.c (elf64_alpha_check_relocs): Likewise.
158         * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
159         * elf64-ia64-vms.c (elf64_ia64_check_relocs): Likewise.
160         * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
161         * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
162         * elf64-s390.c (elf_s390_check_relocs): Likewise.
163         * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
164         * elfnn-ia64.c (elfNN_ia64_check_relocs): Likewise.
165         * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
166         * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise.
167         * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.  Don't
168         test indirect/warning links for NULL.
169
170 2013-03-29  H.J. Lu  <hongjiu.lu@intel.com>
171
172         PR ld/15323
173         * elf32-i386.c (elf_i386_check_relocs): Set non_ir_ref if a
174         symbol is referenced by a non-shared object.
175         * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
176
177 2013-03-28  Joe Seymour  <jseymour@codesourcery.com>
178
179         * elf32-sh.c (sh_elf_relocate_section): Suppress warnings for
180         R_SH_REL32 relocations against undefined weak symbols.
181
182 2013-03-28  Alan Modra  <amodra@gmail.com>
183
184         * elf64-ppc.c (struct ppc_dyn_relocs): New.
185         (ppc64_elf_check_relocs): Separate dynrel counts for local syms
186         into ifunc and non-ifunc.
187         (dec_dynrel_count): Pass in sym rather than sym_sec.  Handle
188         separate ifunc/non-ifunc dynrel counts.
189         (allocate_got): Always use reliplt for ifunc.
190         (allocate_dynrelocs): Likewise.
191         (ppc64_elf_size_dynamic_sections): Likewise.
192         (ppc64_elf_layout_multitoc): Likewise.
193         (ppc64_elf_relocate_section): Likewise.
194
195 2013-03-28  Alan Modra  <amodra@gmail.com>
196
197         * elf32-ppc.c (struct ppc_dyn_relocs): New.
198         (ppc_elf_check_relocs): Separate dynrel counts for local syms
199         into ifunc and non-ifunc.
200         (allocate_dynrelocs): Always put ifunc relocs into reliplt.
201         (ppc_elf_size_dynamic_sections): Likewise.
202         (ppc_elf_relocate_section): Likewise.
203
204 2013-03-28  Alan Modra  <amodra@gmail.com>
205
206         * elf-bfd.h (enum elf_reloc_type_class): Add reloc_class_ifunc.
207         (struct elf_backend_data <elf_backed_reloc_type_class>): Add
208         bfd_link_info* and asection* params.
209         (_bfd_elf_reloc_type_class): Likewise.
210         * elf.c (_bfd_elf_reloc_type_class): Likewise.
211         * elflink.c (elf_link_sort_cmp2): Sort first on reloc class.
212         (elf_link_sort_relocs): Update elf_backed_reloc_type_class call.
213         * elf32-ppc.c (ppc_elf_reloc_type_class): Return reloc_class_ifunc
214         for any reliplt reloc.  Don't return reloc_class_plt for
215         R_PPC_REL24 and R_PPC_ADDR24.
216         * elf64-ppc.c (allocate_got): Formatting.
217         (ppc64_elf_reloc_type_class): Return reloc_class_ifunc for any
218         reliplt reloc.
219         * elf-m10300.c, * elf32-arm.c, * elf32-bfin.c, * elf32-cr16.c,
220         * elf32-cris.c, * elf32-hppa.c, * elf32-i386.c, * elf32-lm32.c,
221         * elf32-m32r.c, * elf32-m68k.c, * elf32-metag.c, * elf32-nios2.c,
222         * elf32-s390.c, * elf32-sh.c, * elf32-sparc.c, * elf32-tilepro.c,
223         * elf32-vax.c, * elf32-xtensa.c, * elf64-aarch64.c, * elf64-alpha.c,
224         * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-s390.c, * elf64-sparc.c,
225         * elf64-x86-64.c, * elfnn-ia64.c, * elfxx-tilegx.c, * elfxx-tilegx.h:
226         Add extra params to the various reloc_type_class functions.
227
228 2013-03-27  Alan Modra  <amodra@gmail.com>
229
230         * elf32-ppc.c (ppc_elf_check_relocs): Set PLT_IFUNC in local got
231         masks for all local ifunc syms.
232         (allocate_dynrelocs): Don't use htab->relgot for ifunc.
233         (ppc_elf_size_dynamic_sections): Likewise.
234         (ppc_elf_relocate_section): Likewise.
235
236 2013-03-27  Will Newton  <will.newton@linaro.org>
237
238         * elf32-arm.c (elf32_arm_final_link_relocate): Avoid emitting a
239         dynamic reloc for symbols with dynindx == -1.
240         (allocate_dynrelocs_for_symbol): Avoid allocating space for a
241         dynamic reloc for symbols with dynindx == -1.
242
243 2013-03-27  Will Newton  <will.newton@linaro.org>
244
245         * elf32-arm.c (elf32_arm_final_link_relocate): Avoid emitting a
246         dynamic reloc for non-default visibility undefined weaks.
247         (allocate_dynrelocs_for_symbol): Avoid allocating space for a
248         dynamic reloc for non-default visibility undefined weaks.
249
250 2013-03-26  Alan Modra  <amodra@gmail.com>
251
252         * elflink.c (_bfd_elf_add_default_symbol): Preserve section
253         over _bfd_elf_merge_symbol calls.
254
255 2013-03-26  Alan Modra  <amodra@gmail.com>
256
257         * elflink.c (elf_link_add_object_symbols): Add assertion for
258         common override alignment check code.  Formatting.
259
260 2013-03-25  Alan Modra  <amodra@gmail.com>
261
262         * elflink.c (_bfd_elf_merge_symbol): Set old_alignment for
263         usual common symbols as well as for dynamic.  Add poldbfd param.
264         Save old bfd.  Adjust callers.
265         (_bfd_elf_add_default_symbol): Add poldbfd param.  Pass "section"
266         and "value" by value, not pointer.  Adjust caller.
267         (elf_link_add_object_symbols): Combine undef_bfd and old_bfd vars.
268         Delete code to set same.  Use old_bfd and old_alignment from
269         _bfd_elf_merge_symbol instead.  Add default symbol before
270         alignment and size checks.  Wrap overlong lines.
271
272 2013-03-25  Alan Modra  <amodra@gmail.com>
273
274         * elflink.c (_bfd_elf_add_default_symbol): Delete "override" param.
275         (elf_link_add_object_symbols): Don't call _bfd_elf_add_default_symbol
276         when override is true.
277
278 2013-03-25  Alan Modra  <amodra@gmail.com>
279
280         * elflink.c (_bfd_elf_merge_symbol): Use local var holding value
281         of *sym_hash.
282
283 2013-03-25  Alan Modra  <amodra@gmail.com>
284
285         * elflink.c (_bfd_elf_merge_symbol): Don't discard TLS symbols here.
286         Wrap long lines.
287         (elf_link_add_object_symbols): Discard TLS symbols for --just-syms
288         early in symbol loop.
289
290 2013-03-25  Alan Modra  <amodra@gmail.com>
291
292         * elf-bfd.h (struct elf_backend_data <merge_symbol>): Update proto.
293         (_bfd_elf_init_reloc_shdr): Delete.
294         * elf.c (_bfd_elf_init_reloc_shdr): Make static.
295         * elf64-x86-64.c (elf_x86_64_merge_symbol): Trim parameters to
296         just what is needed.
297         * elflink.c (_bfd_elf_merge_symbol): Update bed->merge_symbol call.
298
299 2013-03-23  Alan Modra  <amodra@gmail.com>
300
301         * elf-bfd.h (_bfd_elf_merge_symbol): Delete declaration.
302         * elflink.c (_bfd_elf_merge_symbol): Make static.
303         * elf32-sh-symbian.c (sh_symbian_relocate_section): Don't call
304         _bfd_elf_merge_symbol, call _bfd_generic_link_add_one_symbol.
305
306 2013-03-23  Alan Modra  <amodra@gmail.com>
307
308         PR ld/15270
309         * elflink.c (elf_link_add_object_symbols): Don't set def_regular
310         or ref_regular for BFD_PLUGIN owned syms, or have them affect
311         def_dynamic/ref_dynamic.
312         (_bfd_elf_fix_symbol_flags): Don't set def_regular for BFD_PLUGIN
313         owned syms.
314
315 2013-03-22  David S. Miller  <davem@davemloft.net>
316
317         * elfxx-sparc.c (_bfd_sparc_elf_merge_private_bfd_data): Set type of
318         hwcaps attribute.
319
320 2013-03-22  Achille Fouilleul  <achille.fouilleul+binutils@gadz.org>
321
322         PR ld/14902
323         * elf32-h8300.c (elf32_h8_relax_delete_bytes): Fix off by one
324         errors adjusting relocs and symbols.
325
326 2013-03-21  Michael Schewe  <michael.schewe@gmx.net>
327
328         * elf32-h8300 (h8_relax_section): Add new relaxation of mov
329         @(disp:32,ERx) to mov @(disp:16,ERx).
330         (R_H8_DISP32A16): New reloc.
331         Comments added and corrected.
332         * reloc.c (BFD_RELOC_H8_DISP32A16): New reloc.
333         * bfd-in2.h: Regenerate.
334         * libbfd.h: Regenerate.
335
336 2013-03-21  Kai Tietz  <ktietz@redhat.com>
337
338         * coffgen.c (coff_real_object_p): Make global.
339         * peicode.h (coff_real_object_p): Add prototype.
340         (FILHDR): Defined for COFF_IMAGE_WITH_PE as
341         external_PEI_IMAGE_hdr structure.
342         (coff_swap_filehdr_in): Handle variable header-size.
343         * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Just handle amount
344         of directory-entiries as specified in pe-header.
345
346 2013-03-21  Nick Clifton  <nickc@redhat.com>
347
348         PR sim/15286
349         * elf32-arm.c (bfd_arm_get_mach_from_attributes): Identify XScale,
350         iWMMXt and iWMMXt2 processors from attributes.
351
352 2013-03-20  Alan Modra  <amodra@gmail.com>
353
354         * elflink.c (_bfd_elf_make_dynamic_reloc_section): Override
355         sh_type according to is_rela.
356
357 2013-03-18  Alan Modra  <amodra@gmail.com>
358
359         PR ld/12549
360         * elflink.c (elf_link_add_object_symbols): Exclude weak refs when
361         considering whether an --as-needed library is needed.
362
363 2013-03-14  Tom Tromey  <tromey@redhat.com>
364
365         * opncls.c (bfd_get_debug_link_info): Rename from
366         get_debug_link_info.  Export.  Update comment.
367         (find_separate_debug_file): Update.
368         * bfd-in2.h: Rebuild.
369
370 2013-03-08  Venkataramanan Kumar  <venkataramanan.kumar@linaro.org>
371
372         * elf64-aarch64.c (elf_backend_can_gc_sections): Enable gc-section
373         support.
374         (elf64_aarch64_gc_sweep_hook): Handle GOT, TLS and PLT related
375         relocs.
376
377 2013-03-08  Andreas Arnez  <arnez@linux.vnet.ibm.com>
378
379         * elf-bfd.h (elfcore_write_s390_tdb): Add prototype.
380         * elf.c (elfcore_write_s390_tdb): New function.
381         (elfcore_write_register_note): Call it.
382         (elfcore_grok_s390_tdb): New function.
383         (elfcore_grok_note): Call it.
384
385 2013-03-08  Maciej W. Rozycki  <macro@codesourcery.com>
386
387         * elfxx-mips.c (mips_elf_allocate_lazy_stub): Correct data type.
388
389 2013-03-05  Corinna Vinschen  <vinschen@redhat.com>
390
391         * config.bfd: Add x86_64-*-cygwin to list of supported targets.
392
393 2013-03-04  Alan Modra  <amodra@gmail.com>
394
395         * elf32-ppc.c (ppc_elf_relocate_section <R_PPC_PLTREL24>): Adjust
396         non-zero addends when relocatable, rather than addends >= 32768.
397         Always zero "addend" before applying relocation.
398
399 2013-03-04  Nick Clifton  <nickc@redhat.com>
400
401         * archive64.c (bfd_elf64_archive_write_armap): Fix calculation of
402         file pointer offsets for thin archives.
403
404 2013-02-28  Nathan Sidwell  <nathan@codesourcery.com>
405
406         * elf32-arm.c (elf32_arm_size_dynamic_sections): Don't call
407         elf32_arm_allocate_dynrelocs for source reloc for non-dynamic link.
408
409 2013-02-27  DJ Delorie  <dj@redhat.com>
410
411         * reloc.c (BFD_RELOC_RL78_CODE): Add.
412         * libbfd.h: Regenerate.
413         * bfd-in2.h: Regenerate.
414         * elf32-rl78.c (rl78_elf_relocate_section): Handle weak code
415         references in compuated relocs.
416
417 2013-02-26  Anthony Green  <green@moxielogic.com>
418
419         * config.bfd: Extend moxie-rtems target triplet name support.
420
421 2013-02-21  H.J. Lu  <hongjiu.lu@intel.com>
422
423         PR ld/15167
424         * elf64-ia64-vms.c (elf64_vms_link_add_object_symbols): Set
425         unique_global only for definition.
426         * elflink.c (_bfd_elf_merge_symbol): Don't set unique_global
427         here.
428         (elf_link_add_object_symbols): Set unique_global only
429         for definition.
430
431 2013-02-21  Alan Modra  <amodra@gmail.com>
432
433         * elf-bfd.h (struct elf_build_id): Extracted from..
434         (struct elf_build_id_info): ..here.  Delete.
435         (struct output_elf_obj_tdata): New, extracted from..
436         (struct elf_obj_tdata): ..here.  Reorganize for better packing.
437         Add "o" field.
438         (elf_program_header_size): Reference tdata->o.
439         (elf_seg_map, elf_next_file_pos, elf_eh_frame_hdr, elf_linker,
440         elf_stack_flags, elf_shstrtab, elf_strtab_sec, elf_shstrtab_sec,
441         elf_section_syms, elf_num_section_syms, elf_flags_init): Likewise.
442         * elf.c (bfd_elf_allocate_object): Allocate output_elf_obj_tdata
443         when opening bfd in any mode that might write.
444         (_bfd_elf_write_object_contents): Use build_id field in
445         output_elf_obj_tdata.
446         (_bfd_elf_close_and_cleanup): Tweak elf_shstrtab test.
447         (elfobj_grok_gnu_build_id): Adjust for elf_tdata changes.
448
449 2013-02-21  Alan Modra  <amodra@gmail.com>
450
451         * elf-bfd.h (struct core_elf_obj_tdata): New.
452         (struct elf_obj_tdata): Delete core_signal, core_pid, core_lwpid,
453         core_program, and core_command.  Add "core".
454         * elf.c (bfd_elf_mkcorefile): Allocate "core" struct.
455         Update all refs to tdata core fields.
456         * elf32-am33lin.c, * elf32-arm.c, * elf32-cris.c, * elf32-frv.c,
457         * elf32-hppa.c, * elf32-i386.c, * elf32-m68k.c, * elf32-mips.c,
458         * elf32-nios2.c, * elf32-ppc.c, * elf32-s390.c, * elf32-score.c,
459         * elf32-score7.c, * elf32-sh.c, * elf32-sparc.c, * elf32-tilegx.c,
460         * elf32-tilepro.c, * elf32-xtensa.c, * elf64-aarch64.c,
461         * elf64-hppa.c, * elf64-mips.c, * elf64-ppc.c, * elf64-tilegx.c,
462         * elf64-x86-64.c, * elfcore.h, * elfn32-mips.c: Update all refs
463         to tdata core fields.
464
465 2013-02-21  Alan Modra  <amodra@gmail.com>
466
467         * elf-bfd.h (struct elf_obj_tdata): Rename segment_map to seg_map.
468         Delete num_locals and num_globals.
469         (elf_num_locals, elf_num_globals): Don't define.
470         (elf_seg_map, elf_next_file_pos, elf_eh_frame_hdr, elf_linker,
471         elf_stack_flags, elf_strtab_sec, elf_shstrtab_sec): Define.
472         * bfd.c, * elf-eh-frame.c, * elf-nacl.c, * elf-vxworks.c, * elf.c,
473         * elf32-arm.c, * elf32-lm32.c, * elf32-ppc.c, * elf32-rx.c,
474         * elf32-spu.c, * elf64-hppa.c, * elfcode.h, * elflink.c,
475         * elfnn-ia64.c, * elfxx-mips.c: Use newly defined elf_obj_tdata
476         accessor macros.
477         * elf.c (elf_map_symbols): Add pnum_locals param.  Return
478         number of locals syms via new param.
479         (swap_out_syms): Adjust to suit elf_map_symbols change.
480
481 2013-02-19  Maciej W. Rozycki  <macro@codesourcery.com>
482
483         * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Also clear
484         STO_MICROMIPS annotation.
485
486 2013-02-19  Alan Modra  <amodra@gmail.com>
487
488         * configure.in: Bump version to 2.23.52.
489         * elf-bfd.h (struct elf_build_id_info): New.
490         (struct elf_obj_tdata): Delete after_write_object_contents,
491         after_write_object_contents_info and build_id_size.  Make build_id
492         a pointer to struct elf_build_id_info.
493         * elf.c (_bfd_elf_write_object_contents): Style.  Update
494         after_write_ibject_contents invocation.
495         (elfobj_grok_gnu_build_id): Update for new build_id struct.  Don't
496         allow zero size notes.
497         * configure: Regenerate.
498
499 2013-02-18  Maciej W. Rozycki  <macro@codesourcery.com>
500
501         * elf64-mips.c (micromips_elf64_howto_table_rel): Add
502         R_MICROMIPS_SCN_DISP and R_MICROMIPS_JALR.
503         (micromips_elf64_howto_table_rela): Likewise.
504         (micromips_reloc_map): Add BFD_RELOC_MICROMIPS_JALR.
505         * elfn32-mips.c (elf_micromips_howto_table_rel): Add
506         R_MICROMIPS_SCN_DISP and R_MICROMIPS_JALR.
507         (elf_micromips_howto_table_rela): Likewise.
508         (micromips_reloc_map): Add BFD_RELOC_MICROMIPS_JALR.
509
510 2013-02-18  Paul Brook  <paul@codesourcery.com>
511
512         * elfxx-mips.c (MICROMIPS_P): New macro.
513         (_bfd_mips_elf_symbol_processing): Use it.
514
515 2013-02-18  Maciej W. Rozycki  <macro@codesourcery.com>
516
517         * elfxx-mips.c (_bfd_mips_elf_create_dynamic_sections): Clarify
518         comment on _PROCEDURE_LINKAGE_TABLE_ creation.
519
520 2013-02-18  Alan Modra  <amodra@gmail.com>
521
522         PR ld/12549
523         * elf-bfd.h (_bfd_elf_strtab_clear_refs): Delete.
524         (_bfd_elf_strtab_clear_all_refs): Declare.
525         (_bfd_elf_strtab_resize): Declare.
526         * elf-strtab.c (_bfd_elf_strtab_clear_refs): Delete.
527         (_bfd_elf_strtab_clear_all_refs): New function.
528         (_bfd_elf_strtab_resize): Likewise.
529         * elflink.c (elf_link_add_object_symbols): Use _bfd_elf_strtab_resize.
530
531 2013-02-18  Alan Modra  <amodra@gmail.com>
532
533         * elf-bfd.h (struct elf_obj_tdata): Move find_line_info, local_stubs,
534         local_call_stubs, elf_data_symbol, elf_text_symbol, elf_data_section,
535         and elf_text_section to..
536         * elfxx-mips.c (struct mips_elf_obj_tdata): ..here.  Update all refs.
537         * elf64-alpha.c (struct mips_elf_find_line): Rename to..
538         (struct alpha_elf_find_line): ..this.
539         (struct alpha_elf_obj_tdata): Add find_line_info, update refs.
540
541 2013-02-16  H.J. Lu  <hongjiu.lu@intel.com>
542
543         PR ld/15146
544         * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
545         for references from the dummy bfd.
546
547 2013-02-16  H.J. Lu  <hongjiu.lu@intel.com>
548
549         PR ld/15149
550         * elflink.c (elf_link_add_object_symbols): Also track weak
551         references.
552
553 2013-02-15  H.J. Lu  <hongjiu.lu@intel.com>
554
555         PR binutils/15151
556         * archive.c (_bfd_find_nested_archive): Don't allow a nested
557         archive pointing to itself.
558         (_bfd_get_elt_at_filepos): Revert the last 2 changes.
559
560 2013-02-15  Nick Clifton  <nickc@redhat.com>
561
562         PR binutils/15140
563         * archive.c (_bfd_get_elt_at_filepos): Prevent an infinite loop
564         accessing a corrupt nested archive.
565
566 2013-02-13  Richard Sandiford  <rdsandiford@googlemail.com>
567
568         * elfxx-mips.c (mips_got_page_ref): New structure.
569         (mips_got_page_entry): Use a section rather than a (bfd, symndx)
570         pair to represent the anchor point.
571         (mips_got_info): Add a got_page_refs field.
572         (mips_elf_link_hash_table): Add a sym_cache field.
573         (mips_got_page_ref_hash, mips_got_page_ref_eq): New functions.
574         (mips_got_page_entry_hash, mips_got_page_entry_eq): Update for
575         new anchor representation.
576         (mips_elf_create_got_info): Create got_page_refs rather than
577         got_page_entries.
578         (mips_elf_record_got_page_ref): New function.
579         (mips_elf_pages_for_range): Move further down file.
580         (mips_elf_record_got_page_entry): Likewise.  Take a got as argument.
581         Use a section rather than a (bfd, symndx) pair to represent the
582         anchor point.
583         (mips_elf_resolve_got_page_ref): New function.
584         (mips_elf_resolve_final_got_entries): Use it to populate
585         got_page_entries.
586         (_bfd_mips_elf_check_relocs): Call mips_elf_record_got_page_ref
587         rather than mips_elf_record_got_page_entry.  Only nullify h
588         afterwards.
589         (mips_elf_lay_out_got): Call mips_elf_resolve_final_got_entries
590         earlier.
591
592 2013-02-12  Richard Sandiford  <rdsandiford@googlemail.com>
593
594         * elfxx-mips.c (mips_elf_lay_out_got): Count VxWorks GOT relocs
595         in g->relocs.
596
597 2013-02-12  Alan Modra  <amodra@gmail.com>
598
599         * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Provide
600         suitable definition when using generic linker hash table.
601
602 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
603
604         * elfxx-mips.c (mips_elf_count_got_entries): Delete.
605         (mips_elf_check_recreate_got, mips_elf_recreate_got): Take a
606         mips_elf_traverse_got_arg.  Count GOT entries.
607         (mips_elf_resolve_final_got_entries): Take the bfd_link_info
608         as argument.  Update after above changes.
609         (mips_elf_merge_got, mips_elf_lay_out_got): Don't call
610         mips_elf_count_got_entries.  Update the calls to
611         mips_elf_resolve_final_got_entries.
612
613 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
614
615         * elfxx-mips.c (mips_got_tls_type): New enum.
616         (mips_got_entry): Add tls_initialized.
617         (mips_elf_got_entry_hash, mips_elf_got_entry_eq, mips_tls_got_relocs)
618         (mips_elf_count_got_entry, mips_elf_initialize_tls_index): Remove
619         GOT_TLS_TYPE masks.
620         (mips_elf_reloc_tls_type, mips_tls_got_entries)
621         (mips_elf_record_global_got_symbol, mips_elf_initialize_tls_index)
622         (_bfd_mips_elf_finish_dynamic_symbol): Use GOT_TLS_NONE rather
623         than GOT_NORMAL.
624         (mips_elf_initialize_tls_slots): Replace got_offset and tls_type_p
625         arguments with a GOT entry.  Remove GOT_TLS_TYPE masks.  Use
626         tls_initialized rather than GOT_TLS_DONE.
627         (mips_tls_got_index): Delete.
628         (mips_elf_local_got_index, mips_elf_global_got_index): Use
629         mips_elf_initialize_tls_slots rather than mips_tls_got_index.
630         (mips_elf_record_got_entry): Initialize tls_initialized.
631
632 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
633
634         * elfxx-mips.c (mips_got_entry): Remove tls_ldm_offset.
635         (mips_elf_link_hash_entry): Remove tls_ie_type, tls_gd_type,
636         tls_ie_got_offset and tls_gd_got_offset.
637         (mips_elf_link_hash_newfunc): Remove initialization.
638         (mips_elf_create_got_info): Likewise.
639         (mips_elf_count_local_got_entries, mips_elf_count_global_tls_entries)
640         (mips_tls_single_got_index): Delete.
641         (mips_elf_local_got_index): Always use the GOT entry to track
642         GOT indices.
643         (mips_elf_global_got_index): Likewise.
644         (mips_elf_create_local_got_entry): Assert that TLS entries have
645         already been allocated.
646         (mips_elf_record_global_got_symbol): Don't initialize
647         tls_ie_type or tls_gd_type.
648         (mips_elf_count_got_symbols): Only count reloc-only GOT entries here.
649         (mips_elf_initialize_tls_index): Allocate a GOT index for every TLS
650         entry.
651         (mips_elf_lay_out_got): Use mips_elf_count_got_entries to count
652         the GOT entries.
653         (_bfd_mips_elf_finish_dynamic_symbol): Assert that TLS GOT offsets
654         have been allocated.
655         (_bfd_mips_elf_copy_indirect_symbol): Remove handling of
656         tls_ie_type and tls_gd_type.
657
658 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
659
660         * elfxx-mips.c (mips_elf_create_local_got_entry): Tidy.  Avoid
661         aliasing violation.  Check for htab allocation failures.
662
663 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
664
665         * elfxx-mips.c (mips_elf_primary_global_got_index): New function,
666         split out from...
667         (mips_elf_global_got_index): ...here.  Reorder arguments so that
668         the output bfd and info come first.
669         (mips_elf_calculate_relocation): Update the call to
670         mips_elf_global_got_index accordingly.
671         (_bfd_mips_elf_finish_dynamic_symbol): Use
672         mips_elf_primary_global_got_index rather than
673         mips_elf_global_got_index.
674         (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
675
676 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
677
678         * elfxx-mips.c (mips_got_entry): Update comments.
679         (mips_elf_multi_got_entry_eq): Rename to...
680         (mips_elf_got_entry_eq): ...this, deleting the old definition.
681         (mips_elf_create_got_info): Remove master_got_p argument.
682         Always use mips_elf_got_entry_eq.
683         (mips_elf_bfd_got, mips_elf_multi_got, mips_elf_create_got_section):
684         Update calls accordingly.
685
686 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
687
688         * elfxx-mips.c (mips_got_info): Remove bfd2got.
689         (mips_elf_bfd2got_hash): Delete.
690         (mips_elf_got_per_bfd_arg): Remove bfd2got.
691         (mips_elf_replace_bfd_got, mips_elf_count_got_entries): New functions.
692         (mips_elf_global_got_index, mips_elf_create_local_got_entry): Use
693         g->next to test for the multigot case.  Use mips_elf_bfd_got rather
694         than mips_elf_got_for_ibfd.
695         (mips_elf_bfd2got_entry_hash, mips_elf_bfd2got_entry_eq)
696         (mips_elf_got_for_ibfd, mips_elf_get_got_for_bfd): Delete.
697         (mips_elf_make_got_per_bfd): Replace with...
698         (mips_elf_add_got_entry): ...this new function.
699         (mips_elf_make_got_pages_per_bfd): Replace with...
700         (mips_elf_add_got_page_entry): ...this new function.
701         (mips_elf_merge_got_with): Replace bfd2got argument with separate
702         bfd and GOT arguments.  Use mips_elf_add_got_entry and
703         mips_elf_add_got_page_entry instead of mips_elf_make_got_per_bfd
704         and mips_elf_make_got_pages_per_bfd.  Use mips_elf_replace_bfd_got
705         to set the BFD's GOT and free the old table.
706         (mips_elf_merge_got): Replace bfd2got argument with separate
707         bfd and GOT arguments.  Apply mips_elf_resolve_final_got_entries.
708         Use mips_elf_count_got_entries to count the number of entries in
709         each GOT.  Update the calls to mips_elf_merge_got_with.
710         (mips_elf_adjust_gp): Use g->next to test for the multigot case.
711         Use mips_elf_bfd_got rather than mips_elf_got_for_ibfd.
712         (mips_elf_multi_got): Don't create the bfd2got hash table.
713         Replace hash table traversal with a walk over the input bfds,
714         updating the call to mips_elf_merge_got.  Use mips_elf_replace_bfd_got
715         to set the output bfd's GOT.
716         (mips_elf_lay_out_got): Rename "sub" to "ibfd".  Record that all
717         bfds use the master GOT in the single-GOT case.
718         (_bfd_mips_elf_finish_dynamic_sections): Use mips_elf_bfd_got
719         rather than mips_elf_got_for_ibfd.
720
721 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
722
723         * elfxx-mips.c (mips_elf_obj_tdata): Add a got field.
724         (mips_elf_bfd_got, mips_elf_record_got_entry): New functions.
725         (mips_elf_record_global_got_symbol): Update the hash entry before
726         adding the mips_got_entry.  Use mips_elf_record_got_entry to do
727         the latter.
728         (mips_elf_record_local_got_symbol): Use mips_elf_record_got_entry.
729         (mips_elf_record_got_page_entry): Record the entry in both the
730         master and bfd GOTs.
731
732 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
733
734         * elfxx-mips.c (mips_elf_recreate_got): Don't change the entry;
735         create another one if necessary.
736         (mips_elf_set_gotidx): New function.
737         (mips_elf_set_global_gotidx): Use it.
738         (mips_elf_initialize_tls_index): Likewise.  Take a
739         mips_elf_traverse_got_arg as argument.
740         (mips_elf_lay_out_got): Update use of mips_elf_initialize_tls_index.
741         (mips_elf_multi_got): Likewise.  Cope with error returns from
742         mips_elf_set_global_gotidx.
743
744 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
745
746         * elfxx-mips.c (mips_got_info): Add relocs field.
747         (mips_elf_set_global_got_offset_arg, mips_elf_count_tls_arg): Replace
748         with...
749         (mips_elf_traverse_got_arg): ...this new structure.
750         (mips_elf_count_local_tls_relocs): Delete.
751         (mips_elf_count_global_tls_relocs): Likewise.
752         (mips_elf_count_got_entry): New function.
753         (mips_elf_count_local_got_entries): Likewise.
754         (mips_elf_count_global_tls_entries): Take a mips_elf_traverse_got_arg
755         rather than a mips_elf_count_tls_arg.  Count both relocs and entries.
756         (mips_elf_record_local_got_symbol): Don't count got entries here.
757         (mips_elf_make_got_per_bfd): Use mips_elf_count_got_entry.
758         (mips_elf_set_global_got_offset): Split into...
759         (mips_elf_set_global_got_area, mips_elf_set_global_gotidx): ...these
760         new functions.  Take a mips_elf_traverse_got_arg rather than a
761         mips_elf_set_global_got_offset_arg.  Don't count TLS relocs here.
762         Use g->relocs to record the number of relocs needed for global GOT
763         entries.
764         (mips_elf_multi_got): Use mips_elf_traverse_got_arg rather than
765         mips_elf_set_global_got_offset_arg.  Use the relocs field to count
766         relocations.  Update for above function split.
767         (mips_elf_lay_out_got): Use mips_elf_count_local_got_entries
768         to count both the number of GOT entries and the number of TLS
769         relocs required by local entries.  Likewise
770         mips_elf_count_global_tls_entries and global entries.
771         Remove uses of mips_elf_count_local_tls_relocs and
772         mips_elf_count_global_tls_relocs.
773
774 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
775
776         * elfxx-mips.c (mips_got_entry): Update comment above tls_type entry
777         to say that each structure represents only one type of TLS reference.
778         (GOT_TLS_TYPE): New define.
779         (mips_elf_link_hash_entry): Temporarily split tls_type and
780         tls_got_offset into two variables each.
781         (mips_elf_link_hash_newfunc): Update accordingly.
782         (mips_elf_got_entry_eq, mips_elf_got_entry_hash)
783         (mips_elf_multi_got_entry_eq): Require the tls_type to be the same.
784         (mips_elf_reloc_tls_type, mips_tls_got_entries): New functions.
785         (mips_tls_got_relocs): Use a switch statement.
786         (mips_elf_count_global_tls_entries): Handle the new hash entry fields.
787         (mips_elf_initialize_tls_slots): Use a switch statement.  Avoid
788         local "offset" variable.
789         (mips_tls_got_index): Remove r_type argument and assert.  Remove
790         code that handled entries with two TLS types; always use the
791         original got_index instead.
792         (mips_tls_single_got_index): New function.
793         (mips_elf_local_got_index): Use entry->tls_type to check for
794         TLS entries.  Use mips_tls_single_got_index.  Update call to
795         mips_tls_got_index.
796         (mips_elf_global_got_index): Use mips_elf_reloc_tls_type.
797         Use p->tls_type to check for TLS entries.  Update call to
798         mips_tls_got_index.  Use mips_tls_single_got_index.
799         (mips_elf_create_local_got_entry): Use mips_elf_reloc_tls_type.
800         Use entry.tls_type to check for TLS entries.
801         (mips_elf_record_global_got_symbol): Replace tls_flag argument
802         with r_type argument.  Use mips_elf_reloc_tls_type.
803         Set up the new hash entry fields.
804         (mips_elf_record_local_got_symbol): Replace tls_flag argument
805         with r_type argument.  Use mips_elf_reloc_tls_type and
806         mips_tls_got_entries.  Remove code that handled entries
807         with multiple TLS types.
808         (mips_elf_make_got_per_bfd): Use mips_tls_got_entries.
809         (mips_elf_initialize_tls_index): Handle new hash entry fields.
810         Use equality rather than masks when checking for specific TLS types.
811         Use mips_tls_got_entries.  Remove code that handled entries
812         with multiple TLS types.
813         (mips_elf_calculate_relocation): Use TLS_RELOC_P instead of
814         testing the hash table entry.
815         (_bfd_mips_elf_check_relocs): Update calls to
816         mips_elf_record_global_got_symbol and mips_elf_record_local_got_symbol.
817         (_bfd_mips_elf_finish_dynamic_symbol): Don't check h->type.
818         (_bfd_mips_elf_copy_indirect_symbol): Handle new hash entry fields.
819
820 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
821
822         * elfxx-mips.c (mips_elf_multi_got_entry_hash): Rename to...
823         (mips_elf_got_entry_hash): ...this, deleting the old version.
824         (mips_elf_create_got_info): Use mips_elf_got_entry_hash for
825         both types of GOT.
826
827 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
828
829         * elfxx-mips.c (mips_elf_create_got_info): New function.
830         (mips_elf_get_got_for_bfd, mips_elf_multi_got): Use it.
831         (mips_elf_create_got_section): Likewise.
832
833 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
834
835         * elfxx-mips.c (mips_elf_record_local_got_symbol): Always set
836         gotidx to -1.
837
838 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
839
840         * elfxx-mips.c (mips_elf_multi_got): Simplify size calculation.
841
842 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
843
844         * elfxx-mips.c (mips_got_info): Move global_gotsym to...
845         (mips_elf_link_hash_table): ...here.  Update rest of file accordingly.
846
847 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
848
849         * elfxx-mips.c (mips_elf_count_global_tls_entries)
850         (mips_elf_count_global_tls_relocs): Don't count indirect or
851         warning symbols.
852         (mips_elf_multi_got, mips_elf_lay_out_got): Assert that the right
853         number of TLS entries were allocated.
854
855 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
856
857         * elfxx-mips.c (mips_elf_sort_hash_table_f): Remove asserts.
858
859 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
860
861         * elfxx-mips.c (mips_elf_merge_got_with): Only use arg->global_count
862         if there are TLS relocations.
863
864 2013-02-11  Richard Sandiford  <rdsandiford@googlemail.com>
865
866         * elfxx-mips.c (mips_elf_recreate_got): Remove free.
867         (mips_elf_resolve_final_got_entries): Remove bogus comment.
868
869 2013-02-11  Alan Modra  <amodra@gmail.com>
870
871         * elfcode.h (elf_checksum_contents): Free contents.
872         * elf-bfd.h (_bfd_elf_link_hash_table_free): Declare.
873         * elflink.c (_bfd_elf_link_hash_table_free): New function.
874         (elf_final_link_free): New function, extracted from..
875         (bfd_elf_final_link): ..here.  Always call
876         _bfd_elf_write_section_eh_frame_hdr.
877         * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Default to
878         _bfd_elf_link_hash_table_free.
879         * libbfd-in.h (_bfd_merge_sections_free): Declare.
880         * libbfd.h: Regenerate.
881         * merge.c (_bfd_merge_sections_free): New function.
882         * elf-eh-frame.c (_bfd_elf_write_section_eh_frame_hdr): Free
883         hdr_info->array.
884         * elf-m10300.c (elf32_mn10300_link_hash_table_free): Call
885         _bfd_elf_link_hash_table_free.
886         * elf32-arm.c (elf32_arm_link_hash_table_free): Likewise.
887         * elf32-avr.c (elf32_avr_link_hash_table_free): Likewise.
888         * elf32-hppa.c (elf32_hppa_link_hash_table_free): Likewise.
889         * elf32-i386.c (elf_i386_link_hash_table_free): Likewise.
890         * elf32-m68hc1x.c (m68hc11_elf_hash_table_free): Likewise.
891         * elf32-m68k.c (elf_m68k_link_hash_table_free): Likewise.
892         * elf32-metag.c (elf_metag_link_hash_table_free): Likewise.
893         * elf32-xgate.c (xgate_elf_bfd_link_hash_table_free): Likewise.
894         * elf64-aarch64.c (elf64_aarch64_link_hash_table_free): Likewise.
895         * elf64-ia64-vms.c (elf64_ia64_hash_table_free): Likewise.
896         * elf64-ppc.c (ppc64_elf_link_hash_table_free): Likewise.
897         * elf64-x86-64.c (elf_x86_64_link_hash_table_free): Likewise.
898         * elfnn-ia64.c (elfNN_ia64_hash_table_free): Likewise.
899         * elf32-cr16.c (elf32_cr16_link_hash_table_free): Delete.
900         (bfd_elf32_bfd_link_hash_table_free): Don't define.
901         * elf32-tic6x.c (elf32_tic6x_link_hash_table_free): Delete.
902         (bfd_elf32_bfd_link_hash_table_free): Dont' define.
903
904 2013-02-10  Alan Modra  <amodra@gmail.com>
905
906         * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_zmalloc.
907         * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
908         * m68klinux.c (linux_link_hash_table_create): Likewise.
909         * sparclinux.c (linux_link_hash_table_create): Likewise.
910         * sunos.c (sunos_link_hash_table_create): Likewise.
911         * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
912         * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
913         * elf32-arm.c (elf32_arm_link_hash_table_create): Likewise.
914         * elf32-avr.c (elf32_avr_link_hash_table_create): Likewise.
915         * elf32-cr16.c (elf32_cr16_link_hash_table_create): Likewise.
916         * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
917         * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
918         * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
919         * elf32-lm32.c (lm32_elf_link_hash_table_create): Likewise.
920         * elf32-m32r.c (m32r_elf_link_hash_table_create): Likewise.
921         * elf32-m68hc1x.c (m68hc11_elf_hash_table_create): Likewise.
922         * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
923         * elf32-metag.c (elf_metag_link_hash_table_create): Likewise.
924         * elf32-nios2.c (nios2_elf32_link_hash_table_create): Likewise.
925         * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
926         * elf32-score.c (elf32_score_link_hash_table_create): Likewise.
927         * elf32-spu.c (spu_elf_link_hash_table_create): Likewise.
928         * elf32-tic6x.c (elf32_tic6x_link_hash_table_create): Likewise.
929         * elf32-vax.c (elf_vax_link_hash_table_create): Likewise.
930         * elf32-xgate.c (xgate_elf_bfd_link_hash_table_create): Likewise.
931         * elf32-xtensa.c (elf_xtensa_link_hash_table_create): Likewise.
932         * elf64-aarch64.c (elf64_aarch64_link_hash_table_create): Likewise.
933         * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
934         * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
935         * elf64-x86-64.c (elf_x86_64_link_hash_table_create): Likewise.
936         * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
937         * elflink.c (_bfd_elf_link_hash_table_create): Likewise.
938         (_bfd_elf_link_hash_table_init): Assume zero fill table on entry.
939
940 2013-02-10  Alan Modra  <amodra@gmail.com>
941
942         * i386linux.c (linux_link_hash_table_create): Allocate table
943         with bfd_zmalloc, not bfd_alloc.
944         * pdp11.c (link_hash_table_create): Allocate table with
945         bfd_malloc, not bfd_alloc.
946         * elf32-bfin.c (bfinfdpic_elf_link_hash_table_create): Allocate table
947         with bfd_zmalloc, not bfd_zalloc.
948         (bfin_link_hash_table_create): Likewise.
949         * elf32-frv.c (frvfdpic_elf_link_hash_table_create): Likewise.
950         * elf64-hppa.c (elf64_hppa_hash_table_create): Likewise.
951
952 2013-02-10  Alan Modra  <amodra@gmail.com>
953
954         PR ld/15113
955         * elf32-sh.c (sh_elf_link_hash_table_create): Use bfd_zmalloc.
956
957 2013-02-08  Markos Chandras  <markos.chandras@imgtec.com>
958
959         * elf32-metag.c: Use bfd_get_linker_section to get SEC_LINKER_CREATED
960         sections.
961         (elf_metag_adjust_dynamic_symbol): Don't error on zero size dynbss
962         symbol.
963
964 2013-02-08  Yufeng Zhang  <yufeng.zhang@arm.com>
965
966         * elf64-aarch64.c (elf64_aarch64_grok_prstatus): Change 'size' from
967         288 to 272.
968
969 2013-02-08  Alan Modra  <amodra@gmail.com>
970
971         PR binutils/15106
972         * elf-bfd.h (struct elf_obj_tdata): Add elf_find_function_cache.
973         * elf.c (elf_find_function): Revert last change.  Use new
974         tdata field rather than static vars for cache.
975
976 2013-02-07  H.J. Lu  <hongjiu.lu@intel.com>
977
978         PR ld/15107
979         * elflink.c (elf_link_output_extsym): Set STB_GNU_UNIQUE only if
980         symbol is defined in regular object.
981
982 2013-02-07  Roberto Agostino Vitillo  <ra.vitillo@gmail.com>
983
984         PR binutils/15106
985         * elf.c (elf_find_function): Don't cache if symbols change.
986
987 2013-02-07  Alan Modra  <amodra@gmail.com>
988
989         PR binutils/14873
990         * elf-attrs.c (_bfd_elf_copy_obj_attributes): Don't attempt to
991         copy attributes from or to non-ELF.
992
993 2013-02-06  H.J. Lu  <hongjiu.lu@intel.com>
994
995         * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't clear pc_count
996         for non-zero TLS symbol.
997         (elf_i386_relocate_section): Don't resolve size relocation against
998         non-zero TLS symbol.
999         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Don't clear
1000         pc_count for non-zero TLS symbol.
1001         (elf_x86_64_relocate_section): Don't resolve size relocation
1002         against non-zero TLS symbol.
1003
1004 2013-02-06  Sandra Loosemore  <sandra@codesourcery.com>
1005             Andrew Jenner <andrew@codesourcery.com>
1006
1007         Based on patches from Altera Corporation.
1008
1009         * Makefile.am (ALL_MACHINES): Add cpu-nios2.lo.
1010         (ALL_MACHINES_CFILES): Add cpu-nios2.c.
1011         (BFD_BACKENDS): Add elf32-nios2.lo.
1012         (BFD32_BACKENDS_CFILES): Add elf32-nios2.c.
1013         * Makefile.in: Regenerated.
1014         * configure.in: Add entries for bfd_elf32_bignios2_vec and
1015         bfd_elf32_littlenios2_vec.
1016         * configure: Regenerated.
1017         * config.bfd: Add cases for nios2.
1018         * archures.c (enum bfd_architecture): Add bfd_arch_nios2.
1019         (bfd_mach_nios2): Define.
1020         (bfd_nios2_arch): Declare.
1021         (bfd_archures_list): Add bfd_nios2_arch.
1022         * targets.c (bfd_elf32_bignios2_vec): Declare.
1023         (bfd_elf32_littlenios2_vec): Declare.
1024         (_bfd_target_vector): Add entries for bfd_elf32_bignios2_vec and
1025         bfd_elf32_littlenios2_vec.
1026         * elf-bfd.h (enum elf_target_id): Add NIOS2_ELF_DATA.
1027         * reloc.c (enum bfd_reloc_code_real): Add Nios II relocations.
1028         * bfd-in2.h: Regenerated.
1029         * libbfd.h: Regenerated.
1030         * cpu-nios2.c: New file.
1031         * elf32-nios2.c: New file.
1032
1033 2013-02-06  Alan Modra  <amodra@gmail.com>
1034
1035         * elf32-arm.c (elf32_arm_final_link_relocate): Only test for
1036         stubs in stub_bfd.
1037
1038 2013-02-06  Alan Modra  <amodra@gmail.com>
1039
1040         * Makefile.am (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
1041         * Makefile.in: Regenerate.
1042
1043 2013-02-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1044             Pedro Alves  <palves@redhat.com>
1045
1046         * Makefile.in (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
1047         * elf-bfd.h (elf_internal_linux_prpsinfo): New structure
1048         declaration.
1049         (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64)
1050         (elfcore_write_ppc32_linux_prpsinfo32): New declarations.
1051         * elf-linux-psinfo.h: New file.
1052         * elf.c: Include elf-linux-psinfo.h.
1053         (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64):
1054         New functions.
1055         * elf32-ppc.c: Include `elf-linux-psinfo.h'.
1056         (elf_external_ppc_linux_prpsinfo32): New structure declaration.
1057         (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): New macro.
1058         (elfcore_write_ppc_linux_prpsinfo32): New function.
1059
1060 2013-02-04  Tristan Gingold  <gingold@adacore.com>
1061
1062         * mach-o.c (bfd_mach_o_scan_start_address): Do not fail if no
1063         start address.
1064
1065 2013-02-04  Alan Modra  <amodra@gmail.com>
1066
1067         * Makefile.am (BFD64_BACKENDS): Remove elf-nacl.lo.
1068         (BFD64_BACKENDS_CFILES): Remove elf-nacl.c.
1069         * Makefile.in: Regenerate.
1070         * po/SRC-POTFILES.in: Regenerate.
1071
1072 2013-02-04  Alan Modra  <amodra@gmail.com>
1073
1074         * coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Delete.
1075         * coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Delete.
1076
1077 2013-02-01  Alan Modra  <amodra@gmail.com>
1078
1079         * elf64-ppc.c (dec_dynrel_count): Don't error when elf_gc_sweep_symbol
1080         clears def_regular.
1081
1082 2013-01-31  Tristan Gingold  <gingold@adacore.com>
1083
1084         * mach-o.c (bfd_mach_o_scan): Call bfd_mach_o_flatten_sections
1085         earlier.  Fix status checking of bfd_mach_o_scan_start_address.
1086         (bfd_mach_o_scan_start_address): Handle LC_MAIN.
1087
1088 2013-01-31  Alan Modra  <amodra@gmail.com>
1089             David S. Miller  <davem@davemloft.net>
1090
1091         PR ld/15056
1092         * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Handle implicit
1093         references to __tls_get_addr.
1094         * elf32-tilpro.c (tilepro_elf_gc_mark_hook): Likewise.  Correct
1095         vtinherit and vtentry reloc handling too.
1096         * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): As for tilepro.
1097
1098 2013-01-31  Alan Modra  <amodra@gmail.com>
1099
1100         * elf64-ppc.c (ppc_stub_name): Trim off trailing "+0".
1101
1102 2013-01-31  Alan Modra  <amodra@gmail.com>
1103
1104         * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
1105
1106 2013-01-28  Alan Modra  <amodra@gmail.com>
1107
1108         * elf64-ppc.c: Use %T to print symbols names and remove redundant
1109         "relocation" in error messages throughout file.
1110         (ppc64_elf_relocate_section): Remove sibling call error message,
1111         replace with "call lacks nop".  Specially report errors for
1112         branches to function entry points via OPD lookup and branches
1113         to stubs.  Remove NULL symbol handling now done by %T.
1114
1115 2013-01-28  Alan Modra  <amodra@gmail.com>
1116
1117         * archive.c (bfd_generic_archive_p): Return target and keep
1118         ardata on partial matches.
1119         * format.c (bfd_check_format_matches): Adjust for above
1120         change.  Remove bfd_error_file_ambiguously_recognized dead
1121         code.
1122
1123 2013-01-26  Alan Modra  <amodra@gmail.com>
1124
1125         * bfd.c (struct bfd_preserve, bfd_preserve_save, bfd_preserve_restore,
1126         bfd_preserve_finish): Move to..
1127         * format.c: ..here, splitting out..
1128         (bfd_reinit): ..this.  New function.
1129         (bfd_check_format_matches): Use bfd_preserve_save/restore to
1130         keep bfd state for a match.
1131         * elfcode.h (elf_object_p): Don't use bfd_preserve_save/restore.
1132         * elfcore.h (elf_core_file_p): Likewise.
1133         * mach-o.c (bfd_mach_o_header_p): Likewise.
1134         * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise.
1135         * xsym.c (bfd_sym_object_p): Likewise.
1136         * mmo.c (mmo_scan): Clear abfd->symcount.
1137         * opncls.c (_bfd_new_bfd): Use a smaller section hash table.
1138         * section.c (bfd_section_list_clear): Clear section_htab.count.
1139         * bfd-in2.h: Regenerate.
1140
1141 2013-01-25  Michael Schewe  <michael.schewe@gmx.net>
1142
1143         * elf32-h8300.c (elf32_h8_relax_section): When checking for a
1144         second reloc, make sure that the reloc potentially exists first.
1145
1146 2013-01-24  Nick Clifton  <nickc@redhat.com>
1147
1148         * archures.c: Add bfd_mach_v850e3v5.
1149         * bfd-in2.h: Regenerate.
1150         * cpu-v850.c: Add entries for v850e2v5 and v850e3v5.
1151         * cpu-v850_rh850.c: Likewise.
1152         * elf32-v850.c: Add support for v850e3v5 architecture.
1153
1154 2013-01-23  Markos Chandras  <markos.chandras@imgtec.com>
1155
1156         * elf32-metag.c: Error on HIADDR16/LOADDR16 in shared link.
1157
1158 2013-01-23  Leif Ekblad  <leif@rdos.net>
1159
1160         * config.bfd (x86_64-*-rdos*): Remove targ_selvecs.
1161
1162 2013-01-18  H.J. Lu  <hongjiu.lu@intel.com>
1163
1164         * elf32-i386.c (elf_i386_allocate_dynrelocs): Clear pc_count for
1165         non-zero TLS symbol.
1166         (elf_i386_relocate_section): Resolve size relocation against
1167         non-zero TLS symbol.
1168         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Clear pc_count
1169         for non-zero TLS symbol.
1170         (elf_x86_64_relocate_section): Resolve size relocation against
1171         non-zero TLS symbol.
1172
1173 2013-01-18  Mike Frysinger  <vapier@gentoo.org>
1174
1175         * elflink.c (bfd_elf_size_dynamic_sections): Only add DT_RPATH
1176         when new_dtags is false.  Only add DT_RUNPATH when new_dtags is
1177         true.
1178
1179 2013-01-17  H.J. Lu  <hongjiu.lu@intel.com>
1180
1181         * elf32-i386.c (elf_i386_check_relocs): Count size relocation as
1182         PC-relative relocation.
1183         * elf64-x86-64.c (elf_x86_64_check_relocs): Count size relocation
1184         as PC-relative relocation.
1185
1186 2013-01-16  H.J. Lu  <hongjiu.lu@intel.com>
1187
1188         * elf32-i386.c (elf_i386_check_relocs): Update R_386_SIZE32
1189         check.
1190         (elf_i386_relocate_section): Don't check TLS for R_386_SIZE32.
1191
1192         * elf64-x86-64.c (elf_x86_64_check_relocs): Update R_X86_64_SIZE32
1193         and R_X86_64_SIZE64 check.
1194         (elf_x86_64_relocate_section): Don't check TLS for R_X86_64_SIZE32
1195         nor R_X86_64_SIZE64.
1196
1197 2013-01-16  H.J. Lu  <hongjiu.lu@intel.com>
1198
1199         * bfd-in2.h: Regenerated.
1200         * libbfd.h: Likewise.
1201
1202         * elf32-i386.c (elf_howto_table): Fill R_386_SIZE32 entry.
1203         (elf_i386_reloc_type_lookup): Support BFD_RELOC_SIZE32.
1204         (elf_i386_check_relocs): Handle R_386_SIZE32.
1205         (elf_i386_gc_sweep_hook): Likewise.
1206         (elf_i386_relocate_section): Likewise.
1207
1208         * elf64-x86-64.c (x86_64_elf_howto_table): Fill R_X86_64_SIZE32
1209         and R_X86_64_SIZE64 entries.
1210         (x86_64_reloc_map): Add BFD_RELOC_SIZE32 and BFD_RELOC_SIZE64,
1211         (elf_x86_64_rtype_to_howto): Handle R_X86_64_SIZE32 for x32.
1212         (elf_x86_64_reloc_name_lookup): Likewise.
1213         (elf_x86_64_check_relocs): Handle R_X86_64_SIZE32 and
1214         R_X86_64_SIZE64.
1215         (elf_x86_64_gc_sweep_hook): Likewise.
1216         (elf_x86_64_relocate_section): Likewise.
1217
1218         * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SIZE32 and
1219         BFD_RELOC_SIZE64.
1220
1221 2013-01-15  H.J. Lu  <hongjiu.lu@intel.com>
1222
1223         * elf64-x86-64.c (R_X86_64_standard): Replace R_X86_64_IRELATIVE
1224         with R_X86_64_RELATIVE64.
1225
1226 2013-01-15  Nick Clifton  <nickc@redhat.com>
1227
1228         * elf32-msp430.c: Fix spelling typo.
1229
1230 2013-01-15  Alan Modra  <amodra@gmail.com>
1231
1232         * elf64-ppc.c (ppc64_elf_size_stubs): Default shared libs to
1233         plt-thread-safe.
1234
1235 2013-01-14  Alan Modra  <amodra@gmail.com>
1236
1237         PR binutils/14813
1238         * bfdio.c (struct bfd_iovec <bclose>): Revert 2012-11-06.
1239         (memory_bclose): Likewise.  Return 0 on success.
1240         * cache.c (cache_bclose): Likewise.
1241         * opncls.c (opncls_bclose, bfd_close): Likewise.
1242         * vms-lib.c (vms_lib_bclose): Likewise.
1243         * libbfd.h: Regenerate.
1244
1245 2013-01-13  Alan Modra  <amodra@gmail.com>
1246
1247         * elf-bfd.h (struct elf_link_hash_entry): Delete dynamic_weak.
1248         Add ref_dynamic_nonweak.
1249         * elflink.c (_bfd_elf_mark_dynamic_def_weak): Delete.
1250         (_bfd_elf_merge_symbol): Don't call above function.  Move
1251         setting of ref_dynamic_nonweak and dynamic_def earlier.  Don't
1252         clear dynamic_def.
1253         (elf_link_add_object_symbols): Delete redundant "override" test.
1254         Don't set dynamic_def here.
1255         (elf_link_output_extsym): Update.
1256
1257 2013-01-12  H.J. Lu  <hongjiu.lu@intel.com>
1258
1259         * elf32-i386.c (elf_i386_check_relocs): Set bfd errror for
1260         normal and TLS symbol access.
1261         * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
1262
1263 2013-01-12  Alan Modra  <amodra@gmail.com>
1264
1265         * elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
1266         * elf-strtab.c (_bfd_elf_strtab_refcount): New function.
1267         * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
1268
1269 2013-01-12  Alan Modra  <amodra@gmail.com>
1270
1271         PR ld/12549
1272         * elf-bfd.h (_bfd_elf_strtab_clear_refs): Declare.
1273         (_bfd_elf_strtab_clear_all_refs): Define.
1274         * elf-strtab.c (_bfd_elf_strtab_clear_refs): New function.
1275         (_bfd_elf_strtab_clear_all_refs): Delete.
1276         * elflink.c (elf_link_add_object_symbols): Clear out added
1277         strtab refs.  Correct handling of warning common symbols.
1278
1279 2013-01-10  H.J. Lu  <hongjiu.lu@intel.com>
1280
1281         * aout0.c: Remove trailing white spaces.
1282         * archive.c: Likewise.
1283         * archures.c: Likewise.
1284         * bfd-in.h: Likewise.
1285         * bfd-in2.h: Likewise.
1286         * coff-alpha.c: Likewise.
1287         * coff-i860.c: Likewise.
1288         * coff-mips.c: Likewise.
1289         * coff-ppc.c: Likewise.
1290         * coff-tic80.c: Likewise.
1291         * coff-x86_64.c: Likewise.
1292         * coff-z80.c: Likewise.
1293         * coffcode.h: Likewise.
1294         * coffgen.c: Likewise.
1295         * cofflink.c: Likewise.
1296         * compress.c: Likewise.
1297         * corefile.c: Likewise.
1298         * cpu-arm.c: Likewise.
1299         * cpu-avr.c: Likewise.
1300         * cpu-bfin.c: Likewise.
1301         * cpu-cr16.c: Likewise.
1302         * cpu-cr16c.c: Likewise.
1303         * cpu-crx.c: Likewise.
1304         * cpu-h8300.c: Likewise.
1305         * cpu-i386.c: Likewise.
1306         * cpu-lm32.c: Likewise.
1307         * cpu-m68k.c: Likewise.
1308         * cpu-moxie.c: Likewise.
1309         * cpu-msp430.c: Likewise.
1310         * cpu-sh.c: Likewise.
1311         * cpu-xc16x.c: Likewise.
1312         * dwarf2.c: Likewise.
1313         * ecofflink.c: Likewise.
1314         * ecoffswap.h: Likewise.
1315         * elf-ifunc.c: Likewise.
1316         * elf-m10300.c: Likewise.
1317         * elf-vxworks.c: Likewise.
1318         * elf32-avr.c: Likewise.
1319         * elf32-avr.h: Likewise.
1320         * elf32-cr16.c: Likewise.
1321         * elf32-cr16c.c: Likewise.
1322         * elf32-cris.c: Likewise.
1323         * elf32-crx.c: Likewise.
1324         * elf32-frv.c: Likewise.
1325         * elf32-hppa.c: Likewise.
1326         * elf32-i860.c: Likewise.
1327         * elf32-ip2k.c: Likewise.
1328         * elf32-iq2000.c: Likewise.
1329         * elf32-m32c.c: Likewise.
1330         * elf32-m68hc1x.c: Likewise.
1331         * elf32-msp430.c: Likewise.
1332         * elf32-mt.c: Likewise.
1333         * elf32-ppc.c: Likewise.
1334         * elf32-rl78.c: Likewise.
1335         * elf32-s390.c: Likewise.
1336         * elf32-score.h: Likewise.
1337         * elf32-sh-symbian.c: Likewise.
1338         * elf32-sh.c: Likewise.
1339         * elf32-spu.c: Likewise.
1340         * elf32-tic6x.c: Likewise.
1341         * elf32-v850.c: Likewise.
1342         * elf32-xc16x.c: Likewise.
1343         * elf32-xtensa.c: Likewise.
1344         * elf64-alpha.c: Likewise.
1345         * elf64-hppa.c: Likewise.
1346         * elf64-ppc.c: Likewise.
1347         * elf64-s390.c: Likewise.
1348         * elfcore.h: Likewise.
1349         * elflink.c: Likewise.
1350         * elfxx-mips.c: Likewise.
1351         * elfxx-sparc.c: Likewise.
1352         * elfxx-tilegx.c: Likewise.
1353         * ieee.c: Likewise.
1354         * libcoff.h: Likewise.
1355         * libpei.h: Likewise.
1356         * libxcoff.h: Likewise.
1357         * linker.c: Likewise.
1358         * mach-o-i386.c: Likewise.
1359         * mach-o-target.c: Likewise.
1360         * mach-o.c: Likewise.
1361         * mach-o.h: Likewise.
1362         * mmo.c: Likewise.
1363         * opncls.c: Likewise.
1364         * pdp11.c: Likewise.
1365         * pe-x86_64.c: Likewise.
1366         * peXXigen.c: Likewise.
1367         * pef-traceback.h: Likewise.
1368         * pei-x86_64.c: Likewise.
1369         * peicode.h: Likewise.
1370         * plugin.c: Likewise.
1371         * reloc.c: Likewise.
1372         * riscix.c: Likewise.
1373         * section.c: Likewise.
1374         * som.c: Likewise.
1375         * syms.c: Likewise.
1376         * tekhex.c: Likewise.
1377         * ticoff.h: Likewise.
1378         * vaxbsd.c: Likewise.
1379         * xcofflink.c: Likewise.
1380         * xtensa-isa.c: Likewise.
1381
1382 2013-01-10  Will Newton <will.newton@imgtec.com>
1383
1384         * Makefile.am: Add Meta.
1385         * Makefile.in: Regenerate.
1386         * archures.c (bfd_mach_metag): New.
1387         * bfd-in2.h: Regenerate.
1388         * config.bfd: Add Meta.
1389         * configure: Regenerate.
1390         * configure.in: Add Meta.
1391         * cpu-metag.c: New file.
1392         * elf-bfd.h: Add Meta.
1393         * elf32-metag.c: New file.
1394         * elf32-metag.h: New file.
1395         * libbfd.h: Regenerate.
1396         * reloc.c: Add Meta relocations.
1397         * targets.c: Add Meta.
1398
1399 2013-01-08  Yufeng Zhang  <yufeng.zhang@arm.com>
1400
1401         * elf-bfd.h (elfcore_write_aarch_tls): Add prototype.
1402         (elfcore_write_aarch_hw_break): Likewise.
1403         (elfcore_write_aarch_hw_watch): Likewise.
1404         * elf.c (elfcore_grok_aarch_tls): New function.
1405         (elfcore_grok_aarch_hw_break): Likewise.
1406         (elfcore_grok_aarch_hw_watch): Likewise.
1407         (elfcore_grok_note): Call the new functions to handle the
1408         corresponding notes.
1409         (elfcore_write_aarch_tls): New function.
1410         (elfcore_write_aarch_hw_break): Likewise.
1411         (elfcore_write_aarch_hw_watch): Likewise.
1412         (elfcore_write_register_note): Call the new functions to handle the
1413         corresponding pseudo sections.
1414
1415 2013-01-07  Tom Tromey  <tromey@redhat.com>
1416
1417         * section.c (_bfd_std_section): Rename from std_section.
1418         (bfd_com_section_ptr, bfd_und_section_ptr, bfd_abs_section_ptr)
1419         (STD_SECTION): Update.
1420         * bfd-in2.h: Rebuild.
1421
1422 2013-01-04  Juergen Urban <JuergenUrban@gmx.de>
1423
1424         * archures.c (bfd_mach_mips5900): Define.
1425         * bfd-in2.h: Regenerate.
1426         * config.bfd: Add mips64-ps2-elf and mips-ps2-elf targets.
1427         * cpu-mips.c: Add support for MIPS r5900.
1428         * elfxx-mips.c: Add support for MIPS r5900 (extension of r4000).
1429
1430 2013-01-03  Nickolai Zeldovich  <nickolai@csail.mit.edu>
1431             Nick Clifton  <nickc@redhat.com>
1432
1433         * elflink.c (get_value): Prevent the use of an undefined shift
1434         operation.  Add sanity checks.
1435
1436 2013-01-02  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
1437
1438         * config.bfd (cr16*-*-uclinux*): New target support.
1439
1440
1441 For older changes see ChangeLog-2012
1442 \f
1443 Copyright (C) 2013 Free Software Foundation, Inc.
1444
1445 Copying and distribution of this file, with or without modification,
1446 are permitted in any medium without royalty provided the copyright
1447 notice and this notice are preserved.
1448
1449 Local Variables:
1450 mode: change-log
1451 left-margin: 8
1452 fill-column: 74
1453 version-control: never
1454 End: