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