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