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