]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
Don't check relocations in excluded sections
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
5ce03cea
L
12016-04-20 H.J. Lu <hongjiu.lu@intel.com>
2
3 * elflink.c (_bfd_elf_link_check_relocs): Don't check relocations
4 in excluded sections
5
338c190a
L
62016-04-20 H.J. Lu <hongjiu.lu@intel.com>
7
8 PR ld/19969
9 * elf64-x86-64.c (check_relocs_failed): New.
10 (elf_x86_64_need_pic): Moved before elf_x86_64_check_relocs.
11 Support relocation agaist local symbol. Set check_relocs_failed.
12 (elf_x86_64_check_relocs): Use elf_x86_64_need_pic. Check
13 R_X86_64_32 relocation overflow.
14 (elf_x86_64_relocate_section): Skip if check_relocs failed.
15 Update one elf_x86_64_need_pic and remove one elf_x86_64_need_pic.
16
466ee2af
L
172016-04-20 H.J. Lu <hongjiu.lu@intel.com>
18
19 * elf32-i386.c (elf_i386_check_relocs): Call
20 _bfd_elf_create_ifunc_sections only for STT_GNU_IFUNC symbol.
21 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
22
d9689752
L
232016-04-20 H.J. Lu <hongjiu.lu@intel.com>
24
25 * elf-bfd.h (_bfd_elf_link_check_relocs): New.
26 * elflink.c (_bfd_elf_link_check_relocs): New function.
27 (elf_link_add_object_symbols): Call _bfd_elf_link_check_relocs
28 if check_relocs_after_open_input is FALSE.
29
e6c7cdec
TS
302016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
31
32 * cache.c: Update old style function definitions.
33 * elf32-m68k.c: Likewise.
34 * elf64-mmix.c: Likewise.
35 * stab-syms.c: Likewise.
36
b98e6871
TS
372016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
38
39 * elf32-arm.c (put_thumb2_insn): Change argument type to bfd_byte *.
40
6fd8e7c2
L
412016-04-15 H.J. Lu <hongjiu.lu@intel.com>
42
43 * Makefile.in: Regenerated with automake 1.11.6.
44 * aclocal.m4: Likewise.
45 * doc/Makefile.in: Likewise.
46
4b0c052e
AB
472016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
48
49 * reloc.c: Add BFD_RELOC_ARC_NPS_CMEM16 entry.
50 * bfd-in2.h: Regenerate.
51 * libbfd.h: Regenerate.
52 * elf32-arc.c: Add 'opcode/arc.h' include.
53 (struct arc_relocation_data): Add symbol_name.
54 (arc_special_overflow_checks): New function.
55 (arc_do_relocation): Use arc_special_overflow_checks, reindent as
56 required, add an extra comment.
57 (elf_arc_relocate_section): Setup symbol_name in reloc_data.
58
33cbe6c0
AB
592016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
60
61 * elf32-arc.c (tls_got_entries): Add 'TLS_GOT_' prefix to all
62 entries.
63 (elf_arc_relocate_section): Update enum uses.
64 (elf_arc_check_relocs): Likewise.
65 (elf_arc_finish_dynamic_symbol): Likewise.
66
7634c4e6
L
672016-04-14 H.J. Lu <hongjiu.lu@intel.com>
68
69 * elf.c (_bfd_elf_copy_private_bfd_data): Replace "link" with
70 "sh_link".
71
84865015
NC
722016-04-14 Nick Clifton <nickc@redhat.com>
73
74 PR target/19938
75 * elf-bbfd.h (struct elf_backend_data): New field:
76 elf_strtab_flags.
77 New field: elf_backend_set_special_section_info_and_link
78 * elfxx-target.h (elf_backend_strtab_flags): Define if not already
79 defined.
80 (elf_backend_set_special_section_info_and_link): Define if not
81 already defined.
82 (elfNN_bed): Use elf_backend_set_special_section_info_and_link and
83 elf_backend_strtab_flags macros to initialise fields in structure.
84 * elf.c (_bfd_elf_make_section_from_shdr): Check for SHF_STRINGS
85 being set even if SHF_MERGE is not set.
86 (elf_fake_sections): Likewise.
87 (section_match): New function. Matches two ELF sections based
88 upon fixed characteristics.
89 (find_link): New function. Locates a section in a BFD that
90 matches a section in a different BFD.
91 (_bfd_elf_copy_private_bfd_data): Copy the sh_info and sh_link
92 fields of reserved sections.
93 (bfd_elf_compute_section_file_positions): Set the flags for the
94 .shstrtab section based upon the elf_strtab_flags field in the
95 elf_backend_data structure.
96 (swap_out_syms): Likewise for the .strtab section.
97 * elflink.c (bfd_elf_final_link): Set the flags for the
98 .strtab section based upon the elf_strtab_flags field in the
99 elf_backend_data structure.
100 * elf32-i386.c (elf32_i386_set_special_info_link): New function.
101 (elf_backend_strtab_flags): Set to SHF_STRINGS for Solaris
102 targets.
103 (elf_backend_set_special_section_info_and_link): Define for
104 Solaris targets.
105 * elf32-sparc.c: Likewise.
106 * elf64-x86-64.c: Likewise.
107
2df3368d
L
1082016-04-11 H.J. Lu <hongjiu.lu@intel.com>
109
110 PR ld/19939
111 * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer
112 to bfd_boolean.
113 * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated.
114 Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc
115 applies to read-only section.
116 * elf32-i386.c (elf_i386_link_hash_table): Add
117 readonly_dynrelocs_against_ifunc.
118 (elf_i386_allocate_dynrelocs): Updated.
119 (elf_i386_size_dynamic_sections): Issue an error for read-only
120 segment with dynamic IFUNC relocations only if
121 readonly_dynrelocs_against_ifunc is TRUE.
122 * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
123 readonly_dynrelocs_against_ifunc.
124 (elf_x86_64_allocate_dynrelocs): Updated.
125 (elf_x86_64_size_dynamic_sections): Issue an error for read-only
126 segment with dynamic IFUNC relocations only if
127 readonly_dynrelocs_against_ifunc is TRUE.
128 * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs):
129 Updated.
130
15dd01b1
TP
1312016-04-06 Thomas Preud'homme <thomas.preudhomme@arm.com>
132
133 * elf32-arm.c (elf32_arm_size_stubs): Move error_ret_free_local to be
134 a fall through from error_ret_free_internal. Free local_syms in
135 error_ret_free_local if allocated from bfd_elf_get_elf_syms ().
136
1e5885b7
CZ
1372016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
138
139 * elf32-arc.c (plt_do_relocs_for_symbol): Changed.
140 (relocate_plt_for_entry): Likewise.
141
b3aee839
CZ
1422016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
143
144 * elf32-arc.c (elf_arc_check_relocs): Changed
145
094fb063
CZ
1462016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
147
148 * elf32-arc.c (name_for_global_symbol): Changed assert.
149 (get_replace_function): Created.:
150 (struct arc_relocation_data): Changed to signed types.
151 (defines S, L, P, PDATA): Casted to signed type.
152 (defines SECTSTART, _SDA_BASE_, TLS_REL): Likewise.
153 (PRINT_DEBUG_RELOC_INFO_BEFORE): Changed.
154 (arc_do_relocation): Changed.
155
94e5c971
CZ
1562016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
157
158 * elf32-arc.c (name_for_global_symbol): Added assert to check for
159 symbol index.
160 (elf_arc_relocate_section): Added and changed asserts, validating
161 the synamic symbol index.
162 (elf_arc_finish_dynamic_symbol): Do not fill the dynamic
163 relocation if symbol has dynindx set to -1.
164
1f599d0e
MR
1652016-04-05 Maciej W. Rozycki <macro@imgtec.com>
166
167 * elflink.c (elf_link_add_object_symbols): Always turn hidden
168 and internal symbols which have a dynamic index into local
169 ones.
170
67f101ee
NC
1712016-04-04 Nick Clifton <nickc@redhat.com>
172
173 PR 19872
174 * dwarf2.c (parse_comp_unit): Skip warning about unrecognised
175 version number if the version is zero.
176
7b15fa7a
AM
1772016-04-01 Alan Modra <amodra@gmail.com>
178
179 PR 19886
180 * elflink.c (on_needed_list): Recursively check needed status.
181 (elf_link_add_object_symbols): Adjust.
182
024ea11b
SKS
1832016-03-30 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
184
185 * elf32-avr.c (avr_elf32_load_records_from_section): Free
186 internal_relocs only if they aren't cached.
187
ed3056eb
NC
1882016-03-29 Nick Clifton <nickc@redhat.com>
189
190 PR 17334
191 * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax
192 assertion on the size of the got section to allow it to be bigger
193 than the number of relocs.
194
e2b4fc91
TS
1952016-03-29 Toni Spets <toni.spets@iki.fi>
196
197 PR 19878
198 * coffcode.h (coff_write_object_contents): Revert accidental
199 2014-11-10 change.
200
a97fbc7e
AM
2012016-03-22 Alan Modra <amodra@gmail.com>
202
203 PR 19850
204 * dwarf2.c (read_attribute_value): Skip info_ptr check for
205 DW_FORM_flag_present.
206
9780e045
NC
2072016-03-22 Nick Clifton <nickc@redhat.com>
208
96254e5c
NC
209 * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an
210 architecture name for backwards compatibility.
211
7769fa97
NC
212 * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible
213 unbounded stack use.
214
9780e045
NC
215 * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a
216 sufficiently recent version of GCC.
217 * configure: Regenerate.
218
6f4c0a42
AM
2192016-03-22 Alan Modra <amodra@gmail.com>
220
221 PR 19851
222 * plugin.c (try_load_plugin): Avoid -Wstack-usage warning.
223
8699fc3e
AB
2242016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
225
226 * archures.c (bfd_mach_arc_nps400): Define.
227 * bfd-in2.h: Regenerate.
228 * cpu-arc.c (arch_info_struct): New entry for nps400, renumber
229 some existing entries to make space.
230 * elf32-arc.c (arc_elf_object_p): Add nps400 case.
231 (arc_elf_final_write_processing): Likewise.
232
a9522a21
AB
2332016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
234
235 * elf32-arc.c (arc_elf_print_private_bfd_data): Remove use of
236 EF_ARC_CPU_GENERIC.
237 (arc_elf_final_write_processing): Don't bother setting cpu field
238 in e_flags, this will have been set elsewhere.
239
c0334580
AB
2402016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
241
242 * elf32-arc.c (arc_elf_final_write_processing): Switch to using
243 EF_ARC_MACH_MSK.
244
e1fa0163
NC
2452016-03-21 Nick Clifton <nickc@redhat.com>
246
247 * warning.m4 (GCC_WARN_CFLAGS): Add -Wstack-usage=262144
248 * configure: Regenerate.
249 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Replace use of
250 alloca with call to xmalloc.
251 * elf32-nds32.c: Likewise.
252 * elf64-hppa.c: Likewise.
253 * elfxx-mips.c: Likewise.
254 * pef.c: Likewise.
255 * pei-x86_64.c: Likewise.
256 * som.c: Likewise.
257 * xsym.c: Likewise.
258
4e0c91e4
L
2592016-03-15 H.J. Lu <hongjiu.lu@intel.com>
260
261 PR ld/19827
262 * elf32-i386.c (elf_i386_check_relocs): Bind defined symbol
263 locally in PIE.
264 (elf_i386_relocate_section): Likewise.
265 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
266 (elf_x86_64_relocate_section): Likewise.
267
4c10bbaa
L
2682016-03-15 H.J. Lu <hongjiu.lu@intel.com>
269
270 PR ld/19807
271 * elf64-x86-64.c (elf_x86_64_relocate_section): Check
272 no_reloc_overflow_check to diable R_X86_64_32/R_X86_64_32S
273 relocation overflow check.
274
fbe48798
L
2752016-03-14 H.J. Lu <hongjiu.lu@intel.com>
276
277 * bfd-in2.h: Regenerated.
278
37b01f6a
DG
2792016-03-11 Dan Gissel <dgisselq@ieee.org>
280
281 PR 19713
282 * elf.c (_bfd_elf_section_offset): Ensure that the returned offset
283 uses bytes not octets.
284 * elflink.c (resolve_section): Likewise.
285 Add a bfd parameter.
286 (eval_section): Pass the input_bfd to resolve_section.
287 (bfd_elf_perform_complex_relocation): Convert byte offset to
288 octets before read and writing values.
289 (elf_link_input_bfd): Add byte to octet conversions.
290 (elf_reloc_link_order): Likewise.
291 (elf_fixup_link_order): Likewise.
292 (bfd_elf_final_link): Likewise.
293 * reloc.c (_bfd_final_link_relocate): Likewise.
294 * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
295
3ed4ff97
NC
2962016-03-10 Nick Clifton <nickc@redhat.com>
297
298 * config.bfd: Mark the i370 target as obsolete.
299
4b05e0a7
PA
3002016-03-09 Pedro Alves <palves@redhat.com>
301
302 * cpu-v850.c (N): Append ":old-gcc-abi" instead of " (using old
303 gcc ABI)" to printable name.
304 * cpu-v850_rh850.c (bfd_v850_rh850_arch): Use "v850:rh850" instead
305 of "v850-rh850" as printable name.
306
26c62da0
LW
3072016-03-09 Leon Winter <winter-gcc@bfw-online.de>
308
309 PR ld/19623
310 * cofflink.c (_bfd_coff_generic_relocate_section): Do not apply
311 relocations against absolute symbols.
312
03ee8583
AM
3132016-03-09 Alan Modra <amodra@gmail.com>
314
315 PR binutils/19775
316 * coff-alpha.c (alpha_ecoff_openr_next_archived_file): Allow zero
317 length elements in the archive.
318
9c1d7a08
L
3192016-03-08 H.J. Lu <hongjiu.lu@intel.com>
320
321 PR ld/19789
322 * elflink.c (elf_link_add_object_symbols): Create dynamic sections
323 for -E/--dynamic-list only when not relocatable.
324
d1ed1c7d
L
3252016-03-08 H.J. Lu <hongjiu.lu@intel.com>
326
327 PR ld/19784
328 * elf32-i386.c (elf_i386_check_relocs): Increment PLT reference
329 count for locally defined local IFUNC symbols in shared object.
330 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
331
202ac193
L
3322016-03-08 H.J. Lu <hongjiu.lu@intel.com>
333
334 PR ld/19579
335 * elflink.c (_bfd_elf_merge_symbol): Group common symbol checking
336 together.
337
72f3b6aa
CZ
3382016-03-08 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
339 Andrew Burgess <andrew.burgess@embecosm.com>
340
341 * elf32-arc.c (arc_bfd_get_32): Becomes an alias for bfd_get_32.
342 (arc_bfd_put_32): Becomes an alias for bfd_put_32.
343 (arc_elf_howto_init): Added assert to validate relocations.
344 (get_middle_endian_relocation): Delete.
345 (middle_endian_convert): New function.
346 (ME): Redefine, now does nothing.
347 (IS_ME): New define.
348 (arc_do_relocation): Extend the attached 'ARC_RELOC_HOWTO'
349 definition to call middle_endian_convert. Add a new local
350 variable and make use of this throughout. Added call to
351 arc_bfd_get_8 and arc_bfd_put_8 for 8 bit relocations.
352
4fc87424
NC
3532016-03-07 Nick Clifton <nickc@redhat.com>
354
355 PR binutils/19775
356 * archive.c (bfd_generic_openr_next_archived_file): Allow zero
357 length elements in the archive.
358
18f822a0
JW
3592016-03-07 Jiong Wang <jiong.wang@arm.com>
360
361 * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Always create .got
362 section if the symbol "_GLOBAL_OFFSET_TABLE_" is referenced.
363
07492f66
L
3642016-03-04 H.J. Lu <hongjiu.lu@intel.com>
365
366 PR ld/19579
367 * elflink.c (_bfd_elf_merge_symbol): Treat common symbol in
368 executable as definition if the new definition comes from a
369 shared library.
370
70a5df4f
AM
3712016-03-02 Alan Modra <amodra@gmail.com>
372
373 * Makefile.in: Regenerate.
374 * po/SRC-POTFILES.in: Regenerate.
375
841fdfcd
CZ
3762016-02-29 Cupertino Miranda <cmiranda@synopsys.com>
377
378 * elf32-arc.c (elf_arc_relocate_section): Added rules to fix the
379 relocation addend when sections get merged.
380
7e458899
CZ
3812016-02-29 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
382
383 * elf32-arc.c (arc_elf_final_write_processing): Add condition to
384 the flag change.
385 (elf_arc_relocate_section): Fixes and conditions to support PIE.
386 Assert for code sections dynamic relocs.
387
c5e3a364
RL
3882016-02-26 Renlin Li <renlin.li@arm.com>
389
390 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix signed overflow
391 check for MOVW_SABS_G0, MOVW_SABS_G1, MOVW_SABS_G2.
392
bae420ef
L
3932016-02-26 H.J. Lu <hongjiu.lu@intel.com>
394
395 PR ld/19609
396 * elf32-i386.c (elf_i386_convert_load): Convert to R_386_32 for
397 load with locally bound symbols if PIC is false or there is no
398 base register. Optimize branch to 0 if PIC is false.
399 (elf_i386_relocate_section): Don't generate dynamic relocations
400 against undefined weak symbols if PIC is false.
401 * elf64-x86-64.c (elf_x86_64_convert_load): Disable optimization
402 if we can't estimate relocation overflow with --no-relax.
403 Convert to R_X86_64_32S/R_X86_64_32 for load with locally bound
404 symbols if PIC is false. Optimize branch to 0 if PIC is false.
405 (elf_x86_64_relocate_section): Don't generate dynamic relocations
406 against undefined weak symbols if PIC is false.
407
11e5f1ec
L
4082016-02-26 H.J. Lu <hongjiu.lu@intel.com>
409
410 PR ld/19645
411 * bfd.c (bfd): Change flags to 20 bits.
412 (BFD_CONVERT_ELF_COMMON): New.
413 (BFD_USE_ELF_STT_COMMON): Likewise.
414 (BFD_FLAGS_SAVED): Add BFD_CONVERT_ELF_COMMON and
415 BFD_USE_ELF_STT_COMMON.
416 (BFD_FLAGS_FOR_BFD_USE_MASK): Likewise.
417 * configure.ac: Remove --enable-elf-stt-common.
418 * elf.c (swap_out_syms): Choose STT_COMMON or STT_OBJECT for
419 common symbol depending on BFD_CONVERT_ELF_COMMON and
420 BFD_USE_ELF_STT_COMMON.
421 * elfcode.h (elf_slurp_symbol_table): Set BSF_ELF_COMMON for
422 STT_COMMON.
423 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Also check
424 STT_COMMON.
425 (elf_link_convert_common_type): New function.
426 (elf_link_output_extsym): Choose STT_COMMON or STT_OBJECT for
427 common symbol depending on BFD_CONVERT_ELF_COMMON and
428 BFD_USE_ELF_STT_COMMON. Set sym.st_info after sym.st_shndx.
429 * elfxx-target.h (TARGET_BIG_SYM): Add BFD_CONVERT_ELF_COMMON
430 and BFD_USE_ELF_STT_COMMON to object_flags.
431 (TARGET_LITTLE_SYM): Likewise.
432 * syms.c (BSF_KEEP_G): Renamed to ...
433 (BSF_ELF_COMMON): This.
434 * bfd-in2.h: Regenerated.
435 * config.in: Likewise.
436 * configure: Likewise.
437
aec6b87e
L
4382016-02-26 H.J. Lu <hongjiu.lu@intel.com>
439
440 PR ld/19636
441 PR ld/19704
442 PR ld/19719
443 * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
444 (elf_i386_link_hash_entry): Add has_got_reloc and
445 has_non_got_reloc.
446 (elf_i386_link_hash_table): Add interp.
447 (elf_i386_link_hash_newfunc): Initialize has_got_reloc and
448 has_non_got_reloc.
449 (elf_i386_copy_indirect_symbol): Copy has_got_reloc and
450 has_non_got_reloc.
451 (elf_i386_check_relocs): Set has_got_reloc and has_non_got_reloc.
452 (elf_i386_fixup_symbol): New function.
453 (elf_i386_pie_finish_undefweak_symbol): Likewise.
454 (elf_i386_allocate_dynrelocs): Don't allocate space for dynamic
455 relocations and discard relocations against resolved undefined
456 weak symbols in executable. Don't make resolved undefined weak
457 symbols in executable dynamic. Keep dynamic non-GOT/non-PLT
458 relocation against undefined weak symbols in PIE.
459 (elf_i386_size_dynamic_sections): Set interp to .interp section.
460 (elf_i386_relocate_section): Don't generate dynamic relocations
461 against resolved undefined weak symbols in PIE, except for
462 R_386_PC32.
463 (elf_i386_finish_dynamic_symbol): Keep PLT/GOT entries without
464 dynamic PLT/GOT relocations for resolved undefined weak symbols.
465 Don't generate dynamic relocation against resolved undefined weak
466 symbol in executable.
467 (elf_i386_finish_dynamic_sections): Call
468 elf_i386_pie_finish_undefweak_symbol on all symbols in PIE.
469 (elf_backend_fixup_symbol): New.
470 * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
471 (elf_x86_64_link_hash_entry): Add has_got_reloc and
472 has_non_got_reloc.
473 (elf_x86_64_link_hash_table): Add interp.
474 (elf_x86_64_link_hash_newfunc): Initialize has_got_reloc and
475 has_non_got_reloc.
476 (elf_x86_64_copy_indirect_symbol): Copy has_got_reloc and
477 has_non_got_reloc.
478 (elf_x86_64_check_relocs): Set has_got_reloc and
479 has_non_got_reloc.
480 (elf_x86_64_fixup_symbol): New function.
481 (elf_x86_64_pie_finish_undefweak_symbol): Likewise.
482 (elf_x86_64_allocate_dynrelocs): Don't allocate space for dynamic
483 relocations and discard relocations against resolved undefined
484 weak symbols in executable. Don't make resolved undefined weak
485 symbols in executable dynamic.
486 (elf_x86_64_size_dynamic_sections): Set interp to .interp section.
487 (elf_x86_64_relocate_section): Check relocation overflow for
488 dynamic relocations against unresolved weak undefined symbols.
489 Don't generate dynamic relocations against resolved weak
490 undefined symbols in PIE.
491 (elf_x86_64_finish_dynamic_symbol): Keep PLT/GOT entries without
492 dynamic PLT/GOT relocations for resolved undefined weak symbols.
493 Don't generate dynamic relocation against resolved undefined weak
494 symbol in executable.
495 (elf_x86_64_finish_dynamic_sections): Call
496 elf_x86_64_pie_finish_undefweak_symbol on all symbols in PIE.
497 (elf_backend_fixup_symbol): New.
498
b32547cd
AM
4992016-02-26 Alan Modra <amodra@gmail.com>
500
501 * elf64-ppc.c (create_linkage_sections): Create sfpr when
502 save_restore_funcs, rest of sections when not relocatable.
503 (ppc64_elf_init_stub_bfd): Always call create_linkage_sections.
504 (sfpr_define): Define all symbols on emitted code.
505 (ppc64_elf_func_desc_adjust): Adjust for sfpr now being created
506 when relocatable. Move sfpr_define loop earlier.
507
ef77d6af
L
5082016-02-24 H.J. Lu <hongjiu.lu@intel.com>
509
510 * elf64-x86-64.c (elf_x86_64_need_pic): New function.
511 (elf_x86_64_relocate_section): Use it. Replace
512 x86_64_elf_howto_table[r_type] with howto.
513
0f550b3d
L
5142016-02-24 H.J. Lu <hongjiu.lu@intel.com>
515
516 PR ld/19698
517 * elflink.c (bfd_elf_record_link_assignment): Set versioned if
518 symbol version is unknown.
519
13f42277
L
5202016-02-24 H.J. Lu <hongjiu.lu@intel.com>
521
522 * elf32-i386.c (elf_i386_allocate_dynrelocs): Set plt_got.offset
523 to (bfd_vma) -1 when setting needs_plt to 0.
524 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
525
6b3b0ab8
L
5262016-02-23 H.J. Lu <hongjiu.lu@intel.com>
527
528 * elflink.c (bfd_elf_record_link_assignment): Check for shared
529 library, instead of PIC, and don't check PDE when making linker
530 assigned symbol dynamic.
531
17733f5b
FS
5322016-02-23 Faraz Shahbazker <faraz.shahbazker@imgtec.com>
533
534 * bfd/elfxx-mips.c (_bfd_mips_post_process_headers): Increment
535 ABIVERSION for non-executable stack.
536
47993b4a
RF
5372016-02-23 Rich Felker <bugdal@aerifal.cx>
538
539 PR target/19516
540 * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol):
541 Always produce a RELATIVE reloc for a local symbol.
542
2d8dcb81
HPN
5432016-02-23 Hans-Peter Nilsson <hp@axis.com>
544
545 Fix test-case ld-elf/pr19617b
546 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
547 discard unused non-function symbols when --dynamic-list-data.
548
1a6e6083
L
5492016-02-22 H.J. Lu <hongjiu.lu@intel.com>
550
551 * elflink.c (_bfd_elf_link_renumber_dynsyms): Always create the
552 dynsym section, even if it is empty, with dynamic sections.
553
75c1920b
L
5542016-02-22 H.J. Lu <hongjiu.lu@intel.com>
555
556 * syms.c: Remove BSF_COMMON from comments.
557 * bfd-in2.h: Regenerated.
558
9a228467
JW
5592016-02-22 Jiong Wang <jiong.wang@arm.com>
560
561 * elfnn-aarch64. (aarch64_type_of_stub): Remove redundation calcuation
562 for destination. Remove useless function parameters.
563 (elfNN_aarch64_size_stubs): Update parameters for aarch64_type_of_stub.
564
73768414
NC
5652016-02-19 Nick Clifton <nickc@redhat.com>
566
e517df3d
NC
567 PR ld/19629
568 * aoutx.h (aout_link_add_symbols): Check for out of range string
569 table offsets.
570
73768414
NC
571 PR ld/19628
572 * reloc.c (bfd_generic_get_relocated_section_contents): Stop
573 processing if we encounter a reloc without an associated symbol.
574
bf89386a
L
5752016-02-18 H.J. Lu <hongjiu.lu@intel.com>
576
577 PR ld/19617
578 * elflink.c (elf_link_add_object_symbols): Always create dynamic
579 sections for -E/--dynamic-list.
580
8f79b794
L
5812016-02-17 H.J. Lu <hongjiu.lu@intel.com>
582
583 * elf64-x86-64.c (elf_backend_omit_section_dynsym): New. Defined
584 to bfd_true.
585
64bfc258
JM
5862016-02-16 Joseph Myers <joseph@codesourcery.com>
587
588 * plugin.c (plugin_vec): Set match priority to 255.
589 * format.c (bfd_check_format_matches) [BFD_SUPPORTS_PLUGINS]: When
590 matching against the plugin vector, take priority from there not
591 from TEMP.
592
9fb71ee4
NC
5932016-02-15 Nick Clifton <nickc@redhat.com>
594
595 * elf-bfd.h (struct bfd_elf_special_section): Use unsigned values
596 for length and type fields. Use a signed value for the
597 suffix_length field.
598
32875eb1
L
5992016-02-10 H.J. Lu <hongjiu.lu@intel.com>
600
601 PR ld/19601
602 * elf32-i386.c (elf_i386_relocate_section): Mask off the least
603 significant bit in GOT offset for R_386_GOT32X.
604
83da6e74
NC
6052016-02-10 Nick Clifton <nickc@redhat.com>
606
607 PR 19405
608 * elf32-nios2.c (nios2_elf32_install_imm16): Allow for signed
609 immediate values.
610 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Limit the
611 number of messages about FDE encoding preventing .eh_frame_hdr
612 generation.
613
027e9c75
NC
6142016-02-09 Nick Clifton <nickc@redhat.com>
615
609332f1
NC
616 * oasys.c (oasys_archive_p): Fix indentation.
617 * elf32-nds32.c (nds32_elf_relax_section): Use an unsigned
618 constant for left shifting.
619
027e9c75
NC
620 * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Add a more
621 helpful warning message to explain why certain AArch64 relocs
622 might overflow.
623
6f57d046
SM
6242016-02-05 Simon Marchi <simon.marchi@ericsson.com>
625
626 * pe-mips.c (coff_mips_reloc): Fix formatting.
627
bdbca4e6
CM
6282016-02-05 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
629
630 * cpu-arc.c: Change default archure from bfd_mach_arc_arcv2
631 to bfd_mach_arc_arc600.
632
4f038ee5
AM
6332016-02-04 Alan Modra <amodra@gmail.com>
634
635 * elf64-ppc.c (ppc64_elf_relocate_section): Adjust last patch
636 for big-endian.
637
4a539596
L
6382016-02-02 H.J. Lu <hongjiu.lu@intel.com>
639
640 PR ld/19542
641 * elf64-x86-64.c (elf_x86_64_convert_load): Store the estimated
fb06f1c0 642 distances in the compressed_size field of the output section.
4a539596 643
85fabe71
AM
6442016-02-02 Alan Modra <amodra@gmail.com>
645
646 * elf64-ppc.c (ppc64_elf_relocate_section): Further restrict
647 ELFv2 entry optimization.
648
14f2c699
L
6492016-02-02 H.J. Lu <hongjiu.lu@intel.com>
650
651 PR binutils/19547
652 * elf.c (assign_section_numbers): Clear HAS_RELOC if there are
653 no relocations in relocatable files.
654
aef28989
L
6552016-02-01 H.J. Lu <hongjiu.lu@intel.com>
656
657 PR ld/19553
658 * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
659 if a symbol from a library loaded via DT_NEEDED doesn't match
660 the symbol referenced by regular object.
661
655ed9ea
NS
6622016-02-01 Nathaniel Smith <njs@pobox.com>
663
664 * peicode.h (pe_ILF_build_a_bfd): Create an import symbol for both
665 CODE and DATA.
666
ec1f73bb
AM
6672016-02-01 Alan Modra <amodra@gmail.com>
668
669 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Don't abort on
670 an out of range reloc_index.
671 * elf32-i386.c (elf_i386_get_plt_sym_val): Likewise.
672
b6471e6e
KR
6732016-02-01 Kamil Rytarowski <n54@gmx.com>
674
675 * Makefile.am (OPTIONAL_BACKENDS): Add netbsd-core.lo.
676 (OPTIONAL_BACKENDS_CFILES): Add netbsd-core.c.
677 * Makefile.in: Regenerated.
678
0bc7245a
JK
6792016-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
680
681 * elf64-s390.c (elf_s390_reloc_name_lookup): Fix indentation.
682
6d4b2867
JDA
6832016-01-31 John David Anglin <danglin@gcc.gnu.org>
684
685 PR ld/19526
686 * elf32-hppa.c (elf32_hppa_final_link): Don't sort non-regular output
687 files.
688 * elf64-hppa.c (elf32_hppa_final_link): Likewise. Remove retval.
689
d9e3b590
L
6902016-01-30 H.J. Lu <hongjiu.lu@intel.com>
691
692 PR ld/19539
693 * elf32-i386.c (elf_i386_reloc_type_class): Check relocation
694 against STT_GNU_IFUNC symbol only with dynamic symbols.
695 * elf64-x86-64.c (elf_x86_64_reloc_type_class): Likewise.
696
bf150a0b
L
6972016-01-28 H.J. Lu <hongjiu.lu@intel.com>
698
699 PR binutils/19523
700 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Set BFD_DECOMPRESS to
701 decompress debug sections.
702
840855c5
MR
7032016-01-25 Maciej W. Rozycki <macro@imgtec.com>
704
705 * elf32-arc.c (elf_arc_finish_dynamic_symbol): Rename `index' to
706 `dynindx'.
707
cf466c2a
NC
7082016-01-25 Nick Clifton <nickc@redhat.com>
709
710 PR target/19435
711 * mach-o.c (bfd_mach_o_close_and_cleanup): Suppress code to free
712 dsym filename buffer.
713
eb6b0cf4
MR
7142016-01-24 Maciej W. Rozycki <macro@imgtec.com>
715
716 * elfxx-mips.c (BZ16_REG_FIELD): Simplify calculation.
717
e67f83e5
MR
7182016-01-24 Maciej W. Rozycki <macro@imgtec.com>
719
720 * elfxx-mips.c (BZ16_REG): Correct calculation.
721
23a42089
NC
7222016-01-21 Nick Clifton <nickc@redhat.com>
723
724 * elf32-arc.c (ADD_RELA): Fix compile time warning errors by
725 changing the type of _loc to be bfd_byte *.
726 (elf_arc_finish_dynamic_symbol): Likewise.
727
aebf9be7
NC
7282016-01-21 Nick Clifton <nickc@redhat.com>
729
730 PR ld/19455
731 * elf32-arm.c (elf32_arm_create_dynamic_sections): Set the ELF
732 class of the linker stub bfd.
733 (elf32_arm_check_relocs): Skip check for pic format after
734 processing a vxWorks R_ARM_ABS12 reloc.
735 * elflink.c (bfd_elf_final_link): Check for ELFCLASSNONE when
736 reporting a class mismatch.
737
2f340668
JW
7382016-01-21 Jiong Wang <jiong.wang@arm.com>
739
740 * elfnn-aarch64.c (aarch64_type_of_stub): Allow insert long branch
741 veneer for sym_sec != input_sec.
742 (elfNN_aarch64_size_stub): Support STT_SECTION symbol.
743 (elfNN_aarch64_final_link_relocate): Take rela addend into account when
744 calculation destination.
745
aeb70569
AM
7462016-01-21 Alan Modra <amodra@gmail.com>
747
748 * elf-linux-core.h (swap_linux_prpsinfo32_out): New function.
749 (swap_linux_prpsinfo64_out): New function.
750 (LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
751 (LINUX_PRPSINFO64_SWAP_FIELDS): Delete.
752 * elf.c (elfcore_write_linux_prpsinfo32): Adjust. Don't memset.
753 (elfcore_write_linux_prpsinfo64): Likewise.
754 * elf32-ppc.c (swap_ppc_linux_prpsinfo32_out): New function.
755 (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
756 (elfcore_write_ppc_linux_prpsinfo32): Adjust. Don't memset.
757
de64ce13
AM
7582016-01-21 Alan Modra <amodra@gmail.com>
759
760 * elf-linux-core.h: Rename from elf-linux-psinfo.h.
761 * elf.c: Adjust #include.
762 * elf32-ppc.c: Don't #include elf-linux-psinfo.h
763 * Makefile.am (SOURCE_HFILES): Update.
764 * Makefile.in: Regenerate.
765 * po/SRC-PORFILES.in: Regenerate.
766
c603b11b
AM
7672016-01-21 Alan Modra <amodra@gmail.com>
768
769 * configure.ac: Move corefile selection later in file. Move
770 tdefaults code immediately after other target vector code.
771 * configure: Regenerate.
772
91f68a68
MG
7732016-01-20 Mickael Guene <mickael.guene@st.com>
774
775 * elf32-arm.c (elf32_arm_special_sections): Remove catch of noread
776 section using '.text.noread' pattern.
777
5b2c414d
JB
7782016-01-19 John Baldwin <jhb@FreeBSD.org>
779
780 * elf.c (elfcore_grok_note): Recognize NT_FREEBSD_THRMISC notes.
781
34e967a5
MC
7822016-01-18 Miranda Cupertino <Cupertino.Miranda@synopsys.com>
783 Zissulescu Claudiu <Claudiu.Zissulescu@synopsys.com>
784
785 * arc-plt.def: New file.
786 * arc-plt.h: Likewise.
787 * elf32-arc.c (elf_arc_abs_plt0_entry, elf_arc_abs_pltn_entry,
788 elf_arcV2_abs_plt0_entry, elf_arcV2_abs_pltn_entry,
789 elf_arc_pic_plt0_entry, elf_arc_pic_pltn_entry,
790 elf_arcV2_pic_plt0_entry, elf_arcV2_pic_pltn_entry): Remove.
791 (name_for_global_symbol): Added.
792 (ADD_RELA): Helper to create dynamic relocs.
793 (new_got_entry_to_list): Create a new got entry in linked list.
794 (symbol_has_entry_of_type): Search for specific type of entry in
795 list.
796 (is_reloc_for_GOT): return FALSE for any TLS related relocs.
797 (is_reloc_for_TLS, arc_elf_set_private_flags)
798 (arc_elf_print_private_bfd_data, arc_elf_copy_private_bfd_data)
799 (arc_elf_merge_private_bfd_data): New functions.
800 (debug_arc_reloc): Cleaned debug info printing.
801 (PDATA reloc): Changed not to perform address alignment.
802 (reverse_me): Added. Fix for ARC_32 relocs.
803 (arc_do_relocation): Return bfd_reloc_of when no relocation should
804 occur.
805 (arc_get_local_got_ents): Renamed from arc_get_local_got_offsets.
806 Changed function to access an array of list of GOT entries instead
807 of just an array of offsets.
808 (elf_arc_relocate_section): Added support for PIC and TLS related relocations.
809 (elf_arc_check_relocs): Likewise.
810 (elf_arc_adjust_dynamic_symbol, elf_arc_finish_dynamic_symbol,
811 (elf_arc_finish_dynamic_sections): Likewise
812 (arc_create_dynamic_sections): Modified conditions to create
813 dynamic sections.
814 (ADD_SYMBOL_REF_SEC_AND_RELOC): New macro.
815 (plt_do_relocs_for_symbol, relocate_plt_for_symbol)
816 (relocate_plt_for_entry): Changed to support new way to define PLT
817 related code.
818 (add_symbol_to_plt): Likewise.
819 (arc_elf_link_hash_table_create): New function.
820
9ae678af
NC
8212016-01-18 Nick Clifton <nickc@redhat.com>
822
823 PR ld/19440
824 * coff-rs6000.c (_bfd_xcoff_swap_sym_in): Sign extend external
825 section number into internal section number.
826 * coff64-rs6000.c (_bfd_xcoff64_swap_sym_in): Likewise.
827 * coffswap.h (coff_swap_sym_in): Likewise.
828 * peXXigen.c (_bfd_XXi_swap_sym_in): Likewise.
829 * coffcode.h (_coff_bigobj_swap_sym_in): Make sure that internal
830 section number field is big enough to hold the external value.
831
5c14705f
AM
8322016-01-17 Alan Modra <amodra@gmail.com>
833
834 * configure: Regenerate.
835
ac06903d
YU
8362016-01-12 Yury Usishchev <y.usishchev@samsung.com>
837
838 * elf32-arm.c (elf32_arm_fix_exidx_coverage): Insert cantunwind
839 when address in first unwind entry does not match start of
840 section.
841
109575d7
JW
8422016-01-08 Richard Sandiford <richard.sandiford@arm.com>
843 Jiong Wang <jiong.wang@arm.com>
844
845 PR ld/19368
846 * elf32-arm.c (elf32_arm_reloc_type_class): Map R_ARM_IRELATIVE to
847 reloc_class_ifunc.
848
b05a65d0
AB
8492016-01-06 Andrew Burgess <andrew.burgess@embecosm.com>
850
851 * elf32-arc.c (reloc_type_to_name): Change ARC_RELOC_HOWTO to
852 place 'R_' before the reloc name returned.
853 (elf_arc_howto_table): Change ARC_RELOC_HOWTO to place 'R_' before
854 the relocation string.
855
a3dc0a7f
MR
8562016-01-04 Maciej W. Rozycki <macro@imgtec.com>
857
858 * elfxx-mips.c (mips_elf_merge_obj_abiflags): New function,
859 factored out from...
860 (_bfd_mips_elf_merge_private_bfd_data): ... here.
861
d537eeb5
MR
8622016-01-04 Maciej W. Rozycki <macro@imgtec.com>
863
864 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Move
865 attribute check after ELF file header flag check.
866
43d223b5
MR
8672016-01-04 Maciej W. Rozycki <macro@imgtec.com>
868
869 * elfxx-mips.c (mips_elf_merge_obj_attributes): Propagate the
870 return status from `_bfd_elf_merge_object_attributes'.
871
b2e9744f
MR
8722016-01-04 Maciej W. Rozycki <macro@imgtec.com>
873
874 * elfxx-mips.c (mips_elf_merge_obj_e_flags): New function,
875 factored out from...
876 (_bfd_mips_elf_merge_private_bfd_data): ... here.
877
28d45e28
MR
8782016-01-04 Maciej W. Rozycki <macro@imgtec.com>
879
880 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Fold the
881 handling of input MIPS ABI flags together.
882
23ba6f18
MR
8832016-01-04 Maciej W. Rozycki <macro@imgtec.com>
884
885 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Suppress
886 attribute checks for null input.
887
cf8502c1
MR
8882016-01-04 Maciej W. Rozycki <macro@imgtec.com>
889
890 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Use local
891 pointers to target data.
892
dcb1c796
MR
8932016-01-04 Maciej W. Rozycki <macro@imgtec.com>
894
895 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct
896 an FP ABI warning.
897
6f2750fe
AM
8982016-01-01 Alan Modra <amodra@gmail.com>
899
900 Update year range in copyright notice of all files.
901
3499769a
AM
902For older changes see ChangeLog-2015 and doc/ChangeLog-0415
903\f
904Copyright (C) 2016 Free Software Foundation, Inc.
905
906Copying and distribution of this file, with or without modification,
907are permitted in any medium without royalty provided the copyright
908notice and this notice are preserved.
909
910Local Variables:
911mode: change-log
912left-margin: 8
913fill-column: 74
914version-control: never
915End: