Import patches from the master branch which prevent seg-faults when parsing
[platform/upstream/binutils.git] / bfd / ChangeLog
1 2014-10-28  Nick Clifton  <nickc@redhat.com>
2
3         * Apply trunk patches:
4
5         2014-10-28  Andreas Schwab  <schwab@suse.de>
6                     Nick Clifton  <nickc@redhat.com>
7         PR binutils/17510
8         * srec.c (srec_bad_byte): Increase size of buf to allow for
9         negative values.
10         (srec_scan): Use an unsigned char buffer to hold header bytes.
11
12         2014-10-27  Nick Clifton  <nickc@redhat.com>
13         PR binutils/17512
14         * elf.c (bfd_section_from_shdr): Detect and warn about ELF
15         binaries with a group of sections linked by the string table
16         indicies.
17         * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Handle corrupt binaries
18         with an invalid value for NumberOfRvaAndSizes.
19         (pe_print_edata): Detect out of range rvas and entry counts for
20         the Export Address table, Name Pointer table and Ordinal table.
21
22         PR binutils/17510
23         * elf.c (setup_group): Improve handling of corrupt group
24         sections.
25
26 2014-10-28  Alan Modra  <amodra@gmail.com>
27
28         Apply trunk patches
29         2014-10-21  Alan Modra  <amodra@gmail.com>
30         * elf64-ppc.c (ppc64_elf_tls_optimize): Ignore relocs against toc
31         entries that aren't a multiple of 8 rather than failing assertion.
32
33         2014-10-21  Alan Modra  <amodra@gmail.com>
34         * elf64-ppc.c (ppc64_elf_size_stubs): Add gcc-4.9 libgomp functions
35         to thread_starter.
36
37         2014-10-18  Alan Modra  <amodra@gmail.com>
38         * elf64-ppc.c (ppc64_elf_add_symbol_hook): If function code
39         section for function symbols defined in .opd is discarded, let
40         the symbol appear to be undefined.
41         (opd_entry_value): Ensure the result section is that for the
42         function code section in the same object as the OPD entry.
43
44         2014-10-16  Alan Modra  <amodra@gmail.com>
45         PR 17492
46         * elf32-arm.c (elf32_arm_add_symbol_hook): Only set has_gnu_symbols
47         on ELF output bfd.
48         * elf32-i386.c (elf_i386_add_symbol_hook): Likewise.
49         * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
50         * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
51         * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
52         * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
53         * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
54         * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise.
55         * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
56         * elf-s390-common.c (elf_s390_add_symbol_hook): Likewise.  Handle
57         STB_GNU_UNIQUE too.
58
59         2014-10-16  Alan Modra  <amodra@gmail.com>
60         * elf64-ppc.c (ppc64_elf_before_check_relocs): Do .opd processing
61         even when output is not ppc64 ELF.  Remove redundant tests on
62         type of input bfd.
63
64         2014-10-15  Alan Modra  <amodra@gmail.com>
65         PR 17481
66         * aoutx.h (NAME (aout, find_nearest_line)): Add "discriminator_ptr"
67         param, group "section" and "offset" params.  Zero discriminator.
68         * bfd.c (bfd_find_nearest_line): Implement with new
69         _bfd_find_nearest_line.
70         (bfd_find_nearest_line_discriminator): Likewise.
71         * coff-i386.c (_bfd_generic_find_nearest_line_discriminator): Don't
72         define.
73         * coff-rs6000.c (xcoff_find_nearest_line,
74         xcoff_find_nearest_line_discriminator): Delete.
75         (_bfd_xcoff_find_nearest_line): Don't define.
76         (_bfd_xcoff_find_nearest_line): Define as coff_find_nearest_line.
77         * coff-x86_64.c (_bfd_generic_find_nearest_line_discriminator): Don't
78         define.
79         * coff64-rs6000.c (rs6000_xcoff64_vec, rs6000_xcoff64_aix_vec): Adjust.
80         * coffgen.c (coff_find_nearest_line_with_names): Reorder params,
81         adjust _bfd_dwarf2_find_nearest_line call.
82         (coff_find_nearest_line): Add "discriminator_ptr" param, reorder
83         others.  Set discriminator.  Adjust call.
84         (coff_find_nearest_line_discriminator): Delete.
85         * dwarf1.c (_bfd_dwarf1_find_nearest_line): Reorder params.
86         * dwarf2.c (find_line): Rename to..
87         (_bfd_dwarf2_find_nearest_line): ..this, reordering params.
88         Simplify setting of do_line.  Delete old function.
89         (_bfd_dwarf2_find_line): Delete.
90         * ecoff.c (_bfd_ecoff_find_nearest_line): Reorder params, add
91         discriminator_ptr and set it.
92         * elf-bfd.h (_bfd_elf_find_nearest_line): Update prototype.
93         (_bfd_elf_find_nearest_line_discriminator): Delete.
94         (_bfd_elf_find_line_discriminator): Delete.
95         (_bfd_generic_find_nearest_line_discriminator): Don't define.
96         * elf.c (elf_find_function): Reorder params.
97         (_bfd_elf_find_nearest_line): Reorder params, add discriminator_ptr.
98         Adjust calls.
99         (_bfd_elf_find_nearest_line_discriminator): Delete.
100         (_bfd_elf_find_line): Adjust call.
101         * elf32-arm.c (arm_elf_find_function): Reorder params.
102         (elf32_arm_find_nearest_line): Reorder params, add discriminator_ptr.
103         Adjust calls.
104         * elf64-alpha.c (elf64_alpha_find_nearest_line): Similarly.
105         * elfnn-aarch64.c (aarch64_elf_find_function): Reorder params.
106         (elfNN_aarch64_find_nearest_line): Reorder params, add
107         discriminator_ptr.  Adjust calls.
108         * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Similarly.
109         * elfxx-mips.h (_bfd_mips_elf_find_nearest_line): Update prototype.
110         * libaout.h (NAME (aout, find_nearest_line)): Update prototype.
111         * libbfd-in.h (_bfd_nosymbols_find_nearest_line): Update.
112         (_bfd_dwarf1_find_nearest_line): Likewise.
113         (_bfd_dwarf2_find_nearest_line): Likewise.
114         (_bfd_dwarf2_find_line): Delete.
115         (_bfd_generic_find_nearest_line_discriminator): Delete.
116         * libbfd.c (_bfd_generic_find_nearest_line_discriminator): Delete.
117         * libcoff-in.h (coff_find_nearest_line): Update prototype.
118         (coff_find_nearest_line_discriminator): Delete.
119         (coff_find_nearest_line_with_names): Update prototype.
120         * libecoff.h (_bfd_ecoff_find_nearest_line): Update prototype.
121         * mach-o.c (bfd_mach_o_find_nearest_line): Reorder params, add
122         discriminator_ptr.  Adjust calls.
123         * mach-o.h (bfd_mach_o_find_nearest_line): Update prototype.
124         * pdp11.c (NAME (aout, find_nearest_line)): Reorder params, add
125         discriminator_ptr and set.
126         * som.c (som_find_nearest_line): Similarly.
127         * targets.c (BFD_JUMP_TABLE_SYMBOLS): Delete entry for
128         _bfd_find_nearest_line_discriminator.
129         (struct bfd_target <_bfd_find_nearest_line>): Adjust prototype.
130         (struct bfd_target <_bfd_find_nearest_line_discriminator>): Delete.
131         * vms-alpha.c (_bfd_vms_find_nearest_dst_line): Rename to..
132         (_bfd_vms_find_nearest_line): ..this.  Reorder params, add
133         "discriminator" and set.
134         (_bfd_vms_find_nearest_line_discriminator): Delete.
135         (_bfd_generic_find_nearest_line_discriminator): Don't define.
136         (alpha_vms_find_nearest_line): Update define.
137         * bfd-in2.h: Regenerate.
138         * libbfd.h: Regenerate.
139         * libcoff.h: Regenerate.
140
141         2014-10-15  Alan Modra  <amodra@gmail.com>
142         * targets.c (BFD_JUMP_TABLE_SYMBOLS): Use NAME##_find_line.
143         * aout-adobe.c (aout_32_find_line): Define.
144         (aout_32_bfd_make_debug_symbol, aout_32_bfd_reloc_type_lookup,
145         aout_32_bfd_reloc_name_lookup): Define using _bfd_nosymbols define.
146         * aout-target.h (MY_find_line): Define.
147         * aout-tic30.c (MY_find_line): Define.
148         * binary.c (binary_find_line): Define.
149         * bout.c (aout_32_find_line): Define.
150         * coff-rs6000.c (_bfd_xcoff_find_line): Define.
151         * coff64-rs6000.c (rs6000_xcoff64_vec): Use coff_find_line.
152         (rs6000_xcoff64_aix_vec): Likewise.
153         * elf-bfd.h (_bfd_generic_find_line): Don't define.
154         * elfxx-target.h (bfd_elfNN_find_line): Define.
155         * i386msdos.c (msdos_find_line): Define.
156         * i386os9k.c (aout_32_find_line): Define.
157         * ieee.c (ieee_find_nearest_line, ieee_find_inliner_info): Delete func.
158         (ieee_find_nearest_line, ieee_find_line,
159         ieee_find_inliner_info): Define.
160         * ihex.c (ihex_find_line): Define.
161         * libbfd-in.h (_bfd_nosymbols_find_line): Define.
162         (_bfd_generic_find_line): Don't define.
163         * libbfd.c (_bfd_generic_find_line): Delete.
164         * libcoff-in.h (coff_find_line): Define.
165         * libecoff.h (_bfd_ecoff_find_line): Define.
166         * mach-o.h (bfd_mach_o_find_line): Define.
167         * mmo.c (mmo_find_line): Define.
168         * nlm-target.h (nlm_find_line): Define.
169         * oasys.c (oasys_find_nearest_line, oasys_find_inliner_info): Delete.
170         (oasys_find_nearest_line, oasys_find_line,
171         oasys_find_inliner_info): Define.
172         * pef.c (bfd_pef_find_line): Define.
173         * plugin.c (bfd_plugin_find_line): Define.
174         * ppcboot.c (ppcboot_find_line): Define.
175         * som.c (som_find_line): Define.
176         * srec.c (srec_find_line): Define.
177         * tekhex.c (tekhex_find_line): Define.
178         * versados.c (versados_find_line): Define.
179         * vms-alpha.c (alpha_vms_find_line): Define.
180         * xsym.c (bfd_sym_find_line): Define.
181         * bfd-in2.h: Regenerate.
182         * libbfd.h: Regenerate.
183         * libcoff.h: Regenerate.
184
185 2014-10-24  Tejas Belagod  <tejas.belagod@arm.com>
186
187         * bfd-in.h (bfd_elf64_aarch64_set_options): Add a parameter.
188         * bfd-in2.h (bfd_elf64_aarch64_set_options): Likewise.
189         * elfnn-aarch64.c (aarch64_erratum_835769_stub): New.
190         (elf_aarch64_stub_type): Add new type
191         aarch64_stub_erratum_835769_veneer.
192         (elf_aarch64_stub_hash_entry): New fields for erratum 835769.
193         (aarch64_erratum_835769_fix): New data struct to record erratum
194         835769.
195         (elf_aarch64_link_hash_table: Global flags for 835769.
196         (aarch64_build_one_stub): Add case for 835769.
197         (aarch64_size_one_stub): Likewise.
198         (aarch64_mem_op_p, aarch64_mlxl_p,
199         aarch64_erratum_sequence,erratum_835769_scan):
200         New. Decode and scan functions for erratum 835769.
201         (elf_aarch64_create_or_find_stub_sec): New.
202         (elfNN_aarch64_size_stubs): Look for erratum 835769 and record
203         them.
204         (bfd_elfNN_aarch64_set_options: Set global flag for 835769.
205         (erratum_835769_branch_to_stub_data,
206         make_branch_to_erratum_835769_stub):New. Connect up all the
207         erratum stubs to occurances by branches.
208         (elfNN_aarch64_write_section): New hook.
209         (aarch64_map_one_stub): Output erratum stub symbol.
210         (elfNN_aarch64_size_dynamic_sections): Init mapping symbol
211         information for erratum 835769.
212         (elf_backend_write_section): Define.
213
214 2014-10-14  Tristan Gingold  <gingold@adacore.com>
215
216         * version.m4: Bump version to 2.24.90
217         * configure: Regenerate.
218
219 2014-10-14  Alan Modra  <amodra@gmail.com>
220
221         PR 17453
222         * libbfd.c (COERCE16, COERCE32, COERCE64): Use unsigned types.
223         (EIGHT_GAZILLION): Delete.
224
225 2014-10-13  Alan Modra  <amodra@gmail.com>
226
227         PR 17467
228         * elf-eh-frame.c (ENSURE_NO_RELOCS): Don't stop at first NONE reloc.
229         (_bfd_elf_parse_eh_frame): When relocatable output, don't set
230         flags enabling conversion of CIEs and FDEs to use relative encoding.
231         (find_merged_cie): Similarly.
232         (_bfd_elf_write_section_eh_frame): Don't edit FDEs when
233         relocatable, except for CIE pointer.
234         * elflink.c (bfd_elf_reloc_symbol_deleted_p): Return true for
235         relocs against symbols in dropped comdat group sections.
236         (bfd_elf_discard_info): Do some eh_frame optimisation when
237         relocatable.
238
239 2014-10-09  Jose E. Marchesi  <jose.marchesi@oracle.com>
240
241         * elfxx-sparc.c (_bfd_sparc_elf_merge_private_bfd_data): Handle
242         the hwcaps2 object attribute.
243
244 2014-10-04  Alan Modra  <amodra@gmail.com>
245
246         PR 17447
247         * elf-bfd.h (struct eh_cie_fde): Comment re NULL u.fde.cie_inf.
248         * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Mark zero address
249         range FDEs for discarding.
250         (vma_compare): Sort on range after address.
251         (_bfd_elf_gc_mark_fdes): Test for NULL u.fde.cie_inf.
252         (_bfd_elf_discard_section_eh_frame): Likewise.  Write "FDE" in
253         error message rather than "fde".
254         (_bfd_elf_write_section_eh_frame_hdr): Write "PC" and "FDE" in
255         error message.
256
257 2014-09-29  H.J. Lu  <hongjiu.lu@intel.com>
258
259         PR ld/17440
260         * elf32-i386.c (elf_i386_fbsd_post_process_headers): Fix build
261         for OLD_FREEBSD_ABI_LABEL.
262
263 2014-09-24  Markus Trippelsdorf  <markus@trippelsdorf.de>
264
265         PR 17422
266         * plugin.c (try_claim): New function. Moved from
267         bfd_plugin_object_p.
268         (try_load_plugin): Pass through bfd. Add test.
269         (load_plugin): Pass through bfd.
270         (bfd_plugin_object_p): Move logic to try_claim.
271
272 2014-09-23  Sterling Augustine  <augustine.sterling@gmail.com>
273
274         * elf32-xtensa.c (is_resolvable_asm_expansion): for cross-section
275         call relaxation use furthermost addresses where call source and
276         destination can be to check whether it's in the range of a direct
277         call.
278
279 2014-09-22  Alan Modra  <amodra@gmail.com>
280
281         * elf-eh-frame.c (_bfd_elf_write_section_eh_frame_hdr): Don't return
282         false for overflow or overlapping FDEs.  Give more detail in
283         error messages.
284
285 2014-09-22  Andrew Bennett  <andrew.bennett@imgtec.com>
286
287         * elfxx-mips.c (mips_elf_calculate_relocation): Don't sign extend
288         the addend if relocations are RELA.
289
290 2014-09-22  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
291
292         * elf32-nds32.c (nds32_elf_ex9_build_hash_table,
293         nds32_elf_ex9_relocation_check): Synchronize the argument type.
294
295 2014-09-19  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
296
297         * elf32-s390.c: Don't replace R_390_TLS_LE32 with R_390_TLS_TPOFF
298         for PIE.
299         * elf64-s390.c: Don't replace R_390_TLS_LE64 with R_390_TLS_TPOFF
300         for PIE.
301
302 2014-09-18  Jan Kratochvil  <jan.kratochvil@redhat.com>
303
304         PR gdb/17407
305         * elfcode.h (bfd_from_remote_memory): Use SIZE for HIGH_OFFSET.
306
307 2014-09-16  Terry Guo  <terry.guo@arm.com>
308
309         * elf32-arm.c (elf32_arm_merge_eabi_attributes): Return false if
310         failed to merge.
311
312 2014-09-16  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
313
314         * bfd-in2.h: Regenerate.
315         * elf32-nds32.c (nds32_elf_mkobject): Hook bfd_elf32_mkobject.
316         (nds32_elf_relax_section): Code refactoring.
317         (nds32_elf_relax_longcall1, nds32_elf_relax_longcall2,
318         nds32_elf_relax_longcall3, nds32_elf_relax_longcall4,
319         nds32_elf_relax_longcall5, nds32_elf_relax_longcall6): Relax call
320         pattern. The first three is moved from nds32_elf_relax_section,
321         and the last three is new function.
322         (nds32_elf_relax_longjump1, nds32_elf_relax_longjump2,
323         nds32_elf_relax_longjump3, nds32_elf_relax_longjump4,
324         nds32_elf_relax_longjump5, nds32_elf_relax_longjump6,
325         nds32_elf_relax_longjump7): Relax condition branch pattern. The first
326         three is moved from nds32_elf_relax_section, and the last four
327         is new function.
328         (nds32_elf_relax_loadstore, nds32_elf_relax_lo12): Relax load-store
329         pattern and address setting pattern.
330         (nds32_elf_relax_piclo12, nds32_elf_relax_ptr,
331         nds32_elf_relax_pltgot_suff, nds32_elf_relax_got_suff,
332         nds32_elf_relax_gotoff_suff): Relax pic pattern.
333         (nds32_elf_relax_letlslo12, nds32_elf_relax_letlsadd,
334         nds32_elf_relax_letlsls): Relax TLS pattern.
335         (nds32_relax_adjust_label): Adjust alignment and nop.
336         (nds32_elf_pick_relax): Choose relaxation optimization.
337         (nds32_elf_get_relocated_section_contents): New hook.
338         (nds32_elf_order_insn_times, nds32_elf_ex9_build_itable): Release ex9
339         table 234th entry.
340         * elf32-nds32.h: Declare.
341         * libbfd.h: Regenerate.
342         * reloc.c: Add nds32 new relocations.
343
344 2014-09-15  Chen Gang  <gang.chen.5i5j@gmail.com>
345
346         * dwarf2.c (find_abstract_instance_name): Use 'form' instead of
347         'name' for the typo issue, which related with commit
348         60d77146a249ae9b51d7ce98930cdbedb2cfa352.
349
350 2014-09-15  Andrew Bennett  <andrew.bennett@imgtec.com>
351             Matthew Fortune  <matthew.fortune@imgtec.com>
352
353         * aoutx.h (NAME (aout, machine_type)): Add mips32r6 and mips64r6.
354         * archures.c (bfd_architecture): Likewise.
355         * bfd-in2.h (bfd_architecture): Likewise.
356         (bfd_reloc_code_real): Add relocs BFD_RELOC_MIPS_21_PCREL_S2,
357         BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3 and
358         BFD_RELOC_MIPS_19_PCREL_S2.
359         * cpu-mips.c (arch_info_struct): Add mips32r6 and mips64r6.
360         * elf32-mips.c: Define relocs R_MIPS_PC21_S2, R_MIPS_PC26_S2
361         R_MIPS_PC18_S3, R_MIPS_PC19_S2, R_MIPS_PCHI16 and R_MIPS_PCLO16.
362         (mips_reloc_map): Add entries for BFD_RELOC_MIPS_21_PCREL_S2,
363         BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3,
364         BFD_RELOC_MIPS_19_PCREL_S2, BFD_RELOC_HI16_S_PCREL and
365         BFD_RELOC_LO16_PCREL.
366         * elf64-mips.c: Define REL, and RELA relocations R_MIPS_PC21_S2,
367         R_MIPS_PC26_S2, R_MIPS_PC18_S3, R_MIPS_PC19_S2, R_MIPS_PCHI16
368         and R_MIPS_PCLO16.
369         (mips_reloc_map): Add entries for BFD_RELOC_MIPS_21_PCREL_S2,
370         BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3,
371         BFD_RELOC_MIPS_19_PCREL_S2, BFD_RELOC_HI16_S_PCREL and
372         BFD_RELOC_LO16_PCREL.
373         * elfn32-mips.c: Likewise.
374         * elfxx-mips.c (MIPSR6_P): New define.
375         (mipsr6_exec_plt_entry): New array.
376         (hi16_reloc_p): Add support for R_MIPS_PCHI16.
377         (lo16_reloc_p): Add support for R_MIPS_PCLO16.
378         (aligned_pcrel_reloc_p): New function.
379         (mips_elf_relocation_needs_la25_stub): Add support for relocs:
380         R_MIPS_PC21_S2 and R_MIPS_PC26_S2.
381         (mips_elf_calculate_relocation): Add support for relocs:
382         R_MIPS_PC21_S2, R_MIPS_PC26_S2, R_MIPS_PC18_S3, R_MIPS_PC19_S2,
383         R_MIPS_PCHI16 and R_MIPS_PCLO16.
384         (_bfd_elf_mips_mach): Add support for mips32r6 and mips64r6.
385         (mips_elf_add_lo16_rel_addend): Add support for R_MIPS_PCHI16.
386         (_bfd_mips_elf_check_relocs): Add support for relocs:
387         R_MIPS_PC21_S2 and R_MIPS_PC26_S2.
388         (_bfd_mips_elf_relocate_section): Add a check for unaligned
389         pc relative relocs.
390         (_bfd_mips_elf_finish_dynamic_symbol): Add support for MIPS r6
391         plt entry.
392         (mips_set_isa_flags): Add support for mips32r6 and mips64r6.
393         (_bfd_mips_elf_print_private_bfd_data): Likewise.
394         (mips_32bit_flags_p): Add support for mips32r6.
395         * libbfd.h (bfd_reloc_code_real_names): Add entries for
396         BFD_RELOC_MIPS_21_PCREL_S2, BFD_RELOC_MIPS_26_PCREL_S2,
397         BFD_RELOC_MIPS_18_PCREL_S3 and BFD_RELOC_MIPS_19_PCREL_S2.
398         * reloc.c: Document relocs BFD_RELOC_MIPS_21_PCREL_S2,
399         BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3 and
400         BFD_RELOC_MIPS_19_PCREL_S2.
401         * config.bfd: Add mips*-img-elf* target triple.
402
403 2014-09-12  Andrew Bennett  <andrew.bennett@imgtec.com>
404
405         * config.bfd: Add mips*-img-elf* target triple.
406
407 2014-09-12  Alan Modra  <amodra@gmail.com>
408
409         * elf-bfd.h (struct eh_frame_array_ent): Add "range".
410         * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Stash address
411         range of FDEs to hdr_info->array.
412         (_bfd_elf_write_section_eh_frame_hdr): Report overflow in
413         .eh_frame_hdr entries, and overlapping FDEs.
414
415 2014-09-10  Alan Modra  <amodra@gmail.com>
416
417         * elf.c (assign_file_positions_except_relocs): Move section header
418         placement to..
419         (_bfd_elf_assign_file_positions_for_relocs): ..here.  Make static.
420         * elf-bfd.h (_bfd_elf_assign_file_positions_for_relocs): Delete.
421         * elflink.c (bfd_elf_final_link): Don't call above function.
422
423 2014-08-30  Alan Modra  <amodra@gmail.com>
424
425         * elf32-ppc.c (ppc_elf_relax_section): Fix off by one error.
426
427 2014-08-29  Alan Modra  <amodra@gmail.com>
428
429         * elf64-ppc.c (ppc64_elf_relocate_section): Report a different
430         error for calls via a toc adjusting stub without a nop.
431
432 2014-08-29  Alan Modra  <amodra@gmail.com>
433
434         * vms-alpha.c (alpha_vma_object_p): Don't return file_truncated
435         error.  Remove redundant bfd_set_error.
436
437 2014-08-29  Alan Modra  <amodra@gmail.com>
438
439         * srec.c (srec_scan): Revert last change.  Report an error for
440         S-records with less than the miniumum byte count.
441
442 2014-08-28  H.J. Lu  <hongjiu.lu@intel.com>
443
444         * srec.c (srec_scan): Return error for 0 size.
445
446 2014-08-27  H.J. Lu  <hongjiu.lu@intel.com>
447
448         PR ld/17306
449         * elf32-i386.c (elf_i386_convert_mov_to_lea): Use bfd_is_abs_section
450         to check discarded input section.
451         * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
452
453 2014-08-27  H.J. Lu  <hongjiu.lu@intel.com>
454
455         PR ld/17313
456         * elflink.c (elf_link_add_object_symbols): Don't attach dynamic
457         sections to input from ld --just-symbols.
458
459 2014-08-26  DJ Delorie  <dj@redhat.com>
460
461         * elf32-rl78.c (rl78_elf_relax_section): Disambiguate test for
462         relaxation type.
463
464 2014-08-26  Jiong Wang  <jiong.wang@arm.com>
465
466         * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Initialize non_got_ref
467         properly for MOVW_G0/1/2_NC and MOVW_G3.  Reject them when linking
468         shared library.
469         (elfNN_aarch64_gc_sweep_hook): Add check on these relocs.
470
471 2014-08-26  Nick Clifton  <nickc@redhat.com>
472
473         * config.bfd: Fix typo in or1knd selection.
474
475 2014-08-22  Kai Tietz  <ktietz@redhat.com>
476
477         PR binutils/11822
478         * coffcode.h (coff_compute_section_file_positions): Keep
479         FileAlignment valid as set.
480
481 2014-08-22  Alan Modra  <amodra@gmail.com>
482
483         * elf-eh-frame.c (struct cie): Delete "output_sec" field.
484         (cie_eq, cie_compute_hash): Use output_section from cie_inf instead.
485
486 2014-08-22  Alan Modra  <amodra@gmail.com>
487
488         * elf-bfd.h (struct eh_frame_hdr_info): Delete merge_cies and
489         parsed_eh_frames.
490         (_bfd_elf_begin_eh_frame_parsing): Delete.
491         (_bfd_elf_end_eh_frame_parsing): Delete.
492         * elf-eh-frame.c (_bfd_elf_begin_eh_frame_parsing): Delete.
493         (_bfd_elf_end_eh_frame_parsing): Delete.
494         (_bfd_elf_parse_eh_frame): Don't test parsed_eh_frame.  Test
495         !info->relocatable in place of merge_cies.
496         * elflink.c (bfd_elf_gc_sections, bfd_elf_discard_info): Adjust.
497         * elf64-ppc.c (glink_eh_frame_cie): Pad to multiple of 8.
498         (ppc64_elf_size_stubs): Likewise pad stub FDE.
499         (ppc64_elf_build_stubs): Move code setting glink .eh_frame to..
500         (ppc64_elf_size_stubs): ..here and..
501         (ppc64_elf_finish_dynamic_sections): ..here.
502
503 2014-08-21  Maciej W. Rozycki  <macro@codesourcery.com>
504
505         * elf64-ppc.h (ppc64_elf_set_toc): Fix indentation.
506
507 2014-08-21  Tony Wang  <tony.wang@arm.com>
508
509         * elf32-arm.c (elf32_arm_final_link_relocate): Implement
510         the veneer routine for R_ARM_THM_JUMP19.
511         (arm_type_of_stub): Add conditional clause for R_ARM_THM_JUMP19
512         (elf32_arm_size_stub): Ditto.
513
514 2014-08-20  Roland McGrath  <mcgrathr@google.com>
515
516         PR ld/17277
517         * elf32-arm.c (elf32_arm_check_relocs): Increment P->pc_count for
518         all reloc types with pc_relative set in the howto, not just for
519         R_ARM_REL32 and R_ARM_REL32_NOI.
520         (allocate_dynrelocs_for_symbol): Update comment.
521         (elf32_arm_gc_sweep_hook): For all reloc types with pc_relative
522         set in the howto, set call_reloc_p and may_need_local_target_p but
523         not may_become_dynamic_p; not only for R_ARM_REL32 and R_ARM_REL32_NOI.
524         (elf32_arm_check_relocs): Likewise.
525
526 2014-08-20  Will Newton  <will.newton@linaro.org>
527
528         * config.bfd: Default armeb-*-eabi* to big endian.
529
530 2014-08-19  Alan Modra  <amodra@gmail.com>
531
532         * configure: Regenerate.
533
534 2014-08-18  Alan Modra  <amodra@gmail.com>
535
536         * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't attempt to
537         use dynrelocs for ifunc.
538         * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Similarly.
539
540 2014-08-18  Alan Modra  <amodra@gmail.com>
541
542         PR 17287
543         * elflink.c (on_needed_list): Only consider libraries that have
544         been loaded.
545
546 2014-08-18  Alan Modra  <amodra@gmail.com>
547
548         * elflink.c (bfd_elf_discard_info): Return int error status.
549         * stabs.c (_bfd_discard_section_stabs): Comment typo fix.
550         * bfd-in.h (bfd_elf_discard_info): Updata prototype.
551         * bfd-in2.h: Regenerate.
552
553 2014-08-14  Alan Modra  <amodra@gmail.com>
554
555         * peXXigen.c (pe_print_reloc): Protect against access past end
556         of .reloc section.
557
558 2014-08-14  Alan Modra  <amodra@gmail.com>
559
560         PR 16563
561         * elflink.c (bfd_elf_discard_info): Process .eh_frame and .stab
562         in the order they are mapped to output sections.
563
564 2014-08-14  Alan Modra  <amodra@gmail.com>
565
566         * configure.ac: Delete redundant plugin related checks.
567         * configure: Regenerate.
568
569 2014-08-13  Stefan Kristiansson  <stefan.kristiansson@saunalahti.fi>
570
571         * elf32-or1k.c (or1k_elf_relocate_section, or1k_elf_check_relocs,
572         allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL
573         and SYMBOLIC_BIND.
574
575 2014-08-12  Alan Modra  <amodra@gmail.com>
576
577         * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Only call "notice"
578         here when not calling the generic add_symbol function.  Formatting.
579         Correct handling of indirect symbols.  Update notice call.
580         * elflink.c (_bfd_elf_notice_as_needed): Update notice call.
581         * linker.c (_bfd_generic_link_add_one_symbol): Create indirect
582         symbols early.  Update notice call.  Add comments regarding weak
583         symbols vs. indirect.
584
585 2014-08-12  Alan Modra  <amodra@gmail.com>
586
587         PR ld/16746
588         * linker.c (_bfd_generic_link_add_one_symbol <WARN>): Handle
589         !lto_plugin_active.
590
591 2014-08-07  Chen Gang <gang.chen.5i5j@gmail.com>
592
593         * coff-ppc.c (coff_ppc_relocate_section): Ensure local symbols are
594         zero terminated.
595
596 2014-08-07  H.J. Lu  <hongjiu.lu@intel.com>
597             Alan Modra  <amodra@gmail.com>
598
599         PR ld/16746
600         * linker.c (_bfd_generic_link_add_one_symbol): Don't issue a
601         warning for references in LTO IR to warning symbols.
602
603 2014-08-07  Alan Modra  <amodra@gmail.com>
604
605         * linker.c (WARN, CWARN): Collapse these states to WARN.
606         (_bfd_generic_link_add_one_symbol): Use old CWARN case for
607         new WARN.
608
609 2014-08-05  Doug Evans  <dje@google.com>
610
611         * bfd-in2.h: Regenerate.
612         * libcoff.h: Regenerate.
613
614 2014-08-05  Maciej W. Rozycki  <macro@codesourcery.com>
615
616         * elfxx-mips.c (_bfd_mips_elf_discard_info): Set section's
617         rawsize if changing size.
618
619 2014-08-05  Alan Modra  <amodra@gmail.com>
620
621         PR ld/17226
622         * elfxx-sparc.c (_bfd_sparc_elf_gc_sweep_hook): Typo fix.
623
624 2014-08-05  Alan Modra  <amodra@gmail.com>
625
626         * linker.c (generic_link_check_archive_element): Move handling
627         of command link -u symbols with a common symbol def to the
628         code handling non-common symbols so that archive element symbols
629         are loaded.  Use generic_link_add_object_symbols.
630
631 2014-08-05  Alan Modra  <amodra@gmail.com>
632
633         PR 13557
634         * linker.c (struct archive_list, struct archive_hash_entry,
635         struct archive_hash_table, archive_hash_newfunc,
636         archive_hash_table_init, archive_hash_lookup, archive_hash_allocate,
637         archive_hash_table_free): Delete.
638         (_bfd_generic_link_add_archive_symbols): Add h and name params to
639         checkfn.  Rewrite using a straight-forward scan over archive map.
640         (generic_link_check_archive_element_no_collect,
641         generic_link_check_archive_element_collect,
642         generic_link_check_archive_element): Add h and name params.
643         * aoutx.h (aout_link_check_archive_element): Likewise.
644         * pdp11.c (aout_link_check_archive_element): Likewise.
645         * xcofflink.c (xcoff_link_check_archive_element): Likewise.
646         * cofflink.c (coff_link_check_archive_element): Likewise.  Don't
647         scan symbols, simply add archive element whenever h is undefined.
648         (coff_link_check_ar_symbols): Delete.
649         * ecoff.c (read_ext_syms_and_strs): Delete.
650         (reread_ext_syms_and_strs): Delete.
651         (ecoff_link_check_archive_element): Add h and name param.  Don't
652         scan symbols, simply add based on h.  Use ecoff_link_add_object_symbols.
653         * elflink.c (elf_link_is_defined_archive_symbol): Don't test
654         archive_pass.
655         (elf_link_add_archive_symbols): Delete "defined" array, merge
656         functionality into "included".  Make "included" a char array.  Don't
657         set or test archive_pass.
658         * libbfd-in.h (_bfd_generic_link_add_archive_symbols): Update.
659         * libbfd.h: Regenerate.
660
661 2014-08-01  Takashi Yoshii  <yoshii.takashi@renesas.com>
662
663         PR 10373
664         * elf32-sh.c (sh_elf_relax_section): Add jmp to bra relaxing.
665
666 2014-07-29  Matthew Fortune  <matthew.fortune@imgtec.com>
667
668         * elfxx-mips.c (ABI_O32_P, MIPS_ELF_ABIFLAGS_SECTION_NAME_P): New macro.
669         (mips_elf_obj_tdata): Add abiflags and abiflags_valid fields.
670         (bfd_mips_elf_swap_abiflags_v0_in): New function.
671         (bfd_mips_elf_swap_abiflags_v0_out): Likewise.
672         (_bfd_mips_elf_section_from_shdr): Handle SHT_MIPS_ABIFLAGS.
673         (_bfd_mips_elf_fake_sections): Likewise.
674         (_bfd_mips_elf_always_size_sections): Handle .MIPS.abiflags.
675         (_bfd_mips_elf_additional_program_headers): Account for new
676         PT_MIPS_ABIFLAGS program header.
677         (_bfd_mips_elf_modify_segment_map): Create PT_MIPS_ABIFLAGS segment and
678         associate with .MIPS.abiflags.
679         (_bfd_mips_elf_gc_mark_extra_sections): New function.
680         (bfd_mips_isa_ext, update_mips_abiflags_isa): New static function.
681         (infer_mips_abiflags): Likewise.
682         (_bfd_mips_elf_final_link): Handle .MIPS.abiflags.
683         (mips_32bit_flags_p): Moved higher.
684         (mips_elf_merge_obj_attributes, _bfd_mips_fp_abi_string): Error
685         checking for FP ABIs.
686         (_bfd_mips_elf_merge_private_bfd_data): Restructure and add abiflags
687         checks.  Check EF_MIPS_FP64 flag consistency.
688         (print_mips_ases, print_mips_isa_ext): New static function.
689         (print_mips_fp_abi_value, get_mips_reg_size): Likewise.
690         (_bfd_mips_elf_print_private_bfd_data): Display abiflags data.
691         (_bfd_mips_post_process_headers): Set EI_ABIVERSION = 3 for
692         Val_GNU_MIPS_ABI_FP_64 or Val_GNU_MIPS_ABI_FP_64A.
693         * elfxx-mips.h (_bfd_mips_elf_gc_mark_extra_sections): New prototype.
694         * elf32-mips.c (elf_backend_gc_mark_extra_sections): Implement.
695         * elfn32-mips.c (elf_backend_gc_mark_extra_sections): Implement.
696         * elf64-mips.c (elf_backend_gc_mark_extra_sections): Implement.
697
698 2014-07-28  Alan Modra  <amodra@gmail.com>
699
700         PR 13227
701         * archive.c (_bfd_compute_and_write_armap): Warn on adding
702         __gnu_lto_slim to armap.
703         * linker.c (_bfd_generic_link_add_one_symbol): Warn on adding
704         __gnu_lto_slim to linker hash table.
705
706 2014-07-27  Anthony Green  <green@moxielogic.org>
707
708         * config.bfd: Add moxie-*-moxiebox*.
709
710 2014-07-21  Joel Sherrill  <joel.sherrill@oarcorp.com>
711
712         Add or reactivate or1k-*-rtems*
713         * config.bfd (or1k-*-rtems*): Reactivate.
714
715 2014-07-16  H.J. Lu  <hongjiu.lu@intel.com>
716
717         * elf32-i386.c (elf_i386_plt_sym_val): Match PLT entry only for
718         ELFOSABI_GNU input.
719         * elf64-x86-64.c (elf_x86_64_plt_sym_val): Likewise.
720         (elf_x86_64_plt_sym_val_offset_plt_bnd): Likewise.
721
722 2014-07-16  H.J. Lu  <hongjiu.lu@intel.com>
723
724         PR binutils/17154
725         * elf32-i386.c (elf_i386_plt_sym_val): Only match R_*_JUMP_SLOT
726         and R_*_IRELATIVE relocation offset with PLT entry.
727         * elf64-x86-64.c (elf_x86_64_plt_sym_val): Likewise.
728         (elf_x86_64_plt_sym_val_offset_plt_bnd): New.
729         (elf_x86_64_get_synthetic_symtab): Use it.
730
731 2014-07-15  H.J. Lu  <hongjiu.lu@intel.com>
732
733         PR ld/17057
734         * elf32-i386.c (elf_i386_compute_jump_table_size): Replace
735         next_tls_desc_index with elf.srelplt->reloc_count.
736
737 2014-07-15  Alan Modra  <amodra@gmail.com>
738
739         * cache.c (cache_bread_1): Don't return -1 when fread returns
740         a positive value.
741
742 2014-07-15  Alan Modra  <amodra@gmail.com>
743
744         * elflink.c (elf_merge_st_other): Update comments.  Simplify
745         visibility handling.  Make isym const.  Move code modifying
746         isym->st_other for --exclude-libs to..
747         (elf_link_add_object_symbols): ..here.
748
749 2014-07-11  Maks Naumov  <maksqwe1@ukr.net>
750
751         PR 17141
752         * elf.c (_bfd_elf_strtab_add): Check strtab name for failure.
753
754 2014-07-08  Nick Clifton  <nickc@redhat.com>
755
756         PR ld/17110
757         * elf32-sh.c (sh_elf_osec_to_segment): Do not look for output
758         segments in input bfds.
759
760 2014-07-08  Will Newton  <will.newton@linaro.org>
761
762         * elf32-arm.c (ELF_MAXPAGESIZE): Increase the default
763         value to 64kB and remove custom setting for NaCl.
764
765 2014-07-08  Alan Modra  <amodra@gmail.com>
766
767         * elflink.c (_bfd_elf_copy_link_hash_symbol_type): Copy st_other
768         bits from source to dest.
769         * linker.c (_bfd_generic_copy_link_hash_symbol_type): Update comment.
770         * targets.c (struct bfd_target <_bfd_copy_link_hash_symbol_type>):
771         Likewise.
772         * bfd-in2.h: Regenerate.
773
774 2014-07-08  Jiong Wang  <jiong.wang@arm.com>
775
776         * elfnn-aarch64.c (elf_backend_rela_normal): Set to 1.
777         (elfNN_aarch64_relocate_section): Remove duplicated addend adjustment
778         when info->relocatable be true.
779
780 2014-07-07  Barney Stratford  <barney_stratford@fastmail.fm>
781
782         * elf32-avr.c: Handle R_AVR_PORT5 and R_AVR_PORT6.
783         * reloc.c: Add BFD_RELOC_AVR_PORT5 and BFD_RELOC_AVR_PORT6.
784         * bfd-in2.h: Regenerate.
785         * libbfd.h: Regenerate.
786
787 2014-07-04  Alan Modra  <amodra@gmail.com>
788
789         * Makefile.am: Update "configure.in" comments.
790         * PORTING: Likewise.
791         * aoutx.h: Likewise.
792         * configure.host: Likewise.
793         * doc/bfdint.texi: Likewise.
794         * targets.c: Likewise.
795         * warning.m4: Likewise.
796         * Makefile.in: Regenerate.
797
798 2014-07-04  Alan Modra  <amodra@gmail.com>
799
800         * configure.ac: Rename from configure.in.
801         * Makefile.in: Regenerate.
802         * config.in: Regenerate.
803         * doc/Makefile.in: Regenerate.
804
805 2014-07-04  Alan Modra  <amodra@gmail.com>
806
807         * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Remove configure.in.
808         * Makefile.in: Regenerate.
809
810 2014-07-04  Alan Modra  <amodra@gmail.com>
811
812         * version.m4: New file.
813         * configure.in: Include version.m4.
814         (AC_INIT): Update.
815         * Makefile.am (RELEASE): Delete.
816         (bfdver.h): Depend on development.sh, use instead of RELEASE.
817         * Makefile.in: Regenerate.
818         * doc/Makefile.in: Regenerate.
819
820 2014-07-02  Alan Modra  <amodra@gmail.com>
821
822         * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Clear
823         pointer_equality_needed when !readonly_dynrelocs.
824         * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
825
826 2014-07-02  Alan Modra  <amodra@gmail.com>
827
828         * elf32-ppc.c (ppc_elf_check_relocs): Set DF_STATIC_TLS for PIEs too.
829         * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
830
831 2014-07-01  Alan Modra  <amodra@gmail.com>
832
833         * bfd.c (struct bfd): Reorganise for better packing.  Delete
834         "ifd" field.  Make "format", "direction" and "flags" bitfields.
835         (HAS_LOAD_PAGE): Delete, renumber following flags.
836         * bfd-in2.h: Regenerate.
837         * coff-tic4x.c: Remove HAS_LOAD_PAGE from extra flags in target vecs.
838
839 2014-07-01  Alan Modra  <amodra@gmail.com>
840
841         * elf64-ppc.c (ppc_stub_type): Add ppc_stub_global_entry.
842         (struct ppc_link_hash_table): Increase size of stub_count array.
843         (build_global_entry_stubs): Emit symbol on global entry stub.
844         (ppc64_elf_build_stubs): NULL check htab->brlt.  Add global entry
845         stub stats.
846
847 2014-07-01  Alan Modra  <amodra@gmail.com>
848
849         * elf64-ppc.c (abiversion, set_abiversion): Move earlier.
850         (ppc64_elf_branch_reloc): Adjust addend for ELFv2 local offset.
851         (ppc64_elf_set_toc): Set ".TOC." symbol value when using
852         generic linker.
853         (ppc64_elf_relocate_section): Disable ELFv2 function entry
854         optimisation when --traditional-format.
855
856 2014-07-01  Barney Stratford   <barney_stratford@fastmail.fm>
857             Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
858             Pitchumani Sivanupandi  <pitchumani.s@atmel.com>
859             Soundararajan  <Sounderarajan.D@atmel.com>
860
861         * archures.c: Add avrtiny architecture for avr target.
862         * cpu-avr.c (arch_info_struct): Add avrtiny arch info.
863         * elf32-avr.c (elf_avr_howto_table): New relocation R_AVR_LDS_STS_16
864         added for 16 bit LDS/STS instruction of avrtiny arch.
865         (avr_reloc_map): Reloc R_AVR_LDS_STS_16 is mapped to
866         BFD_RELOC_AVR_LDS_STS_16.
867         (bfd_elf_avr_final_write_processing): Select machine number
868         avrtiny arch.
869         (elf32_avr_object_p): Set machine number for avrtiny arch.
870         * reloc.c: Add documentation for BFD_RELOC_AVR_LDS_STS_16 reloc.
871         * bfd-in2.h: Regenerate.
872         * libbfd.h: Regenerate.
873
874 2014-06-26  Nick Clifton  <nickc@redhat.com>
875
876         PR binutils/16949
877         * dwarf2.c (is_str_attr): New function.
878         (find_abstract_instance_name): Use it to determine when an
879         attribute has a string value.
880
881 2014-06-24  Alan Modra  <amodra@gmail.com>
882
883         * elf32-ppc.c (ppc_elf_size_dynamic_sections): Arrange to keep
884         .sdata/.sdata2 when _SDA_BASE_/_SDA2_BASE_ should be output
885         for --emit-relocs.
886
887 2014-06-21  Philippe De Muyter  <phdm@macqel.be>
888
889         * targets.c (_bfd_target_vector): Add missing #ifdef BFD64 for
890         a number of targets.
891
892 2014-06-20  Kyle McMartin <kyle@redhat.com>
893
894         * elf32-arm.c (elf32_arm_check_relocs): Set DF_STATIC_TLS when
895         emitting initial-exec relocs when not linking an executable.
896
897 2014-06-16  Will Newton  <will.newton@linaro.org>
898
899         * elf32-arm.c (elf32_arm_allocate_plt_entry): Increment
900         htab->next_tls_desc_index in the non-IPLT case.
901         Calculate GOT offset correctly for the non-IPLT case.
902         (allocate_dynrelocs_for_symbol): Don't increment
903         htab->next_tls_desc_index here.
904
905 2014-06-16  Alan Modra  <amodra@gmail.com>
906
907         * elf32-vax.c (elf_vax_size_dynamic_sections): Clear linker
908         created sections.
909
910 2014-06-13  Omair Javaid  <omair.javaid@linaro.org>
911
912         * elfxx-aarch64.c (stdarg.h): Include.
913         (string.h): Include.
914         (_bfd_aarch64_elf_grok_prstatus): Updated.
915         (_bfd_aarch64_elf_grok_psinfo): New function.
916         (_bfd_aarch64_elf_write_core_note): New function.
917         * elfxx-aarch64.h (elf_backend_grok_psinfo): Define.
918         (elf_backend_write_core_note): Define.
919
920 2014-06-13  Alan Modra  <amodra@gmail.com>
921
922         * archive.c: Include bfdlink.h.
923         (_bfd_archive_close_and_cleanup): Call linker hash_table_free.
924         * bfd.c (struct bfd): Add is_linker_output field.
925         * elf-bfd.h (_bfd_elf_link_hash_table_free): Update prototype.
926         * linker.c (_bfd_link_hash_table_init): Set up hash_table_free,
927         link.hash and is_linker_output.
928         (_bfd_generic_link_hash_table_free): Replace bfd_link_hash_table*
929         param with bfd*.  Assert is_linker_output and link.hash, and
930         clear them before exit.
931         * elf-m10300.c (elf32_mn10300_link_hash_table_free): Replace
932         bfd_link_hash_table* param with bfd*.  Hack is_linker_output
933         and link.hash so we can free two linker hash tables.
934         (elf32_mn10300_link_hash_table_create): Create static_hash_table
935         first.  Clean up on errors.  Set hash_table_free pointer.
936         * elf32-arm.c (elf32_arm_link_hash_table_free): Replace
937         bfd_link_hash_table* param with bfd*.
938         (elf32_arm_link_hash_table_create): Clean up on errors.  Set
939         hash_table_free pointer.
940         * elf32-avr.c, * elf32-hppa.c, * elf32-i386.c, * elf32-m68hc1x.c,
941         * elf32-m68k.c, * elf32-metag.c, * elf32-nios2.c, * elf32-xgate.c,
942         * elf64-ia64-vms.c, * elf64-ppc.c, * elf64-x86-64.c, * elflink.c,
943         * elfnn-aarch64.c, * elfnn-ia64.c, * elfxx-sparc.c,
944         * xcofflink.c: Similarly.
945         * simple.c (bfd_simple_get_relocated_section_contents): Save and
946         clear link.next before creating linker hash table.  Clean up on
947         errors, and restore link.next on exit.
948         * elf32-m68hc1x.h (m68hc11_elf_bfd_link_hash_table_free): Delete.
949         * elf32-xgate.h (xgate_elf_bfd_link_hash_table_free): Delete.
950         * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table_free): Delete.
951         * libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Delete.
952         * hash.c (bfd_hash_table_init_n): Free table on error.
953         * libbfd-in.h (_bfd_generic_link_hash_table_free): Update proto.
954         * bfd-in2.h: Regenerate.
955         * libbfd.h: Regenerate.
956         * libcoff.h: Regenerate.
957
958 2014-06-13  Alan Modra  <amodra@gmail.com>
959
960         PR 17047
961         * targets.c (BFD_JUMP_TABLE): Delete NAME##_bfd_link_hash_table_free.
962         (struct bfd_target <_bfd_link_hash_table_free>): Delete.
963         * bfd.c (bfd_link_hash_table_free): Don't define.
964         * aout-adobe.c, * aout-target.h, * aout-tic30.c, * binary.c, * bout.c,
965         * coff64-rs6000.c, * coffcode.h, * elf-m10300.c, * elf32-arm.c,
966         * elf32-avr.c, * elf32-hppa.c, * elf32-i386.c, * elf32-m68hc11.c,
967         * elf32-m68hc12.c, * elf32-m68k.c, * elf32-metag.c, * elf32-nios2.c,
968         * elf32-sparc.c, * elf32-xgate.c, * elf64-ia64-vms.c, * elf64-ppc.c,
969         * elf64-sparc.c, * elf64-x86-64.c, * elfnn-aarch64.c, * elfnn-ia64.c,
970         * elfxx-target.h, * i386msdos.c, * i386os9k.c, * ieee.c, * ihex.c,
971         * libbfd-in.h, * libecoff.h, * mach-o-target.c, * mmo.c,
972         * nlm-target.h, * oasys.c, * pef.c, * plugin.c, * ppcboot.c, * som.c,
973         * srec.c, * tekhex.c, * verilog.c, * versados.c, * vms-alpha.c,
974         * xsym.c: Don't define various link_hash_table_free defines, and
975         remove from bfd_target vars.  Temporarily reference some of the
976         target link_hash_table_free functions to avoid warnings.
977         * bfd-in2.h: Regenerate.
978         * libbfd.h: Regenerate.
979
980 2014-06-13  Alan Modra  <amodra@gmail.com>
981
982         * elf-m10300.c, * elf32-arm.c, * elf32-avr.c, * elf32-hppa.c,
983         * elf32-i386.c, * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-metag.c,
984         * elf32-nios2.c, * elf64-ia64-vms.c, * elf64-ppc.c, * elf64-x86-64.c,
985         * elfnn-aarch64.c, * elfnn-ia64.c, * elfxx-sparc.c, * xcofflink.c:
986         Move link_hash_table_free functions before their corresponding
987         link_hash_table_create functions.
988
989 2014-06-13  Alan Modra  <amodra@gmail.com>
990
991         * bfd.c (struct bfd): Replace link_next with a union.
992         * aoutx.h, * bfd.c, * coff-ppc.c, * coff-rs6000.c, * cofflink.c,
993         * ecoff.c, * elf-m10300.c, * elf32-arm.c, * elf32-avr.c,
994         * elf32-hppa.c, * elf32-i386.c, * elf32-lm32.c, * elf32-m32c.c,
995         * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-metag.c,
996         * elf32-microblaze.c, * elf32-nds32.c, * elf32-nios2.c,
997         * elf32-or1k.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-s390.c,
998         * elf32-score.c, * elf32-score7.c, * elf32-sh.c, * elf32-spu.c,
999         * elf32-tic6x.c, * elf32-tilepro.c, * elf32-xstormy16.c,
1000         * elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c,
1001         * elf64-mmix.c, * elf64-ppc.c, * elf64-s390.c, * elf64-x86-64.c,
1002         * elflink.c, * elfnn-aarch64.c, * elfxx-mips.c, * elfxx-sparc.c,
1003         * elfxx-tilegx.c, * linker.c, * pdp11.c, * peXXigen.c, * simple.c,
1004         * sunos.c, * vms-alpha.c, * xcofflink.c: Update for above.
1005         * bfd-in2.h: Regenerate.
1006
1007 2014-06-11  Alan Modra  <amodra@gmail.com>
1008
1009         * linker.c (unwrap_hash_lookup): Add missing parens.
1010
1011 2014-06-11  Kai Tietz  <ktietz@redhat.com>
1012
1013         * libcoff-in.h (coff_tdata): Make relocbase member unsigned.
1014         * libcoff.h: Regenerated.
1015
1016 2014-06-10  Alan Modra  <amodra@gmail.com>
1017
1018         PR ld/16910
1019         * linker.c (unwrap_hash_lookup): New function.
1020         * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): Call unwrap_hash_lookup.
1021         * elf32-i370.c (i370_elf_relocate_section): Likewise.
1022         * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1023         * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1024         * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1025         * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1026         * elf32-spu.c (spu_elf_relocate_section): Likewise.
1027         * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
1028
1029 2014-06-07  Alan Modra  <amodra@gmail.com>
1030
1031         * elf32-ppc.c (ppc_elf_relocate_section): Treat field of cmpli
1032         insn as a bitfield; Use complain_overflow_bitfield.
1033         * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1034
1035 2014-06-05  Joel Brobecker  <brobecker@adacore.com>
1036
1037         * development.sh: New file.
1038         * warning.m4 (AM_BINUTILS_WARNINGS): Source bfd/development.sh.
1039         Make -Werror the default with GCC only if DEVELOPMENT is true.
1040         * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add
1041         $(srcdir)/development.sh.
1042         * Makefile.in, configure: Regenerate.
1043
1044 2014-06-04  Will Newton  <will.newton@linaro.org>
1045
1046         * elfnn-aarch64.c (tpoff_base): Make test of tls_sec
1047         being non-NULL into an assert.
1048         (elfNN_aarch64_tls_relax): Remove unused code.
1049
1050 2014-06-03  DJ Delorie  <dj@redhat.com>
1051
1052         * elf32-rx.c (rx_table_map): Use BFD_VMA_FMT for portability.
1053
1054 2014-06-03  Nick Clifton  <nickc@redhat.com>
1055
1056         PR ld/16807
1057         * peXXigen.c (rsrc_process_section): Page align the new contents
1058         befgore writing out.
1059
1060 2014-06-03  Alan Modra  <amodra@gmail.com>
1061
1062         * elf64-ppc.c (ADDIS_R12_R2): Define.
1063         (build_plt_stub): Support fusion on ELFv2 stub.
1064         (ppc_build_one_stub): Likewise for plt branch stubs.
1065
1066 2014-05-28  Alan Modra  <amodra@gmail.com>
1067
1068         * elf32-rx.c (rx_table_map): Delete set but not used variables.
1069
1070 2014-05-28  Tristan Gingold  <gingold@adacore.com>
1071
1072         * dwarf2.c (lookup_address_in_function_table): Add best_fit_len
1073         to keep the length of the best fit range.
1074         (lookup_symbol_in_function_table, info_hash_lookup_funcinfo):
1075         Likewise.
1076
1077 2014-05-27  DJ Delorie  <dj@redhat.com>
1078
1079         * elf32-rx.c (get_symbol_value_maybe): New.
1080         (rx_elf_relocate_section): If we find a reloc against
1081         $tableentry$default$<name>, redirect it to the appropriate
1082         $tableentry$<n>$.
1083         (RX_Table_Info): New.
1084         (rx_table_find): New.  Check all tables and SEC_KEEP all sections
1085         with table parts in them.
1086         (rx_check_directives): New.
1087         (rx_table_map_2): New.
1088         (rx_table_map): New.
1089         (rx_additional_link_map_text): New.  Called to dump tables to the
1090         map file.
1091         * elf32-rx.h: New.
1092
1093 2014-05-20  DJ Delorie  <dj@redhat.com>
1094
1095         * elf32-msp430.c (msp430_elf_relax_adjust_locals): Avoid overflow.
1096
1097 2014-05-20  Alan Modra  <amodra@gmail.com>
1098
1099         PR 16952
1100         * elf32-ppc.c (ppc_elf_create_linker_section): Move earlier.
1101         Remove redundant setting of htab->elf.dynobj.  Don't align.
1102         Define .sdata symbols using _bfd_elf_define_linkage_sym.
1103         (ppc_elf_create_glink): Call ppc_elf_create_linker_section.
1104         (create_sdata_sym): Delete.
1105         (elf_allocate_pointer_linker_section): Rename from
1106         elf_create_pointer_linker_section.  Align section.
1107         (ppc_elf_check_relocs): Don't call ppc_elf_creat_linker_section
1108         directly here, or create_sdata_sym.  Set ref_regular on _SDA_BASE_
1109         and _SDA2_BASE_.
1110         (ppc_elf_size_dynamic_sections): Remove ATTRIBUTE_UNUSED on param.
1111         Remove unnecessary tests on _SDA_BASE_ sym.
1112         (maybe_strip_sdasym, ppc_elf_maybe_strip_sdata_syms): New functions.
1113         (ppc_elf_relocate_section): Tighten SDA reloc symbol section checks.
1114         * elf32-ppc.h (ppc_elf_set_sdata_syms): Delete.
1115         (ppc_elf_maybe_strip_sdata_syms): Declare.
1116
1117 2014-05-16  Ryan Mansfield  <rmansfield@qnx.com>
1118
1119         * config.bfd: Move QNX target_cflags from arm-*-netbsd* to arm-*-nto*.
1120
1121 2014-05-16  Jon Turney  <jon.turney@dronecode.org.uk>
1122
1123         * peXXigen.c (pe_print_debugdata): Don't interpret debug directory
1124         in a section with no contents.
1125         (is_vma_in_section, find_section_by_vma): New functions.
1126         (_bfd_XX_bfd_copy_private_bfd_data_common): Recalculate file
1127         offsets in the debug directory.
1128         (_bfd_XXi_slurp_codeview_record, _bfd_XXi_write_codeview_record):
1129         Byte-swap GUID from little-endian to big-endian order for
1130         consistent and conventional display.
1131
1132 2014-05-16  Kaushik Phata  <Kaushik.Phatak@kpit.com>
1133
1134         * elf32-rl78.c (rl78_elf_merge_private_bfd_data): Complain if
1135         64-bit doubles objects mix with 32-bit doubles objects.
1136         (rl78_elf_print_private_bfd_data): Describe 64-bit doubles flag.
1137
1138 2014-05-08  Hans-Peter Nilsson  <hp@bitrange.com>
1139
1140         * mmo.c: Update URLs in documentation comments.
1141
1142 2014-05-02  Volodymyr Arbatov  <arbatov@cadence.com>
1143             David Weatherford  <weath@cadence.com>
1144             Max Filippov  <jcmvbkbc@gmail.com>
1145
1146         * elf32-xtensa.c (relax_section): treat R_XTENSA_DIFF* relocations as
1147         signed.
1148
1149 2014-05-07  Andreas Tobler  <andreast@fgznet.ch>
1150
1151         * config.bfd: Add proper arm config for *-*-freebsd*.
1152
1153 2014-05-07  Andrew Bennett  <andrew.bennett@imgtec.com>
1154
1155         * aoutx.h (NAME (aout, machine_type)): Add mips32r3, mips64r3,
1156         mips32r5 and mips64r5.
1157         * archures.c (bfd_architecture): Likewise.
1158         * bfd-in2.h (bfd_architecture): Likewise.
1159         * cpu-mips.c (arch_info_struct): Likewise.
1160         * elfxx-mips.c (mips_set_isa_flags): Likewise.
1161
1162 2014-05-06  Richard Sandiford  <rdsandiford@googlemail.com>
1163
1164         * elfxx-mips.h (elfxx-mips.h): Declare.
1165         * elfxx-mips.c (mips_elf_merge_obj_attributes): Use it to report
1166         Tag_GNU_MIPS_ABI_FP mismatches.
1167         (_bfd_mips_fp_abi_string): New function.
1168
1169 2014-05-02  Alan Modra  <amodra@gmail.com>
1170
1171         * targets.c: Sort bfd_target vectors somewhat alphabetically.
1172         * configure.in: Likewise.
1173         * configure: Regenerate.
1174
1175 2014-05-02  Alan Modra  <amodra@gmail.com>
1176
1177         * aix386-core.c, * aout-adobe.c, * aout-arm.c, * aout-ns32k.c,
1178         * aout-sparcle.c, * aout0.c, * aoutx.h, * armnetbsd.c, * bout.c,
1179         * cf-i386lynx.c, * cf-sparclynx.c, * cisco-core.c, * coff-alpha.c,
1180         * coff-apollo.c, * coff-arm.c, * coff-aux.c, * coff-go32.c,
1181         * coff-h8300.c, * coff-h8500.c, * coff-i386.c, * coff-i860.c,
1182         * coff-i960.c, * coff-m68k.c, * coff-m88k.c, * coff-mips.c,
1183         * coff-rs6000.c, * coff-sh.c, * coff-sparc.c, * coff-stgo32.c,
1184         * coff-svm68k.c, * coff-tic80.c, * coff-u68k.c, * coff-w65.c,
1185         * coff-we32k.c, * coff-x86_64.c, * coff-z80.c, * coff-z8k.c,
1186         * coff64-rs6000.c, * config.bfd, * configure.com, * configure.in,
1187         * demo64.c, * elf-m10200.c, * elf-m10300.c, * elf32-am33lin.c,
1188         * elf32-arc.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c,
1189         * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c,
1190         * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
1191         * elf32-fr30.c, * elf32-frv.c, * elf32-gen.c, * elf32-h8300.c,
1192         * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c, * elf32-i860.c,
1193         * elf32-i960.c, * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c,
1194         * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
1195         * elf32-m68k.c, * elf32-m88k.c, * elf32-mcore.c, * elf32-mep.c,
1196         * elf32-metag.c, * elf32-microblaze.c, * elf32-mips.c, * elf32-moxie.c,
1197         * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, * elf32-nios2.c,
1198         * elf32-or1k.c, * elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c,
1199         * elf32-rx.c, * elf32-s390.c, * elf32-score.c, * elf32-sh-symbian.c,
1200         * elf32-sh.c, * elf32-sh64.c, * elf32-sparc.c, * elf32-spu.c,
1201         * elf32-tic6x.c, * elf32-tilegx.c, * elf32-tilepro.c, * elf32-v850.c,
1202         * elf32-vax.c, * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
1203         * elf32-xtensa.c, * elf64-alpha.c, * elf64-gen.c, * elf64-hppa.c,
1204         * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c, * elf64-ppc.c,
1205         * elf64-s390.c, * elf64-sh64.c, * elf64-sparc.c, * elf64-tilegx.c,
1206         * elf64-x86-64.c, * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c,
1207         * epoc-pe-arm.c, * epoc-pei-arm.c, * hp300bsd.c, * hp300hpux.c,
1208         * hppabsd-core.c, * hpux-core.c, * i386aout.c, * i386bsd.c,
1209         * i386dynix.c, * i386freebsd.c, * i386linux.c, * i386lynx.c,
1210         * i386mach3.c, * i386msdos.c, * i386netbsd.c, * i386os9k.c,
1211         * irix-core.c, * m68k4knetbsd.c, * m68klinux.c, * m68knetbsd.c,
1212         * m88kmach3.c, * m88kopenbsd.c, * mach-o-i386.c, * mach-o-x86-64.c,
1213         * makefile.vms, * mipsbsd.c, * mmo.c, * netbsd-core.c, * newsos3.c,
1214         * nlm32-alpha.c, * nlm32-i386.c, * nlm32-ppc.c, * nlm32-sparc.c,
1215         * ns32knetbsd.c, * osf-core.c, * pc532-mach.c, * pe-arm-wince.c,
1216         * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-mips.c, * pe-ppc.c,
1217         * pe-sh.c, * pe-x86_64.c, * pei-arm-wince.c, * pei-arm.c,
1218         * pei-i386.c, * pei-ia64.c, * pei-mcore.c, * pei-mips.c, * pei-ppc.c,
1219         * pei-sh.c, * pei-x86_64.c, * ppcboot.c, * ptrace-core.c, * riscix.c,
1220         * sco5-core.c, * som.c, * sparclinux.c, * sparclynx.c,
1221         * sparcnetbsd.c, * sunos.c, * targets.c, * trad-core.c,
1222         * vax1knetbsd.c, * vaxbsd.c, * vaxnetbsd.c, * versados.c,
1223         * vms-alpha.c, * vms-lib.c: Rename bfd targets to
1224         <cpu>_<format>_<other>_<endian>_vec.  Adjust associated MY macros
1225         on aout targets.
1226         * configure: Regenerate.
1227
1228 2014-05-01  Hans-Peter Nilsson  <hp@bitrange.com>
1229
1230         * mmo.c (mmo File layout documentation): Add note about low bits
1231         of address.
1232         (mmo_write_chunk): When handling data remainder, assert that
1233         previous remaining data is flushed.
1234         (mmo_write_loc_chunk): Only look for trailing and leading zeros
1235         when dealing with an aligned VMA and for aligned lengths.  Don't skip
1236         the last 32-bit-word of zeros.
1237         (mmo_write_loc_chunk): Emit an error if the VMA is not aligned.
1238         (mmo_scan) <case LOP_QUOTE>: Move re-alignment of vma before
1239         emitting data, not after updating it.
1240         <case LOP_LOC>: Call mmo_decide_section with aligned vma.
1241
1242 2014-04-30  Nick Clifton  <nickc@redhat.com>
1243
1244         * compress.c (bfd_is_section_compressed): When checking the
1245         .debug_str section, also check the fifth byte in the section is
1246         not part of a string.
1247
1248 2014-04-30  Alan Modra  <amodra@gmail.com>
1249
1250         * elf-eh-frame.c (struct cie.personality): Replace val with sym.
1251         (find_merged_cie): Identify personality functions by (bfd_id,index)
1252         pair when a local sym is used.
1253
1254 2014-04-29  Christian Svensson  <blue@cmd.nu>
1255
1256         * elf32-or1k.c: Fix a bug where non-TLS relocations would be forced
1257         into .rela.got if it contained TLS relocations as well.
1258
1259 2014-04-28  Nick Clifton  <nickc@redhat.com>
1260
1261         PR ld/16821
1262         * peXXigen.c (_bfd_XXi_swap_sym_out): Rework fix to avoid compile
1263         time warning.
1264
1265 2014-04-26  Alan Modra  <amodra@gmail.com>
1266
1267         * po/SRC-POTFILES.in: Regenerate.
1268         * configure: Regenerate.
1269
1270 2014-04-25  Nick Clifton  <nickc@redhat.com>
1271
1272         PR ld/16821
1273         * peXXigen.c (_bfd_XXi_swap_sym_out): Another fix for building on
1274         a 342-bit host.  This time for older versions of gcc.
1275
1276 2014-04-24  Nick Clifton  <nickc@redhat.com>
1277
1278         * peXXigen.c (rsrc_print_section): Fix compile time warning for
1279         32-bit hosts.
1280
1281 2014-04-24  Alan Modra  <amodra@gmail.com>
1282
1283         PR 16867
1284         * dwarf2.c: Formatting.
1285         (struct dwarf2_debug): Make adjusted_section_count signed.
1286         (unset_sections): Make i signed.
1287         (set_debug_vma): New function.
1288         (place_sections): Handle separate debug object file.  Set VMA
1289         on debug sections, even if they have an output section.  Also
1290         set VMA on zero size sections, and non-load but alloc sections.
1291         Set adjusted_section_count to -1 when no section adjustment.
1292         Malloc adjusted_sections.  Don't double last_vma.  Transfer
1293         alloc section VMAs to separate debug file.
1294         (_bfd_dwarf2_cleanup_debug_info): Free adjusted_sections.
1295         (_bfd_dwarf2_slurp_debug_info): Add do_place parameter.  Drop
1296         test on symbols being the same before using old stash.  Read
1297         and use separate debug file symbols.  Call place_sections.
1298         (find_line): Don't call place_sections here.
1299         * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Update proto.
1300         * libbfd.h: Regenerate.
1301         * mach-o.c (bfd_mach_o_find_nearest_line): Adjust
1302         _bfd_dwarf2_slurp_debug_info call.
1303         * simple.c (simple_save_output_info): Clarify comment.
1304
1305 2014-04-24  Nick Clifton  <nickc@redhat.com>
1306
1307         PR ld/16807
1308         * peXXigen.c (struct rsrc_regions): New structure.
1309         (rsrc_print_resource_directory): Use new structure.  Include
1310         offset of directory in listing.
1311         (rsrc_print_resource_entry): Likewise.
1312         (rsrc_print_section): Likewise.
1313         (rsrc_count_entries): Do not increment sizeof_strings or
1314         sizeof_leaves.
1315         (rsrc_count_directory): Do not increment sizeof_tables.
1316         (rsrc_compute_region_sizes): New function.
1317         (rsrc_write_leaf): Maintain 8-byte alignment for resource data.
1318         (rsrc_process_section): Compute size of regions after merging
1319         entries.
1320
1321 2014-04-23  Alan Modra  <amodra@gmail.com>
1322
1323         PR ld/16787
1324         * dwarf2.c (struct dwarf2_debug): Add sec_vma field.
1325         (place_sections): Do not modify VMA of sections when called from
1326         linker after sections have been placed in output sections.  Short
1327         circuit single section case.
1328         (save_section_vma, section_vma_same): New functions.
1329         (_bfd_dwarf2_slurp_debug_info): Throw away stash if section VMAs
1330         change.
1331         * reloc.c (bfd_perform_relocation): Do not modify reloc addend
1332         when non-relocatable.
1333
1334 2014-04-22  Nick Clifton  <nickc@redhat.com>
1335
1336         PR ld/16821
1337         * peXXigen.c (_bfd_XXi_swap_sym_out): Fix for 32-bit hosts.
1338
1339 2014-04-22  Christian Svensson  <blue@cmd.nu>
1340
1341         * Makefile.am: Remove openrisc and or32 support.  Add support for or1k.
1342         * archures.c: Likewise.
1343         * coffcode.h: Likewise.
1344         * config.bfd: Likewise.
1345         * configure.in: Likewise.
1346         * reloc.c: Likewise.
1347         * targets.c: Likewise.
1348         * cpu-or1k.c: New file.
1349         * elf32-or1k.c: New file.
1350         * coff-or32.c: Delete.
1351         * cpu-openrisc.c: Delete.
1352         * cpu-or32.c: Delete.
1353         * elf32-openrisc.c: Delete.
1354         * elf32-or32.c: Delete.
1355         * Makefile.in: Regenerate.
1356         * bfd-in2.h: Regenerate.
1357         * configure: Regenerate.
1358         * libbfd.h: Regenerate.
1359
1360 2014-04-22  Yuanhui Zhang  <asmwarrior@gmail.com>
1361
1362         PR ld/16821
1363         * peXXigen.c (abs_finder): Fix for 32-bit host builds.
1364
1365 2014-04-22  Will Newton  <will.newton@linaro.org>
1366
1367         * elfnn-aarch64.c (elfNN_aarch64_section_flags): Remove
1368         function.  (elf_backend_section_flags): Remove define.
1369
1370 2014-04-21  Richard Henderson  <rth@redhat.com>
1371
1372         * elf64-alpha.c (elf64_alpha_size_got_sections): New may_merge
1373         parameter; honor it and disable got merging when false.
1374         (elf64_alpha_relax_got_load): Do not relax to GPREL relocs during
1375         the first pass of relaxation.
1376         (elf64_alpha_relax_with_lituse): Likewise.  Move relaxed relocs to
1377         the end of the LITERAL+LITUSE chain.
1378         (elf64_alpha_relax_section): Only process LITERAL relocs during the
1379         second pass of relaxation.
1380
1381         * configure.ac (use_secureplt): Enable by default.
1382         * configure: Rebuild.
1383
1384 2014-04-18  Tristan Gingold  <gingold@adacore.com>
1385
1386         * mach-o.h (bfd_mach_o_dyld_info_command): Add rebase_content,
1387         bind_content, weak_bind_content, lazy_bind_content,
1388         export_content.
1389         (bfd_mach_o_load_command): Add comments, add next field.
1390         (mach_o_data_struct): Replace commands field by first_command
1391         and last_command.
1392         * mach-o.c (bfd_mach_o_append_command): New function.
1393         (bfd_mach_o_bfd_copy_private_symbol_data): Add blank lines.
1394         (bfd_mach_o_bfd_copy_private_section_data): Check flavour,
1395         copy fields.
1396         (bfd_mach_o_bfd_copy_private_header_data): Copy load commands.
1397         (bfd_mach_o_pad4, bfd_mach_o_pad_command): New functions.
1398         (bfd_mach_o_write_thread): Use macro instead of literal.
1399         (bfd_mach_o_write_dylinker, bfd_mach_o_write_dylib)
1400         (bfd_mach_o_write_main, bfd_mach_o_write_dyld_info): New
1401         functions.
1402         (bfd_mach_o_write_symtab_content): New function (extracted
1403         from bfd_mach_o_write_symtab).
1404         (bfd_mach_o_write_symtab): Split.
1405         (bfd_mach_o_count_indirect_symbols): Move
1406         (bfd_mach_o_build_dysymtab): Remove layout code.
1407         (bfd_mach_o_write_contents): Rewritten to build commands in order.
1408         (bfd_mach_o_count_sections_for_seg): Remove.
1409         (bfd_mach_o_build_obj_seg_command): New function (extracted from
1410         bfd_mach_o_build_seg_command).
1411         (bfd_mach_o_build_exec_seg_command): New function.
1412         (bfd_mach_o_build_dysymtab_command): Remove.
1413         (bfd_mach_o_layout_commands): New function.
1414         (bfd_mach_o_init_segment): New function.
1415         (bfd_mach_o_build_commands): Major rework to handle non-object
1416         files.
1417         (bfd_mach_o_alloc_and_read, bfd_mach_o_read_dyld_content): New
1418         function.
1419         (bfd_mach_o_read_dyld_info): Clear content fields.
1420         (bfd_mach_o_read_segment): Adjust call.
1421         (bfd_mach_o_flatten_sections): Adjust as now load commands are
1422         chained.
1423         (bfd_mach_o_scan_start_address, bfd_mach_o_scan)
1424         (bfd_mach_o_mkobject_init, bfd_mach_o_get_base_address)
1425         (bfd_mach_o_lookup_command, bfd_mach_o_core_fetch_environment):
1426         Likewise.
1427
1428 2014-04-18  Tristan Gingold  <gingold@adacore.com>
1429
1430         * mach-o-target.c (bfd_mach_o_bfd_copy_private_header_data):
1431         Define instead of bfd_mach_o_bfd_copy_private_bfd_data.
1432         * mach-o.c (bfd_mach_o_bfd_copy_private_bfd_data): Rename.
1433         * mach-o.h (bfd_mach_o_bfd_copy_private_bfd_data): Likewise.
1434
1435 2014-04-18  Tristan Gingold  <gingold@adacore.com>
1436
1437         * mach-o.h (bfd_mach_o_dylinker_command)
1438         (bfd_mach_o_dylib_command, bfd_mach_o_fvmlib_command): Remove
1439         name_len field.
1440         * mach-o.c (bfd_mach_o_read_dylinker, bfd_mach_o_read_dylib)
1441         (bfd_mach_o_read_fvmlib): Adjust after name_len removal.
1442
1443 2014-04-18  Tristan Gingold  <gingold@adacore.com>
1444
1445         * mach-o.h (bfd_mach_o_backend_data): Add page_size field.
1446         * mach-o-target.c: Check TARGET_PAGESIZE is defined.
1447         (TARGET_NAME_BACKEND): Add TARGET_PAGESIZE.
1448         * mach-o.c (TARGET_PAGESIZE): Define and undefined for
1449         each targets declared.
1450         * mach-o-x86-64.c (TARGET_PAGESIZE): Define.
1451         * mach-o-i386.c (TARGET_PAGESIZE): Define.
1452
1453 2014-04-18  Tristan Gingold  <gingold@adacore.com>
1454
1455         * mach-o.c (bfd_mach_o_write_thread)
1456         (bfd_mach_o_write_section_32, bfd_mach_o_write_section_64)
1457         (bfd_mach_o_write_segment_32, bfd_mach_o_write_segment_64)
1458         (bfd_mach_o_read_dylinker, bfd_mach_o_read_dylib)
1459         (bfd_mach_o_read_prebound_dylib, bfd_mach_o_read_prebind_cksum)
1460         (bfd_mach_o_read_twolevel_hints, bfd_mach_o_read_fvmlib)
1461         (bfd_mach_o_read_thread, bfd_mach_o_read_dysymtab)
1462         (bfd_mach_o_read_symtab, bfd_mach_o_read_uuid)
1463         (bfd_mach_o_read_linkedit, bfd_mach_o_read_str)
1464         (bfd_mach_o_read_dyld_info, bfd_mach_o_read_segment)
1465         (bfd_mach_o_read_segment_32, bfd_mach_o_read_segment_64)
1466         (bfd_mach_o_read_command): Now return a boolean status.
1467         Adjust return statements.
1468         (bfd_mach_o_write_contents, bfd_mach_o_scan): Adjust tests.
1469         (bfd_mach_o_core_file_failing_command): Remove useless initialization.
1470
1471 2014-04-17  Kwok Cheung Yeung  <kcy@codesourcery.com>
1472
1473         * elfxx-mips.c (struct mips_got_info): Delete assigned_gotno
1474         field.  Add assigned_low_gotno and assigned_high_gotno fields.
1475         (mips_elf_create_local_got_entry): Update out-of-space condition.
1476         Set index of new GOT entry to assigned_low_gotno if required by
1477         the current relocation, else set it to assigned_high_gotno.
1478         (mips_elf_set_global_gotidx): Replace uses of assigned_gotno
1479         with assigned_low_gotno.
1480         (mips_elf_multi_got): Initialize assigned_low_gotno and
1481         assigned_high_gotno in secondary GOTs.  Use assigned_low_gotno
1482         in place of assigned_gotno when handling global GOT entries.
1483         (mips_elf_lay_out_got): Initialize assigned_low_gotno and
1484         assigned_high_gotno.
1485         (_bfd_mips_elf_finish_dynamic_sections): Account for a possible
1486         gap in the middle of local GOT space.
1487
1488 2014-04-17  Alan Modra  <amodra@gmail.com>
1489
1490         PR 16846
1491         * elflink.c (_bfd_elf_merge_symbol): Ignore TLS mismatch when
1492         current bfd is a plugin.  Don't always set type_change_ok
1493         when old bfd is a plugin.
1494
1495 2014-04-16  Tristan Gingold  <gingold@adacore.com>
1496
1497         * mach-o-x86-64.c (bfd_mach_o_x86_64_mkobject): Adjust cpusubtype
1498         flag.
1499
1500 2014-04-16  Alan Modra  <amodra@gmail.com>
1501
1502         * elf32-ppc.c (ppc_elf_relocate_section): Fill 476 fixup area
1503         with "ba 0" rather than zeros.
1504
1505 2014-04-15  Marcus Shawcroft  <marcus.shawcroft@arm.com>
1506
1507         * (elfNN_aarch64_tls_relax): Fix instruction mask.
1508
1509 2014-04-14  Alan Modra  <amodra@gmail.com>
1510
1511         * elf32-ppc.c (BA): Define
1512         (ppc_elf_link_hash_table_create): Correct default_params.
1513         (write_glink_stub): Pad small plt call stub with "ba 0" rather
1514         than "nop" for ppc476_workaround.
1515         (ppc_elf_finish_dynamic_sections): Likewise for branch table
1516         and __glink_PLTresolve.  Ensure plt call stub at end of page
1517         doesn't allow fall-thru prefetch.
1518
1519 2014-04-11  Nick Clifton  <nickc@redhat.com>
1520
1521         PR ld/16821
1522         * peXXigen.c (abs_finder): New function.
1523         (_bfd_XXi_swap_sym_out): For absolute symbols with values larger
1524         than 1^32 try to convert them into section relative values
1525         instead.
1526
1527 2014-04-11  Nick Clifton  <nickc@redhat.com>
1528
1529         * bfd-in2.h: Regenerate.
1530         * libbfd.h: Regenerate.
1531
1532 2014-04-10  Cesar Philippidis  <cesar@codesourcery.com>
1533
1534         * elf32-nios2.c (nios2_elf32_build_stubs): Ignore dynobjs
1535         when building function stubs.
1536
1537 2014-04-10  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
1538
1539         * elf32-avr.c: Add DIFF relocations for AVR.
1540         (avr_final_link_relocate): Handle the DIFF relocs.
1541         (bfd_elf_avr_diff_reloc): New.
1542         (elf32_avr_is_diff_reloc): New.
1543         (elf32_avr_adjust_diff_reloc_value): Reduce difference value.
1544         (elf32_avr_relax_delete_bytes): Recompute difference after deleting
1545         bytes.
1546
1547         * reloc.c: Add BFD_RELOC_AVR_DIFF8/16/32 relocations
1548
1549 2014-04-09  Alan Modra  <amodra@gmail.com>
1550
1551         * libcoff.h: Regenerate.
1552
1553 2014-04-09  Alan Modra  <amodra@gmail.com>
1554
1555         * elf32-ppc.c (ppc_elf_relocate_section): Remove bctr from list
1556         of safe ppc476 insns at end of page.  Also remove non-branch insns.
1557         Expand comments.
1558
1559 2014-04-08  Jon Turney  <jon.turney@dronecode.org.uk>
1560
1561         * peXXigen.c (pe_print_debugdata): New function: Displays the
1562         contents of the debug directory and decodes codeview entries.
1563         (_bfd_XXi_swap_debugdir_in, _bfd_XXi_swap_debugdir_out)
1564         (_bfd_XXi_slurp_codeview_record, _bfd_XXi_write_codeview_record):
1565         Add functions for reading and writing debugdir and codeview
1566         records.
1567         * libpei.h (_bfd_XXi_swap_debugdir_in, _bfd_XXi_swap_debugdir_out)
1568         (_bfd_XXi_write_codeview_record): Add prototypes and macros.
1569         * libcoff-in.h (pe_tdata): Add build-id data.
1570         * libcoff.h: Regenerate.
1571         * coffcode.h (coff_write_object_contents): Run build_id
1572         after_write_object_contents hook.
1573
1574 2014-04-05  Alan Modra  <amodra@gmail.com>
1575
1576         * elflink.c (_bfd_elf_add_default_symbol): Pass poldbfd when
1577         merging non-default sym.
1578
1579 2014-04-04  Tristan Gingold  <gingold@adacore.com>
1580
1581         * mach-o.c (bfd_mach_o_header_p): Reject 64 bit target when not
1582         configured for.
1583
1584 2014-04-04  Tristan Gingold  <gingold@adacore.com>
1585
1586         * mach-o.c (bfd_mach_o_convert_section_name_to_mach_o): Fix
1587         thinko on names length.
1588
1589 2014-04-04  Tristan Gingold  <gingold@adacore.com>
1590
1591         * mach-o-i386.c (bfd_mach_o_i386_swap_reloc_out): Use target index
1592         of output_section.
1593         * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Ditto.
1594
1595 2014-04-04  Tristan Gingold  <gingold@adacore.com>
1596
1597         * bfd.c (bfd_get_arch_size): Default is taken from arch.
1598
1599 2014-04-03  Jon Turney  <jon.turney@dronecode.org.uk>
1600
1601         * peXXigen.c (pe_print_edata): Verify edt.name lies inside
1602         section before dereferencing.
1603         (pe_print_idata, pe_print_edata, pe_print_reloc)
1604         (rsrc_print_section): Don't bother interpreting the contents
1605         of sections which have no contents.
1606
1607 2014-04-03  Maria Guseva  <m.guseva@samsung.com>
1608
1609         PR ld/16803
1610         * elf.c (_bfd_elf_set_section_contents): Use correct type to hold
1611         file position.
1612
1613 2014-04-03  Tristan Gingold  <gingold@adacore.com>
1614
1615         * mach-o.c (bfd_mach_o_mangle_symbols): Use index from
1616         output_section.
1617         (bfd_mach_o_build_seg_command): Add comment.  Realign segment.
1618         Fix style.
1619         (bfd_mach_o_build_commands, bfd_mach_o_read_thread): Fix style.
1620
1621 2014-04-03  Alan Modra  <amodra@gmail.com>
1622
1623         * elf-bfd.h (struct elf_backend_data
1624         <elf_backend_bfd_from_remote_memory>): Replace "size_t size"
1625         with "bfd_size_type size".
1626         (_bfd_elf32_bfd_from_remote_memory): Likewise.
1627         (_bfd_elf64_bfd_from_remote_memory): Likewise.
1628         * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
1629         * elfcode.h (bfd_from_remote_memory): Likewise.
1630         * bfd-in.h (bfd_elf_bfd_from_remote_memory): Likewise.
1631         * bfd-in2.h: Regenerate.
1632
1633 2014-04-02  Tristan Gingold  <gingold@adacore.com>
1634
1635         * mach-o.h (bfd_mach_o_twolevel_hints_command)
1636         (bfd_mach_o_prebind_cksum_command): New types.
1637         (bfd_mach_o_prebound_dylib_command): Rewrite.
1638         (bfd_mach_o_load_command): Add prebind_cksum and twolevel_hints
1639         fields.
1640         * mach-o.c (bfd_mach_o_read_prebound_dylib): Read and decode the
1641         command.
1642         (bfd_mach_o_read_prebind_cksum): New function.
1643         (bfd_mach_o_read_twolevel_hints): Ditto.
1644         (bfd_mach_o_read_command): Handle prebind cksum and twolevel hints
1645         commands.
1646
1647 2014-04-02  Alan Modra  <amodra@gmail.com>
1648
1649         * elfcode.h (bfd_from_remote_memory): Add "size" parameter.
1650         Consolidate code handling possible section headers past end of
1651         segment.  Don't use p_align for page size guess, instead use
1652         minpagesize.  Take note of ld.so clearing section headers when
1653         p_memsz > p_filesz.  Handle file header specifying no section
1654         headers.  Handle zero p_align throughout.  Default loadbase to
1655         zero.  Add comments.  Rename contents_size to high_offset, and
1656         make it a bfd_vma.  Delete unnecessary bfd_set_error calls.
1657         * bfd-in.h (bfd_elf_bfd_from_remote_memory): Update prototpe.
1658         * elf-bfd.h (struct elf_backend_data <elf_backend_from_remote_memory>):
1659         Likewise.
1660         (_bfd_elf32_bfd_from_remote_memory): Likewise.
1661         (_bfd_elf64_bfd_from_remote_memory): Likewise.
1662         * elf.c (bfd_elf_bfd_from_remote_memory): Adjust.
1663         * bfd-in2.h: Regnerate.
1664
1665 2014-04-01  Tristan Gingold  <gingold@adacore.com>
1666
1667         * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Avoid to crash
1668         when num == 0.
1669
1670 2014-03-27  Yury Gribov  <y.gribov@samsung.com>
1671             Pavel Fedin  <p.fedin@samsung.com>
1672
1673         * elf32-arm.c: Add support for limited pretty-printing of PLT
1674         entries on eabi and nacl targets.
1675         (elf32_arm_get_synthetic_symtab): Add new callback.
1676         (elf32_arm_nacl_plt_sym_val): Likewise.
1677         (elf32_arm_plt0_size): Add helper function.
1678         (elf32_arm_plt_size): Likewise.
1679
1680 2014-03-27  Tristan Gingold  <gingold@adacore.com>
1681
1682         * mach-o.c (bfd_mach_o_read_dylinker): Remove assert.
1683         (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_DYLD_ENVIRONMENT.
1684
1685 2014-03-27  Tristan Gingold  <gingold@adacore.com>
1686
1687         * mach-o.h (bfd_mach_o_get_base_address): New prototype.
1688         * mach-o.c (bfd_mach_o_write_symtab)
1689         (bfd_mach_o_write_contents)
1690         (bfd_mach_o_set_section_flags_from_bfd)
1691         (bfd_mach_o_build_seg_command): Fix indentation.
1692         (bfd_mach_o_get_base_address): New function.
1693
1694 2014-03-26  Nick Clifton  <nickc@redhat.com>
1695
1696         * cofflink.c (_bfd_coff_generic_relocate_section): Skip
1697         relocations in discarded sections.
1698
1699 2014-03-26  Tristan Gingold  <gingold@adacore.com>
1700
1701         * mach-o.c (bfd_mach_o_convert_architecture): Add
1702         BFD_MACH_O_CPU_TYPE_ARM64.
1703
1704 2014-03-26  Alan Modra  <amodra@gmail.com>
1705
1706         * elf64-ppc.c (ppc64_elf_check_relocs): Account for possibly
1707         needed plt entries when taking the address of functions for
1708         abiversion == 0 (ie. unknown) as well as abiversion == 2.
1709         Move opd setup and abiversion checks to..
1710         (ppc64_elf_before_check_relocs): ..here.  Renamed from
1711         ppc64_elf_process_dot_syms.  Set output abiversion from input and
1712         input abiversion from output, if either is not set.
1713         (ppc64_elf_merge_private_bfd_data): Don't merge flags here.
1714         (elf_backend_check_directives): Update.
1715
1716 2014-03-25  Will Newton  <will.newton@linaro.org>
1717
1718          * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections):
1719          Set value of DT_PLTRELSZ and DT_RELASZ based on the size
1720          of input sections rather than output sections.
1721
1722 2014-03-20  Will Newton  <will.newton@linaro.org>
1723
1724         PR ld/16715
1725         * elf32-arm.c (elf32_arm_check_relocs): Set
1726         pointer_equality_needed for absolute references within
1727         executable links.
1728         (elf32_arm_finish_dynamic_symbol): Set st_value to zero
1729         unless pointer_equality_needed is set.
1730
1731 2014-03-19  Nick Clifton  <nickc@redhat.com>
1732
1733         * peXXigen.c (rsrc_process_section): Add code to scan input
1734         sections and record their lengths.  Use these lengths to find the
1735         start of each merged .rsrc section.
1736
1737 2014-03-17  Tristan Gingold  <gingold@adacore.com>
1738
1739         * mach-o.c (bfd_mach_o_read_dylib): Handle lazy load dylib.
1740         (bfd_mach_o_read_command): Ditto.
1741
1742 2014-03-14  Meador Inge  <meadori@codesourcery.com>
1743
1744         * configure.in: Add strnlen to AC_CHECK_DECLS.
1745         * config.in: Regenerate.
1746         * configure: Regenerate.
1747         * sysdep.h (strnlen): Add prototype.
1748
1749 2014-03-14  Alan Modra  <amodra@gmail.com>
1750
1751         * elf32-ppc.c (ppc_elf_relocate_section): Correct overflow
1752         handling for VLE_SDA21 relocs.
1753
1754 2014-03-13  Tristan Gingold  <gingold@adacore.com>
1755
1756         * peicode.h (pe_ILF_object_p): Adjust, as the version number
1757         has been read.
1758         (pe_bfd_object_p): Also read version number to detect ILF.
1759         * pe-x86_64.c (COFF_WITH_PE_BIGOBJ): Define.
1760         (x86_64pe_bigobj_vec): Define
1761         * coffcode.h (bfd_coff_backend_data): Add _bfd_coff_max_nscns field.
1762         (bfd_coff_max_nscns): New macro.
1763         (coff_compute_section_file_positions): Use unsigned int for
1764         target_index.  Compare with bfd_coff_max_nscns.
1765         (bfd_coff_std_swap_table, ticoff0_swap_table, ticoff1_swap_table):
1766         Set a value for _bfd_coff_max_nscns.
1767         (header_bigobj_classid): New constant.
1768         (coff_bigobj_swap_filehdr_in, coff_bigobj_swap_filehdr_out)
1769         (coff_bigobj_swap_sym_in, coff_bigobj_swap_sym_out)
1770         (coff_bigobj_swap_aux_in, coff_bigobj_swap_aux_out): New
1771         functions.
1772         (bigobj_swap_table): New table.
1773         * libcoff.h: Regenerate.
1774         * coff-sh.c (bfd_coff_small_swap_table): Likewise.
1775         * coff-alpha.c (alpha_ecoff_backend_data): Add value for
1776         _bfd_coff_max_nscns.
1777         * coff-mips.c (mips_ecoff_backend_data): Likewise.
1778         * coff-rs6000.c (bfd_xcoff_backend_data)
1779         (bfd_pmac_xcoff_backend_data): Likewise.
1780         * coff64-rs6000.c (bfd_xcoff_backend_data)
1781         (bfd_xcoff_aix5_backend_data): Likewise.
1782         * targets.c (x86_64pe_bigobj_vec): Declare.
1783         * configure.in (x86_64pe_bigobj_vec): New vector.
1784         * configure: Regenerate.
1785         * config.bfd: Add bigobj object format for Windows targets.
1786
1787 2014-03-12  Nick Clifton  <nickc@redhat.com>
1788
1789         PR ld/16671
1790         * elf32-arm.c (elf32_arm_add_symbol_hook): Check for ARM format
1791         before testing for vxworks.
1792
1793 2014-03-12  Alan Modra  <amodra@gmail.com>
1794
1795         * Makefile.in: Regenerate.
1796
1797 2014-03-12  Alan Modra  <amodra@gmail.com>
1798
1799         PR 16690
1800         * elf.c (copy_elf_program_header): Ignore first section lma if
1801         non-alloc.
1802
1803 2014-03-11  Alan Modra  <amodra@gmail.com>
1804
1805         PR 16686
1806         * coff-rs6000.c: Include stdint.h.
1807         * coff64-rs6000.c: Likewise.
1808
1809 2014-03-10  Tristan Gingold  <gingold@adacore.com>
1810
1811         * ticoff.h: Removed.
1812
1813 2014-03-08  Alan Modra  <amodra@gmail.com>
1814
1815         * elf32-ppc.c (ppc_elf_howto_raw): Correct overflow check for
1816         many relocations.  Correct bitsize and rightshift too for a number
1817         of VLE relocs.  Describe R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO.
1818         Correct dst_mask on R_PPC_VLE_SDA21_LO.
1819         (ppc_elf_vle_split16): Tidy, delete unnecessary prototype.
1820         (ppc_elf_relocate_section): Modify overflow test for 16-bit
1821         fields in instructions to signed/unsigned according to whether
1822         the field takes a signed or unsigned value.  Tidy vle split16 code.
1823         Correct R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO handling.
1824
1825 2014-03-08  Alan Modra  <amodra@gmail.com>
1826
1827         * elf64-ppc.c (ppc64_elf_howto_raw): Use complain_overflow_signed
1828         for R_PPC64_ADDR14, R_PPC64_ADDR14_BRTAKEN, R_PPC64_ADDR14_BRNTAKEN,
1829         R_PPC64_SECTOFF, R_PPC64_ADDR16_DS, R_PPC64_SECTOFF_DS,
1830         R_PPC64_REL16 entries.  Use complain_overflow_dont for R_PPC64_TOC.
1831         (ppc64_elf_relocate_section): Modify overflow test for 16-bit
1832         fields in instructions to signed/unsigned according to whether
1833         the field takes a signed or unsigned value.
1834
1835 2014-03-07  Pedro Alves  <palves@redhat.com>
1836
1837         PR gdb/16696
1838         * rs6000-core.c (rs6000coff_core_p): Cast pointers to bfd_vma
1839         through ptr_to_uint instead of through long.
1840
1841 2014-03-06  Nick Clifton  <nickc@redhat.com>
1842
1843         PR 16664
1844         * elf-attrs.c (_bfd_elf_parse_attributes): Add checks for corrupt
1845         attribute section names.
1846
1847 2014-03-05  Alan Modra  <amodra@gmail.com>
1848
1849         Update copyright years.
1850
1851 2014-03-05  Alan Modra  <amodra@gmail.com>
1852
1853         * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_ADDR64_LOCAL entry.
1854         (ppc64_elf_reloc_type_lookup): Support R_PPC64_ADDR64_LOCAL.
1855         (ppc64_elf_check_relocs): Likewise.
1856         (ppc64_elf_relocate_section): Likewise.
1857         * Add BFD_RELOC_PPC64_ADDR64_LOCAL.
1858         * bfd-in2.h: Regenerate.
1859         * libbfd.h: Regenerate.
1860
1861 2014-03-04  Heiher  <r@hev.cc>
1862
1863         * elfxx-mips.c (mips_set_isa_flags): Use E_MIPS_ARCH_64R2 for
1864         Loongson-3A.
1865         (mips_mach_extensions): Make bfd_mach_mips_loongson_3a an
1866         extension of bfd_mach_mipsisa64r2.
1867
1868 2014-03-04  Nick Clifton  <nickc@redhat.com>
1869
1870         PR ld/16017
1871         * elf32-arm.c (elf32_thumb2_plt0_entry): New array.
1872         (elf32_thumb2_plt_entry): New array.
1873         (elf32_arm_create_dynamic_sections): Set PLT entry sizes when
1874         using thumb2 based PLT.
1875         (elf32_arm_populate_plt_entry): Handle generating Thumb2 based PLT
1876         entries.
1877         (elf32_arm_final_link_relocate): Do not bias jumps to Thumb based
1878         PLT entries.
1879         (elf32_arm_finish_dynamic_sections): Handle creation of Thumb2
1880         based PLT 0-entry.
1881         (elf32_arm_output_plt_map_1): Handle creation of local symbols for
1882         Thumb2 based PLT 0-entry.
1883         (elf32_arm_output_arch_local_syms): Handle creation of local
1884         symbols for Thumb2 based PLT entries.
1885
1886 2014-02-28  Alan Modra  <amodra@gmail.com>
1887
1888         PR ld/16643
1889         * elflink.c (elf_gc_sweep): Call gc_sweep_hook for exactly
1890         the same conditions we called check_relocs.
1891
1892 2014-02-27  Yuri Gribov  <y.gribov@samsung.com>
1893
1894         * bfd-in.h: Add export of bfd_elf32_arm_use_long_plt.
1895         * bfd-in2.h: Regenerate.
1896         * elf32-arm.c (elf32_arm_plt_entry_long): New array.
1897         (elf32_arm_link_hash_table_create): Set plt_entry_size to 16 if
1898         using long PLT entries.
1899         (bfd_elf32_arm_use_long_plt): New function.
1900         (elf32_arm_populate_plt_entry): Add support for long PLT entries.
1901
1902 2014-02-27  Alan Modra  <amodra@gmail.com>
1903
1904         * elf32-ppc.c (ppc_elf_link_hash_table_create): Provide default
1905         params for targets that don't use ppc32elf.em.
1906
1907 2014-02-20  Chung-Lin Tang  <cltang@codesourcery.com>
1908
1909         * elf32-nios2.c (nios2_elf32_relocate_section): Fix calculation
1910         of GOTOFF relocations.
1911
1912 2014-02-19  Igor Zamyatin  <igor.zamyatin@intel.com>
1913             H.J. Lu  <hongjiu.lu@intel.com>
1914
1915         * elf64-x86-64.c (elf_x86_64_bnd_plt0_entry): New.
1916         (elf_x86_64_legacy_plt_entry): Likewise.
1917         (elf_x86_64_bnd_plt_entry): Likewise.
1918         (elf_x86_64_legacy_plt2_entry): Likewise.
1919         (elf_x86_64_bnd_plt2_entry): Likewise.
1920         (elf_x86_64_bnd_arch_bed): Likewise.
1921         (elf_x86_64_link_hash_entry): Add has_bnd_reloc and plt_bnd.
1922         (elf_x86_64_link_hash_table): Add plt_bnd.
1923         (elf_x86_64_link_hash_newfunc): Initialize has_bnd_reloc and
1924         plt_bnd.
1925         (elf_x86_64_copy_indirect_symbol): Also copy has_bnd_reloc.
1926         (elf_x86_64_check_relocs): Create the second PLT for Intel MPX
1927         in 64-bit mode.
1928         (elf_x86_64_allocate_dynrelocs): Handle the second PLT for IFUNC
1929         symbols.  Resolve call to the second PLT if it is created.
1930         (elf_x86_64_size_dynamic_sections): Keep the second PLT section.
1931         (elf_x86_64_relocate_section): Resolve PLT references to the
1932         second PLT if it is created.
1933         (elf_x86_64_finish_dynamic_symbol): Use BND PLT0 and fill the
1934         second PLT entry for BND relocation.
1935         (elf_x86_64_finish_dynamic_sections): Use MPX backend data if
1936         the second PLT is created.
1937         (elf_x86_64_get_synthetic_symtab): New.
1938         (bfd_elf64_get_synthetic_symtab): Likewise.  Undefine for NaCl.
1939
1940 2014-02-19  Alan Modra  <amodra@gmail.com>
1941
1942         * elf64-ppc.h (struct ppc64_elf_params): Add save_restore_funcs.
1943         * elf64-ppc.c (ppc64_elf_func_desc_adjust): Use it to control
1944         provision of out-of-line register save/restore routines.
1945
1946 2014-02-18  Jack Carter  <jack.carter@imgtec.com>
1947
1948         * elfxx-mips.c(_bfd_mips_elf_modify_segment_map): Deleted hard coding of
1949         PT_DYNAMIC segment flags.
1950
1951 2014-02-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
1952
1953         PR binutils/16595
1954         * simple.c (struct saved_offsets): New.
1955         (simple_save_output_info): Use it for ptr.
1956         (simple_restore_output_info): Use it for ptr.  Check section_count.
1957         (bfd_simple_get_relocated_section_contents): Use it for saved_offsets.
1958
1959 2014-02-17  Alan Modra  <amodra@gmail.com>
1960
1961         * elf64-ppc.h (struct ppc64_elf_params): Define.
1962         (ppc64_elf_init_stub_bfd, ppc64_elf_edit_opd, ppc64_elf_tls_setup,
1963         ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
1964         ppc64_elf_build_stubs): Update prototype.
1965         * elf64-ppp.c (struct ppc_link_hash_table): Add params, delete other
1966         fields now in params.  Adjust code throughout file.
1967         (ppc64_elf_init_stub_bfd): Delete "abfd" parameter, add "params".
1968         Save params pointer in htab.
1969         (ppc64_elf_edit_opd, ppc64_elf_tls_setup,
1970         ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
1971         ppc64_elf_build_stubs): Remove parameters now in "params".
1972
1973 2014-02-17  Alan Modra  <amodra@gmail.com>
1974
1975         * elf32-ppc.c (ppc_elf_relocate_section): Move relocs on insns
1976         patched for ppc476 workaround.  Reapply branch taken/not taken
1977         relocs.
1978
1979 2014-02-12  Alan Modra  <amodra@gmail.com>
1980
1981         * elf32-ppc.c (ppc_elf_relax_section): Don't build long-branch
1982         stubs for calls to __tls_get_addr that we know will later be
1983         optimised away.
1984
1985 2014-02-12  Alan Modra  <amodra@gmail.com>
1986
1987         * elf32-ppc.c (ppc_elf_relax_section): Enable ppc476 workaround
1988         for ld -r, when code sections are sufficiently aligned.
1989         * elf32-ppc.h (struct ppc_elf_params): Delete pagesize.  Add
1990         pagesize_p2.
1991
1992 2014-02-12  Alan Modra  <amodra@gmail.com>
1993
1994         PR gold/15530
1995         * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support
1996         --export-dynamic and --dynamic-list marking of symbols.
1997         * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Reorder
1998         cheap tests first.
1999
2000 2014-02-10  H.J. Lu  <hongjiu.lu@intel.com>
2001
2002         PR gold/16530
2003         * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Mark symbol in
2004         executables if it matches dynamic_list.
2005
2006 2014-02-10  Alan Modra  <amodra@gmail.com>
2007
2008         * po/SRC-POTFILES.in: Regenerate.
2009         * po/bfd.pot: Regenerate.
2010
2011 2014-02-09  Alan Modra  <amodra@gmail.com>
2012
2013         * elf-bfd.h (struct elf_backend_data): Add caches_rawsize.
2014         * elfxx-target.h (elf_backend_caches_rawsize): Define.
2015         (elfNN_bed): Init new field.
2016         * elflink.c (elf_link_input_bfd): Handle caches_rawsize.
2017         * elf32-ppc.c (shared_stub_entry): Zero addi offset.
2018         (ppc_elf_relax_section): Don't reallocate section here, write
2019         stubs, or write out relocs for ld -r here..
2020         (ppc_elf_relocate_section): ..instead write stubs here, and use
2021         existing code to write out relocs for ld -r.  Fix offset
2022         adjustment on reloc for little-endian.
2023         (elf_backend_caches_rawsize): Define.
2024
2025 2014-02-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2026
2027         PR build/16550
2028         * cache.c (bfd_cache_max_open): Cast RLIM_INFINITY to rlim_t.
2029
2030 2014-02-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
2031
2032         * coff-rs6000.c (xcoff_write_archive_contents_big): Free OFFSETS in
2033         return paths.  Three times.
2034         * elf64-ppc.c (ppc64_elf_link_hash_table_create): Free HTAB in all
2035         return paths.
2036         (ppc64_elf_tls_optimize): Free TOC_REF in return path.
2037         (ppc64_elf_edit_toc): Free USED in return path.
2038
2039 2014-02-03  Sandra Loosemore  <sandra@codesourcery.com>
2040
2041         * reloc.c (BFD_RELOC_NIOS2_GOT_LO, BFD_RELOC_NIOS2_GOT_HA): New.
2042         (BFD_RELOC_NIOS2_CALL_LO, BFD_RELOC_NIOS2_CALL_HA): New.
2043         * libbfd.h: Regenerated.
2044         * bfd-in2.h: Regenerated.
2045         * elf32-nios2.c (elf_nios2_howto_table_rel): Add new relocations.
2046         (nios2_reloc_map): Likewise.
2047         (GOT_USED, CALL_USED): Renamed from GOT16_USED and CALL16_USED.
2048         Fixed all references.
2049         (nios2_elf32_relocate_section): Add new relocations.
2050         (nios2_elf32_check_relocs): Likewise.
2051         (nios2_elf32_gc_sweep_hook): Likewise.
2052
2053 2014-02-03  Alan Modra  <amodra@gmail.com>
2054
2055         * elf32-ppc.c (struct ppc_elf_link_hash_table): Add params.
2056         Delete emit_stub_syms, no_tls_get_addr_opt.  Update all uses.
2057         (ppc_elf_link_params): New function.
2058         (ppc_elf_create_glink): Align .glink to 64 bytes for ppc476
2059         workaround.
2060         (ppc_elf_select_plt_layout): Remove plt_style and emit_stub_syms
2061         parameters.  Use htab->params instead.
2062         (ppc_elf_tls_setup): Remove no_tls_get_addr_opt parameter.
2063         (ppc_elf_size_dynamic_sections): Align __glink_PLTresolve to
2064         64 bytes for ppc476 workaround.
2065         (struct ppc_elf_relax_info): New.
2066         (ppc_elf_relax_section): Exclude linker created sections and
2067         those too small to hold one instruction.  Don't add another
2068         branch around trampolines on later relax passes.  Don't
2069         generate trampolines for undefined symbols when !relocatable,
2070         nor for plugin symbols.  Allocate space for ppc476 workaround
2071         patch area.  Free fixups on error return path.
2072         (ppc_elf_relocate_section): Handle ppc476 workaround patching.
2073         * elf32-ppc.h (struct ppc_elf_params): New.
2074         (ppc_elf_select_plt_layout, ppc_elf_tls_setup): Update prototype.
2075         (ppc_elf_link_params): Declare.
2076         * section.c (SEC_INFO_TYPE_TARGET): Define.
2077         * bfd-in2.h: Regenerate.
2078
2079 2014-02-02  Sandra Loosemore  <sandra@codesourcery.com>
2080
2081         * elf32-nios2.c (struct elf32_nios2_link_hash_table): Add
2082         h_gp_got field.
2083         (nios2_elf32_relocate_section): Use got_base to adjust
2084         GOT-pointer-relative relocations relative to _gp_got.
2085         (create_got_section): Create _gp_got symbol.
2086         (nios2_elf32_finish_dynamic_symbol): Make _gp_got absolute.
2087         (nios2_elf32_size_dynamic_sections): Set _gp_got offset.
2088
2089 2014-01-30  Sandra Loosemore  <sandra@codesourcery.com>
2090
2091         * bfd-in2.h: Update from reloc.c.
2092         * elf32-nios2.c: Include elf32-nios2.h.
2093         (elf_nios2_howto_table_rel): Add entry for R_NIOS2_CALL26_NOAT.
2094         (nios2_reloc_map): Likewise.
2095         (enum elf32_nios2_stub_type): Declare.
2096         (struct elf32_nios2_stub_hash_entry): Declare.
2097         (nios2_stub_hash_entry, nios2_stub_hash_lookup): New macros.
2098         (struct elf32_nios2_link_hash_entry): Add hsh_cache field.
2099         (struct elf32_nios2_link_hash_table): Add new fields bstab,
2100         stub_bfd, add_stub_section, layout_sections_again, stub_group,
2101         bfd_count, top_index, input_list, all_local_syms.
2102         (nios2_call26_stub_entry): New.
2103         (nios2_elf32_install_imm16): Move up in file.
2104         (nios2_elf32_install_data): Move up in file.
2105         (hiadj): Move up in file.
2106         (stub_hash_newfunc): New.
2107         (link_hash_newfunc): Initialize hsh_cache field.
2108         (STUB_SUFFIX): New.
2109         (nios2_stub_name): New.
2110         (nios2_get_stub_entry): New.
2111         (nios2_add_stub): New.
2112         (nios2_elf32_setup_section_lists): New.
2113         (nios2_elf32_next_input_section): New.
2114         (CALL26_SEGMENT): New.
2115         (MAX_STUB_SECTION_SIZE): New.
2116         (group_sections): New.
2117         (nios2_type_of_stub): New.
2118         (nios2_build_one_stub): New.
2119         (nios2_size_one_stub): New.
2120         (get_local_syms): New.
2121         (nios2_elf32_size_stubs): New.
2122         (nios2_elf32_build_stubs): New.
2123         (nios2_elf32_do_call26_relocate): Correct CALL26 overflow test.
2124         (nios2_elf32_relocate_section): Handle R_NIOS2_CALL26_NOAT.  Add
2125         trampolines for R_NIOS2_CALL26 stubs.
2126         (nios2_elf32_check_relocs): Handle R_NIOS2_CALL26_NOAT.
2127         (nios2_elf32_gc_sweep_hook): Likewise.
2128         (nios2_elf32_link_hash_table_create): Initialize the stub hash table.
2129         (nios2_elf32_link_hash_table_free): New.
2130         (bfd_elf32_bfd_link_hash_table_free): Define.
2131         * elf32-nios2.h: New file.
2132         * libbfd.h: Update from reloc.c.
2133         * reloc.c (BFD_RELOC_NIOS2_CALL26_NOAT): New.
2134
2135 2014-01-29  Nick Clifton  <nickc@redhat.com>
2136
2137         PR binutils/16318
2138         * elf32-metag.c (elf_metag_post_process_headers): Call
2139         _bfd_elf_post_process_headers.
2140         * elf32-sh64.c (sh64_elf_copy_private_data): Call
2141         _bfd_elf_copy_private_data.
2142         * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
2143
2144 2014-01-29  Nick Clifton  <nickc@redhat.com>
2145
2146         * bfd-in.h (bfd_set_section_vma): Delete.
2147         (bfd_set_section_alignment): Delete.
2148         (bfd_set_section_userdata): Delete.
2149         (bfd_set_cacheable): Delete.
2150         * bfd.c (bfd_set_cacheable): New static inline function.
2151         * section.c (bfd_set_section_userdata): Likewise.
2152         (bfd_set_section_vma): Likewise.
2153         (bfd_set_section_alignment): Likewise.
2154         * bfd-in2.h: Regenerate.
2155
2156 2014-01-28  Nick Clifton  <nickc@redhat.com>
2157
2158         * dwarf2.c (find_abstract_instance_name): For DW_FORM_ref_addr
2159         attributes select the CU containing the abbreviation, which may not
2160         be the current CU.
2161
2162 2014-01-24  Alan Modra  <amodra@gmail.com>
2163
2164         * elf64-ppc.c (ppc_build_one_stub): Correct reloc count passed
2165         to get_relocs for ELFv2.
2166
2167 2014-01-23  H.J. Lu  <hongjiu.lu@intel.com>
2168
2169         PR ld/16498
2170         * elf.c (_bfd_elf_map_sections_to_segments): Issue a linker error
2171         if TLS sections are not adjacent.
2172
2173 2014-01-22  Alan Modra  <amodra@gmail.com>
2174
2175         * elflink.c (elf_link_add_object_symbols): Call minfo for --as-needed.
2176
2177 2014-01-22  Alan Modra  <amodra@gmail.com>
2178
2179         * elf64-ppc.c (STK_LINKER): Comment typo fix.
2180
2181 2014-01-21  H.J. Lu  <hongjiu.lu@intel.com>
2182
2183         PR ld/16467
2184         * elflink.c (_bfd_elf_merge_symbol): When types of the existing
2185         regular default symbol definition and the versioned dynamic
2186         symbol definition mismatch, skip the default symbol definition
2187         if one of them is IFUNC.
2188
2189 2014-01-21  H.J. Lu  <hongjiu.lu@intel.com>
2190
2191         PR ld/2404
2192         * elflink.c (_bfd_elf_merge_symbol): Don't check info->shared,
2193         info->export_dynamic nor h->ref_dynamic for type mismatch when
2194         adding the default version.
2195
2196 2014-01-16  Alan Modra  <amodra@gmail.com>
2197
2198         * elfxx-mips.c (mips_elf_record_got_page_entry): Pass in a
2199         mips_elf_traverse_got_arg* rather than mips_got_info*.
2200         Adjust caller.  Alloc on output_bfd rather than symbol section
2201         owner.
2202
2203 2014-01-15  H.J. Lu  <hongjiu.lu@intel.com>
2204
2205         * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
2206         change.
2207         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2208
2209 2014-01-14  H.J. Lu  <hongjiu.lu@intel.com>
2210
2211         PR ld/16428
2212         * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't discard relocs
2213         against __ehdr_start.
2214         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2215
2216 2014-01-14  H.J. Lu  <hongjiu.lu@intel.com>
2217
2218         * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
2219         change.
2220         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2221
2222 2014-01-14  H.J. Lu  <hongjiu.lu@intel.com>
2223
2224         PR ld/16428
2225         * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't update reloc
2226         count if there are any non pc-relative relocs.
2227         * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2228
2229 2014-01-14  Michael Hudson-Doyle  <michael.hudson@linaro.org>
2230             Kugan Vivekanandarajah  <kugan.vivekanandarajah@linaro.org>
2231
2232         * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use correct
2233         offset while calculating relocation address.
2234         (elfNN_aarch64_create_small_pltn_entry): Likewise.
2235         (elfNN_aarch64_init_small_plt0_entry): Likewise.
2236
2237 2014-01-13  Ma Jiang  <ma.jiang@zte.com.cn>
2238
2239         PR ld/16202
2240         * elf32-arm.c (elf32_arm_final_link_relocate): Refetch addends for
2241         R_ARM_ABS8 and R_ARM_ABS16.
2242
2243 2014-01-13  Alan Modra  <amodra@gmail.com>
2244
2245         * elf32-ppc.c (ppc_elf_check_relocs): For @local call to ifunc,
2246         error when shared and force a plt call otherwise.
2247         (ppc_elf_size_dynamic_sections): Don't emit DT_PPC_GOT unless
2248         plt_type == PLT_NEW.
2249         (ppc_elf_relocate_section): Add missing test to resolve ifuncs to
2250         the appropriate call stub.
2251
2252 2014-01-10  Alan Modra  <amodra@gmail.com>
2253
2254         PR ld/14207
2255         PR ld/16322
2256         PR binutils/16323
2257         * elf.c (assign_file_positions_for_load_sections): Revert last change.
2258         (assign_file_positions_for_non_load_sections): When setting up
2259         PT_GNU_RELRO header, don't require a corresponding PT_LOAD
2260         header that completely covers the relro region.
2261
2262 2014-01-09  Tristan Gingold  <gingold@adacore.com>
2263
2264         * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): use jump
2265         table macros and add macros to initializa the structure.
2266
2267 2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
2268
2269         PR ld/14207
2270         PR ld/16322
2271         PR binutils/16323
2272         * elf.c (_bfd_elf_map_sections_to_segments): Don't check section
2273         size for PT_GNU_RELRO segment.
2274         (assign_file_positions_for_load_sections): If PT_LOAD segment
2275         doesn't fit PT_GNU_RELRO segment, adjust its p_filesz and p_memsz.
2276
2277 2014-01-07  Tom Tromey  <tromey@redhat.com>
2278
2279         * elf32-xtensa.c (vsprint_msg): Don't use old VA_* compatibility
2280         wrappers.
2281
2282 2014-01-03  Nick Clifton  <nickc@redhat.com>
2283
2284         PR binutils/16199
2285         * elf.c (vma_page_aligned_bias): Handle a maxpagesize value of
2286         zero.
2287
2288 2014-01-02  Yuanhui Zhang  <asmwarrior@gmail.com>
2289
2290         PR binutils/14289
2291         * pef.c (bfd_pef_xlib_read_header): Increase buffer size to 80.
2292
2293 2014-01-02  Nick Clifton  <nickc@redhat.com>
2294
2295         PR binutils/11983
2296         * archive.c (_bfd_get_elt_at_filepos): Store a copy of the
2297         filename in the bfd's filename field.
2298         * elfcode.h (bfd_from_remote_memory): Likewise.
2299         * ieee.c (ieee_object_p): Likewise.
2300         * mach-o.c (bfd_mach_o_fat_member_init): Likewise.
2301         * oasys.c (oasys_openr_next_archived_file): Likewise.
2302         * vms-lib.c (_bfd_vms_lib_get_module): Likewise.
2303         * opncls.c (bfd_fopen): Likewise.
2304         (bfd_openstreamr): Likewise.
2305         (bfd_openr_iovec): Likewise.
2306         (bfd_openw): Likewise.
2307         (bfd_create): Likewise.
2308         (_bfd_delete_bfd): Free filename.
2309
2310 For older changes see ChangeLog-2013
2311 \f
2312 Copyright (C) 2014 Free Software Foundation, Inc.
2313
2314 Copying and distribution of this file, with or without modification,
2315 are permitted in any medium without royalty provided the copyright
2316 notice and this notice are preserved.
2317
2318 Local Variables:
2319 mode: change-log
2320 left-margin: 8
2321 fill-column: 74
2322 version-control: never
2323 End: