Cleanup signal-while-stepping-over-bp-other-thread.exp
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
f7483970
L
12015-04-10 H.J. Lu <hongjiu.lu@intel.com>
2
3 PR ld/pr15228
4 PR ld/pr17709
5 * elf-bfd.h (elf_backend_data): Add extern_protected_data.
6 * elf32-i386.c (elf_backend_extern_protected_data): New.
7 Defined to 1.
8 * elf64-x86-64.c (elf_backend_extern_protected_data): Likewise.
9 * elflink.c (_bfd_elf_adjust_dynamic_copy): Don't error on
10 copy relocs against protected symbols if extern_protected_data
11 is true.
12 (_bfd_elf_symbol_refs_local_p): Don't return true on protected
13 non-function symbols if extern_protected_data is true.
14 * elfxx-target.h (elf_backend_extern_protected_data): New.
15 Default to 0.
16 (elfNN_bed): Initialize extern_protected_data with
17 elf_backend_extern_protected_data.
18
030aeb75
L
192015-04-10 H.J. Lu <hongjiu.lu@intel.com>
20
21 * compress.c (bfd_compress_section_contents): Replace bfd_malloc
22 and free with bfd_alloc and bfd_release on compressed buffer.
23 Release buffer if compressed section isn't smaller.
24
d07a1b05
AM
252015-04-10 Alan Modra <amodra@gmail.com>
26
27 PR ld/18222
28 * elflink.c (_bfd_elf_adjust_dynamic_copy): Don't report an error
29 on adding a protected visibility variable to .dynbss.
30
8d2ea2a8
AM
312015-04-10 Alan Modra <amodra@gmail.com>
32
33 Revert 2015-03-05 H.J. Lu <hongjiu.lu@intel.com>
34 PR ld/pr15228
35 PR ld/pr17709
36 * elf-bfd.h (elf_backend_data): Delete extern_protected_data.
37 * elf32-i386.c (elf_backend_extern_protected_data): Delete.
38 * elf64-x86-64.c (elf_backend_extern_protected_data): Likewise.
39 * elflink.c (_bfd_elf_adjust_dynamic_copy): Remove
40 extern_protected_data test.
41 (_bfd_elf_symbol_refs_local_p): Likewise.
42 * elfxx-target.h (elf_backend_extern_protected_data): Delete.
43 (elfNN_bed): Delete elf_backend_extern_protected_data init.
44
18ece1de
L
452015-04-09 H.J. Lu <hongjiu.lu@intel.com>
46
47 * compress.c (bfd_compress_section_contents): Update comments.
48 (bfd_init_section_decompress_status): Likewise.
49 (bfd_init_section_compress_status): Likewise.
50
cd6faa73
L
512015-04-09 H.J. Lu <hongjiu.lu@intel.com>
52
53 * elfxx-target.h (TARGET_BIG_SYM): Add BFD_COMPRESS_GABI to
54 object_flags.
55 (TARGET_LITTLE_SYM): Likewise.
56
19424843
MF
572015-04-09 Max Filippov <jcmvbkbc@gmail.com>
58
59 * elf32-xtensa.c (splay-tree.h): include header.
60 (text_action_struct): drop next pointer.
61 (text_action_list_struct): drop head pointer, add count and
62 tree fields.
63 (find_fill_action): instead of linear search in text_action_list
64 search in the tree.
65 (text_action_compare, action_first, action_next): new functions.
66 (text_action_add, text_action_add_literal): instead of linear
67 search and insertion insert new node into the tree.
68 (removed_by_actions): pass additional parameter: action_list,
69 use it to traverse the tree.
70 (offset_with_removed_text): pass additional action_list parameter
71 to removed_by_actions.
72 (map_action_fn_context): new typedef.
73 (map_action_fn_context_struct): new structure.
74 (map_action_fn): new function.
75 (map_removal_by_action): use splay_tree_foreach to build map.
76 (find_insn_action): replace linear search in text_action_list
77 with series of splay_tree_lookups.
78 (print_action, print_action_list_fn): new functions.
79 (print_action_list): use splay_tree_foreach.
80 (init_xtensa_relax_info): drop action_list.head initialization.
81 Initialize the tree.
82 (compute_text_actions): use non-zero action_list_count instead of
83 non-NULL action list.
84 (xlate_map_context): new typedef.
85 (xlate_map_context_struct): new structure.
86 (xlate_map_fn): new function.
87 (build_xlate_map): use splay_tree_foreach to build map.
88 (action_remove_bytes_fn): new function.
89 (relax_section): use zero action_list_count instead of NULL
90 action list. Use splay_tree_foreach to count final section size.
91 Drop unused variable 'removed'.
92
932015-04-09 Max Filippov <jcmvbkbc@gmail.com>
94
95 * elf32-xtensa.c (removed_literal_map_entry): new typedef.
96 (removed_literal_map_entry_struct): new structure.
97 (removed_literal_list_struct): add new fields: n_map and map.
98 (map_removed_literal, removed_literal_compare): new functions.
99 (find_removed_literal): build index array for literals ordered
100 by VMA, use binary search to find removed literal.
101
1022015-04-09 Max Filippov <jcmvbkbc@gmail.com>
103
104 * elf32-xtensa.c (removal_by_action_entry_struct,
105 removal_by_action_map_struct): new structures.
106 (removal_by_action_entry, removal_by_action_map): new typedefs.
107 (text_action_list_struct): add new field: map.
108 (map_removal_by_action, removed_by_actions_map,
109 offset_with_removed_text_map): new functions.
110 (relax_section): replace offset_with_removed_text with
111 offset_with_removed_text_map.
112 (translate_reloc, relax_property_section, relax_section_symbols):
113 replace removed_by_actions with removed_by_actions_map.
114
1152015-04-09 Max Filippov <jcmvbkbc@gmail.com>
116
117 * elf32-xtensa.c (reloc_range_list, reloc_range_list_entry,
118 reloc_range): new typedef.
119 (reloc_range_list_struct, reloc_range_list_entry_struct,
120 reloc_range_struct): new structures.
121 (reloc_range_compare, build_reloc_ranges,
122 reloc_range_list_append, reloc_range_list_remove,
123 reloc_range_list_update_range, free_reloc_range_list): new
124 functions.
125 (compute_text_actions): precompute relocation opcodes before the
126 loop. Add relevant_relocs variable, initialize it before the
127 loop, pass it to the check_section_ebb_pcrels_fit.
128 (check_section_ebb_pcrels_fit): add new parameter:
129 relevant_relocs. Update address range in the relevant_relocs if
130 it's non-NULL and iterate only over relevant relocations.
131
3525236c
NC
1322015-04-09 Nick Clifton <nickc@redhat.com>
133
134 * elf32-rx.c (describe_flags): Report the settings of the string
135 insn using bits.
136 (rx_elf_merge_private_bfd_data): Handle merging of the string insn
137 using bits.
138
51509926
L
1392015-04-08 H.J. Lu <hongjiu.lu@intel.com>
140
141 * compress.c (bfd_compress_section_contents): Work around a GCC
142 uninitialized warning bug fixed in GCC 4.7.
143
151411f8
L
1442015-04-08 H.J. Lu <hongjiu.lu@intel.com>
145
146 * archive.c (_bfd_get_elt_at_filepos): Also copy BFD_COMPRESS_GABI
147 bit.
148 * bfd.c (bfd::flags): Increase size to 18 bits.
149 (BFD_COMPRESS_GABI): New.
150 (BFD_FLAGS_SAVED): Add BFD_COMPRESS_GABI.
151 (BFD_FLAGS_FOR_BFD_USE_MASK): Likewise.
152 (bfd_update_compression_header): New fuction.
153 (bfd_check_compression_header): Likewise.
154 (bfd_get_compression_header_size): Likewise.
155 (bfd_is_section_compressed_with_header): Likewise.
156 * compress.c (MAX_COMPRESSION_HEADER_SIZE): New.
157 (bfd_compress_section_contents): Return the uncompressed size if
158 the full section contents is compressed successfully. Support
159 converting from/to .zdebug* sections.
160 (bfd_get_full_section_contents): Call
161 bfd_get_compression_header_size to get compression header size.
162 (bfd_is_section_compressed): Renamed to ...
163 (bfd_is_section_compressed_with_header): This. Add a pointer
164 argument to return compression header size.
165 (bfd_is_section_compressed): Use it.
166 (bfd_init_section_decompress_status): Call
167 bfd_get_compression_header_size to get compression header size.
168 Return FALSE if uncompressed section size is 0.
169 * elf.c (_bfd_elf_make_section_from_shdr): Support converting
170 from/to .zdebug* sections.
171 * bfd-in2.h: Regenerated.
172
87070c08
AM
1732015-04-07 Alan Modra <amodra@gmail.com>
174
175 * elf.c (_bfd_elf_get_reloc_section): Allow for .got.plt being
176 mapped to output .got section.
177
d3e454b9
AM
1782015-04-07 Alan Modra <amodra@gmail.com>
179
180 * elf32-ppc.c (struct ppc_elf_link_hash_entry): Add has_addr16_ha
181 and has_addr16_lo. Make has_sda_refs a bitfield.
182 (ppc_elf_check_relocs): Set new flags.
183 (ppc_elf_link_hash_table_create): Update default_params.
184 (ppc_elf_adjust_dynamic_symbol): Clear protected_def in cases
185 where we won't be making .dynbss entries or editing code. Set
186 params->pic_fixup when we'll edit code for protected var access.
187 (allocate_dynrelocs): Allocate got entry for edited code and
188 discard dyn_relocs.
189 (struct ppc_elf_relax_info): Add picfixup_size.
190 (ppc_elf_relax_section): Rename struct one_fixup to struct
191 one_branch_fixup. Rename fixups to branch_fixups. Size space for
192 pic fixups.
193 (ppc_elf_relocate_section): Edit non-PIC accessing protected
194 visibility variables to PIC. Don't emit dyn_relocs for code
195 we've edited.
196 * elf32-ppc.h (struct ppc_elf_params): Add pic_fixup.
197
ffa54770
NC
1982015-04-07 Nick Clifton <nickc@redhat.com>
199
200 * elf.c (_bfd_elf_is_local_label_name): Treat assembler generated
201 local labels as local.
202
4aa90cc0
L
2032015-04-06 H.J. Lu <hongjiu.lu@intel.com>
204
205 * compress.c (get_uncompressed_size): Removed.
206 (bfd_compress_section_contents): Use bfd_putb64 to write
207 uncompressed section size.
208 (bfd_init_section_decompress_status): Replace
209 get_uncompressed_size with bfd_getb64.
210
68f5ff89
L
2112015-04-04 H.J. Lu <hongjiu.lu@intel.com>
212
213 * elf.c (_bfd_elf_init_private_section_data): Also preserve the
214 SHF_COMPRESSED bit if not decompress.
215
8bed4e0f
L
2162015-04-04 H.J. Lu <hongjiu.lu@intel.com>
217
218 * compress.c (get_uncompressed_size): New. Extracted from ...
219 (bfd_init_section_decompress_status): This. Use it.
220
15c7659f
AT
2212015-04-02 Andrew Turner <andrew@freebsd.org>
222
223 * config.bfd: Add aarch64-*-freebsd* target triple.
224
39f3de7c
L
2252015-04-02 H.J. Lu <hongjiu.lu@intel.com>
226
227 * configure: Regenerated.
228
4106101c
MS
2292015-04-01 Tejas Belagod <tejas.belagod@arm.com>
230 Marcus Shawcroft <marcus.shawcroft@arm.com>
231 Jiong Wang <jiong.wang@arm.com>
232
233 * bfd-in.h (bfd_elf64_aarch64_set_options)
234 (bfd_elf32_aarch64_set_options): Add parameter.
235 * bfd-in2.h: Regenerated.
236 * elfnn-aarch64.c (aarch64_erratum_843419_stub)
237 (_bfd_aarch64_adrp_p, _bfd_aarch64_erratum_843419_sequence_p)
238 (_bfd_aarch64_erratum_843419_stub_name)
239 (_bfd_aarch64_erratum_843419_fixup)
240 (_bfd_aarch64_erratum_843419_scan)
241 (_bfd_aarch64_erratum_843419_branch_to_stub)
242 (_bfd_aarch64_erratum_843419_p): Define.
243 (enum elf_aarch64_stub_type): Define
244 aarch64_stub_erratum_843419_veneer.
245 (struct elf_aarch64_stub_hash_entry): Define adrp_offset.
246 (struct elf_aarch64_link_hash_table): Define fix_erratum_843419
247 and fix_erratum_843419_adr.
248 (stub_hash_newfunc): Initialize adrp_offset;
249 (_bfd_aarch64_add_stub_entry_after): Define.
250 (aarch64_map_one_stub, aarch64_build_one_stub)
251 (aarch64_size_one_stub): Handle
252 aarch64_stub_erratum_843419_veneer.
253 (_bfd_aarch64_resize_stubs): Round stub section size.
254 (elfNN_aarch64_size_stubs): Add scan for 843419.
255 (bfd_elfNN_aarch64_set_options): Add parameter. Initialize
256 fix_erratum_843419 and fix_erratum_843419_adr.
257 (struct erratum_835769_branch_to_stub_data): Add info.
258 (elfNN_aarch64_write_section): Initialise info. Handle 843419.
259 (elfNN_aarch64_size_dynamic_sections): Handle 843419.
260 * elfxx-aarch64.c (_bfd_aarch64_decode_adrp_imm)
261 (_bfd_aarch64_sign_extend): Define.
262 (reencode_adr_imm): Remove static. Rename to:
263 (_bfd_aarch64_reencode_adr_imm): Define.
264 (_bfd_aarch64_elf_put_addend): Call _bfd_aarch64_reencode_adr_imm.
265 * elfxx-aarch64.h (AARCH64_ADR_OP, AARCH64_ADRP_OP)
266 (AARCH64_ADRP_OP_MASK, _bfd_aarch64_sign_extend)
267 (_bfd_aarch64_decode_adrp_imm, _bfd_aarch64_reencode_adr_imm):
268 Define.
269
afa59b79
L
2702015-04-01 H.J. Lu <hongjiu.lu@intel.com>
271
272 * configure: Regenerated.
273
6036f486
ES
2742015-03-31 Ed Schouten <ed@nuxi.nl>
275
276 * config.bfd (targ_defvec): Set to x86_64_elf64_cloudabi_vec
277 for x86_64-*-cloudabi*.
278 * configure.ac: Handle x86_64_elf64_cloudabi_vec.
279 * configure: Regenerated.
280 * elf64-x86-64.c (TARGET_LITTLE_SYM): Support x86_64-*-cloudabi*.
281 (TARGET_LITTLE_NAME): Likewise.
282 (ELF_OSABI): Likewise.
283 (elf64_bed): Likewise.
284 * targets.c (x86_64_elf64_cloudabi_vec): New.
285 (_bfd_target_vector): Add x86_64_elf64_cloudabi_vec.
286
9ae46699
L
2872015-03-31 H.J. Lu <hongjiu.lu@intel.com>
288
289 * configure.ac: Revert the AM_ZLIB change.
290 * Makefile.in: Regenerated.
291 * aclocal.m4: Likewise.
292 * configure: Likewise.
293 * doc/Makefile.in: Likewise.
294
bd53a53a
L
2952015-03-30 H.J. Lu <hongjiu.lu@intel.com>
296
297 PR ld/18169
298 * elf-bfd.h (elf_backend_data): Add get_reloc_section.
299 (_bfd_elf_get_reloc_section): New.
300 * elf.c (_bfd_elf_get_reloc_section): Likewise.
301 (assign_section_numbers): Call get_reloc_section to look up the
302 section the relocs apply.
303 * elfxx-target.h (elf_backend_get_reloc_section): Likewise.
304 (elfNN_bed): Initialize get_reloc_section with
305 elf_backend_get_reloc_section.
306
243340ad
L
3072015-03-29 H.J. Lu <hongjiu.lu@intel.com>
308
309 * Makefile.am (ZLIB): New.
310 (ZLIBINC): Likewise.
311 (AM_CFLAGS): Add $(ZLIBINC).
312 (libbfd_la_LIBADD): Add $(ZLIB).
313 * compress.c: Don't check HAVE_ZLIB_H to include <zlib.h>.
314 (decompress_contents): Don't check HAVE_ZLIB_H.
243340ad
L
315 (bfd_compress_section_contents): Likewise.
316 (bfd_get_full_section_contents): Likewise.
317 (bfd_init_section_decompress_status): Likewise.
318 (bfd_init_section_compress_status): Likewise.
b51724e8 319 * configure.ac (AM_ZLIB): Removed.
243340ad
L
320 (zlibdir): New. AC_SUBST.
321 (zlibinc): Likewise.
322 Add --with-system-zlib.
323 * Makefile.in: Regenerated.
324 * acinclude.m4: Likewise.
325 * config.in: Likewise.
326 * configure: Likewise.
327 * doc/Makefile.in: Likewise.
328
b8417128
AM
3292015-03-27 Alan Modra <amodra@gmail.com>
330
331 PR ld/15228
332 PR ld/18167
333 * elflink.c (elf_merge_st_other): Add "sec" parameter. Don't set
334 protected_def when symbol section is read-only. Adjust all calls.
335 * elf-bfd.h (struct elf_link_hash_entry): Update protected_def comment.
336
93ca8569
TB
3372015-03-26 Tejas Belagod <tejas.belagod@arm.com>
338
339 * elfnn-aarch64.c (aarch64_build_one_stub): Replace the call to generic
340 _bfd_final_link_relocate with aarch64_relocate.
341
b19a8f85
L
3422015-03-26 H.J. Lu <hongjiu.lu@intel.com>
343
344 PR ld/18160
345 * elflink.c (elf_gc_sweep): Skip if relocation is incompatible.
346 (bfd_elf_gc_sections): Likewise.
347
61865519
MS
3482015-03-25 Marcus Shawcroft <marcus.shawcroft@arm.com>
349
350 * elfnn-aarch64.c (_bfd_aarch64_resize_stubs): Adjust stub section
351 size for initial branch.
352 (elfNN_aarch64_build_stubs): Write initial branch.
353 _bfd_aarch64_decode_(elfNN_aarch64_output_arch_local_syms): Write
354 mapping symbol on initial branch.
355
d9ced15d 3562015-03-25 Marcus Shawcroft <marcus.shawcroft@arm.com>
357d1523
MS
357
358 * elfnn-aarch64.c (_bfd_aarch64_erratum_835769_scan):
359 Update erratum count.
360
d422d1c4
SKS
3612015-03-25 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
362
363 * elflink.c (_bfd_elf_gc_mark_extra_sections): Don't break on
364 first matching debug section.
365
8d001214
L
3662015-03-24 H.J. Lu <hongjiu.lu@intel.com>
367
368 PR gas/18087
369 * compress.c (bfd_compress_section_contents): Don't write the
370 zlib header and set contents as well as compress_status if
371 compression didn't make the section smaller.
372 (bfd_init_section_compress_status): Don't check compression
373 size here.
374
fc42baf3
NC
3752015-03-24 Nick Clifton <nickc@redhat.com>
376
377 PR binutils/17512
378 * coffgen.c (coff_get_normalized_symtab): Fix test for out of
379 range auxillary sections.
380
fc6d53be
MS
3812015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
382
383 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Factor
384 code into:
385 (_bfd_aarch64_get_stub_for_link_section): Define.
386
30068a6d
MS
3872015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
388
389 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Adjust
390 update of section_group[].stub_sec.
391
5421cc6e
MS
3922015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
393
394 * elfnn-aarch64.c (struct aarch64_erratum_835769_fix) Remove.
395 (erratum_835769_scan) Drop fix_table_size_p and fixes_p arguments.
396 Delete fixes, fix_table_size and associated code. Call
397 _bfd_aarch64_add_stub_entry_in_group. Rename to...
398 (bfd_aarch64_erratum_835769_scan): Define.
399 (elfNN_aarch64_size_stubs): Delete erratum_835769_fixes,
400 erratum_835769_fix_table_size, i and associated code. Relocate
401 call to _bfd_aarch64_erratum_835769_scan. Delete adhoc stub size
402 correction. Delete construction of stub entry from
403 erratum_835769_fixes array.
404
e572930b
MS
4052015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
406
407 * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Use
408 _bfd_aarch64_add_stub_entry_in_group.
409
8131c122
AM
4102015-03-24 Alan Modra <amodra@gmail.com>
411
412 * elf64-ppc.c (ppc64_elf_relocate_section): Report overflow to
413 stubs, even those for undefined weak symbols. Otherwise, don't
414 report relocation overflow on branches to undefined strong
415 symbols. Fix memory leak.
416 * elf32-ppc.c (ppc_elf_relocate_section): Don't report relocation
417 overflow on branches to undefined strong symbols.
418
c53ed7cf
KS
4192015-03-23 Keith Seitz <keiths@redhat.com>
420
421 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Add
422 missing ';'.
423
94a75bde
MS
4242015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
425
426 * elfnn-aarch64.c (erratum_835769_scan): Factor stub name
427 construction into...
428 (_bfd_aarch64_erratum_835769_stub_name): Define.
429
13f622ec
MS
4302015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
431
432 * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Factor out
433 stub resize code into...
434 (bfd_aarch64_resize_stubs): Define.
435
66585675
MS
4362015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
437
438 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Factor stub
439 creation code into...
440 (bfd_aarch64_create_stub_section): Define.
441
ef857521
MS
4422015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
443
444 * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Rename
445 from elf_aarch64_create_or_find_stub_sec.
446 (_bfd_aarch64_add_stub_entry_in_group): Rename from
447 elfNN_aarch64_add_stub. Call
448 _bfd_aarch64_create_or_find_stub_sec.
449 (elfNN_aarch64_size_stubs, elfNN_aarch64_size_stubs): Call
450 _bfd_aarch64_add_stub_entry_in_group.
451
2144188d
MS
4522015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
453
454 * elfnn-aarch64.c (erratum_835769_scan) Add comment. Reverse
455 sense of boolean return.
456 (elfNN_aarch64_size_stubs): Adjust for above.
457
4c77202d
MS
4582015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
459
460 * elfnn-aarch64.c (elf_aarch64_create_or_find_stub_sec):
461 Remove unused parameter.
462 (elfNN_aarch64_size_stubs): Adjust for above.
463
9b9971aa
MS
4642015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
465
466 * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Remove bfd_indx.
467
e2cdef47
MS
4682015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
469
470 * elfnn-aarch64.c (aarch64_erratum_835769_fixes)
471 (num_aarch64_erratum_835769_fixes): Remove.
472 (elfNN_aarch64_size_stubs): Remove assignments to above.
473
3d14faea
MS
4742015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
475
23956543
MS
476 * elfnn-aarch64.c (aarch64_mem_op_p): Update comment. Rename rtn
477 to rt2.
3d14faea
MS
478 (aarch64_erratum_seqeunce): Rename rtn to rt2.
479
f872121a
MS
4802015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
481
482 * elfnn-aarch64.c (elfNN_aarch64_write_section): Adjust layout.
483
1740ba0c
NC
4842015-03-19 Nick Clifton <nickc@redhat.com>
485
486 * elf32-rl78.c (rl78_cpu_name): New function. Prints the name of
487 the RL78 core based upon the flags.
488 (rl78_elf_merge_private_bfd_data): Handle merging of G13 and G14
489 flags.
490 (rl78_elf_print_private_bfd_data): Use rl78_cpu_name.
491 (elf32_rl78_machine): Always return bfd_mach_rl78.
492
e2575e05
NC
4932015-03-19 Nick Clifton <nickc@redhat.com>
494
495 PR 18078
496 * compress.c (bfd_compress_section_contents): Do not define this
497 function if it is not used.
498
0b0732e1
L
4992015-03-18 H.J. Lu <hongjiu.lu@intel.com>
500
501 * compress.c (bfd_compress_section_contents): Make it static.
502 * bfd/bfd-in2.h: Regenerated.
503
27aaeda0
NC
5042015-03-18 Eric Youngdale <eyoungdale@ptc.com>
505
506 PR ld/16598
507 * peicode.h (pe_ILF_build_a_bfd): Add support for creating relocs
508 suitable for the AMD64.
509
273a4985
JT
5102015-03-18 Jon Turney <jon.turney@dronecode.org.uk>
511 Nick Clifton <nickc@redhat.com>
512
513 PR binutils/18087
514 * coffgen.c (make_a_section_from_file): Only prepend a z to a
515 debug section's name if the section was actually compressed.
516 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
517 * compress.c (bfd_init_section_compress_status): Do not compress
518 the section if doing so would make it bigger. In such cases leave
519 the section alone and return COMPRESS_SECTION_NONE.
520
c4b0b099
AM
5212015-03-17 Alan Modra <amodra@gmail.com>
522
523 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Return count of 0
524 on nothing to do, before malloc of returned symbol array.
525
9c761a55
NC
5262015-03-16 Nick Clifton <nickc@redhat.com>
527
528 * elf32-rx.c (elf32_rx_relax_delete_bytes): If the relocs are not
529 stored in the elf_section_data structure then load them as
530 necessary.
531
b9005ba7
AK
5322015-03-14 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
533
534 * elf-s390-common.c (elf_s390_elf_sort_relocs_p): Don't sort
535 relocs against code sections.
536 * elf32-s390.c: Define elf_backend_sort_relocs_p.
537 * elf64-s390.c: Likewise.
538
1079403c
AM
5392015-03-11 Alan Modra <amodra@gmail.com>
540
541 * elf32-ppc.c (ppc_elf_get_synthetic_symtab): Examine stubs in
542 reverse order. Account for larger size of __tls_get_addr_opt stub.
543
a5721edd
JW
5442015-03-10 Yuri Gribov <y.gribov@samsung.arm>
545
546 PR ld/16572
547 * elf32-arm.c (elf32_arm_final_link_relocate): Remove support for
548 ELF_ARM_HASENTRY.
549 (elf32_arm_print_private_bfd_data): Likewise.
550
65164438
NC
5512015-03-06 Nick Clifton <nickc@redhat.com>
552
553 PR binutils/17765
554 * elflink.c (put_value): Like previous delta, but for the 32-bit
555 case.
556
41cd1ad1
NC
5572015-03-05 Nick Clifton <nickc@redhat.com>
558
559 PR binutils/17765
560 * elflink.c (put_value): Avoid using an undefined shift
561 operation.
562
ca3fe95e
L
5632015-03-05 H.J. Lu <hongjiu.lu@intel.com>
564
565 PR ld/pr15228
566 PR ld/pr17709
567 * elf-bfd.h (elf_backend_data): Add extern_protected_data.
568 * elf32-i386.c (elf_backend_extern_protected_data): New.
569 Defined to 1.
570 * elf64-x86-64.c (elf_backend_extern_protected_data): Likewise.
571 * elflink.c (_bfd_elf_adjust_dynamic_copy): Don't error on
572 copy relocs against protected symbols if extern_protected_data
573 is true.
574 (_bfd_elf_symbol_refs_local_p): Don't return true on protected
575 non-function symbols if extern_protected_data is true.
576 * elfxx-target.h (elf_backend_extern_protected_data): New.
577 Default to 0.
578 (elfNN_bed): Initialize extern_protected_data with
579 elf_backend_extern_protected_data.
580
425bd9e1
NC
5812015-03-05 Nick Clifton <nickc@redhat.com>
582
583 PR binutils/18025
584 * coffgen.c (coff_find_nearest_line_with_names): If the dwarf2
585 lookup fails, check for an address bias in the dwarf info, and if
586 one exists, retry the lookup with the biased value.
587 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): New function.
588 Determines if a bias exists bewteen the addresses of functions
589 based on DWARF information vs symbol table information.
590 * libbfd-in.h (_bfd_dwarf2_find_symbol_bias): Prototype.
591 * libbfd.h: Regenerate.
592
8ef229f3
MS
5932015-03-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
594
595 * elfxx-aarch64.c (decode_add_imm, decode_movw_imm)
596 (decode_tst_branch_ofs_14, decode_ld_lit_ofs_19)
597 (decode_cond_branch_ofs_19, decode_branch_ofs_26): Remove.
598
8e2fe09f
MS
5992015-03-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
600
601 * elfnn-aarch64.c (aarch64_build_one_stub): Call abort.
602 (aarch64_size_one_stub): Likewise.
603 (aarch64_map_one_stub): Likewise.
604
df88b702
AA
6052015-03-04 Andreas Arnez <arnez@linux.vnet.ibm.com>
606
607 * cpu-s390.c (N): New macro.
608 (bfd_s390_31_arch): New. Define only if default target word size
609 is 64 bits. Otherwise define...
610 (bfd_390_64_arch): ...this. Make static.
611 (bfd_s390_arch): Define according to the default target word size.
612 Let the 'next' field point to the alternate arch.
613
e09ab7ac
RS
6142015-03-04 Richard Sandiford <richard.sandiford@arm.com>
615
616 PR gas/17843
617 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Expect
618 R_AARCH64_TLSLE_MOVW_TPREL_G0_NC and R_AARCH64_TLSLE_MOVW_TPREL_G1_NC
619 to be used with MOVK rather than MOVZ.
620
71eef2bd
DD
6212015-03-03 DJ Delorie <dj@redhat.com>
622
623 * elf32-rl78.c (rl78_elf_relax_section): Only relax ADDR16's if
624 there's a symbol.
625
f01f1741
AM
6262015-02-28 Alan Modra <amodra@gmail.com>
627
628 * elf32-ppc.c (ppc_elf_tls_setup): Set no_tls_get_addr_opt if
629 not PLT_NEW.
630
c1d11331
L
6312015-02-27 H.J. Lu <hongjiu.lu@intel.com>
632
633 * elf32-i386.c (need_convert_mov_to_lea): New.
634 (elf_i386_check_relocs): Set need_convert_mov_to_lea if needed.
635 (elf_i386_convert_mov_to_lea): Return TRUE if
636 need_convert_mov_to_lea is unset.
637 * elf64-x86-64.c (need_convert_mov_to_lea): New.
638 (elf_x86_64_check_relocs): Set need_convert_mov_to_lea if needed.
639 (elf_x86_64_convert_mov_to_lea): Return TRUE if
640 need_convert_mov_to_lea is unset.
641
cdb602b1
NC
6422015-02-27 Nick Clifton <nickc@redhat.com>
643
644 PR binutils/17910
645 * coffgen.c (_bfd_coff_internal_syment_name): Only check for
646 string length overflow when the string table length is actually
647 set.
648
96c20bc1
MS
6492015-02-27 Marcus Shawcroft <marcus.shawcroft@arm.com>
650
651 * bfd/bfd-in2.h: Regenerate.
652 * bfd/libbfd.h: Regenerate.
653
1ada945d
MS
6542015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
655
656 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix
657 TLSDESC_LD_PREL19 field width and masks.
658 (aarch64_tls_transition_without_check)
659 (aarch64_reloc_got_type, elfNN_aarch64_final_link_relocate)
660 (elfNN_aarch64_tls_relax, elfNN_aarch64_relocate_section)
661 (elfNN_aarch64_gc_sweep_hook, elfNN_aarch64_check_relocs): Handle
662 BFD_RELOC_AARCH64_TLSDESC_LD_PREL19.
663 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
664 (_bfd_aarch64_elf_resolve_relocation): Likewise.
665
389b8029
MS
6662015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
667
73920eed
MS
668 * elfnn-aarch64.c (IS_AARCH64_TLSDESC_RELOC): Reorder R_TYPE
669 tests.
389b8029
MS
670 (aarch64_tls_transition_without_check)
671 (aarch64_reloc_got_type, elfNN_aarch64_final_link_relocate)
672 (elfNN_aarch64_tls_relax, elfNN_aarch64_relocate_section)
673 (elfNN_aarch64_gc_sweep_hook, elfNN_aarch64_check_relocs): Handle
674 BFD_RELOC_AARCH64_TLSDESC_ADR_PREL21.
675 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
676 (_bfd_aarch64_elf_resolve_relocation): Likewise.
677 * reloc.c (BFD_RELOC_AARCH64_TLSGD_ADR_PREL21): Define.
678
3c12b054
MS
6792015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
680
681 * elfnn-aarch64.c (IS_AARCH64_TLS_RELOC)
682 (elfNN_aarch64_howto_table, aarch64_tls_transition_without_check)
683 (aarch64_reloc_got_type, elfNN_aarch64_final_link_relocate)
684 (elfNN_aarch64_tls_relax, elfNN_aarch64_relocate_section)
685 (elfNN_aarch64_gc_sweep_hook, elfNN_aarch64_check_relocs): Handle
686 BFD_RELOC_AARCH64_TLSGD_ADR_PREL21.
687 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
688 (_bfd_aarch64_elf_resolve_relocation): Likewise.
689 * reloc.c (BFD_RELOC_AARCH64_TLSGD_ADR_PREL21): Define.
690
043bf05a
MS
6912015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
692
693 * elfnn-aarch64.c: (TLSIE_LD_GOTTREL_PREL19): Fix HOWTO bit field width.
694 (aarch64_tls_transition_without_check, aarch64_reloc_got_type)
695 (elfNN_aarch64_final_link_relocate, elfNN_aarch64_tls_relax)
696 (elfNN_aarch64_relocate_section, elfNN_aarch64_gc_sweep_hook)
697 (elfNN_aarch64_check_relocs): Handle
698 BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_PREL19.
699
700 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
701 (_bfd_aarch64_elf_resolve_relocation): Likewise.
702
7366006f
MS
7032015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
704
705 * elfnn-aarch64.c: (TLSDESC_CALL): Fix HOWTO bit field width.
706
07875fbc
MS
7072015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
708
709 * elfnn-aarch64.c (TLSLE_MOVW_TPREL_G2)
710 (TLSLE_MOVW_TPREL_G1, TLSLE_MOVW_TPREL_G1_NC)
711 (TLSLE_MOVW_TPREL_G0, TLSLE_MOVW_TPREL_G0_NC): Fix bit field
712 width.
713
49d8f92c
MS
7142015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
715
716 * elfnn-aarch64.c: (TLSIE_MOVW_GOTTPREL_G0_NC): Fix HOWTO bit
717 field width.
718
c86934ce
NC
7192015-02-26 Nick Clifton <nickc@redhat.com>
720
721 PR binutils/17512
722 * coffcode.h (coff_compute_section_file_positions): Report
723 negative page sizes.
724 * elf.c (elf_fake_sections): Handle excessive alignmment powers.
725 (assign_file_positions_for_non_load_sections): Replace assertion
726 with an error message.
727 (rewrite_elf_program_header): Handle excessive segment
728 alignments.
729 * mach-o.c (bfd_mach_o_read_section_32): Likewise.
730 (bfd_mach_o_read_section_64): Likewise.
731 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Use %B to
732 print a bfd name, not %A.
733
bd4d2eaa
AM
7342015-02-26 Alan Modra <amodra@gmail.com>
735
736 * elf64-ppc.c (plt_stub_size, build_plt_stub): Don't build
737 thread-safe stubs for iplt.
738 (build_tls_get_addr_stub): Restore r2 immediately after call.
739
99654aaf
TG
7402015-02-26 Terry Guo <terry.guo@arm.com>
741
742 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Update how we
743 merge Tag_ABI_HardFP_use.
744
a127494f
AM
7452015-02-26 Alan Modra <amodra@gmail.com>
746
747 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Heed -z nocopyreloc.
748 Use text relocs rather than giving an error on trying to use
749 .dynbss for protected shared lib vars.
750 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
751
bac13f5a
AB
7522015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
753
754 * elf32-avr.c (struct elf_avr_section_data): New structure.
755 (struct avr_relax_info): New structure.
756 (elf_avr_new_section_hook): New function.
757 (struct elf_avr_section_data): Add relax_info.
758 (get_avr_relax_info): New function.
759 (init_avr_relax_info): New function.
760 (elf32_avr_relax_delete_bytes): Find next property record before
761 deleting bytes. When deleting don't move bytes beyond the next
762 property record.
763 (avr_elf32_assign_records_to_section): New function.
764 (avr_property_record_compare): New function.
765 (avr_load_all_property_sections): New function.
766 (elf32_avr_relax_section): Load property data. After relaxing the
767 section, move any .align directives that have enough deleted bytes
768 before them.
769 (bfd_elf32_new_section_hook): Define.
770
137c83d6
AB
7712015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
772
773 * elf32-avr.h (struct avr_property_header): New strucure.
774 (avr_elf32_load_property_records): Declare.
775 (avr_elf32_property_record_name): Declare.
776 * elf32-avr.c: Add bfd_stdint.h include.
777 (retrieve_local_syms): New function.
778 (get_elf_r_symndx_section): New function.
779 (get_elf_r_symndx_offset): New function.
780 (internal_reloc_compare): New function.
781 (struct avr_find_section_data): New structure.
782 (avr_is_section_for_address): New function.
783 (avr_find_section_for_address): New function.
784 (avr_elf32_load_records_from_section): New function.
785 (avr_elf32_load_property_records): New function.
786 (avr_elf32_property_record_name): New function.
787
fdd410ac
AB
7882015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
789
790 * elf32-avr.h (AVR_PROPERTY_RECORD_SECTION_NAME): Define.
791 (AVR_PROPERTY_RECORDS_VERSION): Define.
792 (AVR_PROPERTY_SECTION_HEADER_SIZE): Define.
793 (struct avr_property_record): New structure.
794
685080f2
NC
7952015-02-24 Nick Clifton <nickc@redhat.com>
796
797 * elf32-v850.c (v850_set_note): New function. Creates a Renesas
798 style note entry.
799 (v850_elf_make_note_section): New function. Creates a note
800 section.
801 (v850_elf_create_sections): New function. Create a note section
802 if one is not already present.
803 (v850_elf_set_note): New function. Adds a note to a bfd.
804 (v850_elf_copy_private_bfd_data): New function. Copies V850
805 notes.
806 (v850_elf_merge_notes): New function. Merges V850 notes.
807 (print_v850_note): New function. Displays a V850 note.
808 (v850_elf_print_notes): New function. Displays all notes attached
809 to a bfd.
810 (v850_elf_merge_private_bfd_data): Call v850_elf_merge_notes.
811 (v850_elf_print_private_bfd_data): Call v850_elf_print_notes.
812 (v850_elf_fake_sections): Set the type of the V850 note section.
813 * bfd-in.h (v850_elf_create_sections): Add prototype.
814 (v850_elf_set_note): Add prototype.
815 * bfd-in2.h: Regenerate.
816
31593e1b
NC
8172015-02-24 Nick Clifton <nickc@redhat.com>
818
819 * configure.ac (AC_CHECK_HEADERS): Add wctype.h.
820 * configure: Regenerate.
821 * config.in: Regenerate.
822 * peXXigen.c: Include wctype.h if HAVE_WCTYPE_H is defined.
823 (u16_mbtowc): Use wint_t types if HAVE_WCTYPE_H is defined.
824 (rsrc_cmp): Use towlower instead of wcsncasecmp if HAVE_WCTYPE_H
825 is defined.
826
3ad797fd
NC
8272015-02-24 Nick Clifton <nickc@redhat.com>
828
829 * pdp11.c (set_section_contents): Pad the .text and .data sections
830 to their aligned sizes.
831
5518c738
YS
8322015-02-23 Yoshinori Sato <ysato@users.sourceforge.jp>
833
834 * config.bfd: Add h8300-*-linux.
835 * configure.ac: Add h8300_elf32_linux_vec.
836 * configure: Regenerate.
837 * elf32-h8300.c: Likewise.
838 * targets.c(_bfd_target_vector): Likewise.
839
cb967f0d
NC
8402015-02-23 Nick Clifton <nickc@redhat.com>
841
842 PR 17914
843 * cpu-w65.c: Correct typos in license notice.
844
0f8f0c57
NC
845 PR 17940
846 * elf32-msp430.c (msp430_elf_relax_delete_bytes): Adjust debug
847 symbols at end of sections. Adjust function sizes.
848
4ef9f41a
AA
8492015-02-20 Andreas Arnez <arnez@linux.vnet.ibm.com>
850
851 * elf-bfd.h (elfcore_write_s390_vxrs_low): Add prototype.
852 (elfcore_write_s390_vxrs_high): Likewise.
853 * elf.c (elfcore_grok_s390_vxrs_low): New function.
854 (elfcore_grok_s390_vxrs_high): New function.
855 (elfcore_grok_note): Call them.
856 (elfcore_write_s390_vxrs_low): New function.
857 (elfcore_write_s390_vxrs_high): New function.
858 (elfcore_write_register_note): Call them.
859
837914ee
BD
8602015-02-19 Branko Drevensek <branko.drevensek@gmail.com>
861
862 PR 17995
863 * verilog.c (verilog_write_record): Correct buffer size.
864
cf18fda4
AM
8652015-02-19 Alan Modra <amodra@gmail.com>
866
867 * elflink.c (_bfd_elf_define_linkage_sym): Set 'bed' earlier.
868
d983c8c5
AM
8692015-02-19 Alan Modra <amodra@gmail.com>
870
871 PR ld/4317
872 * elflink.c (elf_link_input_bfd): Drop undefined local syms.
873 (elf_link_output_extsym): Drop local and global undefined syms.
874 Tidy. Expand comment.
875
2ec55de3
AM
8762015-02-17 Alan Modra <amodra@gmail.com>
877
878 PR ld/17975
879 * elflink.c (struct elf_outext_info): Remove need_second_pass
880 and second_pass.
881 (elf_link_output_extsym): Delete code handling second forced
882 local pass. Move code emitting NULL STT_FILE symbol later, so
883 that it can be omitted if forced local is stripped. Don't
884 emit the NULL STT_FILE if no file symbols have been output.
885 (bfd_elf_final_link): Remove second forced local pass.
886 * elf32-ppc.c (add_stub_sym): Set linker_def on linker syms.
887 (ppc_elf_size_dynamic_sections): Likewise.
888 * elf64-ppc.c (ppc_build_one_stub): Likewise.
889 (build_global_entry_stubs): Likewise.
890 (ppc64_elf_build_stubs): Likewise.
891
6dfb72b9
L
8922015-02-16 H.J. Lu <hongjiu.lu@intel.com>
893
894 PR ld/17975
895 * elflink.c (elf_link_output_extsym): Only check filesym_count
896 when outputting a NULL FILE symbol. Set second_pass_sym to
897 h->forced_local && !h->root.linker_def.
898
576fa883
L
8992015-02-15 H.J. Lu <hongjiu.lu@intel.com>
900
901 * elf32-i386.c (elf_i386_always_size_sections): Set root.linker_def
902 on _TLS_MODULE_BASE_.
903 * elf64-x86-64.c (elf_x86_64_always_size_sections): Likewise.
904
62f8d217
AM
9052015-02-15 Alan Modra <amodra@gmail.com>
906
907 * dwarf2.c (read_rangelist): Correct buffer overflow check
908 Whitespace throughout file.
909
ce875075
AM
9102015-02-14 Alan Modra <amodra@gmail.com>
911
912 PR ld/17973
913 * bfd.c (struct bfd): Add lto_output.
914 * linker.c (_bfd_handle_already_linked): Explicitly test for
915 objects added by the lto plugin.
916 * opncls.c (_bfd_new_bfd_contained_in): Copy lto_output and
917 no_export flags from archive.
918 * archive.c (open_nested_file): New function, setting lto_output
919 and no_export, extracted from..
920 (find_nested_archive): ..here. Flip params. Rename from
921 _bfd_find_nested_archive.
922 (_bfd_get_elt_at_filepos): Correct var typo. Use open_nested_file.
923 (_bfd_look_for_bfd_in_cache): Copy no_export.
924 * elflink.c (elf_link_add_object_symbols): Remove now unnecessary
925 my_archive->no_export test.
926 (elf_link_input_bfd): Drop existing lto_output STT_FILE syms.
927 Don't use the file name when adding lto_output STT_FILE sym.
928 * bfd-in2.h: Regenerate.
929
451dfd38
AM
9302015-02-13 Alan Modra <amodra@gmail.com>
931
932 PR binutils/17512
933 * elf64-ppc.c (opd_entry_value): Tighten offset check. Remove
934 now redundant assert.
935
dbb3fbbb
NC
9362015-02-12 Nick Clifton <nickc@redhat.com>
937
938 PR binutils/17512
939 * dwarf.c (read_1_byte, read_1_signed_byte, read_2_bytes)
940 (read_4_bytes, read_8_bytes, read_n_bytes, read_string)
941 (read_indirect_string, read_alt_indirect_string)
942 (read_alt_indirect_ref, read_address, read_abbrevs)
943 (read_attribute_value, read_attribute, decode_line_info)
944 (find_abstract_instance_name, read_rangelist)
945 (scan_unit_for_symbols, parse_comp_unit)
946 (_bfd_dwarf2_find_nearest_line): Harden DWARF reading code. Pass
947 end pointers to reading functions and check for offsets taking
948 pointers out of range. Replace calls to read_*_leb128 with calls
949 to safe_read_leb128.
950
951 (* elf64-ppc.c (opd_entry_value): Add a check for an overlarge
952 offset.
953 * syms.c (_bfd_stab_section_find_nearest_line): Add checks for
954 computed file_name address being before the start of the string
955 table.
956
b9dc5a87
L
9572015-02-11 H.J. Lu <hongjiu.lu@intel.com>
958
959 PR ld/17878
960 * bfd.c (bfd_plugin_format): New.
961 (bfd): Add plugin_format and plugin_dummy_bfd.
962 * plugin.c (try_load_plugin): Take a pointer to bfd_boolean
963 argument to return TRUE if any plugin is found. Set plugin_format.
964 (has_plugin): New.
965 (bfd_plugin_target_p): New.
966 (bfd_plugin_specified_p): Likewise.
967 (bfd_plugin_target_p): Likewise.
968 (register_ld_plugin_object_p): Likewise.
969 (bfd_plugin_set_plugin): Set has_plugin.
970 (load_plugin): Cache try_load_plugin result.
971 (bfd_plugin_object_p): Try ld_plugin_object_p first. Check
972 plugin_format.
973 * plugin.h (bfd_plugin_target_p): New.
974 (bfd_plugin_specified_p): Likewise.
975 (register_ld_plugin_object_p): Likewise.
976 * bfd-in2.h: Regenerated.
977
55172d69
PA
9782015-02-11 Pedro Alves <palves@redhat.com>
979
980 * libbfd-in.h [__cplusplus]: Open extern "C" scope.
981 * libcoff-in.h [__cplusplus]: Open extern "C" scope.
982 * libbfd.h: Regenerate.
983 * libcoff.h: Regenerate.
984
985 * elf-bfd.h [__cplusplus]: Wrap in extern "C".
986 * mach-o.h [__cplusplus]: Wrap in extern "C".
987 * som.h [__cplusplus]: Wrap in extern "C".
988
77ef8654
NC
9892015-02-10 Nick Clifton <nickc@redhat.com>
990
991 PR binutils/17512
992 * coffcode.h (styp_to_sec_flags): Use an unsigned long type to
993 hold the flag bits.
994 * peXXigen.c (pe_print_reloc): Use unsigned types to hold the
995 size and number of relocs.
996 (pe_print_debugdata): Use a 32-bit aligned buffer to store the
997 codeview record.
998 * versados.c (process_otr): Check the esdid value before using it
999 to access the EDATA.
1000
35181b3e
EM
10012015-02-09 Ed Maste <emaste@freebsd.org>
1002
1003 * elf32-i386.c (elf_i386_get_plt_sym_val): Avoid incrementing
1004 uninitialized and unused variable.
1005 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
1006
989f9879
AM
10072015-02-09 Alan Modra <amodra@gmail.com>
1008
1009 * elf32-ppc.c (ppc_elf_relocate_section): Don't segfault on NULL
1010 tls_sec.
1011 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1012 * elflink.c (elf_link_output_extsym): Don't assert on NULL tls_sec.
1013
ca4be51c
AM
10142015-02-09 Alan Modra <amodra@gmail.com>
1015
1016 * elflink.c: Whitespace, formatting fixes.
1017 (elf_link_input_bfd): Clarify comment.
1018 (elf_link_output_extsym): Exclude symbols in linker created
1019 sections when testing for plugin symbols.
1020
1952c5cd
L
10212015-02-07 H.J. Lu <hongjiu.lu@intel.com>
1022
1023 PR ld/17935
1024 * elf32-i386.c (elf_i386_readonly_dynrelocs): Also issue a
1025 warning for relocation in readonly section for -z text.
1026 (elf_i386_size_dynamic_sections): Likewise.
1027 * elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise.
1028 (elf_x86_64_size_dynamic_sections): Likewise.
1029
9e2dec47
L
10302015-02-06 H.J. Lu <hongjiu.lu@intel.com>
1031
1032 PR ld/12365
1033 PR ld/14272
1034 * elflink.c (_bfd_elf_fix_symbol_flags): Revert the last change.
1035 (elf_link_input_bfd): Mark the plugin symbol undefined if it is
1036 referenced from a non-IR file.
1037
5929c344
NC
10382015-02-06 Nick Clifton <nickc@redhat.com>
1039
1040 PR binutils/17512
1041 * peXXigen.c (rsrc_print_resource_entries): Add range check for
1042 addresses that wrap around the address space.
1043 (rsrc_parse_entry): Likewise.
1044
60f79275
L
10452015-02-03 H.J. Lu <hongjiu.lu@intel.com>
1046
1047 PR ld/12365
1048 PR ld/14272
1049 * elflink.c (_bfd_elf_fix_symbol_flags): Mark the plugin symbol
1050 undefined if it is referenced from a non-IR file.
1051
64d29018
NC
10522015-02-03 Nick Clifton <nickc@redhat.com>
1053
1054 PR binutils/17512
1055 * ecoff.c: Use bfd_alloc2 to allocate space for structure arrays.
1056 (_bfd_ecoff_slurp_symbol_table): Check for a negative symbol
1057 index or an out of range fdr index.
1058 * elf-m10300.c (mn10300_info_to_howto): Fix typo in error message.
1059 * elf32-arc.c (arc_info_to_howto_rel): Likewise.
1060 * elf32-avr.c (avr_info_to_howto_rela): Likewise.
1061 * elf32-cr16.c (elf_cr16_info_to_howto): Likewise.
1062 * elf32-cr16c.c (elf_cr16c_info_to_howto_rel): Likewise.
1063 * elf32-cris.c (cris_info_to_howto_rela): Likewise.
1064 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
1065 * elf32-d10v.c (d10v_info_to_howto_rel): Likewise.
1066 * elf32-d30v.c (d30v_info_to_howto_rel): Likewise.
1067 * elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise.
1068 * elf32-fr30.c (fr30_info_to_howto_rela): Likewise.
1069 * elf32-frv.c (frv_info_to_howto_rela): Likewise.
1070 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
1071 * elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise.
1072 * elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise.
1073 * elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise.
1074 * elf32-lm32.c (lm32_info_to_howto_rela): Likewise.
1075 * elf32-m32c.c (m32c_info_to_howto_rela): Likewise.
1076 * elf32-m32r.c (m32r_info_to_howto_rel): Likewise.
1077 * elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise.
1078 * elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise.
1079 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
1080 * elf32-mep.c (mep_info_to_howto_rela): Likewise.
1081 * elf32-metag.c (metag_info_to_howto_rela): Likewise.
1082 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
1083 * elf32-moxie.c (moxie_info_to_howto_rela): Likewise.
1084 * elf32-msp430.c (msp430_info_to_howto_rela): Likewise.
1085 * elf32-mt.c (mt_info_to_howto_rela): Likewise.
1086 * elf32-nds32.c (nds32_info_to_howto_rel): Likewise.
1087 * elf32-or1k.c (or1k_info_to_howto_rela): Likewise.
1088 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
1089 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
1090 * elf32-rl78.c (rl78_info_to_howto_rela): Likewise.
1091 * elf32-rx.c (rx_info_to_howto_rela): Likewise.
1092 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
1093 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
1094 * elf32-v850.c (v850_elf_perform_relocation): Likewise.
1095 * elf32-vax.c (rtype_to_howto): Likewise.
1096 * elf32-visium.c (visium_info_to_howto_rela): Likewise.
1097 * elf32-xgate.c (xgate_info_to_howto_rel): Likewise.
1098 * elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise.
1099 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
1100 * elf64-mmix.c (mmix_info_to_howto_rela): Likewise.
1101 * mach-o.c: Use bfd_alloc2 to allocate space for structure arrays.
1102 (bfd_mach_o_canonicalize_one_reloc): Fix check on out
1103 of range symbol indicies.
1104 (bfd_mach_o_canonicalize_relocs): Check for out of range alloc.
1105 (bfd_mach_o_canonicalize_dynamic_reloc): Likewise.
1106 (bfd_mach_o_build_dysymtab): Likewise.
1107 (bfd_mach_o_write_symtab_content): Set the string table size to
1108 zero upon error.
1109 (bfd_mach_o_read_symtab_symbols): Reset the nsyms value if the
1110 read fails.
1111 * peXXigen.c (pe_print_edata): Check for numeric overflow in edt
1112 fields.
1113 * tekhex.c (first_phase): Check for src pointer reaching end of
1114 buffer.
1115
3a635617
WN
11162015-02-03 Will Newton <will.newton@linaro.org>
1117
46b87d49
WN
1118 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol):
1119 Set st_value to zero for undefined symbols if the reference
1120 is weak or pointer_equality_needed is FALSE.
1121
3a635617
WN
1122 * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Improve
1123 comment discussing why we clear st_value for some symbols.
1124
0c4bd9d9
KLC
11252015-02-02 Kuan-Lin Chen <kuanlinchentw@gmail.com>
1126
1127 * elf32-nds32.c (nds32_get_section_contents): Add one more argument.
1128 (nds32_elf_relocate_section): Do not relocate R_NDS32_LONGJUMP7.
1129
b86ac8e3
AM
11302015-01-29 Alan Modra <amodra@gmail.com>
1131
1132 * elf64-ppc.c (ppc64_elf_relocate_section): Correct GOT_TLSLD
1133 optimization. Tidy mask for GOT_TLSGD optimization.
1134 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. Correct
1135 location of nop zapping high insn too.
1136
dbd1e97e
AM
11372015-01-28 Alan Modra <amodra@gmail.com>
1138
1139 * elf64-ppc.h (struct ppc64_elf_params): Add "object_in_toc".
1140 * elf64-ppc.c (ppc64_elf_add_symbol_hook): Assume that global symbols
1141 in .toc indicate xlc compiled code that might require a rw .toc.
1142
3f8107ab
AM
11432015-01-28 James Bowman <james.bowman@ftdichip.com>
1144
1145 * Makefile.am: Add FT32 files.
1146 * archures.c (enum bfd_architecture): Add bfd_arch_ft32.
1147 (bfd_mach_ft32): Define.
1148 (bfd_ft32_arch): Declare.
1149 (bfd_archures_list): Add bfd_ft32_arch.
1150 * config.bfd: Handle FT32.
1151 * configure.ac: Likewise.
1152 * cpu-ft32.c: New file.
1153 * elf32-ft32.c: New file.
1154 * reloc.c (BFD_RELOC_FT32_10, BFD_RELOC_FT32_20, BFD_RELOC_FT32_17,
1155 BFD_RELOC_FT32_18): Define.
1156 * targets.c (_bfd_target_vector): Add ft32_elf32_vec.
1157 * bfd-in2.h: Regenerate.
1158 * libbfd.h: Regenerate.
1159 * Makefile.in: Regenerate.
1160 * configure: Regenerate.
1161 * po/SRC-POTFILES.in: Regenerate.
1162
37e3922e
NC
11632015-01-27 Nick Clifton <nickc@redhat.com>
1164
1165 PR binutils/17512
1166 * pdp11.c (aout_get_external_symbols): Return false if there are
1167 no symbols.
1168
877a8638
NC
1169 * dwarf2.c (concat_filename): Check for an empty directory table.
1170 (scan_unit_for_symbols): Check for reading off the end of the
1171 unit.
1172 (parse_comp_unit): Check for a DW_AT_comp_dir attribute with a
1173 non-string form.
1174 * elf64-ppc.c (opd_entry_value): Fail if there are no relocs
1175 available.
1176
18393a2e
KLC
11772015-01-26 Kuan-Lin Chen <kuanlinchentw@gmail.com>
1178
1179 * elf32-nds32.c (nds32_elf_pick_relax): Fix again setting.
1180
055173ca
DD
11812015-01-22 DJ Delorie <dj@redhat.com>
1182
1183 * elf32-m32c.c (m32c_apply_reloc_24): New.
1184 (m32c_elf_howto_table): Use it for R_M32C_24.
1185 (m32c_elf_relocate_section): Handle R_M32C_24 specially.
1186
4e5cb37e
NC
11872015-01-22 Nick Clifton <nickc@redhat.com>
1188
1189 PR binutils/17512
1190 * coffcode.h (handle_COMDAT): When searching for the section
1191 symbol, make sure that there is space left in the symbol table.
1192 * vms-alpha.c (_bfd_vms_slurp_ehdr): Add range checks.
1193
86eafac0
NC
11942015-01-21 Nick Clifton <nickc@redhat.com>
1195
1196 PR binutils/17512
1197 * coffcode.h (coff_set_arch_mach_hook): Check return value from
1198 bfd_malloc.
1199 (coff_slurp_line_table): Return FALSE if the line number
1200 information was corrupt.
1201 (coff_slurp_symbol_table): Return FALSE if the symbol information
1202 was corrupt.
1203 * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Always
1204 initialise the fields of the dyld_info structure.
1205 (bfd_mach_o_build_exec_seg_command): Replace assertion with an
1206 error message and a return value.
1207 (bfd_mach_o_layout_commands): Change the function to boolean.
1208 Return FALSE if the function fails.
1209 (bfd_mach_o_build_commands): Fail if bfd_mach_o_layout_commands
1210 fails.
1211 (bfd_mach_o_read_command): Fail if an unrecognised command is
1212 encountered.
1213 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Set bfd_error if the
1214 read fails.
1215 (slurp_symtab): Check the return from bfd_malloc.
1216 (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if the copy
1217 encountered an error.
1218 (_bfd_XXi_final_link_postscript): Fail if a section could not be
1219 copied.
1220 * peicode.h (pe_bfd_object_p): Fail if the header could not be
1221 swapped in.
1222 * tekhex.c (first_phase): Fail if the section is too big.
1223 * versados.c (struct esdid): Add content_size field.
1224 (process_otr): Use and check the new field.
1225 (versados_get_section_contents): Check that the section exists and
1226 that the requested data is available.
1227
03d5b773
CLT
12282015-01-20 Chung-Lin Tang <cltang@codesourcery.com>
1229
1230 * elf32-nios2.c (elf_backend_default_execstack): Define as 0.
1231
1c9177d9
AM
12322015-01-20 Alan Modra <amodra@gmail.com>
1233
1234 PR ld/17615
1235 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Don't drop
1236 ELF_COMMON_DEF syms.
1237
c4621b33
AM
12382015-01-19 Alan Modra <amodra@gmail.com>
1239
3e2aa5bb 1240 PR ld/17615
c4621b33
AM
1241 * elf-bfd.h (ELF_COMMON_DEF_P): Note that this might be true for
1242 linker script assignments too.
1243 * elflink.c (elf_gc_sweep_symbol): Don't drop ELF_COMMON_DEF syms.
1244 (bfd_elf_gc_mark_dynamic_ref_symbol): Similarly.
1245
0ba38529
AM
12462015-01-19 Alan Modra <amodra@gmail.com>
1247
1248 * elf32-bfin.c (bfin_bfd_reloc_type_lookup): Correct loop iteration
1249 to allow return of first howto.
1250 * elf32-fr30.c (fr30_reloc_type_lookup): Likewise.
1251 * elf32-m32c.c (m32c_reloc_type_lookup): Likewise.
1252 * elf32-moxie.c (moxie_reloc_type_lookup): Likewise.
1253 * elf32-or1k.c (or1k_reloc_type_lookup): Likewise.
1254 * elf32-rl78.c (rl78_reloc_type_lookup): Likewise.
1255 * elf32-rx.c (rx_reloc_type_lookup): Likewise.
1256 * elf32-tilepro.c (tilepro_reloc_type_lookup): Likewise.
1257 * elf32-xstormy16.c (xstormy16_reloc_type_lookup): Likewise.
1258 * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
1259 * elf32-nios2.c (nios2_reloc_map): Add mapping for R_NIOS2_NONE.
1260 * elf32-spu.c (spu_elf_bfd_to_reloc_type): Allow return of R_SPU_NONE.
1261 (spu_elf_reloc_type_lookup): Adjust to suit.
1262
6346d5ca
AM
12632015-01-19 Alan Modra <amodra@gmail.com>
1264
1265 * bfd-in.h (bfd_get_section_limit_octets): New define, extracted from..
1266 (bfd_get_section_limit): ..here.
1267 * reloc.c (bfd_perform_relocation): Correct bfd_reloc_outofrange check.
1268 (bfd_install_relocation, _bfd_final_link_relocate): Add same check here.
1269 * elf32-sh.c (sh_elf_reloc): Correct bfd_reloc_outofrange check.
1270 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Remove duplicated
1271 bfd_reloc_outofrange check.
1272 * bfd-in2.h: Regenerate.
1273
1274 * cpu-ns32k.c (_bfd_do_ns32k_reloc_contents): Return bfd_reloc_ok
1275 on zero size relocs.
1276 * ecoff.c (ecoff_reloc_link_order): Likewise.
1277 * elf32-nds32.c (nds32_relocate_contents): Likewise.
1278 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
1279
1280 * reloc.c (_bfd_relocate_contents): Don't bomb on zero size relocs.
1281 (_bfd_clear_contents): Likewise.
1282 * elfxx-mips.c (mips_elf_obtain_contents): Likewise.
1283 (mips_elf_perform_relocation): Likewise.
1284
1285 * aoutx.h (aout_link_reloc_link_order): Allow for NULL return
1286 from malloc on zero size alloc.
1287 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
1288 * elflink.c (elf_reloc_link_order): Likewise.
1289 * linker.c (_bfd_generic_reloc_link_order): Likewise.
1290 * pdp11.c (aout_link_reloc_link_order): Likewise.
1291 * xcofflink.c (xcoff_reloc_link_order): Likewise.
1292
1293 * aoutx.h (howto_table_ext): Ensure NONE relocs have size 3,
1294 bitsize 0, and complain_overflow_dont.
1295 * coff-sparc.c (coff_sparc_howto_table): Likewise.
1296 * elf-hppa.h (elf_hppa_howto_table): Likewise.
1297 * elf-m10200.c (elf_mn10200_howto_table): Likewise.
1298 * elf-m10300.c (elf_mn10300_howto_table): Likewise.
1299 * elf32-arc.c (elf_arc_howto_table): Likewise.
1300 * elf32-arm.c (elf32_arm_howto_table_1): Likewise.
1301 * elf32-avr.c (elf_avr_howto_table): Likewise.
1302 * elf32-bfin.c (bfin_howto_table): Likewise.
1303 * elf32-cr16.c (cr16_elf_howto_table): Likewise.
1304 * elf32-cris.c (cris_elf_howto_table): Likewise.
1305 * elf32-crx.c (crx_elf_howto_table): Likewise.
1306 * elf32-d10v.c (elf_d10v_howto_table): Likewise.
1307 * elf32-d30v.c (elf_d30v_howto_table): Likewise.
1308 * elf32-dlx.c (dlx_elf_howto_table): Likewise.
1309 * elf32-epiphany.c (epiphany_elf_howto_table): Likewise.
1310 * elf32-fr30.c (fr30_elf_howto_table): Likewise.
1311 * elf32-frv.c (elf32_frv_howto_table): Likewise.
1312 * elf32-h8300.c (h8_elf_howto_table): Likewise.
1313 * elf32-i370.c (i370_elf_howto_raw): Likewise.
1314 * elf32-i386.c (elf_howto_table): Likewise.
1315 * elf32-i860.c (elf32_i860_howto_table): Likewise.
1316 * elf32-i960.c (elf32_i960_relocate): Likewise.
1317 * elf32-ip2k.c (ip2k_elf_howto_table): Likewise.
1318 * elf32-iq2000.c (iq2000_elf_howto_table): Likewise.
1319 * elf32-lm32.c (lm32_elf_howto_table): Likewise.
1320 * elf32-m32c.c (m32c_elf_howto_table): Likewise.
1321 * elf32-m32r.c (m32r_elf_howto_table): Likewise.
1322 * elf32-m68hc11.c (elf_m68hc11_howto_table): Likewise.
1323 * elf32-m68hc12.c (elf_m68hc11_howto_table): Likewise.
1324 * elf32-m68k.c (howto_table): Likewise.
1325 * elf32-mcore.c (mcore_elf_howto_raw): Likewise.
1326 * elf32-mep.c (mep_elf_howto_table): Likewise.
1327 * elf32-metag.c (elf_metag_howto_table): Likewise.
1328 * elf32-microblaze.c (microblaze_elf_howto_raw): Likewise.
1329 * elf32-mips.c (elf_mips_howto_table_rel): Likewise.
1330 * elf32-moxie.c (moxie_elf_howto_table): Likewise.
1331 * elf32-msp430.c (elf_msp430_howto_table): Likewise.
1332 * elf32-mt.c (mt_elf_howto_table): Likewise.
1333 * elf32-nds32.c (nds32_elf_howto_table): Likewise.
1334 * elf32-nios2.c (elf_nios2_howto_table_rel): Likewise.
1335 * elf32-or1k.c (or1k_elf_howto_table): Likewise.
1336 * elf32-pj.c (pj_elf_howto_table): Likewise.
1337 * elf32-ppc.c (ppc_elf_howto_raw): Likewise.
1338 * elf32-rl78.c (rl78_elf_howto_table): Likewise.
1339 * elf32-rx.c (rx_elf_howto_table): Likewise.
1340 * elf32-s390.c (elf_howto_table): Likewise.
1341 * elf32-score.c (elf32_score_howto_table): Likewise.
1342 * elf32-score7.c (elf32_score_howto_table): Likewise.
1343 * elf32-sh-relocs.h (R_SH_NONE): Likewise.
1344 * elf32-spu.c (elf_howto_table): Likewise.
1345 * elf32-tic6x.c (elf32_tic6x_howto_table): Likewise.
1346 * elf32-tilepro.c (tilepro_elf_howto_table): Likewise.
1347 * elf32-v850.c (v850_elf_howto_table): Likewise.
1348 * elf32-vax.c (howto_table): Likewise.
1349 * elf32-visium.c (visium_elf_howto_table): Likewise.
1350 * elf32-xc16x.c (xc16x_elf_howto_table): Likewise.
1351 * elf32-xgate.c (elf_xgate_howto_table): Likewise.
1352 * elf32-xstormy16.c (xstormy16_elf_howto_table): Likewise.
1353 * elf32-xtensa.c (elf_howto_table): Likewise.
1354 * elf64-alpha.c (elf64_alpha_howto_table): Likewise.
1355 * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
1356 * elf64-mmix.c (elf_mmix_howto_table): Likewise.
1357 * elf64-ppc.c (ppc64_elf_howto_raw): Likewise.
1358 * elf64-s390.c (elf_howto_table): Likewise.
1359 * elf64-sh64.c (sh_elf64_howto_table): Likewise.
1360 * elf64-x86-64.c (x86_64_elf_howto_table): Likewise.
1361 * elfn32-mips.c (elf_mips_howto_table_rel): Likewise.
1362 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Likewise.
1363 (elfNN_aarch64_howto_none): Likewise.
1364 * elfxx-ia64.c (ia64_howto_table): Likewise.
1365 * elfxx-sparc.c (_bfd_sparc_elf_howto_table): Likewise.
1366 * elfxx-tilegx.c (tilegx_elf_howto_table): Likewise.
1367 * nlm32-sparc.c (nlm32_sparc_howto_table): Likewise.
1368
6333bc0d
L
13692015-01-15 H.J. Lu <hongjiu.lu@intel.com>
1370
1371 PR ld/17847
1372 * elf64-x86-64.c (elf_x86_64_relocate_section): Don't complain
1373 about -fPIC if the symbol is undefined when building executable.
1374
cd21f5da
NC
13752015-01-15 Nick Clifton <nickc@redhat.com>
1376
1377 PR binutils/17512
1378 * elf-m10300.c (mn10300_info_to_howto): Replace assertion with an
1379 error message. Never return an invalid howto pointer.
1380 * elf32-cr16.c (cr16_info_to_howto): Likewise.
1381 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
1382 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
1383 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
1384 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
1385 * elf32-mips.c (mips_elf32_rtype_to_howto): Likewise.
1386 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
1387 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
1388 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
1389 * elf32-v850.c (v850_elf_info_to_howto_rela): Likewise.
1390 * elf32-vax.c (rtype_to_howto): Likewise.
1391 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
1392 * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
1393 * elfn32-mips.c (sh_elf_info_to_howto): Likewise.
1394 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
1395 (sh_elf_reloc): Check that the reloc is in range.
1396 * reloc.c (bfd_perform_relocation): Check that the section is big
1397 enough for the entire reloc.
1398 (bfd_generic_get_relocated_section_contents): Report unexpected
1399 return values from perform_reloc.
1400
2d071cfc
NC
14012015-01-15 Nick Clifton <nickc@redhat.com>
1402
1403 * elf32-msp430.c (msp430_elf_relax_section): Skip unhandled
1404 relocs. Include PC-relative adjustment for R_MSP430X_ABS16
1405 relaxation.
1406
ca55926c
AM
14072015-01-15 Alan Modra <amodra@gmail.com>
1408
1409 * elflink.c (_bfd_elf_link_omit_section_dynsym): Return true for
1410 any output section matching a linker created dynobj section.
1411
8539e4e8
AM
14122015-01-15 Alan Modra <amodra@gmail.com>
1413
1414 PR 17842
1415 * elflink.c (elf_link_output_sym): Assert elf_onesymtab set.
1416 (bfd_elf_final_link): Always create a symbol table when emit_relocs.
1417 Don't assign symtab file position unless symbols will be output.
1418 Merge blocks with condition in common. Don't call
1419 elf_backend_output_arch_local_syms or elf_backend_output_arch_syms
1420 unless other symbols are output. Move assignment of symtab_shndx
1421 file position. Localize variable.
1422
52db4ec2
JW
14232015-01-14 Jiong Wang <jiong.wang@arm.com>
1424
1425 * elf32-arm.c (elf32_arm_final_link_relocate): Reject R_ARM_32/_NOI when
1426 trying to defer them to runtime.
1427
0941db69
JW
14282015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
1429
1430 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use SYMBOLIC_BIND
1431 to check if a symbol should be bound symbolically.
1432
0172429c
JW
14332015-01-13 Jiong Wang <jiong.wang@arm.com>
1434
1435 * elfnn-aarch64.c: (elfNN_aarch64_howto_table): Enable overflow check
1436 for TLSLE_MOVW_TPREL_G2.
1437
bab91cce
JW
14382015-01-13 Jiong Wang <jiong.wang@arm.com>
1439
1440 PR ld/17415
1441 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Mark
1442 R_AARCH64_TLSLE_ADD_TPREL_HI12 as complain_overflow_unsigned.
1443 * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Correct the
1444 bit mask.
1445
3c758495
TG
14462015-01-12 Terry Guo <terry.guo@arm.com>
1447
1448 * elflink.c (_bfd_elf_gc_mark_debug_special_section_group): New
1449 function.
1450 (_bfd_elf_gc_mark_extra_sections): Use it.
1451
9d1d54d5
L
14522015-01-11 H.J. Lu <hongjiu.lu@intel.com>
1453
1454 PR ld/17827
1455 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): For PIE,
1456 only discard space for pc-relative relocs symbols which turn
1457 out to need copy relocs.
1458
c6e8e93a
NC
14592015-01-09 Nick Clifton <nickc@redhat.com>
1460
1461 * tekhex.c (getvalue): Fix thinko in test for correct extraction
1462 of value.
1463 (getsym): Return false if there was not enough data to extract the
1464 symbol.
1465
400cf8cb
AG
14662015-01-09 Anthony Green <green@moxielogic.com>
1467
1468 * elf32-moxie.c (ELF_MACHINE_ALT1): Define.
1469
23d4663e
NC
14702015-01-08 Nick Clifton <nickc@redhat.com>
1471
1472 * elf32-msp430.c (msp430_elf_relax_section): Add relaxation of
1473 16-bit absolute BR instructions to 10-bit pc-relative JMP
1474 instructions.
1475
063bb025
NC
14762015-01-08 Nick Clifton <nickc@redhat.com>
1477
1478 PR binutils/17512
1479 * coffcode.h (coff_slurp_symbol_table): Return false if we failed
1480 to load the line table.
1481 * elf.c (_bfd_elf_map_sections_to_segments): Enforce a minimum
1482 maxpagesize of 1.
1483 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if
1484 the Data Directory Size is too large.
1485
6f25f223
L
14862015-01-06 H.J. Lu <hongjiu.lu@intel.com>
1487
1488 PR binutils/17512
1489 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocation.
1490 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
1491
85880250
NC
14922015-01-06 Nick Clifton <nickc@redhat.com>
1493
1494 PR binutils/17512
e7287c7f
NC
1495 * mach-o.c (bfd_mach_o_read_symtab_strtab): Zero terminate the
1496 string table.
1497
ec93045b
NC
1498 * reloc.c (bfd_get_reloc_size): Handle a reloc size of -1.
1499 (bfd_perform_relocation): Include the size of the reloc in the
1500 test for an out of range relocation.
1501 (bfd_generic_get_relocated_section_contents): Remove reloc range
1502 test.
1503
85880250
NC
1504 * coff-i860.c (CALC_ADDEND): Always set an addend value.
1505 * tekhex.c (getvalue): Add an end pointer parameter. Use it to
1506 avoid reading off the end of the buffer.
1507 (getsym): Likewise.
1508 (first_phase): Likewise.
1509 (pass_over): Pass an end pointer to the invoked function.
1510
533d0af0
L
15112015-01-05 H.J. Lu <hongjiu.lu@intel.com>
1512
1513 PR binutils/17512
1514 * elf32-i386.c (elf_i386_get_plt_sym_val): Return NULL on corrupt
1515 input.
1516 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
1517
896ca098
NC
15182015-01-05 Nick Clifton <nickc@redhat.com>
1519
1520 PR binutils/17512
1521 * archive.c (do_slurp_bsd_armap): Make sure that the parsed sized
1522 is at least big enough for the header to be read.
1523 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocs.
1524 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add range checks.
1525 (bfd_mach_o_read_command): Prevetn duplicate error messages about
1526 unrecognized commands.
1527 * syms.c (_bfd_stab_section_find_nearest_line): Add range checks
1528 when indexing into the string table.
1529
b90efa5b 15302015-01-01 Alan Modra <amodra@gmail.com>
ee3b52e9 1531
b90efa5b 1532 Update year range in copyright notice of all files.
ee3b52e9 1533
b90efa5b 1534For older changes see ChangeLog-2014
56882138 1535\f
b90efa5b 1536Copyright (C) 2015 Free Software Foundation, Inc.
752937aa
NC
1537
1538Copying and distribution of this file, with or without modification,
1539are permitted in any medium without royalty provided the copyright
1540notice and this notice are preserved.
1541
56882138
AM
1542Local Variables:
1543mode: change-log
1544left-margin: 8
1545fill-column: 74
1546version-control: never
1547End:
This page took 0.855489 seconds and 4 git commands to generate.