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