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