]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
Automatic date update in version.in
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
93ca8569
TB
12015-03-26 Tejas Belagod <tejas.belagod@arm.com>
2
3 * elfnn-aarch64.c (aarch64_build_one_stub): Replace the call to generic
4 _bfd_final_link_relocate with aarch64_relocate.
5
b19a8f85
L
62015-03-26 H.J. Lu <hongjiu.lu@intel.com>
7
8 PR ld/18160
9 * elflink.c (elf_gc_sweep): Skip if relocation is incompatible.
10 (bfd_elf_gc_sections): Likewise.
11
61865519
MS
122015-03-25 Marcus Shawcroft <marcus.shawcroft@arm.com>
13
14 * elfnn-aarch64.c (_bfd_aarch64_resize_stubs): Adjust stub section
15 size for initial branch.
16 (elfNN_aarch64_build_stubs): Write initial branch.
17 _bfd_aarch64_decode_(elfNN_aarch64_output_arch_local_syms): Write
18 mapping symbol on initial branch.
19
d9ced15d 202015-03-25 Marcus Shawcroft <marcus.shawcroft@arm.com>
357d1523
MS
21
22 * elfnn-aarch64.c (_bfd_aarch64_erratum_835769_scan):
23 Update erratum count.
24
d422d1c4
SKS
252015-03-25 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
26
27 * elflink.c (_bfd_elf_gc_mark_extra_sections): Don't break on
28 first matching debug section.
29
8d001214
L
302015-03-24 H.J. Lu <hongjiu.lu@intel.com>
31
32 PR gas/18087
33 * compress.c (bfd_compress_section_contents): Don't write the
34 zlib header and set contents as well as compress_status if
35 compression didn't make the section smaller.
36 (bfd_init_section_compress_status): Don't check compression
37 size here.
38
fc42baf3
NC
392015-03-24 Nick Clifton <nickc@redhat.com>
40
41 PR binutils/17512
42 * coffgen.c (coff_get_normalized_symtab): Fix test for out of
43 range auxillary sections.
44
fc6d53be
MS
452015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
46
47 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Factor
48 code into:
49 (_bfd_aarch64_get_stub_for_link_section): Define.
50
30068a6d
MS
512015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
52
53 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Adjust
54 update of section_group[].stub_sec.
55
5421cc6e
MS
562015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
57
58 * elfnn-aarch64.c (struct aarch64_erratum_835769_fix) Remove.
59 (erratum_835769_scan) Drop fix_table_size_p and fixes_p arguments.
60 Delete fixes, fix_table_size and associated code. Call
61 _bfd_aarch64_add_stub_entry_in_group. Rename to...
62 (bfd_aarch64_erratum_835769_scan): Define.
63 (elfNN_aarch64_size_stubs): Delete erratum_835769_fixes,
64 erratum_835769_fix_table_size, i and associated code. Relocate
65 call to _bfd_aarch64_erratum_835769_scan. Delete adhoc stub size
66 correction. Delete construction of stub entry from
67 erratum_835769_fixes array.
68
e572930b
MS
692015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
70
71 * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Use
72 _bfd_aarch64_add_stub_entry_in_group.
73
8131c122
AM
742015-03-24 Alan Modra <amodra@gmail.com>
75
76 * elf64-ppc.c (ppc64_elf_relocate_section): Report overflow to
77 stubs, even those for undefined weak symbols. Otherwise, don't
78 report relocation overflow on branches to undefined strong
79 symbols. Fix memory leak.
80 * elf32-ppc.c (ppc_elf_relocate_section): Don't report relocation
81 overflow on branches to undefined strong symbols.
82
c53ed7cf
KS
832015-03-23 Keith Seitz <keiths@redhat.com>
84
85 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Add
86 missing ';'.
87
94a75bde
MS
882015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
89
90 * elfnn-aarch64.c (erratum_835769_scan): Factor stub name
91 construction into...
92 (_bfd_aarch64_erratum_835769_stub_name): Define.
93
13f622ec
MS
942015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
95
96 * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Factor out
97 stub resize code into...
98 (bfd_aarch64_resize_stubs): Define.
99
66585675
MS
1002015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
101
102 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Factor stub
103 creation code into...
104 (bfd_aarch64_create_stub_section): Define.
105
ef857521
MS
1062015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
107
108 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Rename
109 from elf_aarch64_create_or_find_stub_sec.
110 (_bfd_aarch64_add_stub_entry_in_group): Rename from
111 elfNN_aarch64_add_stub. Call
112 _bfd_aarch64_create_or_find_stub_sec.
113 (elfNN_aarch64_size_stubs, elfNN_aarch64_size_stubs): Call
114 _bfd_aarch64_add_stub_entry_in_group.
115
2144188d
MS
1162015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
117
118 * elfnn-aarch64.c (erratum_835769_scan) Add comment. Reverse
119 sense of boolean return.
120 (elfNN_aarch64_size_stubs): Adjust for above.
121
4c77202d
MS
1222015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
123
124 * elfnn-aarch64.c (elf_aarch64_create_or_find_stub_sec):
125 Remove unused parameter.
126 (elfNN_aarch64_size_stubs): Adjust for above.
127
9b9971aa
MS
1282015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
129
130 * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Remove bfd_indx.
131
e2cdef47
MS
1322015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
133
134 * elfnn-aarch64.c (aarch64_erratum_835769_fixes)
135 (num_aarch64_erratum_835769_fixes): Remove.
136 (elfNN_aarch64_size_stubs): Remove assignments to above.
137
3d14faea
MS
1382015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
139
23956543
MS
140 * elfnn-aarch64.c (aarch64_mem_op_p): Update comment. Rename rtn
141 to rt2.
3d14faea
MS
142 (aarch64_erratum_seqeunce): Rename rtn to rt2.
143
f872121a
MS
1442015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
145
146 * elfnn-aarch64.c (elfNN_aarch64_write_section): Adjust layout.
147
1740ba0c
NC
1482015-03-19 Nick Clifton <nickc@redhat.com>
149
150 * elf32-rl78.c (rl78_cpu_name): New function. Prints the name of
151 the RL78 core based upon the flags.
152 (rl78_elf_merge_private_bfd_data): Handle merging of G13 and G14
153 flags.
154 (rl78_elf_print_private_bfd_data): Use rl78_cpu_name.
155 (elf32_rl78_machine): Always return bfd_mach_rl78.
156
e2575e05
NC
1572015-03-19 Nick Clifton <nickc@redhat.com>
158
159 PR 18078
160 * compress.c (bfd_compress_section_contents): Do not define this
161 function if it is not used.
162
0b0732e1
L
1632015-03-18 H.J. Lu <hongjiu.lu@intel.com>
164
165 * compress.c (bfd_compress_section_contents): Make it static.
166 * bfd/bfd-in2.h: Regenerated.
167
27aaeda0
NC
1682015-03-18 Eric Youngdale <eyoungdale@ptc.com>
169
170 PR ld/16598
171 * peicode.h (pe_ILF_build_a_bfd): Add support for creating relocs
172 suitable for the AMD64.
173
273a4985
JT
1742015-03-18 Jon Turney <jon.turney@dronecode.org.uk>
175 Nick Clifton <nickc@redhat.com>
176
177 PR binutils/18087
178 * coffgen.c (make_a_section_from_file): Only prepend a z to a
179 debug section's name if the section was actually compressed.
180 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
181 * compress.c (bfd_init_section_compress_status): Do not compress
182 the section if doing so would make it bigger. In such cases leave
183 the section alone and return COMPRESS_SECTION_NONE.
184
c4b0b099
AM
1852015-03-17 Alan Modra <amodra@gmail.com>
186
187 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Return count of 0
188 on nothing to do, before malloc of returned symbol array.
189
9c761a55
NC
1902015-03-16 Nick Clifton <nickc@redhat.com>
191
192 * elf32-rx.c (elf32_rx_relax_delete_bytes): If the relocs are not
193 stored in the elf_section_data structure then load them as
194 necessary.
195
b9005ba7
AK
1962015-03-14 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
197
198 * elf-s390-common.c (elf_s390_elf_sort_relocs_p): Don't sort
199 relocs against code sections.
200 * elf32-s390.c: Define elf_backend_sort_relocs_p.
201 * elf64-s390.c: Likewise.
202
1079403c
AM
2032015-03-11 Alan Modra <amodra@gmail.com>
204
205 * elf32-ppc.c (ppc_elf_get_synthetic_symtab): Examine stubs in
206 reverse order. Account for larger size of __tls_get_addr_opt stub.
207
a5721edd
JW
2082015-03-10 Yuri Gribov <y.gribov@samsung.arm>
209
210 PR ld/16572
211 * elf32-arm.c (elf32_arm_final_link_relocate): Remove support for
212 ELF_ARM_HASENTRY.
213 (elf32_arm_print_private_bfd_data): Likewise.
214
65164438
NC
2152015-03-06 Nick Clifton <nickc@redhat.com>
216
217 PR binutils/17765
218 * elflink.c (put_value): Like previous delta, but for the 32-bit
219 case.
220
41cd1ad1
NC
2212015-03-05 Nick Clifton <nickc@redhat.com>
222
223 PR binutils/17765
224 * elflink.c (put_value): Avoid using an undefined shift
225 operation.
226
ca3fe95e
L
2272015-03-05 H.J. Lu <hongjiu.lu@intel.com>
228
229 PR ld/pr15228
230 PR ld/pr17709
231 * elf-bfd.h (elf_backend_data): Add extern_protected_data.
232 * elf32-i386.c (elf_backend_extern_protected_data): New.
233 Defined to 1.
234 * elf64-x86-64.c (elf_backend_extern_protected_data): Likewise.
235 * elflink.c (_bfd_elf_adjust_dynamic_copy): Don't error on
236 copy relocs against protected symbols if extern_protected_data
237 is true.
238 (_bfd_elf_symbol_refs_local_p): Don't return true on protected
239 non-function symbols if extern_protected_data is true.
240 * elfxx-target.h (elf_backend_extern_protected_data): New.
241 Default to 0.
242 (elfNN_bed): Initialize extern_protected_data with
243 elf_backend_extern_protected_data.
244
425bd9e1
NC
2452015-03-05 Nick Clifton <nickc@redhat.com>
246
247 PR binutils/18025
248 * coffgen.c (coff_find_nearest_line_with_names): If the dwarf2
249 lookup fails, check for an address bias in the dwarf info, and if
250 one exists, retry the lookup with the biased value.
251 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): New function.
252 Determines if a bias exists bewteen the addresses of functions
253 based on DWARF information vs symbol table information.
254 * libbfd-in.h (_bfd_dwarf2_find_symbol_bias): Prototype.
255 * libbfd.h: Regenerate.
256
8ef229f3
MS
2572015-03-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
258
259 * elfxx-aarch64.c (decode_add_imm, decode_movw_imm)
260 (decode_tst_branch_ofs_14, decode_ld_lit_ofs_19)
261 (decode_cond_branch_ofs_19, decode_branch_ofs_26): Remove.
262
8e2fe09f
MS
2632015-03-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
264
265 * elfnn-aarch64.c (aarch64_build_one_stub): Call abort.
266 (aarch64_size_one_stub): Likewise.
267 (aarch64_map_one_stub): Likewise.
268
df88b702
AA
2692015-03-04 Andreas Arnez <arnez@linux.vnet.ibm.com>
270
271 * cpu-s390.c (N): New macro.
272 (bfd_s390_31_arch): New. Define only if default target word size
273 is 64 bits. Otherwise define...
274 (bfd_390_64_arch): ...this. Make static.
275 (bfd_s390_arch): Define according to the default target word size.
276 Let the 'next' field point to the alternate arch.
277
e09ab7ac
RS
2782015-03-04 Richard Sandiford <richard.sandiford@arm.com>
279
280 PR gas/17843
281 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Expect
282 R_AARCH64_TLSLE_MOVW_TPREL_G0_NC and R_AARCH64_TLSLE_MOVW_TPREL_G1_NC
283 to be used with MOVK rather than MOVZ.
284
71eef2bd
DD
2852015-03-03 DJ Delorie <dj@redhat.com>
286
287 * elf32-rl78.c (rl78_elf_relax_section): Only relax ADDR16's if
288 there's a symbol.
289
f01f1741
AM
2902015-02-28 Alan Modra <amodra@gmail.com>
291
292 * elf32-ppc.c (ppc_elf_tls_setup): Set no_tls_get_addr_opt if
293 not PLT_NEW.
294
c1d11331
L
2952015-02-27 H.J. Lu <hongjiu.lu@intel.com>
296
297 * elf32-i386.c (need_convert_mov_to_lea): New.
298 (elf_i386_check_relocs): Set need_convert_mov_to_lea if needed.
299 (elf_i386_convert_mov_to_lea): Return TRUE if
300 need_convert_mov_to_lea is unset.
301 * elf64-x86-64.c (need_convert_mov_to_lea): New.
302 (elf_x86_64_check_relocs): Set need_convert_mov_to_lea if needed.
303 (elf_x86_64_convert_mov_to_lea): Return TRUE if
304 need_convert_mov_to_lea is unset.
305
cdb602b1
NC
3062015-02-27 Nick Clifton <nickc@redhat.com>
307
308 PR binutils/17910
309 * coffgen.c (_bfd_coff_internal_syment_name): Only check for
310 string length overflow when the string table length is actually
311 set.
312
96c20bc1
MS
3132015-02-27 Marcus Shawcroft <marcus.shawcroft@arm.com>
314
315 * bfd/bfd-in2.h: Regenerate.
316 * bfd/libbfd.h: Regenerate.
317
1ada945d
MS
3182015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
319
320 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix
321 TLSDESC_LD_PREL19 field width and masks.
322 (aarch64_tls_transition_without_check)
323 (aarch64_reloc_got_type, elfNN_aarch64_final_link_relocate)
324 (elfNN_aarch64_tls_relax, elfNN_aarch64_relocate_section)
325 (elfNN_aarch64_gc_sweep_hook, elfNN_aarch64_check_relocs): Handle
326 BFD_RELOC_AARCH64_TLSDESC_LD_PREL19.
327 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
328 (_bfd_aarch64_elf_resolve_relocation): Likewise.
329
389b8029
MS
3302015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
331
73920eed
MS
332 * elfnn-aarch64.c (IS_AARCH64_TLSDESC_RELOC): Reorder R_TYPE
333 tests.
389b8029
MS
334 (aarch64_tls_transition_without_check)
335 (aarch64_reloc_got_type, elfNN_aarch64_final_link_relocate)
336 (elfNN_aarch64_tls_relax, elfNN_aarch64_relocate_section)
337 (elfNN_aarch64_gc_sweep_hook, elfNN_aarch64_check_relocs): Handle
338 BFD_RELOC_AARCH64_TLSDESC_ADR_PREL21.
339 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
340 (_bfd_aarch64_elf_resolve_relocation): Likewise.
341 * reloc.c (BFD_RELOC_AARCH64_TLSGD_ADR_PREL21): Define.
342
3c12b054
MS
3432015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
344
345 * elfnn-aarch64.c (IS_AARCH64_TLS_RELOC)
346 (elfNN_aarch64_howto_table, aarch64_tls_transition_without_check)
347 (aarch64_reloc_got_type, elfNN_aarch64_final_link_relocate)
348 (elfNN_aarch64_tls_relax, elfNN_aarch64_relocate_section)
349 (elfNN_aarch64_gc_sweep_hook, elfNN_aarch64_check_relocs): Handle
350 BFD_RELOC_AARCH64_TLSGD_ADR_PREL21.
351 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
352 (_bfd_aarch64_elf_resolve_relocation): Likewise.
353 * reloc.c (BFD_RELOC_AARCH64_TLSGD_ADR_PREL21): Define.
354
043bf05a
MS
3552015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
356
357 * elfnn-aarch64.c: (TLSIE_LD_GOTTREL_PREL19): Fix HOWTO bit field width.
358 (aarch64_tls_transition_without_check, aarch64_reloc_got_type)
359 (elfNN_aarch64_final_link_relocate, elfNN_aarch64_tls_relax)
360 (elfNN_aarch64_relocate_section, elfNN_aarch64_gc_sweep_hook)
361 (elfNN_aarch64_check_relocs): Handle
362 BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_PREL19.
363
364 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
365 (_bfd_aarch64_elf_resolve_relocation): Likewise.
366
7366006f
MS
3672015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
368
369 * elfnn-aarch64.c: (TLSDESC_CALL): Fix HOWTO bit field width.
370
07875fbc
MS
3712015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
372
373 * elfnn-aarch64.c (TLSLE_MOVW_TPREL_G2)
374 (TLSLE_MOVW_TPREL_G1, TLSLE_MOVW_TPREL_G1_NC)
375 (TLSLE_MOVW_TPREL_G0, TLSLE_MOVW_TPREL_G0_NC): Fix bit field
376 width.
377
49d8f92c
MS
3782015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
379
380 * elfnn-aarch64.c: (TLSIE_MOVW_GOTTPREL_G0_NC): Fix HOWTO bit
381 field width.
382
c86934ce
NC
3832015-02-26 Nick Clifton <nickc@redhat.com>
384
385 PR binutils/17512
386 * coffcode.h (coff_compute_section_file_positions): Report
387 negative page sizes.
388 * elf.c (elf_fake_sections): Handle excessive alignmment powers.
389 (assign_file_positions_for_non_load_sections): Replace assertion
390 with an error message.
391 (rewrite_elf_program_header): Handle excessive segment
392 alignments.
393 * mach-o.c (bfd_mach_o_read_section_32): Likewise.
394 (bfd_mach_o_read_section_64): Likewise.
395 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Use %B to
396 print a bfd name, not %A.
397
bd4d2eaa
AM
3982015-02-26 Alan Modra <amodra@gmail.com>
399
400 * elf64-ppc.c (plt_stub_size, build_plt_stub): Don't build
401 thread-safe stubs for iplt.
402 (build_tls_get_addr_stub): Restore r2 immediately after call.
403
99654aaf
TG
4042015-02-26 Terry Guo <terry.guo@arm.com>
405
406 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Update how we
407 merge Tag_ABI_HardFP_use.
408
a127494f
AM
4092015-02-26 Alan Modra <amodra@gmail.com>
410
411 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Heed -z nocopyreloc.
412 Use text relocs rather than giving an error on trying to use
413 .dynbss for protected shared lib vars.
414 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
415
bac13f5a
AB
4162015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
417
418 * elf32-avr.c (struct elf_avr_section_data): New structure.
419 (struct avr_relax_info): New structure.
420 (elf_avr_new_section_hook): New function.
421 (struct elf_avr_section_data): Add relax_info.
422 (get_avr_relax_info): New function.
423 (init_avr_relax_info): New function.
424 (elf32_avr_relax_delete_bytes): Find next property record before
425 deleting bytes. When deleting don't move bytes beyond the next
426 property record.
427 (avr_elf32_assign_records_to_section): New function.
428 (avr_property_record_compare): New function.
429 (avr_load_all_property_sections): New function.
430 (elf32_avr_relax_section): Load property data. After relaxing the
431 section, move any .align directives that have enough deleted bytes
432 before them.
433 (bfd_elf32_new_section_hook): Define.
434
137c83d6
AB
4352015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
436
437 * elf32-avr.h (struct avr_property_header): New strucure.
438 (avr_elf32_load_property_records): Declare.
439 (avr_elf32_property_record_name): Declare.
440 * elf32-avr.c: Add bfd_stdint.h include.
441 (retrieve_local_syms): New function.
442 (get_elf_r_symndx_section): New function.
443 (get_elf_r_symndx_offset): New function.
444 (internal_reloc_compare): New function.
445 (struct avr_find_section_data): New structure.
446 (avr_is_section_for_address): New function.
447 (avr_find_section_for_address): New function.
448 (avr_elf32_load_records_from_section): New function.
449 (avr_elf32_load_property_records): New function.
450 (avr_elf32_property_record_name): New function.
451
fdd410ac
AB
4522015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
453
454 * elf32-avr.h (AVR_PROPERTY_RECORD_SECTION_NAME): Define.
455 (AVR_PROPERTY_RECORDS_VERSION): Define.
456 (AVR_PROPERTY_SECTION_HEADER_SIZE): Define.
457 (struct avr_property_record): New structure.
458
685080f2
NC
4592015-02-24 Nick Clifton <nickc@redhat.com>
460
461 * elf32-v850.c (v850_set_note): New function. Creates a Renesas
462 style note entry.
463 (v850_elf_make_note_section): New function. Creates a note
464 section.
465 (v850_elf_create_sections): New function. Create a note section
466 if one is not already present.
467 (v850_elf_set_note): New function. Adds a note to a bfd.
468 (v850_elf_copy_private_bfd_data): New function. Copies V850
469 notes.
470 (v850_elf_merge_notes): New function. Merges V850 notes.
471 (print_v850_note): New function. Displays a V850 note.
472 (v850_elf_print_notes): New function. Displays all notes attached
473 to a bfd.
474 (v850_elf_merge_private_bfd_data): Call v850_elf_merge_notes.
475 (v850_elf_print_private_bfd_data): Call v850_elf_print_notes.
476 (v850_elf_fake_sections): Set the type of the V850 note section.
477 * bfd-in.h (v850_elf_create_sections): Add prototype.
478 (v850_elf_set_note): Add prototype.
479 * bfd-in2.h: Regenerate.
480
31593e1b
NC
4812015-02-24 Nick Clifton <nickc@redhat.com>
482
483 * configure.ac (AC_CHECK_HEADERS): Add wctype.h.
484 * configure: Regenerate.
485 * config.in: Regenerate.
486 * peXXigen.c: Include wctype.h if HAVE_WCTYPE_H is defined.
487 (u16_mbtowc): Use wint_t types if HAVE_WCTYPE_H is defined.
488 (rsrc_cmp): Use towlower instead of wcsncasecmp if HAVE_WCTYPE_H
489 is defined.
490
3ad797fd
NC
4912015-02-24 Nick Clifton <nickc@redhat.com>
492
493 * pdp11.c (set_section_contents): Pad the .text and .data sections
494 to their aligned sizes.
495
5518c738
YS
4962015-02-23 Yoshinori Sato <ysato@users.sourceforge.jp>
497
498 * config.bfd: Add h8300-*-linux.
499 * configure.ac: Add h8300_elf32_linux_vec.
500 * configure: Regenerate.
501 * elf32-h8300.c: Likewise.
502 * targets.c(_bfd_target_vector): Likewise.
503
cb967f0d
NC
5042015-02-23 Nick Clifton <nickc@redhat.com>
505
506 PR 17914
507 * cpu-w65.c: Correct typos in license notice.
508
0f8f0c57
NC
509 PR 17940
510 * elf32-msp430.c (msp430_elf_relax_delete_bytes): Adjust debug
511 symbols at end of sections. Adjust function sizes.
512
4ef9f41a
AA
5132015-02-20 Andreas Arnez <arnez@linux.vnet.ibm.com>
514
515 * elf-bfd.h (elfcore_write_s390_vxrs_low): Add prototype.
516 (elfcore_write_s390_vxrs_high): Likewise.
517 * elf.c (elfcore_grok_s390_vxrs_low): New function.
518 (elfcore_grok_s390_vxrs_high): New function.
519 (elfcore_grok_note): Call them.
520 (elfcore_write_s390_vxrs_low): New function.
521 (elfcore_write_s390_vxrs_high): New function.
522 (elfcore_write_register_note): Call them.
523
837914ee
BD
5242015-02-19 Branko Drevensek <branko.drevensek@gmail.com>
525
526 PR 17995
527 * verilog.c (verilog_write_record): Correct buffer size.
528
cf18fda4
AM
5292015-02-19 Alan Modra <amodra@gmail.com>
530
531 * elflink.c (_bfd_elf_define_linkage_sym): Set 'bed' earlier.
532
d983c8c5
AM
5332015-02-19 Alan Modra <amodra@gmail.com>
534
535 PR ld/4317
536 * elflink.c (elf_link_input_bfd): Drop undefined local syms.
537 (elf_link_output_extsym): Drop local and global undefined syms.
538 Tidy. Expand comment.
539
2ec55de3
AM
5402015-02-17 Alan Modra <amodra@gmail.com>
541
542 PR ld/17975
543 * elflink.c (struct elf_outext_info): Remove need_second_pass
544 and second_pass.
545 (elf_link_output_extsym): Delete code handling second forced
546 local pass. Move code emitting NULL STT_FILE symbol later, so
547 that it can be omitted if forced local is stripped. Don't
548 emit the NULL STT_FILE if no file symbols have been output.
549 (bfd_elf_final_link): Remove second forced local pass.
550 * elf32-ppc.c (add_stub_sym): Set linker_def on linker syms.
551 (ppc_elf_size_dynamic_sections): Likewise.
552 * elf64-ppc.c (ppc_build_one_stub): Likewise.
553 (build_global_entry_stubs): Likewise.
554 (ppc64_elf_build_stubs): Likewise.
555
6dfb72b9
L
5562015-02-16 H.J. Lu <hongjiu.lu@intel.com>
557
558 PR ld/17975
559 * elflink.c (elf_link_output_extsym): Only check filesym_count
560 when outputting a NULL FILE symbol. Set second_pass_sym to
561 h->forced_local && !h->root.linker_def.
562
576fa883
L
5632015-02-15 H.J. Lu <hongjiu.lu@intel.com>
564
565 * elf32-i386.c (elf_i386_always_size_sections): Set root.linker_def
566 on _TLS_MODULE_BASE_.
567 * elf64-x86-64.c (elf_x86_64_always_size_sections): Likewise.
568
62f8d217
AM
5692015-02-15 Alan Modra <amodra@gmail.com>
570
571 * dwarf2.c (read_rangelist): Correct buffer overflow check
572 Whitespace throughout file.
573
ce875075
AM
5742015-02-14 Alan Modra <amodra@gmail.com>
575
576 PR ld/17973
577 * bfd.c (struct bfd): Add lto_output.
578 * linker.c (_bfd_handle_already_linked): Explicitly test for
579 objects added by the lto plugin.
580 * opncls.c (_bfd_new_bfd_contained_in): Copy lto_output and
581 no_export flags from archive.
582 * archive.c (open_nested_file): New function, setting lto_output
583 and no_export, extracted from..
584 (find_nested_archive): ..here. Flip params. Rename from
585 _bfd_find_nested_archive.
586 (_bfd_get_elt_at_filepos): Correct var typo. Use open_nested_file.
587 (_bfd_look_for_bfd_in_cache): Copy no_export.
588 * elflink.c (elf_link_add_object_symbols): Remove now unnecessary
589 my_archive->no_export test.
590 (elf_link_input_bfd): Drop existing lto_output STT_FILE syms.
591 Don't use the file name when adding lto_output STT_FILE sym.
592 * bfd-in2.h: Regenerate.
593
451dfd38
AM
5942015-02-13 Alan Modra <amodra@gmail.com>
595
596 PR binutils/17512
597 * elf64-ppc.c (opd_entry_value): Tighten offset check. Remove
598 now redundant assert.
599
dbb3fbbb
NC
6002015-02-12 Nick Clifton <nickc@redhat.com>
601
602 PR binutils/17512
603 * dwarf.c (read_1_byte, read_1_signed_byte, read_2_bytes)
604 (read_4_bytes, read_8_bytes, read_n_bytes, read_string)
605 (read_indirect_string, read_alt_indirect_string)
606 (read_alt_indirect_ref, read_address, read_abbrevs)
607 (read_attribute_value, read_attribute, decode_line_info)
608 (find_abstract_instance_name, read_rangelist)
609 (scan_unit_for_symbols, parse_comp_unit)
610 (_bfd_dwarf2_find_nearest_line): Harden DWARF reading code. Pass
611 end pointers to reading functions and check for offsets taking
612 pointers out of range. Replace calls to read_*_leb128 with calls
613 to safe_read_leb128.
614
615 (* elf64-ppc.c (opd_entry_value): Add a check for an overlarge
616 offset.
617 * syms.c (_bfd_stab_section_find_nearest_line): Add checks for
618 computed file_name address being before the start of the string
619 table.
620
b9dc5a87
L
6212015-02-11 H.J. Lu <hongjiu.lu@intel.com>
622
623 PR ld/17878
624 * bfd.c (bfd_plugin_format): New.
625 (bfd): Add plugin_format and plugin_dummy_bfd.
626 * plugin.c (try_load_plugin): Take a pointer to bfd_boolean
627 argument to return TRUE if any plugin is found. Set plugin_format.
628 (has_plugin): New.
629 (bfd_plugin_target_p): New.
630 (bfd_plugin_specified_p): Likewise.
631 (bfd_plugin_target_p): Likewise.
632 (register_ld_plugin_object_p): Likewise.
633 (bfd_plugin_set_plugin): Set has_plugin.
634 (load_plugin): Cache try_load_plugin result.
635 (bfd_plugin_object_p): Try ld_plugin_object_p first. Check
636 plugin_format.
637 * plugin.h (bfd_plugin_target_p): New.
638 (bfd_plugin_specified_p): Likewise.
639 (register_ld_plugin_object_p): Likewise.
640 * bfd-in2.h: Regenerated.
641
55172d69
PA
6422015-02-11 Pedro Alves <palves@redhat.com>
643
644 * libbfd-in.h [__cplusplus]: Open extern "C" scope.
645 * libcoff-in.h [__cplusplus]: Open extern "C" scope.
646 * libbfd.h: Regenerate.
647 * libcoff.h: Regenerate.
648
649 * elf-bfd.h [__cplusplus]: Wrap in extern "C".
650 * mach-o.h [__cplusplus]: Wrap in extern "C".
651 * som.h [__cplusplus]: Wrap in extern "C".
652
77ef8654
NC
6532015-02-10 Nick Clifton <nickc@redhat.com>
654
655 PR binutils/17512
656 * coffcode.h (styp_to_sec_flags): Use an unsigned long type to
657 hold the flag bits.
658 * peXXigen.c (pe_print_reloc): Use unsigned types to hold the
659 size and number of relocs.
660 (pe_print_debugdata): Use a 32-bit aligned buffer to store the
661 codeview record.
662 * versados.c (process_otr): Check the esdid value before using it
663 to access the EDATA.
664
35181b3e
EM
6652015-02-09 Ed Maste <emaste@freebsd.org>
666
667 * elf32-i386.c (elf_i386_get_plt_sym_val): Avoid incrementing
668 uninitialized and unused variable.
669 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
670
989f9879
AM
6712015-02-09 Alan Modra <amodra@gmail.com>
672
673 * elf32-ppc.c (ppc_elf_relocate_section): Don't segfault on NULL
674 tls_sec.
675 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
676 * elflink.c (elf_link_output_extsym): Don't assert on NULL tls_sec.
677
ca4be51c
AM
6782015-02-09 Alan Modra <amodra@gmail.com>
679
680 * elflink.c: Whitespace, formatting fixes.
681 (elf_link_input_bfd): Clarify comment.
682 (elf_link_output_extsym): Exclude symbols in linker created
683 sections when testing for plugin symbols.
684
1952c5cd
L
6852015-02-07 H.J. Lu <hongjiu.lu@intel.com>
686
687 PR ld/17935
688 * elf32-i386.c (elf_i386_readonly_dynrelocs): Also issue a
689 warning for relocation in readonly section for -z text.
690 (elf_i386_size_dynamic_sections): Likewise.
691 * elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise.
692 (elf_x86_64_size_dynamic_sections): Likewise.
693
9e2dec47
L
6942015-02-06 H.J. Lu <hongjiu.lu@intel.com>
695
696 PR ld/12365
697 PR ld/14272
698 * elflink.c (_bfd_elf_fix_symbol_flags): Revert the last change.
699 (elf_link_input_bfd): Mark the plugin symbol undefined if it is
700 referenced from a non-IR file.
701
5929c344
NC
7022015-02-06 Nick Clifton <nickc@redhat.com>
703
704 PR binutils/17512
705 * peXXigen.c (rsrc_print_resource_entries): Add range check for
706 addresses that wrap around the address space.
707 (rsrc_parse_entry): Likewise.
708
60f79275
L
7092015-02-03 H.J. Lu <hongjiu.lu@intel.com>
710
711 PR ld/12365
712 PR ld/14272
713 * elflink.c (_bfd_elf_fix_symbol_flags): Mark the plugin symbol
714 undefined if it is referenced from a non-IR file.
715
64d29018
NC
7162015-02-03 Nick Clifton <nickc@redhat.com>
717
718 PR binutils/17512
719 * ecoff.c: Use bfd_alloc2 to allocate space for structure arrays.
720 (_bfd_ecoff_slurp_symbol_table): Check for a negative symbol
721 index or an out of range fdr index.
722 * elf-m10300.c (mn10300_info_to_howto): Fix typo in error message.
723 * elf32-arc.c (arc_info_to_howto_rel): Likewise.
724 * elf32-avr.c (avr_info_to_howto_rela): Likewise.
725 * elf32-cr16.c (elf_cr16_info_to_howto): Likewise.
726 * elf32-cr16c.c (elf_cr16c_info_to_howto_rel): Likewise.
727 * elf32-cris.c (cris_info_to_howto_rela): Likewise.
728 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
729 * elf32-d10v.c (d10v_info_to_howto_rel): Likewise.
730 * elf32-d30v.c (d30v_info_to_howto_rel): Likewise.
731 * elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise.
732 * elf32-fr30.c (fr30_info_to_howto_rela): Likewise.
733 * elf32-frv.c (frv_info_to_howto_rela): Likewise.
734 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
735 * elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise.
736 * elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise.
737 * elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise.
738 * elf32-lm32.c (lm32_info_to_howto_rela): Likewise.
739 * elf32-m32c.c (m32c_info_to_howto_rela): Likewise.
740 * elf32-m32r.c (m32r_info_to_howto_rel): Likewise.
741 * elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise.
742 * elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise.
743 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
744 * elf32-mep.c (mep_info_to_howto_rela): Likewise.
745 * elf32-metag.c (metag_info_to_howto_rela): Likewise.
746 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
747 * elf32-moxie.c (moxie_info_to_howto_rela): Likewise.
748 * elf32-msp430.c (msp430_info_to_howto_rela): Likewise.
749 * elf32-mt.c (mt_info_to_howto_rela): Likewise.
750 * elf32-nds32.c (nds32_info_to_howto_rel): Likewise.
751 * elf32-or1k.c (or1k_info_to_howto_rela): Likewise.
752 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
753 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
754 * elf32-rl78.c (rl78_info_to_howto_rela): Likewise.
755 * elf32-rx.c (rx_info_to_howto_rela): Likewise.
756 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
757 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
758 * elf32-v850.c (v850_elf_perform_relocation): Likewise.
759 * elf32-vax.c (rtype_to_howto): Likewise.
760 * elf32-visium.c (visium_info_to_howto_rela): Likewise.
761 * elf32-xgate.c (xgate_info_to_howto_rel): Likewise.
762 * elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise.
763 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
764 * elf64-mmix.c (mmix_info_to_howto_rela): Likewise.
765 * mach-o.c: Use bfd_alloc2 to allocate space for structure arrays.
766 (bfd_mach_o_canonicalize_one_reloc): Fix check on out
767 of range symbol indicies.
768 (bfd_mach_o_canonicalize_relocs): Check for out of range alloc.
769 (bfd_mach_o_canonicalize_dynamic_reloc): Likewise.
770 (bfd_mach_o_build_dysymtab): Likewise.
771 (bfd_mach_o_write_symtab_content): Set the string table size to
772 zero upon error.
773 (bfd_mach_o_read_symtab_symbols): Reset the nsyms value if the
774 read fails.
775 * peXXigen.c (pe_print_edata): Check for numeric overflow in edt
776 fields.
777 * tekhex.c (first_phase): Check for src pointer reaching end of
778 buffer.
779
3a635617
WN
7802015-02-03 Will Newton <will.newton@linaro.org>
781
46b87d49
WN
782 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol):
783 Set st_value to zero for undefined symbols if the reference
784 is weak or pointer_equality_needed is FALSE.
785
3a635617
WN
786 * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Improve
787 comment discussing why we clear st_value for some symbols.
788
0c4bd9d9
KLC
7892015-02-02 Kuan-Lin Chen <kuanlinchentw@gmail.com>
790
791 * elf32-nds32.c (nds32_get_section_contents): Add one more argument.
792 (nds32_elf_relocate_section): Do not relocate R_NDS32_LONGJUMP7.
793
b86ac8e3
AM
7942015-01-29 Alan Modra <amodra@gmail.com>
795
796 * elf64-ppc.c (ppc64_elf_relocate_section): Correct GOT_TLSLD
797 optimization. Tidy mask for GOT_TLSGD optimization.
798 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. Correct
799 location of nop zapping high insn too.
800
dbd1e97e
AM
8012015-01-28 Alan Modra <amodra@gmail.com>
802
803 * elf64-ppc.h (struct ppc64_elf_params): Add "object_in_toc".
804 * elf64-ppc.c (ppc64_elf_add_symbol_hook): Assume that global symbols
805 in .toc indicate xlc compiled code that might require a rw .toc.
806
3f8107ab
AM
8072015-01-28 James Bowman <james.bowman@ftdichip.com>
808
809 * Makefile.am: Add FT32 files.
810 * archures.c (enum bfd_architecture): Add bfd_arch_ft32.
811 (bfd_mach_ft32): Define.
812 (bfd_ft32_arch): Declare.
813 (bfd_archures_list): Add bfd_ft32_arch.
814 * config.bfd: Handle FT32.
815 * configure.ac: Likewise.
816 * cpu-ft32.c: New file.
817 * elf32-ft32.c: New file.
818 * reloc.c (BFD_RELOC_FT32_10, BFD_RELOC_FT32_20, BFD_RELOC_FT32_17,
819 BFD_RELOC_FT32_18): Define.
820 * targets.c (_bfd_target_vector): Add ft32_elf32_vec.
821 * bfd-in2.h: Regenerate.
822 * libbfd.h: Regenerate.
823 * Makefile.in: Regenerate.
824 * configure: Regenerate.
825 * po/SRC-POTFILES.in: Regenerate.
826
37e3922e
NC
8272015-01-27 Nick Clifton <nickc@redhat.com>
828
829 PR binutils/17512
830 * pdp11.c (aout_get_external_symbols): Return false if there are
831 no symbols.
832
877a8638
NC
833 * dwarf2.c (concat_filename): Check for an empty directory table.
834 (scan_unit_for_symbols): Check for reading off the end of the
835 unit.
836 (parse_comp_unit): Check for a DW_AT_comp_dir attribute with a
837 non-string form.
838 * elf64-ppc.c (opd_entry_value): Fail if there are no relocs
839 available.
840
18393a2e
KLC
8412015-01-26 Kuan-Lin Chen <kuanlinchentw@gmail.com>
842
843 * elf32-nds32.c (nds32_elf_pick_relax): Fix again setting.
844
055173ca
DD
8452015-01-22 DJ Delorie <dj@redhat.com>
846
847 * elf32-m32c.c (m32c_apply_reloc_24): New.
848 (m32c_elf_howto_table): Use it for R_M32C_24.
849 (m32c_elf_relocate_section): Handle R_M32C_24 specially.
850
4e5cb37e
NC
8512015-01-22 Nick Clifton <nickc@redhat.com>
852
853 PR binutils/17512
854 * coffcode.h (handle_COMDAT): When searching for the section
855 symbol, make sure that there is space left in the symbol table.
856 * vms-alpha.c (_bfd_vms_slurp_ehdr): Add range checks.
857
86eafac0
NC
8582015-01-21 Nick Clifton <nickc@redhat.com>
859
860 PR binutils/17512
861 * coffcode.h (coff_set_arch_mach_hook): Check return value from
862 bfd_malloc.
863 (coff_slurp_line_table): Return FALSE if the line number
864 information was corrupt.
865 (coff_slurp_symbol_table): Return FALSE if the symbol information
866 was corrupt.
867 * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Always
868 initialise the fields of the dyld_info structure.
869 (bfd_mach_o_build_exec_seg_command): Replace assertion with an
870 error message and a return value.
871 (bfd_mach_o_layout_commands): Change the function to boolean.
872 Return FALSE if the function fails.
873 (bfd_mach_o_build_commands): Fail if bfd_mach_o_layout_commands
874 fails.
875 (bfd_mach_o_read_command): Fail if an unrecognised command is
876 encountered.
877 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Set bfd_error if the
878 read fails.
879 (slurp_symtab): Check the return from bfd_malloc.
880 (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if the copy
881 encountered an error.
882 (_bfd_XXi_final_link_postscript): Fail if a section could not be
883 copied.
884 * peicode.h (pe_bfd_object_p): Fail if the header could not be
885 swapped in.
886 * tekhex.c (first_phase): Fail if the section is too big.
887 * versados.c (struct esdid): Add content_size field.
888 (process_otr): Use and check the new field.
889 (versados_get_section_contents): Check that the section exists and
890 that the requested data is available.
891
03d5b773
CLT
8922015-01-20 Chung-Lin Tang <cltang@codesourcery.com>
893
894 * elf32-nios2.c (elf_backend_default_execstack): Define as 0.
895
1c9177d9
AM
8962015-01-20 Alan Modra <amodra@gmail.com>
897
898 PR ld/17615
899 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Don't drop
900 ELF_COMMON_DEF syms.
901
c4621b33
AM
9022015-01-19 Alan Modra <amodra@gmail.com>
903
3e2aa5bb 904 PR ld/17615
c4621b33
AM
905 * elf-bfd.h (ELF_COMMON_DEF_P): Note that this might be true for
906 linker script assignments too.
907 * elflink.c (elf_gc_sweep_symbol): Don't drop ELF_COMMON_DEF syms.
908 (bfd_elf_gc_mark_dynamic_ref_symbol): Similarly.
909
0ba38529
AM
9102015-01-19 Alan Modra <amodra@gmail.com>
911
912 * elf32-bfin.c (bfin_bfd_reloc_type_lookup): Correct loop iteration
913 to allow return of first howto.
914 * elf32-fr30.c (fr30_reloc_type_lookup): Likewise.
915 * elf32-m32c.c (m32c_reloc_type_lookup): Likewise.
916 * elf32-moxie.c (moxie_reloc_type_lookup): Likewise.
917 * elf32-or1k.c (or1k_reloc_type_lookup): Likewise.
918 * elf32-rl78.c (rl78_reloc_type_lookup): Likewise.
919 * elf32-rx.c (rx_reloc_type_lookup): Likewise.
920 * elf32-tilepro.c (tilepro_reloc_type_lookup): Likewise.
921 * elf32-xstormy16.c (xstormy16_reloc_type_lookup): Likewise.
922 * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
923 * elf32-nios2.c (nios2_reloc_map): Add mapping for R_NIOS2_NONE.
924 * elf32-spu.c (spu_elf_bfd_to_reloc_type): Allow return of R_SPU_NONE.
925 (spu_elf_reloc_type_lookup): Adjust to suit.
926
6346d5ca
AM
9272015-01-19 Alan Modra <amodra@gmail.com>
928
929 * bfd-in.h (bfd_get_section_limit_octets): New define, extracted from..
930 (bfd_get_section_limit): ..here.
931 * reloc.c (bfd_perform_relocation): Correct bfd_reloc_outofrange check.
932 (bfd_install_relocation, _bfd_final_link_relocate): Add same check here.
933 * elf32-sh.c (sh_elf_reloc): Correct bfd_reloc_outofrange check.
934 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Remove duplicated
935 bfd_reloc_outofrange check.
936 * bfd-in2.h: Regenerate.
937
938 * cpu-ns32k.c (_bfd_do_ns32k_reloc_contents): Return bfd_reloc_ok
939 on zero size relocs.
940 * ecoff.c (ecoff_reloc_link_order): Likewise.
941 * elf32-nds32.c (nds32_relocate_contents): Likewise.
942 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
943
944 * reloc.c (_bfd_relocate_contents): Don't bomb on zero size relocs.
945 (_bfd_clear_contents): Likewise.
946 * elfxx-mips.c (mips_elf_obtain_contents): Likewise.
947 (mips_elf_perform_relocation): Likewise.
948
949 * aoutx.h (aout_link_reloc_link_order): Allow for NULL return
950 from malloc on zero size alloc.
951 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
952 * elflink.c (elf_reloc_link_order): Likewise.
953 * linker.c (_bfd_generic_reloc_link_order): Likewise.
954 * pdp11.c (aout_link_reloc_link_order): Likewise.
955 * xcofflink.c (xcoff_reloc_link_order): Likewise.
956
957 * aoutx.h (howto_table_ext): Ensure NONE relocs have size 3,
958 bitsize 0, and complain_overflow_dont.
959 * coff-sparc.c (coff_sparc_howto_table): Likewise.
960 * elf-hppa.h (elf_hppa_howto_table): Likewise.
961 * elf-m10200.c (elf_mn10200_howto_table): Likewise.
962 * elf-m10300.c (elf_mn10300_howto_table): Likewise.
963 * elf32-arc.c (elf_arc_howto_table): Likewise.
964 * elf32-arm.c (elf32_arm_howto_table_1): Likewise.
965 * elf32-avr.c (elf_avr_howto_table): Likewise.
966 * elf32-bfin.c (bfin_howto_table): Likewise.
967 * elf32-cr16.c (cr16_elf_howto_table): Likewise.
968 * elf32-cris.c (cris_elf_howto_table): Likewise.
969 * elf32-crx.c (crx_elf_howto_table): Likewise.
970 * elf32-d10v.c (elf_d10v_howto_table): Likewise.
971 * elf32-d30v.c (elf_d30v_howto_table): Likewise.
972 * elf32-dlx.c (dlx_elf_howto_table): Likewise.
973 * elf32-epiphany.c (epiphany_elf_howto_table): Likewise.
974 * elf32-fr30.c (fr30_elf_howto_table): Likewise.
975 * elf32-frv.c (elf32_frv_howto_table): Likewise.
976 * elf32-h8300.c (h8_elf_howto_table): Likewise.
977 * elf32-i370.c (i370_elf_howto_raw): Likewise.
978 * elf32-i386.c (elf_howto_table): Likewise.
979 * elf32-i860.c (elf32_i860_howto_table): Likewise.
980 * elf32-i960.c (elf32_i960_relocate): Likewise.
981 * elf32-ip2k.c (ip2k_elf_howto_table): Likewise.
982 * elf32-iq2000.c (iq2000_elf_howto_table): Likewise.
983 * elf32-lm32.c (lm32_elf_howto_table): Likewise.
984 * elf32-m32c.c (m32c_elf_howto_table): Likewise.
985 * elf32-m32r.c (m32r_elf_howto_table): Likewise.
986 * elf32-m68hc11.c (elf_m68hc11_howto_table): Likewise.
987 * elf32-m68hc12.c (elf_m68hc11_howto_table): Likewise.
988 * elf32-m68k.c (howto_table): Likewise.
989 * elf32-mcore.c (mcore_elf_howto_raw): Likewise.
990 * elf32-mep.c (mep_elf_howto_table): Likewise.
991 * elf32-metag.c (elf_metag_howto_table): Likewise.
992 * elf32-microblaze.c (microblaze_elf_howto_raw): Likewise.
993 * elf32-mips.c (elf_mips_howto_table_rel): Likewise.
994 * elf32-moxie.c (moxie_elf_howto_table): Likewise.
995 * elf32-msp430.c (elf_msp430_howto_table): Likewise.
996 * elf32-mt.c (mt_elf_howto_table): Likewise.
997 * elf32-nds32.c (nds32_elf_howto_table): Likewise.
998 * elf32-nios2.c (elf_nios2_howto_table_rel): Likewise.
999 * elf32-or1k.c (or1k_elf_howto_table): Likewise.
1000 * elf32-pj.c (pj_elf_howto_table): Likewise.
1001 * elf32-ppc.c (ppc_elf_howto_raw): Likewise.
1002 * elf32-rl78.c (rl78_elf_howto_table): Likewise.
1003 * elf32-rx.c (rx_elf_howto_table): Likewise.
1004 * elf32-s390.c (elf_howto_table): Likewise.
1005 * elf32-score.c (elf32_score_howto_table): Likewise.
1006 * elf32-score7.c (elf32_score_howto_table): Likewise.
1007 * elf32-sh-relocs.h (R_SH_NONE): Likewise.
1008 * elf32-spu.c (elf_howto_table): Likewise.
1009 * elf32-tic6x.c (elf32_tic6x_howto_table): Likewise.
1010 * elf32-tilepro.c (tilepro_elf_howto_table): Likewise.
1011 * elf32-v850.c (v850_elf_howto_table): Likewise.
1012 * elf32-vax.c (howto_table): Likewise.
1013 * elf32-visium.c (visium_elf_howto_table): Likewise.
1014 * elf32-xc16x.c (xc16x_elf_howto_table): Likewise.
1015 * elf32-xgate.c (elf_xgate_howto_table): Likewise.
1016 * elf32-xstormy16.c (xstormy16_elf_howto_table): Likewise.
1017 * elf32-xtensa.c (elf_howto_table): Likewise.
1018 * elf64-alpha.c (elf64_alpha_howto_table): Likewise.
1019 * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
1020 * elf64-mmix.c (elf_mmix_howto_table): Likewise.
1021 * elf64-ppc.c (ppc64_elf_howto_raw): Likewise.
1022 * elf64-s390.c (elf_howto_table): Likewise.
1023 * elf64-sh64.c (sh_elf64_howto_table): Likewise.
1024 * elf64-x86-64.c (x86_64_elf_howto_table): Likewise.
1025 * elfn32-mips.c (elf_mips_howto_table_rel): Likewise.
1026 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Likewise.
1027 (elfNN_aarch64_howto_none): Likewise.
1028 * elfxx-ia64.c (ia64_howto_table): Likewise.
1029 * elfxx-sparc.c (_bfd_sparc_elf_howto_table): Likewise.
1030 * elfxx-tilegx.c (tilegx_elf_howto_table): Likewise.
1031 * nlm32-sparc.c (nlm32_sparc_howto_table): Likewise.
1032
6333bc0d
L
10332015-01-15 H.J. Lu <hongjiu.lu@intel.com>
1034
1035 PR ld/17847
1036 * elf64-x86-64.c (elf_x86_64_relocate_section): Don't complain
1037 about -fPIC if the symbol is undefined when building executable.
1038
cd21f5da
NC
10392015-01-15 Nick Clifton <nickc@redhat.com>
1040
1041 PR binutils/17512
1042 * elf-m10300.c (mn10300_info_to_howto): Replace assertion with an
1043 error message. Never return an invalid howto pointer.
1044 * elf32-cr16.c (cr16_info_to_howto): Likewise.
1045 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
1046 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
1047 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
1048 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
1049 * elf32-mips.c (mips_elf32_rtype_to_howto): Likewise.
1050 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
1051 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
1052 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
1053 * elf32-v850.c (v850_elf_info_to_howto_rela): Likewise.
1054 * elf32-vax.c (rtype_to_howto): Likewise.
1055 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
1056 * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
1057 * elfn32-mips.c (sh_elf_info_to_howto): Likewise.
1058 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
1059 (sh_elf_reloc): Check that the reloc is in range.
1060 * reloc.c (bfd_perform_relocation): Check that the section is big
1061 enough for the entire reloc.
1062 (bfd_generic_get_relocated_section_contents): Report unexpected
1063 return values from perform_reloc.
1064
2d071cfc
NC
10652015-01-15 Nick Clifton <nickc@redhat.com>
1066
1067 * elf32-msp430.c (msp430_elf_relax_section): Skip unhandled
1068 relocs. Include PC-relative adjustment for R_MSP430X_ABS16
1069 relaxation.
1070
ca55926c
AM
10712015-01-15 Alan Modra <amodra@gmail.com>
1072
1073 * elflink.c (_bfd_elf_link_omit_section_dynsym): Return true for
1074 any output section matching a linker created dynobj section.
1075
8539e4e8
AM
10762015-01-15 Alan Modra <amodra@gmail.com>
1077
1078 PR 17842
1079 * elflink.c (elf_link_output_sym): Assert elf_onesymtab set.
1080 (bfd_elf_final_link): Always create a symbol table when emit_relocs.
1081 Don't assign symtab file position unless symbols will be output.
1082 Merge blocks with condition in common. Don't call
1083 elf_backend_output_arch_local_syms or elf_backend_output_arch_syms
1084 unless other symbols are output. Move assignment of symtab_shndx
1085 file position. Localize variable.
1086
52db4ec2
JW
10872015-01-14 Jiong Wang <jiong.wang@arm.com>
1088
1089 * elf32-arm.c (elf32_arm_final_link_relocate): Reject R_ARM_32/_NOI when
1090 trying to defer them to runtime.
1091
0941db69
JW
10922015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
1093
1094 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use SYMBOLIC_BIND
1095 to check if a symbol should be bound symbolically.
1096
0172429c
JW
10972015-01-13 Jiong Wang <jiong.wang@arm.com>
1098
1099 * elfnn-aarch64.c: (elfNN_aarch64_howto_table): Enable overflow check
1100 for TLSLE_MOVW_TPREL_G2.
1101
bab91cce
JW
11022015-01-13 Jiong Wang <jiong.wang@arm.com>
1103
1104 PR ld/17415
1105 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Mark
1106 R_AARCH64_TLSLE_ADD_TPREL_HI12 as complain_overflow_unsigned.
1107 * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Correct the
1108 bit mask.
1109
3c758495
TG
11102015-01-12 Terry Guo <terry.guo@arm.com>
1111
1112 * elflink.c (_bfd_elf_gc_mark_debug_special_section_group): New
1113 function.
1114 (_bfd_elf_gc_mark_extra_sections): Use it.
1115
9d1d54d5
L
11162015-01-11 H.J. Lu <hongjiu.lu@intel.com>
1117
1118 PR ld/17827
1119 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): For PIE,
1120 only discard space for pc-relative relocs symbols which turn
1121 out to need copy relocs.
1122
c6e8e93a
NC
11232015-01-09 Nick Clifton <nickc@redhat.com>
1124
1125 * tekhex.c (getvalue): Fix thinko in test for correct extraction
1126 of value.
1127 (getsym): Return false if there was not enough data to extract the
1128 symbol.
1129
400cf8cb
AG
11302015-01-09 Anthony Green <green@moxielogic.com>
1131
1132 * elf32-moxie.c (ELF_MACHINE_ALT1): Define.
1133
23d4663e
NC
11342015-01-08 Nick Clifton <nickc@redhat.com>
1135
1136 * elf32-msp430.c (msp430_elf_relax_section): Add relaxation of
1137 16-bit absolute BR instructions to 10-bit pc-relative JMP
1138 instructions.
1139
063bb025
NC
11402015-01-08 Nick Clifton <nickc@redhat.com>
1141
1142 PR binutils/17512
1143 * coffcode.h (coff_slurp_symbol_table): Return false if we failed
1144 to load the line table.
1145 * elf.c (_bfd_elf_map_sections_to_segments): Enforce a minimum
1146 maxpagesize of 1.
1147 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if
1148 the Data Directory Size is too large.
1149
6f25f223
L
11502015-01-06 H.J. Lu <hongjiu.lu@intel.com>
1151
1152 PR binutils/17512
1153 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocation.
1154 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
1155
85880250
NC
11562015-01-06 Nick Clifton <nickc@redhat.com>
1157
1158 PR binutils/17512
e7287c7f
NC
1159 * mach-o.c (bfd_mach_o_read_symtab_strtab): Zero terminate the
1160 string table.
1161
ec93045b
NC
1162 * reloc.c (bfd_get_reloc_size): Handle a reloc size of -1.
1163 (bfd_perform_relocation): Include the size of the reloc in the
1164 test for an out of range relocation.
1165 (bfd_generic_get_relocated_section_contents): Remove reloc range
1166 test.
1167
85880250
NC
1168 * coff-i860.c (CALC_ADDEND): Always set an addend value.
1169 * tekhex.c (getvalue): Add an end pointer parameter. Use it to
1170 avoid reading off the end of the buffer.
1171 (getsym): Likewise.
1172 (first_phase): Likewise.
1173 (pass_over): Pass an end pointer to the invoked function.
1174
533d0af0
L
11752015-01-05 H.J. Lu <hongjiu.lu@intel.com>
1176
1177 PR binutils/17512
1178 * elf32-i386.c (elf_i386_get_plt_sym_val): Return NULL on corrupt
1179 input.
1180 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
1181
896ca098
NC
11822015-01-05 Nick Clifton <nickc@redhat.com>
1183
1184 PR binutils/17512
1185 * archive.c (do_slurp_bsd_armap): Make sure that the parsed sized
1186 is at least big enough for the header to be read.
1187 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocs.
1188 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add range checks.
1189 (bfd_mach_o_read_command): Prevetn duplicate error messages about
1190 unrecognized commands.
1191 * syms.c (_bfd_stab_section_find_nearest_line): Add range checks
1192 when indexing into the string table.
1193
b90efa5b 11942015-01-01 Alan Modra <amodra@gmail.com>
ee3b52e9 1195
b90efa5b 1196 Update year range in copyright notice of all files.
ee3b52e9 1197
b90efa5b 1198For older changes see ChangeLog-2014
56882138 1199\f
b90efa5b 1200Copyright (C) 2015 Free Software Foundation, Inc.
752937aa
NC
1201
1202Copying and distribution of this file, with or without modification,
1203are permitted in any medium without royalty provided the copyright
1204notice and this notice are preserved.
1205
56882138
AM
1206Local Variables:
1207mode: change-log
1208left-margin: 8
1209fill-column: 74
1210version-control: never
1211End: