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