Fix ppc64le S-record test fail
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
9f284bf9
AM
12016-05-19 Alan Modra <amodra@gmail.com>
2
3 * elf64-ppc.c (ppc64_elf_branch_reloc): Check for NULL owner
4 before dereferencing.
5
50498060
NC
62016-05-18 Nick Clifton <nickc@redhat.com>
7
8 * po/sv.po: Updated Swedish translation.
9
7f991970
AM
102016-05-18 Alan Modra <amodra@gmail.com>
11
12 * elf32-arm.c (elf32_arm_size_stubs): Free or cache local syms
13 for each BFD. Don't goto error_ret_free_local from outside loop.
14
a43942db
MR
152016-05-17 Maciej W. Rozycki <macro@imgtec.com>
16
17 * elf-s390-common.c (elf_s390_add_symbol_hook): Remove
18 STB_GNU_UNIQUE handling.
19 * elf32-arc.c (elf_arc_add_symbol_hook): Likewise.
20 * elf32-arm.c (elf32_arm_add_symbol_hook): Likewise.
21 * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
22 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
23 * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
24 * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
25 * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
26 * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise.
27 * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
28 * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Likewise.
29 * elf32-i386.c (elf_i386_add_symbol_hook): Remove function.
30 (elf_backend_add_symbol_hook): Remove macro.
31 * elflink.c (elf_link_add_object_symbols): Set `has_gnu_symbols'
32 for STB_GNU_UNIQUE symbols.
33
71de3413
MR
342016-05-16 Maciej W. Rozycki <macro@imgtec.com>
35
36 * elf32-v850.c (v850_elf_copy_notes): New function, factored out
37 from...
38 (v850_elf_copy_private_bfd_data): ... here. Call the new
39 function and `_bfd_elf_copy_private_bfd_data'.
40
2168b268
L
412016-05-13 H.J. Lu <hongjiu.lu@intel.com>
42
43 PR ld/20093
44 * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Don't convert
45 GOTPCREL relocation against large section.
46
4ade44b7
AM
472016-05-13 Alan Modra <amodra@gmail.com>
48
49 * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_sections): Use
50 linker dynamic sections in calculating size and address of
2168b268 51 dynamic tags rather than using output sections. Remove asserts.
4ade44b7
AM
52 * elf32-arm.c (elf32_arm_finish_dynamic_sections): Likewise.
53 * elf32-cr16.c (_bfd_cr16_elf_finish_dynamic_sections): Likewise.
54 * elf32-cris.c (elf_cris_finish_dynamic_sections): Likewise.
55 * elf32-i370.c (i370_elf_finish_dynamic_sections): Likewise.
56 * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Likewise.
57 * elf32-m32r.c (m32r_elf_finish_dynamic_sections): Likewise.
58 * elf32-m68k.c (elf_m68k_finish_dynamic_sections): Likewise.
59 * elf32-metag.c (elf_metag_finish_dynamic_sections): Likewise.
60 * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Likewise.
61 * elf32-nds32.c (nds32_elf_finish_dynamic_sections): Likewise.
62 * elf32-nios2.c (nios2_elf32_finish_dynamic_sections): Likewise.
63 * elf32-or1k.c (or1k_elf_finish_dynamic_sections): Likewise.
64 * elf32-s390.c (elf_s390_finish_dynamic_sections): Likewise.
65 * elf32-score.c (s3_bfd_score_elf_finish_dynamic_sections): Likewise.
66 * elf32-score7.c (s7_bfd_score_elf_finish_dynamic_sections): Likewise.
67 * elf32-vax.c (elf_vax_finish_dynamic_sections): Likewise.
68 * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Likewise.
69 * elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Likewise.
70 * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise.
71 * elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Likewise.
72 * elflink.c (bfd_elf_final_link): Likewise.
73 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Likewise.
74 * elfxx-sparc.c (sparc_finish_dyn): Likewise. Adjust error message.
75 * elf32-arc.c (GET_SYMBOL_OR_SECTION): Remove ASSERT arg and
76 don't set doit. Look up dynobj section.
77 (elf_arc_finish_dynamic_sections): Adjust GET_SYMBOL_OR_SECTION
78 invocation and dynamic tag vma calculation. Don't test
79 boolean var == TRUE.
80 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections): Fix
81 DT_JMPREL calc.
82
c8e44c6d
AM
832016-05-13 Alan Modra <amodra@gmail.com>
84
85 * elflink.c (elf_link_sort_relocs): Wrap overlong lines. Fix
86 octets_per_byte. Put dynamic .rela.plt last in link orders.
87 Assign output_offset for reloc sections rather than writing
88 sorted relocs from block corresponding to output_offset.
89
1997c994
AM
902016-05-12 Alan Modra <amodra@gmail.com>
91
92 * elf-bfd.h (elf_reloc_type_class): Put reloc_class_plt last.
93
8f4f9071
MF
942016-05-11 Andrew Bennett <andrew.bennett@imgtec.com>
95
96 * elfxx-mips.c (print_mips_ases): Add DSPR3.
97
a464198b
AM
982016-05-11 Alan Modra <amodra@gmail.com>
99
100 * elf32-hppa.c (elf32_hppa_init_stub_bfd): New function.
101 (elf32_hppa_check_relocs): Don't set dynobj.
102 (elf32_hppa_size_stubs): Test !SEC_LINKER_CREATED for stub sections.
103 (elf32_hppa_build_stubs): Likewise.
104 * elf32-hppa.h (elf32_hppa_init_stub_bfd): Declare.
105
3bd43ebc
AM
1062016-05-11 Alan Modra <amodra@gmail.com>
107
108 PR 20060
109 * elf64-ppc.c (ppc64_elf_tls_setup): Clear forced_local.
110 * elf32-ppc.c (ppc_elf_tls_setup): Likewise.
111
4e7fbb34
JW
1122016-05-10 Jiong Wang <jiong.wang@arm.com>
113
114 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Remove redundant
115 aarch64_tls_transition check.
116
4f4faa4d
TP
1172016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
118
119 * elf32-arm.c (enum elf32_arm_stub_type): New max_stub_type
120 enumerator.
121 (arm_stub_sym_claimed): New function.
122 (elf32_arm_create_stub): Use veneered symbol name and section if
123 veneer needs to claim its symbol, and keep logic unchanged otherwise.
124 (arm_stub_claim_sym): New function.
125 (arm_map_one_stub): Call arm_stub_claim_sym if veneer needs to claim
126 veneered symbol, otherwise create local symbol as before.
127
39d911fc
TP
1282016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
129
130 * elf32-arm.c (elf32_arm_size_stubs): Use new macros
131 ARM_GET_SYM_BRANCH_TYPE and ARM_SET_SYM_BRANCH_TYPE to respectively get
132 and set branch type of a symbol.
133 (bfd_elf32_arm_process_before_allocation): Likewise.
134 (elf32_arm_relocate_section): Likewise and fix identation along the
135 way.
136 (allocate_dynrelocs_for_symbol): Likewise.
137 (elf32_arm_finish_dynamic_symbol): Likewise.
138 (elf32_arm_swap_symbol_in): Likewise.
139 (elf32_arm_swap_symbol_out): Likewise.
140
6bde4c52
TP
1412016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
142
143 * bfd-in.h (elf32_arm_size_stubs): Add an output section parameter.
144 * bfd-in2.h: Regenerated.
145 * elf32-arm.c (struct elf32_arm_link_hash_table): Add an output section
146 parameter to add_stub_section callback.
147 (elf32_arm_create_or_find_stub_sec): Get output section from link_sec
148 and pass it down to add_stub_section.
149 (elf32_arm_add_stub): Set section to stub_sec if NULL before using it
150 for error message.
151 (elf32_arm_size_stubs): Add output section parameter to
152 add_stub_section function pointer parameter.
153
b715f643
TP
1542016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
155
156 * elf32-arm.c (elf32_arm_create_stub): New function.
157 (elf32_arm_size_stubs): Use elf32_arm_create_stub for stub creation.
158
8d9d9490
TP
1592016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
160
161 * elf32-arm.c (enum elf32_arm_stub_type): Delete
162 arm_stub_a8_veneer_lwm enumerator.
163 (arm_stub_a8_veneer_lwm): New unsigned constant to replace
164 aforementioned enumerator.
165 (struct elf32_arm_stub_hash_entry): Delete target_addend
166 field and add source_value.
167 (struct a8_erratum_fix): Delete addend field and add target_offset.
168 (stub_hash_newfunc): Initialize source_value field amd remove
169 initialization for target_addend.
170 (arm_build_one_stub): Stop special casing Thumb relocations: promote
171 the else to being always executed, moving the
172 arm_stub_a8_veneer_b_cond specific code in it. Remove
173 stub_entry->target_addend from points_to computation.
174 (cortex_a8_erratum_scan): Store in a8_erratum_fix structure the offset
175 to target symbol from start of section rather than the offset from the
176 stub address.
177 (elf32_arm_size_stubs): Set stub_entry's source_value and target_value
178 fields from struct a8_erratum_fix's offset and target_offset
179 respectively.
180 (make_branch_to_a8_stub): Rename target variable to loc. Compute
181 veneered_insn_loc and loc using stub_entry's source_value.
182
15afaa63
TP
1832016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
184
185 (elf32_arm_merge_eabi_attributes): Add merging logic for
186 Tag_DSP_extension.
187
66a36822
PC
1882016-05-10 Pip Cet <pipcet@gmail.com>
189
190 PR ld/20059
191 * elfxx-target.h (bfd_elfNN_bfd_copy_link_hash_symbol_type):
192 Define as _bfd_generic_copy_link_hash_symbol_type when using
193 generic hash table.
194
315350be
NC
1952016-05-09 Nick Clifton <nickc@redhat.com>
196
197 PR binutils/20063
198 * elf.c (bfd_elf_get_elf_syms): Check for out of range sh_link
199 field before accessing sections array.
200
9239bbd3
CM
2012016-05-09 Christophe Monat <christophe.monat@st.com>
202
203 PR ld/20030
204 * elf32-arm.c (is_thumb2_vldm): Account for T1 (DP) encoding.
205 (stm32l4xx_need_create_replacing_stub): Rename ambiguous nb_regs
206 to nb_words.
207 (create_instruction_vldmia): Add is_dp to disambiguate SP/DP
208 encoding.
209 (create_instruction_vldmdb): Likewise.
210 (stm32l4xx_create_replacing_stub_vldm): is_dp detects DP encoding,
211 uses it to re-encode.
212
73597c18
NC
2132016-05-09 Nick Clifton <nickc@redhat.com>
214
215 PR 19938
216 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Revert accidental
217 commit.
218
ae1bb197
AM
2192016-05-09 Alan Modra <amodra@gmail.com>
220
221 * elf64-ppc.c (ppc64_elf_init_stub_bfd): Remove redundant NULL check.
222
97196564
L
2232016-05-06 H.J. Lu <hongjiu.lu@intel.com>
224
225 PR ld/17550
226 * elf-bfd.h (elf_link_hash_entry): Update comments for indx,
227 documenting that indx == -3 if symbol is defined in a discarded
228 section.
229 * elflink.c (elf_link_add_object_symbols): Set indx to -3 if
230 symbol is defined in a discarded section.
231 (elf_link_output_extsym): Strip a global symbol defined in a
232 discarded section.
233
030e823c
L
2342016-05-06 H.J. Lu <hongjiu.lu@intel.com>
235
236 * elf32-i386.c (elf_backend_add_symbol_hook): Defined for Intel
237 MCU.
238
c175a657
L
2392016-05-05 H.J. Lu <hongjiu.lu@intel.com>
240
241 * elf32-i386.c (elf_i386_convert_load): Extract the GOT load
242 conversion to ...
243 (elf_i386_convert_load_reloc): This. New function.
244 * elf64-x86-64.c (elf_x86_64_convert_load): Extract the GOT load
245 conversion to ...
246 (elf_x86_64_convert_load_reloc): This. New function.
247
bedfd056
L
2482016-05-05 H.J. Lu <hongjiu.lu@intel.com>
249
250 * elf32-i386.c (elf_i386_check_tls_transition): Remove abfd.
251 Don't check if contents == NULL.
252 (elf_i386_tls_transition): Add from_relocate_section. Check
253 from_relocate_section instead of contents != NULL. Update
254 elf_i386_check_tls_transition call.
255 (elf_i386_check_relocs): Cache the section contents if
256 keep_memory is FALSE. Pass FALSE as from_relocate_section to
257 elf_i386_tls_transition.
258 (elf_i386_relocate_section): Pass TRUE as from_relocate_section
259 to elf_i386_tls_transition.
260 (elf_backend_caches_rawsize): New.
261 * elf64-x86-64.c (elf_x86_64_check_tls_transition): Don't check
262 if contents == NULL.
263 (elf_x86_64_tls_transition): Add from_relocate_section. Check
264 from_relocate_section instead of contents != NULL.
265 (elf_x86_64_check_relocs): Cache the section contents if
266 keep_memory is FALSE. Pass FALSE as from_relocate_section to
267 elf_x86_64_tls_transition.
268 (elf_x86_64_relocate_section): Pass TRUE as from_relocate_section
269 to elf_x86_64_tls_transition.
270 (elf_backend_caches_rawsize): New.
271
6d6a648c
MR
2722016-05-03 Maciej W. Rozycki <macro@imgtec.com>
273
274 PR 10549
275 * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Handle
276 STB_GNU_UNIQUE.
277
1f56df9d
JW
2782016-05-03 Jiong Wang <jiong.wang@arm.com>
279
280 * bfd-in.h (bfd_elf64_aarch64_set_options): Update prototype.
281 * bfd-in2.h (bfd_elf64_aarch64_set_options): Likewise.
282 * elfnn-aarch64.c (bfd_elfNN_aarch64_set_options): Initialize
283 no_apply_dynamic_relocs.
284 (elfNN_aarch64_final_link_relocate): Apply absolute relocations even though
285 dynamic relocations generated.
286
493f652c
L
2872016-04-29 H.J. Lu <hongjiu.lu@intel.com>
288
289 * elf32-i386.c (elf_i386_size_dynamic_sections): Move interp
290 setting to ...
291 (elf_i386_create_dynamic_sections): Here.
292 * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Move
293 interp setting to ...
294 (elf_x86_64_create_dynamic_sections): Here.
295
e62b9723
L
2962016-04-29 H.J. Lu <hongjiu.lu@intel.com>
297
298 * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take GOT_RELOC
299 and replace (EH)->has_got_reloc with GOT_RELOC.
300 (elf_i386_fixup_symbol): Pass has_got_reloc to
301 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
302 (elf_i386_allocate_dynrelocs): Likewise.
303 (elf_i386_relocate_section): Likewise.
304 (elf_i386_finish_dynamic_symbol): Likewise.
305 (elf_i386_convert_load): Pass TRUE to
306 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
307 * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take
308 GOT_RELOC and replace (EH)->has_got_reloc with GOT_RELOC.
309 (elf_x86_64_fixup_symbol): Pass has_got_reloc to
310 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
311 (elf_x86_64_allocate_dynrelocs): Likewise.
312 (elf_x86_64_relocate_section): Likewise.
313 (elf_x86_64_finish_dynamic_symbol): Likewise.
314 (elf_x86_64_convert_load): Pass TRUE to
315 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
316
c337a162
L
3172016-04-29 H.J. Lu <hongjiu.lu@intel.com>
318
319 * elf32-i386.c (check_relocs_failed): New.
320 (elf_i386_check_relocs): Set check_relocs_failed on error.
321 (elf_i386_relocate_section): Skip if check_relocs failed.
322
afd9acee
L
3232016-04-29 H.J. Lu <hongjiu.lu@intel.com>
324
325 * elf64-x86-64.c (elf_x86_64_check_relocs): Set
326 check_relocs_failed on error.
327
5522f910
NC
3282016-04-29 Nick Clifton <nickc@redhat.com>
329
330 PR 19938
331 * elf-bfd.h (struct elf_backend_data): Rename
332 elf_backend_set_special_section_info_and_link to
333 elf_backend_copy_special_section_fields.
334 * elfxx-target.h: Likewise.
335 * elf.c (section_match): Ignore the SHF_INFO_LINK flag when
336 comparing section flags.
337 (copy_special_section_fields): New function.
338 (_bfd_elf_copy_private_bfd_data): Copy the EI_ABIVERSION field.
339 Perform two scans over special sections. The first one looks for
340 a direct mapping between the output section and an input section.
341 The second scan looks for a possible match based upon section
342 characteristics.
343 * elf32-arm.c (elf32_arm_copy_special_section_fields): New
344 function. Handle setting the sh_link field of SHT_ARM_EXIDX
345 sections.
346 * elf32-i386.c (elf32_i386_set_special_info_link): Rename to
347 elf32_i386_copy_solaris_special_section_fields.
348 * elf32-sparc.c (elf32_sparc_set_special_section_info_link):
349 Rename to elf32_sparc_copy_solaris_special_section_fields.
350 * elf64-x86-64.c (elf64_x86_64_set_special_info_link): Rename to
351 elf64_x86_64_copy_solaris_special_section_fields.
352
786a118c
NC
3532016-04-28 Nick Clifton <nickc@redhat.com>
354
355 * po/zh_CN.po: Updated Chinese (simplified) translation.
356
91f8bf69
L
3572016-04-27 H.J. Lu <hongjiu.lu@intel.com>
358
359 PR ld/20006
360 * elf64-x86-64.c (elf_x86_64_convert_load): Skip debug sections
361 when estimating distances between output sections.
362
a6a4679f
AM
3632016-04-27 Alan Modra <amodra@gmail.com>
364
365 * elflink.c (_bfd_elf_is_start_stop): New function.
366 (_bfd_elf_gc_mark_rsec): Use it.
367 * elf-bfd.h (_bfd_elf_is_start_stop): Declare.
368
28cc9170
TS
3692016-04-26 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
370
371 * elf32-rx.c (rx_set_section_contents): Avoid arithmetic on void *.
372 * mmo.c (mmo_get_section_contents): Likewise.
373 (mmo_set_section_contents): Likewise.
374
d5486c43
L
3752016-04-26 H.J. Lu <hongjiu.lu@intel.com>
376
377 * elf-bfd.h (elf_link_hash_table): Update comments for
378 dynsymcount.
379 * elflink.c (_bfd_elf_link_renumber_dynsyms): Always count for
380 the unused NULL entry at the head of dynamic symbol table.
381 (bfd_elf_size_dynsym_hash_dynstr): Remove dynsymcount != 0
382 checks.
383
6645479e
L
3842016-04-21 H.J. Lu <hongjiu.lu@intel.com>
385
386 * elflink.c (_bfd_elf_link_create_dynstrtab): Exclude linker
387 created file from dynobj.
388
6cd255ca
L
3892016-04-21 H.J. Lu <hongjiu.lu@intel.com>
390
391 * elflink.c (_bfd_elf_link_create_dynstrtab): Set dynobj to a
392 normal input file if possible.
393
4f3b23b3
NC
3942016-04-21 Nick Clifton <nickc@redhat.com>
395
396 * aout-adobe.c: Use _bfd_generic_link_check_relocs.
397 * aout-target.h: Likewise.
398 * aout-tic30.c: Likewise.
399 * binary.c: Likewise.
400 * bout.c: Likewise.
401 * coff-alpha.c: Likewise.
402 * coff-rs6000.c: Likewise.
403 * coff64-rs6000.c: Likewise.
404 * coffcode.h: Likewise.
405 * i386msdos.c: Likewise.
406 * i386os9k.c: Likewise.
407 * ieee.c: Likewise.
408 * ihex.c: Likewise.
409 * libbfd-in.h: Likewise.
410 * libecoff.h: Likewise.
411 * mach-o-target.c: Likewise.
412 * mmo.c: Likewise.
413 * nlm-target.h: Likewise.
414 * oasys.c: Likewise.
415 * pef.c: Likewise.
416 * plugin.c: Likewise.
417 * ppcboot.c: Likewise.
418 * som.c: Likewise.
419 * srec.c: Likewise.
420 * tekhex.c: Likewise.
421 * versados.c: Likewise.
422 * vms-alpha.c: Likewise.
423 * xsym.c: Likewise.
424 * elfxx-target.h: Use _bfd_elf_link_check_relocs.
425 * linker.c (bfd_link_check_relocs): New function.
426 (_bfd_generic_link_check_relocs): New function.
427 * targets.c (BFD_JUMP_TABLE_LINK): Add initialization of
428 _bfd_link_check_relocs field.
429 (struct bfd_target)L Add _bfd_link_check_relocs field.
430 * bfd-in2.h: Regenerate.
431 * libbfd.h: Regenerate.
432
e66cdd68
L
4332016-04-20 H.J. Lu <hongjiu.lu@intel.com>
434
435 * elf32-i386.c (elf_i386_gc_sweep_hook): Removed.
436 (elf_backend_gc_sweep_hook): Likewise.
437 * elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.
438 (elf_backend_gc_sweep_hook): Likewise.
439
5ce03cea
L
4402016-04-20 H.J. Lu <hongjiu.lu@intel.com>
441
442 * elflink.c (_bfd_elf_link_check_relocs): Don't check relocations
443 in excluded sections
444
338c190a
L
4452016-04-20 H.J. Lu <hongjiu.lu@intel.com>
446
447 PR ld/19969
448 * elf64-x86-64.c (check_relocs_failed): New.
449 (elf_x86_64_need_pic): Moved before elf_x86_64_check_relocs.
450 Support relocation agaist local symbol. Set check_relocs_failed.
451 (elf_x86_64_check_relocs): Use elf_x86_64_need_pic. Check
452 R_X86_64_32 relocation overflow.
453 (elf_x86_64_relocate_section): Skip if check_relocs failed.
454 Update one elf_x86_64_need_pic and remove one elf_x86_64_need_pic.
455
466ee2af
L
4562016-04-20 H.J. Lu <hongjiu.lu@intel.com>
457
458 * elf32-i386.c (elf_i386_check_relocs): Call
459 _bfd_elf_create_ifunc_sections only for STT_GNU_IFUNC symbol.
460 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
461
d9689752
L
4622016-04-20 H.J. Lu <hongjiu.lu@intel.com>
463
464 * elf-bfd.h (_bfd_elf_link_check_relocs): New.
465 * elflink.c (_bfd_elf_link_check_relocs): New function.
466 (elf_link_add_object_symbols): Call _bfd_elf_link_check_relocs
467 if check_relocs_after_open_input is FALSE.
468
e6c7cdec
TS
4692016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
470
471 * cache.c: Update old style function definitions.
472 * elf32-m68k.c: Likewise.
473 * elf64-mmix.c: Likewise.
474 * stab-syms.c: Likewise.
475
b98e6871
TS
4762016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
477
478 * elf32-arm.c (put_thumb2_insn): Change argument type to bfd_byte *.
479
6fd8e7c2
L
4802016-04-15 H.J. Lu <hongjiu.lu@intel.com>
481
482 * Makefile.in: Regenerated with automake 1.11.6.
483 * aclocal.m4: Likewise.
484 * doc/Makefile.in: Likewise.
485
4b0c052e
AB
4862016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
487
488 * reloc.c: Add BFD_RELOC_ARC_NPS_CMEM16 entry.
489 * bfd-in2.h: Regenerate.
490 * libbfd.h: Regenerate.
491 * elf32-arc.c: Add 'opcode/arc.h' include.
492 (struct arc_relocation_data): Add symbol_name.
493 (arc_special_overflow_checks): New function.
494 (arc_do_relocation): Use arc_special_overflow_checks, reindent as
495 required, add an extra comment.
496 (elf_arc_relocate_section): Setup symbol_name in reloc_data.
497
33cbe6c0
AB
4982016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
499
500 * elf32-arc.c (tls_got_entries): Add 'TLS_GOT_' prefix to all
501 entries.
502 (elf_arc_relocate_section): Update enum uses.
503 (elf_arc_check_relocs): Likewise.
504 (elf_arc_finish_dynamic_symbol): Likewise.
505
7634c4e6
L
5062016-04-14 H.J. Lu <hongjiu.lu@intel.com>
507
508 * elf.c (_bfd_elf_copy_private_bfd_data): Replace "link" with
509 "sh_link".
510
84865015
NC
5112016-04-14 Nick Clifton <nickc@redhat.com>
512
513 PR target/19938
514 * elf-bbfd.h (struct elf_backend_data): New field:
515 elf_strtab_flags.
516 New field: elf_backend_set_special_section_info_and_link
517 * elfxx-target.h (elf_backend_strtab_flags): Define if not already
518 defined.
519 (elf_backend_set_special_section_info_and_link): Define if not
520 already defined.
521 (elfNN_bed): Use elf_backend_set_special_section_info_and_link and
522 elf_backend_strtab_flags macros to initialise fields in structure.
523 * elf.c (_bfd_elf_make_section_from_shdr): Check for SHF_STRINGS
524 being set even if SHF_MERGE is not set.
525 (elf_fake_sections): Likewise.
526 (section_match): New function. Matches two ELF sections based
527 upon fixed characteristics.
528 (find_link): New function. Locates a section in a BFD that
529 matches a section in a different BFD.
530 (_bfd_elf_copy_private_bfd_data): Copy the sh_info and sh_link
531 fields of reserved sections.
532 (bfd_elf_compute_section_file_positions): Set the flags for the
533 .shstrtab section based upon the elf_strtab_flags field in the
534 elf_backend_data structure.
535 (swap_out_syms): Likewise for the .strtab section.
536 * elflink.c (bfd_elf_final_link): Set the flags for the
537 .strtab section based upon the elf_strtab_flags field in the
538 elf_backend_data structure.
539 * elf32-i386.c (elf32_i386_set_special_info_link): New function.
540 (elf_backend_strtab_flags): Set to SHF_STRINGS for Solaris
541 targets.
542 (elf_backend_set_special_section_info_and_link): Define for
543 Solaris targets.
544 * elf32-sparc.c: Likewise.
545 * elf64-x86-64.c: Likewise.
546
2df3368d
L
5472016-04-11 H.J. Lu <hongjiu.lu@intel.com>
548
549 PR ld/19939
550 * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer
551 to bfd_boolean.
552 * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated.
553 Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc
554 applies to read-only section.
555 * elf32-i386.c (elf_i386_link_hash_table): Add
556 readonly_dynrelocs_against_ifunc.
557 (elf_i386_allocate_dynrelocs): Updated.
558 (elf_i386_size_dynamic_sections): Issue an error for read-only
559 segment with dynamic IFUNC relocations only if
560 readonly_dynrelocs_against_ifunc is TRUE.
561 * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
562 readonly_dynrelocs_against_ifunc.
563 (elf_x86_64_allocate_dynrelocs): Updated.
564 (elf_x86_64_size_dynamic_sections): Issue an error for read-only
565 segment with dynamic IFUNC relocations only if
566 readonly_dynrelocs_against_ifunc is TRUE.
567 * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs):
568 Updated.
569
15dd01b1
TP
5702016-04-06 Thomas Preud'homme <thomas.preudhomme@arm.com>
571
572 * elf32-arm.c (elf32_arm_size_stubs): Move error_ret_free_local to be
573 a fall through from error_ret_free_internal. Free local_syms in
574 error_ret_free_local if allocated from bfd_elf_get_elf_syms ().
575
1e5885b7
CZ
5762016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
577
578 * elf32-arc.c (plt_do_relocs_for_symbol): Changed.
579 (relocate_plt_for_entry): Likewise.
580
b3aee839
CZ
5812016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
582
583 * elf32-arc.c (elf_arc_check_relocs): Changed
584
094fb063
CZ
5852016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
586
587 * elf32-arc.c (name_for_global_symbol): Changed assert.
588 (get_replace_function): Created.:
589 (struct arc_relocation_data): Changed to signed types.
590 (defines S, L, P, PDATA): Casted to signed type.
591 (defines SECTSTART, _SDA_BASE_, TLS_REL): Likewise.
592 (PRINT_DEBUG_RELOC_INFO_BEFORE): Changed.
593 (arc_do_relocation): Changed.
594
94e5c971
CZ
5952016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
596
597 * elf32-arc.c (name_for_global_symbol): Added assert to check for
598 symbol index.
599 (elf_arc_relocate_section): Added and changed asserts, validating
600 the synamic symbol index.
601 (elf_arc_finish_dynamic_symbol): Do not fill the dynamic
602 relocation if symbol has dynindx set to -1.
603
1f599d0e
MR
6042016-04-05 Maciej W. Rozycki <macro@imgtec.com>
605
606 * elflink.c (elf_link_add_object_symbols): Always turn hidden
607 and internal symbols which have a dynamic index into local
608 ones.
609
67f101ee
NC
6102016-04-04 Nick Clifton <nickc@redhat.com>
611
612 PR 19872
613 * dwarf2.c (parse_comp_unit): Skip warning about unrecognised
614 version number if the version is zero.
615
7b15fa7a
AM
6162016-04-01 Alan Modra <amodra@gmail.com>
617
618 PR 19886
619 * elflink.c (on_needed_list): Recursively check needed status.
620 (elf_link_add_object_symbols): Adjust.
621
024ea11b
SKS
6222016-03-30 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
623
624 * elf32-avr.c (avr_elf32_load_records_from_section): Free
625 internal_relocs only if they aren't cached.
626
ed3056eb
NC
6272016-03-29 Nick Clifton <nickc@redhat.com>
628
629 PR 17334
630 * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax
631 assertion on the size of the got section to allow it to be bigger
632 than the number of relocs.
633
e2b4fc91
TS
6342016-03-29 Toni Spets <toni.spets@iki.fi>
635
636 PR 19878
637 * coffcode.h (coff_write_object_contents): Revert accidental
638 2014-11-10 change.
639
a97fbc7e
AM
6402016-03-22 Alan Modra <amodra@gmail.com>
641
642 PR 19850
643 * dwarf2.c (read_attribute_value): Skip info_ptr check for
644 DW_FORM_flag_present.
645
9780e045
NC
6462016-03-22 Nick Clifton <nickc@redhat.com>
647
96254e5c
NC
648 * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an
649 architecture name for backwards compatibility.
650
7769fa97
NC
651 * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible
652 unbounded stack use.
653
9780e045
NC
654 * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a
655 sufficiently recent version of GCC.
656 * configure: Regenerate.
657
6f4c0a42
AM
6582016-03-22 Alan Modra <amodra@gmail.com>
659
660 PR 19851
661 * plugin.c (try_load_plugin): Avoid -Wstack-usage warning.
662
8699fc3e
AB
6632016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
664
665 * archures.c (bfd_mach_arc_nps400): Define.
666 * bfd-in2.h: Regenerate.
667 * cpu-arc.c (arch_info_struct): New entry for nps400, renumber
668 some existing entries to make space.
669 * elf32-arc.c (arc_elf_object_p): Add nps400 case.
670 (arc_elf_final_write_processing): Likewise.
671
a9522a21
AB
6722016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
673
674 * elf32-arc.c (arc_elf_print_private_bfd_data): Remove use of
675 EF_ARC_CPU_GENERIC.
676 (arc_elf_final_write_processing): Don't bother setting cpu field
677 in e_flags, this will have been set elsewhere.
678
c0334580
AB
6792016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
680
681 * elf32-arc.c (arc_elf_final_write_processing): Switch to using
682 EF_ARC_MACH_MSK.
683
e1fa0163
NC
6842016-03-21 Nick Clifton <nickc@redhat.com>
685
686 * warning.m4 (GCC_WARN_CFLAGS): Add -Wstack-usage=262144
687 * configure: Regenerate.
688 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Replace use of
689 alloca with call to xmalloc.
690 * elf32-nds32.c: Likewise.
691 * elf64-hppa.c: Likewise.
692 * elfxx-mips.c: Likewise.
693 * pef.c: Likewise.
694 * pei-x86_64.c: Likewise.
695 * som.c: Likewise.
696 * xsym.c: Likewise.
697
4e0c91e4
L
6982016-03-15 H.J. Lu <hongjiu.lu@intel.com>
699
700 PR ld/19827
701 * elf32-i386.c (elf_i386_check_relocs): Bind defined symbol
702 locally in PIE.
703 (elf_i386_relocate_section): Likewise.
704 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
705 (elf_x86_64_relocate_section): Likewise.
706
4c10bbaa
L
7072016-03-15 H.J. Lu <hongjiu.lu@intel.com>
708
709 PR ld/19807
710 * elf64-x86-64.c (elf_x86_64_relocate_section): Check
711 no_reloc_overflow_check to diable R_X86_64_32/R_X86_64_32S
712 relocation overflow check.
713
fbe48798
L
7142016-03-14 H.J. Lu <hongjiu.lu@intel.com>
715
716 * bfd-in2.h: Regenerated.
717
37b01f6a
DG
7182016-03-11 Dan Gissel <dgisselq@ieee.org>
719
720 PR 19713
721 * elf.c (_bfd_elf_section_offset): Ensure that the returned offset
722 uses bytes not octets.
723 * elflink.c (resolve_section): Likewise.
724 Add a bfd parameter.
725 (eval_section): Pass the input_bfd to resolve_section.
726 (bfd_elf_perform_complex_relocation): Convert byte offset to
727 octets before read and writing values.
728 (elf_link_input_bfd): Add byte to octet conversions.
729 (elf_reloc_link_order): Likewise.
730 (elf_fixup_link_order): Likewise.
731 (bfd_elf_final_link): Likewise.
732 * reloc.c (_bfd_final_link_relocate): Likewise.
733 * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
734
3ed4ff97
NC
7352016-03-10 Nick Clifton <nickc@redhat.com>
736
737 * config.bfd: Mark the i370 target as obsolete.
738
4b05e0a7
PA
7392016-03-09 Pedro Alves <palves@redhat.com>
740
741 * cpu-v850.c (N): Append ":old-gcc-abi" instead of " (using old
742 gcc ABI)" to printable name.
743 * cpu-v850_rh850.c (bfd_v850_rh850_arch): Use "v850:rh850" instead
744 of "v850-rh850" as printable name.
745
26c62da0
LW
7462016-03-09 Leon Winter <winter-gcc@bfw-online.de>
747
748 PR ld/19623
749 * cofflink.c (_bfd_coff_generic_relocate_section): Do not apply
750 relocations against absolute symbols.
751
03ee8583
AM
7522016-03-09 Alan Modra <amodra@gmail.com>
753
754 PR binutils/19775
755 * coff-alpha.c (alpha_ecoff_openr_next_archived_file): Allow zero
756 length elements in the archive.
757
9c1d7a08
L
7582016-03-08 H.J. Lu <hongjiu.lu@intel.com>
759
760 PR ld/19789
761 * elflink.c (elf_link_add_object_symbols): Create dynamic sections
762 for -E/--dynamic-list only when not relocatable.
763
d1ed1c7d
L
7642016-03-08 H.J. Lu <hongjiu.lu@intel.com>
765
766 PR ld/19784
767 * elf32-i386.c (elf_i386_check_relocs): Increment PLT reference
768 count for locally defined local IFUNC symbols in shared object.
769 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
770
202ac193
L
7712016-03-08 H.J. Lu <hongjiu.lu@intel.com>
772
773 PR ld/19579
774 * elflink.c (_bfd_elf_merge_symbol): Group common symbol checking
775 together.
776
72f3b6aa
CZ
7772016-03-08 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
778 Andrew Burgess <andrew.burgess@embecosm.com>
779
780 * elf32-arc.c (arc_bfd_get_32): Becomes an alias for bfd_get_32.
781 (arc_bfd_put_32): Becomes an alias for bfd_put_32.
782 (arc_elf_howto_init): Added assert to validate relocations.
783 (get_middle_endian_relocation): Delete.
784 (middle_endian_convert): New function.
785 (ME): Redefine, now does nothing.
786 (IS_ME): New define.
787 (arc_do_relocation): Extend the attached 'ARC_RELOC_HOWTO'
788 definition to call middle_endian_convert. Add a new local
789 variable and make use of this throughout. Added call to
790 arc_bfd_get_8 and arc_bfd_put_8 for 8 bit relocations.
791
4fc87424
NC
7922016-03-07 Nick Clifton <nickc@redhat.com>
793
794 PR binutils/19775
795 * archive.c (bfd_generic_openr_next_archived_file): Allow zero
796 length elements in the archive.
797
18f822a0
JW
7982016-03-07 Jiong Wang <jiong.wang@arm.com>
799
800 * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Always create .got
801 section if the symbol "_GLOBAL_OFFSET_TABLE_" is referenced.
802
07492f66
L
8032016-03-04 H.J. Lu <hongjiu.lu@intel.com>
804
805 PR ld/19579
806 * elflink.c (_bfd_elf_merge_symbol): Treat common symbol in
807 executable as definition if the new definition comes from a
808 shared library.
809
70a5df4f
AM
8102016-03-02 Alan Modra <amodra@gmail.com>
811
812 * Makefile.in: Regenerate.
813 * po/SRC-POTFILES.in: Regenerate.
814
841fdfcd
CZ
8152016-02-29 Cupertino Miranda <cmiranda@synopsys.com>
816
817 * elf32-arc.c (elf_arc_relocate_section): Added rules to fix the
818 relocation addend when sections get merged.
819
7e458899
CZ
8202016-02-29 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
821
822 * elf32-arc.c (arc_elf_final_write_processing): Add condition to
823 the flag change.
824 (elf_arc_relocate_section): Fixes and conditions to support PIE.
825 Assert for code sections dynamic relocs.
826
c5e3a364
RL
8272016-02-26 Renlin Li <renlin.li@arm.com>
828
829 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix signed overflow
830 check for MOVW_SABS_G0, MOVW_SABS_G1, MOVW_SABS_G2.
831
bae420ef
L
8322016-02-26 H.J. Lu <hongjiu.lu@intel.com>
833
834 PR ld/19609
835 * elf32-i386.c (elf_i386_convert_load): Convert to R_386_32 for
836 load with locally bound symbols if PIC is false or there is no
837 base register. Optimize branch to 0 if PIC is false.
838 (elf_i386_relocate_section): Don't generate dynamic relocations
839 against undefined weak symbols if PIC is false.
840 * elf64-x86-64.c (elf_x86_64_convert_load): Disable optimization
841 if we can't estimate relocation overflow with --no-relax.
842 Convert to R_X86_64_32S/R_X86_64_32 for load with locally bound
843 symbols if PIC is false. Optimize branch to 0 if PIC is false.
844 (elf_x86_64_relocate_section): Don't generate dynamic relocations
845 against undefined weak symbols if PIC is false.
846
11e5f1ec
L
8472016-02-26 H.J. Lu <hongjiu.lu@intel.com>
848
849 PR ld/19645
850 * bfd.c (bfd): Change flags to 20 bits.
851 (BFD_CONVERT_ELF_COMMON): New.
852 (BFD_USE_ELF_STT_COMMON): Likewise.
853 (BFD_FLAGS_SAVED): Add BFD_CONVERT_ELF_COMMON and
854 BFD_USE_ELF_STT_COMMON.
855 (BFD_FLAGS_FOR_BFD_USE_MASK): Likewise.
856 * configure.ac: Remove --enable-elf-stt-common.
857 * elf.c (swap_out_syms): Choose STT_COMMON or STT_OBJECT for
858 common symbol depending on BFD_CONVERT_ELF_COMMON and
859 BFD_USE_ELF_STT_COMMON.
860 * elfcode.h (elf_slurp_symbol_table): Set BSF_ELF_COMMON for
861 STT_COMMON.
862 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Also check
863 STT_COMMON.
864 (elf_link_convert_common_type): New function.
865 (elf_link_output_extsym): Choose STT_COMMON or STT_OBJECT for
866 common symbol depending on BFD_CONVERT_ELF_COMMON and
867 BFD_USE_ELF_STT_COMMON. Set sym.st_info after sym.st_shndx.
868 * elfxx-target.h (TARGET_BIG_SYM): Add BFD_CONVERT_ELF_COMMON
869 and BFD_USE_ELF_STT_COMMON to object_flags.
870 (TARGET_LITTLE_SYM): Likewise.
871 * syms.c (BSF_KEEP_G): Renamed to ...
872 (BSF_ELF_COMMON): This.
873 * bfd-in2.h: Regenerated.
874 * config.in: Likewise.
875 * configure: Likewise.
876
aec6b87e
L
8772016-02-26 H.J. Lu <hongjiu.lu@intel.com>
878
879 PR ld/19636
880 PR ld/19704
881 PR ld/19719
882 * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
883 (elf_i386_link_hash_entry): Add has_got_reloc and
884 has_non_got_reloc.
885 (elf_i386_link_hash_table): Add interp.
886 (elf_i386_link_hash_newfunc): Initialize has_got_reloc and
887 has_non_got_reloc.
888 (elf_i386_copy_indirect_symbol): Copy has_got_reloc and
889 has_non_got_reloc.
890 (elf_i386_check_relocs): Set has_got_reloc and has_non_got_reloc.
891 (elf_i386_fixup_symbol): New function.
892 (elf_i386_pie_finish_undefweak_symbol): Likewise.
893 (elf_i386_allocate_dynrelocs): Don't allocate space for dynamic
894 relocations and discard relocations against resolved undefined
895 weak symbols in executable. Don't make resolved undefined weak
896 symbols in executable dynamic. Keep dynamic non-GOT/non-PLT
897 relocation against undefined weak symbols in PIE.
898 (elf_i386_size_dynamic_sections): Set interp to .interp section.
899 (elf_i386_relocate_section): Don't generate dynamic relocations
900 against resolved undefined weak symbols in PIE, except for
901 R_386_PC32.
902 (elf_i386_finish_dynamic_symbol): Keep PLT/GOT entries without
903 dynamic PLT/GOT relocations for resolved undefined weak symbols.
904 Don't generate dynamic relocation against resolved undefined weak
905 symbol in executable.
906 (elf_i386_finish_dynamic_sections): Call
907 elf_i386_pie_finish_undefweak_symbol on all symbols in PIE.
908 (elf_backend_fixup_symbol): New.
909 * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
910 (elf_x86_64_link_hash_entry): Add has_got_reloc and
911 has_non_got_reloc.
912 (elf_x86_64_link_hash_table): Add interp.
913 (elf_x86_64_link_hash_newfunc): Initialize has_got_reloc and
914 has_non_got_reloc.
915 (elf_x86_64_copy_indirect_symbol): Copy has_got_reloc and
916 has_non_got_reloc.
917 (elf_x86_64_check_relocs): Set has_got_reloc and
918 has_non_got_reloc.
919 (elf_x86_64_fixup_symbol): New function.
920 (elf_x86_64_pie_finish_undefweak_symbol): Likewise.
921 (elf_x86_64_allocate_dynrelocs): Don't allocate space for dynamic
922 relocations and discard relocations against resolved undefined
923 weak symbols in executable. Don't make resolved undefined weak
924 symbols in executable dynamic.
925 (elf_x86_64_size_dynamic_sections): Set interp to .interp section.
926 (elf_x86_64_relocate_section): Check relocation overflow for
927 dynamic relocations against unresolved weak undefined symbols.
928 Don't generate dynamic relocations against resolved weak
929 undefined symbols in PIE.
930 (elf_x86_64_finish_dynamic_symbol): Keep PLT/GOT entries without
931 dynamic PLT/GOT relocations for resolved undefined weak symbols.
932 Don't generate dynamic relocation against resolved undefined weak
933 symbol in executable.
934 (elf_x86_64_finish_dynamic_sections): Call
935 elf_x86_64_pie_finish_undefweak_symbol on all symbols in PIE.
936 (elf_backend_fixup_symbol): New.
937
b32547cd
AM
9382016-02-26 Alan Modra <amodra@gmail.com>
939
940 * elf64-ppc.c (create_linkage_sections): Create sfpr when
941 save_restore_funcs, rest of sections when not relocatable.
942 (ppc64_elf_init_stub_bfd): Always call create_linkage_sections.
943 (sfpr_define): Define all symbols on emitted code.
944 (ppc64_elf_func_desc_adjust): Adjust for sfpr now being created
945 when relocatable. Move sfpr_define loop earlier.
946
ef77d6af
L
9472016-02-24 H.J. Lu <hongjiu.lu@intel.com>
948
949 * elf64-x86-64.c (elf_x86_64_need_pic): New function.
950 (elf_x86_64_relocate_section): Use it. Replace
951 x86_64_elf_howto_table[r_type] with howto.
952
0f550b3d
L
9532016-02-24 H.J. Lu <hongjiu.lu@intel.com>
954
955 PR ld/19698
956 * elflink.c (bfd_elf_record_link_assignment): Set versioned if
957 symbol version is unknown.
958
13f42277
L
9592016-02-24 H.J. Lu <hongjiu.lu@intel.com>
960
961 * elf32-i386.c (elf_i386_allocate_dynrelocs): Set plt_got.offset
962 to (bfd_vma) -1 when setting needs_plt to 0.
963 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
964
6b3b0ab8
L
9652016-02-23 H.J. Lu <hongjiu.lu@intel.com>
966
967 * elflink.c (bfd_elf_record_link_assignment): Check for shared
968 library, instead of PIC, and don't check PDE when making linker
969 assigned symbol dynamic.
970
17733f5b
FS
9712016-02-23 Faraz Shahbazker <faraz.shahbazker@imgtec.com>
972
973 * bfd/elfxx-mips.c (_bfd_mips_post_process_headers): Increment
974 ABIVERSION for non-executable stack.
975
47993b4a
RF
9762016-02-23 Rich Felker <bugdal@aerifal.cx>
977
978 PR target/19516
979 * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol):
980 Always produce a RELATIVE reloc for a local symbol.
981
2d8dcb81
HPN
9822016-02-23 Hans-Peter Nilsson <hp@axis.com>
983
984 Fix test-case ld-elf/pr19617b
985 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
986 discard unused non-function symbols when --dynamic-list-data.
987
1a6e6083
L
9882016-02-22 H.J. Lu <hongjiu.lu@intel.com>
989
990 * elflink.c (_bfd_elf_link_renumber_dynsyms): Always create the
991 dynsym section, even if it is empty, with dynamic sections.
992
75c1920b
L
9932016-02-22 H.J. Lu <hongjiu.lu@intel.com>
994
995 * syms.c: Remove BSF_COMMON from comments.
996 * bfd-in2.h: Regenerated.
997
9a228467
JW
9982016-02-22 Jiong Wang <jiong.wang@arm.com>
999
1000 * elfnn-aarch64. (aarch64_type_of_stub): Remove redundation calcuation
1001 for destination. Remove useless function parameters.
1002 (elfNN_aarch64_size_stubs): Update parameters for aarch64_type_of_stub.
1003
73768414
NC
10042016-02-19 Nick Clifton <nickc@redhat.com>
1005
e517df3d
NC
1006 PR ld/19629
1007 * aoutx.h (aout_link_add_symbols): Check for out of range string
1008 table offsets.
1009
73768414
NC
1010 PR ld/19628
1011 * reloc.c (bfd_generic_get_relocated_section_contents): Stop
1012 processing if we encounter a reloc without an associated symbol.
1013
bf89386a
L
10142016-02-18 H.J. Lu <hongjiu.lu@intel.com>
1015
1016 PR ld/19617
1017 * elflink.c (elf_link_add_object_symbols): Always create dynamic
1018 sections for -E/--dynamic-list.
1019
8f79b794
L
10202016-02-17 H.J. Lu <hongjiu.lu@intel.com>
1021
1022 * elf64-x86-64.c (elf_backend_omit_section_dynsym): New. Defined
1023 to bfd_true.
1024
64bfc258
JM
10252016-02-16 Joseph Myers <joseph@codesourcery.com>
1026
1027 * plugin.c (plugin_vec): Set match priority to 255.
1028 * format.c (bfd_check_format_matches) [BFD_SUPPORTS_PLUGINS]: When
1029 matching against the plugin vector, take priority from there not
1030 from TEMP.
1031
9fb71ee4
NC
10322016-02-15 Nick Clifton <nickc@redhat.com>
1033
1034 * elf-bfd.h (struct bfd_elf_special_section): Use unsigned values
1035 for length and type fields. Use a signed value for the
1036 suffix_length field.
1037
32875eb1
L
10382016-02-10 H.J. Lu <hongjiu.lu@intel.com>
1039
1040 PR ld/19601
1041 * elf32-i386.c (elf_i386_relocate_section): Mask off the least
1042 significant bit in GOT offset for R_386_GOT32X.
1043
83da6e74
NC
10442016-02-10 Nick Clifton <nickc@redhat.com>
1045
1046 PR 19405
1047 * elf32-nios2.c (nios2_elf32_install_imm16): Allow for signed
1048 immediate values.
1049 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Limit the
1050 number of messages about FDE encoding preventing .eh_frame_hdr
1051 generation.
1052
027e9c75
NC
10532016-02-09 Nick Clifton <nickc@redhat.com>
1054
609332f1
NC
1055 * oasys.c (oasys_archive_p): Fix indentation.
1056 * elf32-nds32.c (nds32_elf_relax_section): Use an unsigned
1057 constant for left shifting.
1058
027e9c75
NC
1059 * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Add a more
1060 helpful warning message to explain why certain AArch64 relocs
1061 might overflow.
1062
6f57d046
SM
10632016-02-05 Simon Marchi <simon.marchi@ericsson.com>
1064
1065 * pe-mips.c (coff_mips_reloc): Fix formatting.
1066
bdbca4e6
CM
10672016-02-05 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
1068
1069 * cpu-arc.c: Change default archure from bfd_mach_arc_arcv2
1070 to bfd_mach_arc_arc600.
1071
4f038ee5
AM
10722016-02-04 Alan Modra <amodra@gmail.com>
1073
1074 * elf64-ppc.c (ppc64_elf_relocate_section): Adjust last patch
1075 for big-endian.
1076
4a539596
L
10772016-02-02 H.J. Lu <hongjiu.lu@intel.com>
1078
1079 PR ld/19542
1080 * elf64-x86-64.c (elf_x86_64_convert_load): Store the estimated
fb06f1c0 1081 distances in the compressed_size field of the output section.
4a539596 1082
85fabe71
AM
10832016-02-02 Alan Modra <amodra@gmail.com>
1084
1085 * elf64-ppc.c (ppc64_elf_relocate_section): Further restrict
1086 ELFv2 entry optimization.
1087
14f2c699
L
10882016-02-02 H.J. Lu <hongjiu.lu@intel.com>
1089
1090 PR binutils/19547
1091 * elf.c (assign_section_numbers): Clear HAS_RELOC if there are
1092 no relocations in relocatable files.
1093
aef28989
L
10942016-02-01 H.J. Lu <hongjiu.lu@intel.com>
1095
1096 PR ld/19553
1097 * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
1098 if a symbol from a library loaded via DT_NEEDED doesn't match
1099 the symbol referenced by regular object.
1100
655ed9ea
NS
11012016-02-01 Nathaniel Smith <njs@pobox.com>
1102
1103 * peicode.h (pe_ILF_build_a_bfd): Create an import symbol for both
1104 CODE and DATA.
1105
ec1f73bb
AM
11062016-02-01 Alan Modra <amodra@gmail.com>
1107
1108 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Don't abort on
1109 an out of range reloc_index.
1110 * elf32-i386.c (elf_i386_get_plt_sym_val): Likewise.
1111
b6471e6e
KR
11122016-02-01 Kamil Rytarowski <n54@gmx.com>
1113
1114 * Makefile.am (OPTIONAL_BACKENDS): Add netbsd-core.lo.
1115 (OPTIONAL_BACKENDS_CFILES): Add netbsd-core.c.
1116 * Makefile.in: Regenerated.
1117
0bc7245a
JK
11182016-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
1119
1120 * elf64-s390.c (elf_s390_reloc_name_lookup): Fix indentation.
1121
6d4b2867
JDA
11222016-01-31 John David Anglin <danglin@gcc.gnu.org>
1123
1124 PR ld/19526
1125 * elf32-hppa.c (elf32_hppa_final_link): Don't sort non-regular output
1126 files.
1127 * elf64-hppa.c (elf32_hppa_final_link): Likewise. Remove retval.
1128
d9e3b590
L
11292016-01-30 H.J. Lu <hongjiu.lu@intel.com>
1130
1131 PR ld/19539
1132 * elf32-i386.c (elf_i386_reloc_type_class): Check relocation
1133 against STT_GNU_IFUNC symbol only with dynamic symbols.
1134 * elf64-x86-64.c (elf_x86_64_reloc_type_class): Likewise.
1135
bf150a0b
L
11362016-01-28 H.J. Lu <hongjiu.lu@intel.com>
1137
1138 PR binutils/19523
1139 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Set BFD_DECOMPRESS to
1140 decompress debug sections.
1141
840855c5
MR
11422016-01-25 Maciej W. Rozycki <macro@imgtec.com>
1143
1144 * elf32-arc.c (elf_arc_finish_dynamic_symbol): Rename `index' to
1145 `dynindx'.
1146
cf466c2a
NC
11472016-01-25 Nick Clifton <nickc@redhat.com>
1148
1149 PR target/19435
1150 * mach-o.c (bfd_mach_o_close_and_cleanup): Suppress code to free
1151 dsym filename buffer.
1152
eb6b0cf4
MR
11532016-01-24 Maciej W. Rozycki <macro@imgtec.com>
1154
1155 * elfxx-mips.c (BZ16_REG_FIELD): Simplify calculation.
1156
e67f83e5
MR
11572016-01-24 Maciej W. Rozycki <macro@imgtec.com>
1158
1159 * elfxx-mips.c (BZ16_REG): Correct calculation.
1160
23a42089
NC
11612016-01-21 Nick Clifton <nickc@redhat.com>
1162
1163 * elf32-arc.c (ADD_RELA): Fix compile time warning errors by
1164 changing the type of _loc to be bfd_byte *.
1165 (elf_arc_finish_dynamic_symbol): Likewise.
1166
aebf9be7
NC
11672016-01-21 Nick Clifton <nickc@redhat.com>
1168
1169 PR ld/19455
1170 * elf32-arm.c (elf32_arm_create_dynamic_sections): Set the ELF
1171 class of the linker stub bfd.
1172 (elf32_arm_check_relocs): Skip check for pic format after
1173 processing a vxWorks R_ARM_ABS12 reloc.
1174 * elflink.c (bfd_elf_final_link): Check for ELFCLASSNONE when
1175 reporting a class mismatch.
1176
2f340668
JW
11772016-01-21 Jiong Wang <jiong.wang@arm.com>
1178
1179 * elfnn-aarch64.c (aarch64_type_of_stub): Allow insert long branch
1180 veneer for sym_sec != input_sec.
1181 (elfNN_aarch64_size_stub): Support STT_SECTION symbol.
1182 (elfNN_aarch64_final_link_relocate): Take rela addend into account when
1183 calculation destination.
1184
aeb70569
AM
11852016-01-21 Alan Modra <amodra@gmail.com>
1186
1187 * elf-linux-core.h (swap_linux_prpsinfo32_out): New function.
1188 (swap_linux_prpsinfo64_out): New function.
1189 (LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
1190 (LINUX_PRPSINFO64_SWAP_FIELDS): Delete.
1191 * elf.c (elfcore_write_linux_prpsinfo32): Adjust. Don't memset.
1192 (elfcore_write_linux_prpsinfo64): Likewise.
1193 * elf32-ppc.c (swap_ppc_linux_prpsinfo32_out): New function.
1194 (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
1195 (elfcore_write_ppc_linux_prpsinfo32): Adjust. Don't memset.
1196
de64ce13
AM
11972016-01-21 Alan Modra <amodra@gmail.com>
1198
1199 * elf-linux-core.h: Rename from elf-linux-psinfo.h.
1200 * elf.c: Adjust #include.
1201 * elf32-ppc.c: Don't #include elf-linux-psinfo.h
1202 * Makefile.am (SOURCE_HFILES): Update.
1203 * Makefile.in: Regenerate.
1204 * po/SRC-PORFILES.in: Regenerate.
1205
c603b11b
AM
12062016-01-21 Alan Modra <amodra@gmail.com>
1207
1208 * configure.ac: Move corefile selection later in file. Move
1209 tdefaults code immediately after other target vector code.
1210 * configure: Regenerate.
1211
91f68a68
MG
12122016-01-20 Mickael Guene <mickael.guene@st.com>
1213
1214 * elf32-arm.c (elf32_arm_special_sections): Remove catch of noread
1215 section using '.text.noread' pattern.
1216
5b2c414d
JB
12172016-01-19 John Baldwin <jhb@FreeBSD.org>
1218
1219 * elf.c (elfcore_grok_note): Recognize NT_FREEBSD_THRMISC notes.
1220
34e967a5
MC
12212016-01-18 Miranda Cupertino <Cupertino.Miranda@synopsys.com>
1222 Zissulescu Claudiu <Claudiu.Zissulescu@synopsys.com>
1223
1224 * arc-plt.def: New file.
1225 * arc-plt.h: Likewise.
1226 * elf32-arc.c (elf_arc_abs_plt0_entry, elf_arc_abs_pltn_entry,
1227 elf_arcV2_abs_plt0_entry, elf_arcV2_abs_pltn_entry,
1228 elf_arc_pic_plt0_entry, elf_arc_pic_pltn_entry,
1229 elf_arcV2_pic_plt0_entry, elf_arcV2_pic_pltn_entry): Remove.
1230 (name_for_global_symbol): Added.
1231 (ADD_RELA): Helper to create dynamic relocs.
1232 (new_got_entry_to_list): Create a new got entry in linked list.
1233 (symbol_has_entry_of_type): Search for specific type of entry in
1234 list.
1235 (is_reloc_for_GOT): return FALSE for any TLS related relocs.
1236 (is_reloc_for_TLS, arc_elf_set_private_flags)
1237 (arc_elf_print_private_bfd_data, arc_elf_copy_private_bfd_data)
1238 (arc_elf_merge_private_bfd_data): New functions.
1239 (debug_arc_reloc): Cleaned debug info printing.
1240 (PDATA reloc): Changed not to perform address alignment.
1241 (reverse_me): Added. Fix for ARC_32 relocs.
1242 (arc_do_relocation): Return bfd_reloc_of when no relocation should
1243 occur.
1244 (arc_get_local_got_ents): Renamed from arc_get_local_got_offsets.
1245 Changed function to access an array of list of GOT entries instead
1246 of just an array of offsets.
1247 (elf_arc_relocate_section): Added support for PIC and TLS related relocations.
1248 (elf_arc_check_relocs): Likewise.
1249 (elf_arc_adjust_dynamic_symbol, elf_arc_finish_dynamic_symbol,
1250 (elf_arc_finish_dynamic_sections): Likewise
1251 (arc_create_dynamic_sections): Modified conditions to create
1252 dynamic sections.
1253 (ADD_SYMBOL_REF_SEC_AND_RELOC): New macro.
1254 (plt_do_relocs_for_symbol, relocate_plt_for_symbol)
1255 (relocate_plt_for_entry): Changed to support new way to define PLT
1256 related code.
1257 (add_symbol_to_plt): Likewise.
1258 (arc_elf_link_hash_table_create): New function.
1259
9ae678af
NC
12602016-01-18 Nick Clifton <nickc@redhat.com>
1261
1262 PR ld/19440
1263 * coff-rs6000.c (_bfd_xcoff_swap_sym_in): Sign extend external
1264 section number into internal section number.
1265 * coff64-rs6000.c (_bfd_xcoff64_swap_sym_in): Likewise.
1266 * coffswap.h (coff_swap_sym_in): Likewise.
1267 * peXXigen.c (_bfd_XXi_swap_sym_in): Likewise.
1268 * coffcode.h (_coff_bigobj_swap_sym_in): Make sure that internal
1269 section number field is big enough to hold the external value.
1270
5c14705f
AM
12712016-01-17 Alan Modra <amodra@gmail.com>
1272
1273 * configure: Regenerate.
1274
ac06903d
YU
12752016-01-12 Yury Usishchev <y.usishchev@samsung.com>
1276
1277 * elf32-arm.c (elf32_arm_fix_exidx_coverage): Insert cantunwind
1278 when address in first unwind entry does not match start of
1279 section.
1280
109575d7
JW
12812016-01-08 Richard Sandiford <richard.sandiford@arm.com>
1282 Jiong Wang <jiong.wang@arm.com>
1283
1284 PR ld/19368
1285 * elf32-arm.c (elf32_arm_reloc_type_class): Map R_ARM_IRELATIVE to
1286 reloc_class_ifunc.
1287
b05a65d0
AB
12882016-01-06 Andrew Burgess <andrew.burgess@embecosm.com>
1289
1290 * elf32-arc.c (reloc_type_to_name): Change ARC_RELOC_HOWTO to
1291 place 'R_' before the reloc name returned.
1292 (elf_arc_howto_table): Change ARC_RELOC_HOWTO to place 'R_' before
1293 the relocation string.
1294
a3dc0a7f
MR
12952016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1296
1297 * elfxx-mips.c (mips_elf_merge_obj_abiflags): New function,
1298 factored out from...
1299 (_bfd_mips_elf_merge_private_bfd_data): ... here.
1300
d537eeb5
MR
13012016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1302
1303 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Move
1304 attribute check after ELF file header flag check.
1305
43d223b5
MR
13062016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1307
1308 * elfxx-mips.c (mips_elf_merge_obj_attributes): Propagate the
1309 return status from `_bfd_elf_merge_object_attributes'.
1310
b2e9744f
MR
13112016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1312
1313 * elfxx-mips.c (mips_elf_merge_obj_e_flags): New function,
1314 factored out from...
1315 (_bfd_mips_elf_merge_private_bfd_data): ... here.
1316
28d45e28
MR
13172016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1318
1319 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Fold the
1320 handling of input MIPS ABI flags together.
1321
23ba6f18
MR
13222016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1323
1324 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Suppress
1325 attribute checks for null input.
1326
cf8502c1
MR
13272016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1328
1329 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Use local
1330 pointers to target data.
1331
dcb1c796
MR
13322016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1333
1334 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct
1335 an FP ABI warning.
1336
6f2750fe
AM
13372016-01-01 Alan Modra <amodra@gmail.com>
1338
1339 Update year range in copyright notice of all files.
1340
3499769a
AM
1341For older changes see ChangeLog-2015 and doc/ChangeLog-0415
1342\f
1343Copyright (C) 2016 Free Software Foundation, Inc.
1344
1345Copying and distribution of this file, with or without modification,
1346are permitted in any medium without royalty provided the copyright
1347notice and this notice are preserved.
1348
1349Local Variables:
1350mode: change-log
1351left-margin: 8
1352fill-column: 74
1353version-control: never
1354End:
This page took 0.098228 seconds and 4 git commands to generate.