]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
Add "arm_any" architecture type to allow -m option to various binutils to match any...
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
99914dfd
NC
12016-06-02 Nick Clifton <nickc@redhat.com>
2
3 PR target/20088
4 * cpu-arm.c (processors): Add "arm_any" type to match any ARM
5 architecture.
6 (arch_info_struct): Likewise.
7 (architectures): Likewise.
8
4ad0bb5f
VG
92016-06-02 Vineet Gupta <Vineet.Gupta1@synopsys.com>
10
11 * config.bfd: Replace -uclibc with *.
12
3ddf1bdd
L
132016-06-02 H.J. Lu <hongjiu.lu@intel.com>
14
15 * elf64-x86-64.c: Replace data32 with data16 in comments.
16
5b677558
AM
172016-05-31 Alan Modra <amodra@gmail.com>
18
19 PR ld/20159
20 PR ld/16467
21 * elflink.c (_bfd_elf_merge_symbol): Revert PR16467 change.
22 (_bfd_elf_add_default_symbol): Don't indirect to/from defined
23 symbol given a version by a script different to the version
24 of the symbol being added.
25 (elf_link_add_object_symbols): Use _bfd_elf_strtab_save and
26 _bfd_elf_strtab_restore. Don't fudge dynstr references.
27 * elf-strtab.c (_bfd_elf_strtab_restore_size): Delete.
28 (struct strtab_save): New.
29 (_bfd_elf_strtab_save, _bfd_elf_strtab_restore): New functions.
30 * elf-bfd.h (_bfd_elf_strtab_restore_size): Delete.
31 (_bfd_elf_strtab_save, _bfd_elf_strtab_restore): Declare.
32
1fe0971e
TS
332016-06-01 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
34
35 * elf32-hppa.h: Add extern "C".
36 * elf32-nds32.h: Likewise.
37 * elf32-tic6x.h: Likewise.
38
885a1087
NC
392016-06-01 Nick Clifton <nickc@redhat.com>
40
41 * po/sr.po: New Serbian translation.
42 * configure.ac (ALL_LINGUAS): Add sr.
43 * configure: Regenerate.
44
99aefae6
MR
452016-05-28 Maciej W. Rozycki <macro@imgtec.com>
46
47 * elfxx-mips.c (b_reloc_p): New function.
48 (_bfd_mips_elf_relocate_section) <bfd_reloc_outofrange>: Handle
49 branch relocations.
50
77434823
MR
512016-05-28 Maciej W. Rozycki <macro@imgtec.com>
52
53 * elfxx-mips.c (mips_elf_calculate_relocation): <R_MIPS16_26>
54 <R_MIPS_26, R_MICROMIPS_26_S1>: Drop the region bits of the
55 reloc location from calculation, treat the addend as signed with
56 local non-section symbols and enable overflow detection.
57
1a72702b
AM
582016-05-28 Alan Modra <amodra@gmail.com>
59
60 * aoutx.h: Adjust linker callback calls throughout file,
61 removing dead code.
62 * bout.c: Likewise.
63 * coff-alpha.c: Likewise.
64 * coff-arm.c: Likewise.
65 * coff-h8300.c: Likewise.
66 * coff-h8500.c: Likewise.
67 * coff-i960.c: Likewise.
68 * coff-mcore.c: Likewise.
69 * coff-mips.c: Likewise.
70 * coff-ppc.c: Likewise.
71 * coff-rs6000.c: Likewise.
72 * coff-sh.c: Likewise.
73 * coff-tic80.c: Likewise.
74 * coff-w65.c: Likewise.
75 * coff-z80.c: Likewise.
76 * coff-z8k.c: Likewise.
77 * coff64-rs6000.c: Likewise.
78 * cofflink.c: Likewise.
79 * ecoff.c: Likewise.
80 * elf-bfd.h: Likewise.
81 * elf-m10200.c: Likewise.
82 * elf-m10300.c: Likewise.
83 * elf32-arc.c: Likewise.
84 * elf32-arm.c: Likewise.
85 * elf32-avr.c: Likewise.
86 * elf32-bfin.c: Likewise.
87 * elf32-cr16.c: Likewise.
88 * elf32-cr16c.c: Likewise.
89 * elf32-cris.c: Likewise.
90 * elf32-crx.c: Likewise.
91 * elf32-d10v.c: Likewise.
92 * elf32-epiphany.c: Likewise.
93 * elf32-fr30.c: Likewise.
94 * elf32-frv.c: Likewise.
95 * elf32-ft32.c: Likewise.
96 * elf32-h8300.c: Likewise.
97 * elf32-hppa.c: Likewise.
98 * elf32-i370.c: Likewise.
99 * elf32-i386.c: Likewise.
100 * elf32-i860.c: Likewise.
101 * elf32-ip2k.c: Likewise.
102 * elf32-iq2000.c: Likewise.
103 * elf32-lm32.c: Likewise.
104 * elf32-m32c.c: Likewise.
105 * elf32-m32r.c: Likewise.
106 * elf32-m68hc1x.c: Likewise.
107 * elf32-m68k.c: Likewise.
108 * elf32-mep.c: Likewise.
109 * elf32-metag.c: Likewise.
110 * elf32-microblaze.c: Likewise.
111 * elf32-moxie.c: Likewise.
112 * elf32-msp430.c: Likewise.
113 * elf32-mt.c: Likewise.
114 * elf32-nds32.c: Likewise.
115 * elf32-nios2.c: Likewise.
116 * elf32-or1k.c: Likewise.
117 * elf32-ppc.c: Likewise.
118 * elf32-s390.c: Likewise.
119 * elf32-score.c: Likewise.
120 * elf32-score7.c: Likewise.
121 * elf32-sh.c: Likewise.
122 * elf32-sh64.c: Likewise.
123 * elf32-spu.c: Likewise.
124 * elf32-tic6x.c: Likewise.
125 * elf32-tilepro.c: Likewise.
126 * elf32-v850.c: Likewise.
127 * elf32-vax.c: Likewise.
128 * elf32-visium.c: Likewise.
129 * elf32-xstormy16.c: Likewise.
130 * elf32-xtensa.c: Likewise.
131 * elf64-alpha.c: Likewise.
132 * elf64-hppa.c: Likewise.
133 * elf64-ia64-vms.c: Likewise.
134 * elf64-mmix.c: Likewise.
135 * elf64-ppc.c: Likewise.
136 * elf64-s390.c: Likewise.
137 * elf64-sh64.c: Likewise.
138 * elf64-x86-64.c: Likewise.
139 * elflink.c: Likewise.
140 * elfnn-aarch64.c: Likewise.
141 * elfnn-ia64.c: Likewise.
142 * elfxx-mips.c: Likewise.
143 * elfxx-sparc.c: Likewise.
144 * elfxx-tilegx.c: Likewise.
145 * linker.c: Likewise.
146 * pdp11.c: Likewise.
147 * pe-mips.c: Likewise.
148 * reloc.c: Likewise.
149 * reloc16.c: Likewise.
150 * simple.c: Likewise.
151 * vms-alpha.c: Likewise.
152 * xcofflink.c: Likewise.
153 * elf32-rl78.c (get_symbol_value, get_romstart, get_ramstart): Delete
154 status param. Adjust calls to these and linker callbacks throughout.
155 * elf32-rx.c: (get_symbol_value, get_gp, get_romstart,
156 get_ramstart): Delete status param. Adjust calls to these and
157 linker callbacks throughout.
158
bc27bb05
MR
1592016-05-27 Maciej W. Rozycki <macro@imgtec.com>
160
161 * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS16_26>
162 <R_MIPS_26, R_MICROMIPS_26_S1>: Include the addend in JALX's
163 target alignment verification.
164
ceab86af
MR
1652016-05-27 Maciej W. Rozycki <macro@imgtec.com>
166
167 * elfxx-mips.c (mips_elf_calculate_relocation): Also use the
168 section name if `bfd_elf_string_from_elf_section' returns an
169 empty string.
170
ed53407e
MR
1712016-05-26 Maciej W. Rozycki <macro@imgtec.com>
172
173 * elfxx-mips.c (_bfd_mips_elf_relocate_section)
174 <bfd_reloc_outofrange>: Use the `%X%H' rather than `%C' format
175 for message. Continue processing rather than returning failure.
176
de341542 1772016-05-25 Maciej W. Rozycki <macro@imgtec.com>
ed53407e 178
de341542
MR
179 * elfxx-mips.c (_bfd_mips_elf_relocate_section)
180 <bfd_reloc_outofrange>: Call `->einfo' rather than `->warning'.
181 Call `bfd_set_error'.
182
e6cc316a
L
1832016-05-25 H.J. Lu <hongjiu.lu@intel.com>
184
185 PR binutils/14625
186 * archive.c (bfd_slurp_armap): Replace
187 bfd_elf64_archive_slurp_armap with
188 _bfd_archive_64_bit_slurp_armap.
189 (bsd_write_armap): Call _bfd_archive_64_bit_write_armap if
190 BFD64 is defined and the archive is too big.
191 (coff_write_armap): Likewise.
192 * archive64.c (bfd_elf64_archive_slurp_armap): Renamed to ...
193 (_bfd_archive_64_bit_slurp_armap): This.
194 (bfd_elf64_archive_write_armap): Renamed to ...
195 (_bfd_archive_64_bit_write_armap): This.
196 * configure.ac: Add --enable-64-bit-archive.
197 (want_64_bit_archive): New. Set to true by default for 64-bit
198 MIPS and s390 ELF targets.
199 (USE_64_BIT_ARCHIVE): New AC_DEFINE.
200 * config.in: Regenerated.
201 * configure: Likewise.
202 * elf64-mips.c (bfd_elf64_archive_functions): Removed.
203 (bfd_elf64_archive_slurp_armap): Likewise.
204 (bfd_elf64_archive_write_armap): Likewise.
205 (bfd_elf64_archive_slurp_extended_name_table): Likewise.
206 (bfd_elf64_archive_construct_extended_name_table): Likewise.
207 (bfd_elf64_archive_truncate_arname): Likewise.
208 (bfd_elf64_archive_read_ar_hdr): Likewise.
209 (bfd_elf64_archive_write_ar_hdr): Likewise.
210 (bfd_elf64_archive_openr_next_archived_file): Likewise.
211 (bfd_elf64_archive_get_elt_at_index): Likewise.
212 (bfd_elf64_archive_generic_stat_arch_elt): Likewise.
213 (bfd_elf64_archive_update_armap_timestamp): Likewise.
214 * elf64-s390.c (bfd_elf64_archive_functions): Removed.
215 (bfd_elf64_archive_slurp_armap): Likewise.
216 (bfd_elf64_archive_write_armap): Likewise.
217 (bfd_elf64_archive_slurp_extended_name_table): Likewise.
218 (bfd_elf64_archive_construct_extended_name_table): Likewise.
219 (bfd_elf64_archive_truncate_arname): Likewise.
220 (bfd_elf64_archive_read_ar_hdr): Likewise.
221 (bfd_elf64_archive_write_ar_hdr): Likewise.
222 (bfd_elf64_archive_openr_next_archived_file): Likewise.
223 (bfd_elf64_archive_get_elt_at_index): Likewise.
224 (bfd_elf64_archive_generic_stat_arch_elt): Likewise.
225 (bfd_elf64_archive_update_armap_timestamp): Likewise.
226 * elfxx-target.h (TARGET_BIG_SYM): Use _bfd_archive_64_bit on
227 BFD_JUMP_TABLE_ARCHIVE if USE_64_BIT_ARCHIVE is defined and
228 bfd_elfNN_archive_functions isn't defined.
229 (TARGET_LITTLE_SYM): Likewise.
230 * libbfd-in.h (_bfd_archive_64_bit_slurp_armap): New prototype.
231 (_bfd_archive_64_bit_write_armap): Likewise.
232 (_bfd_archive_64_bit_slurp_extended_name_table): New macro.
233 (_bfd_archive_64_bit_construct_extended_name_table): Likewise.
234 (_bfd_archive_64_bit_truncate_arname): Likewise.
235 (_bfd_archive_64_bit_read_ar_hdr): Likewise.
236 (_bfd_archive_64_bit_write_ar_hdr): Likewise.
237 (_bfd_archive_64_bit_openr_next_archived_file): Likewise.
238 (_bfd_archive_64_bit_get_elt_at_index): Likewise.
239 (_bfd_archive_64_bit_generic_stat_arch_elt): Likewise.
240 (_bfd_archive_64_bit_update_armap_timestamp): Likewise.
241 * libbfd.h: Regenerated.
242 * plugin.c (plugin_vec): Use _bfd_archive_64_bit on
243 BFD_JUMP_TABLE_ARCHIVE if USE_64_BIT_ARCHIVE is defined.
244
b95a0a31
L
2452016-05-25 H.J. Lu <hongjiu.lu@intel.com>
246
247 PR ld/20103
248 * cofflink.c (coff_link_check_archive_element): Return TRUE if
249 linker add_archive_element callback returns FALSE.
250 * ecoff.c (ecoff_link_check_archive_element): Likewise.
251 * elf64-ia64-vms.c (elf64_vms_link_add_archive_symbols): Skip
252 archive element if linker add_archive_element callback returns
253 FALSE.
254 * elflink.c (elf_link_add_archive_symbols): Likewise.
255 * pdp11.c (aout_link_check_ar_symbols): Likewise.
256 * vms-alpha.c (alpha_vms_link_add_archive_symbols): Likewise.
257 * xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Likewise.
258 (xcoff_link_check_ar_symbols): Likewise.
259
7db9a74e
MR
2602016-05-24 Maciej W. Rozycki <macro@imgtec.com>
261
262 * elfxx-mips.c (_bfd_mips_elf_relocate_section)
263 <bfd_reloc_outofrange>: Unify error reporting code.
264
b7f28d87
JW
2652016-05-23 Jim Wilson <jim.wilson@linaro.org>
266
267 * elfnn-aarch64.c: Unconditionally enable R_AARCH64_NULL and
268 R_AARCH64_NONE. Use HOWTO64 for R_AARCH64_NULL.
269 * relocs.c: Add BFD_RELOC_AARCH64_NULL.
270 * bfd-in2.h: Regenerate.
271 * libbfd.h: Likewise.
272
a2bea324
KS
2732016-05-23 Kuba Sejdak <jakub.sejdak@phoesys.com>
274
275 * config.bfd: Add entry for arm-phoenix.
276
d7c5bd02
TP
2772016-05-23 Thomas Preud'homme <thomas.preudhomme@arm.com>
278
279 * elf32-arm.c (arm_dedicated_stub_section_padding): New function.
280 (elf32_arm_size_stubs): Declare stub_type in a more outer scope and
281 account for padding for stub section requiring one.
282 (elf32_arm_build_stubs): Add comment to stress the importance of
283 zeroing veneer section content.
284
daa4adae
TP
2852016-05-23 Thomas Preud'homme <thomas.preudhomme@arm.com>
286
287 * bfd-in.h (bfd_elf32_arm_keep_private_stub_output_sections): Declare
288 bfd hook.
289 * bfd-in2.h: Regenerate.
290 * elf32-arm.c (arm_dedicated_stub_output_section_required): New
291 function.
292 (arm_dedicated_stub_output_section_required_alignment): Likewise.
293 (arm_dedicated_stub_output_section_name): Likewise.
294 (arm_dedicated_stub_input_section_ptr): Likewise.
295 (elf32_arm_create_or_find_stub_sec): Add stub type parameter and
296 function description comment. Add support for dedicated output stub
297 section to given stub types.
298 (elf32_arm_add_stub): Add a stub type parameter and pass it down to
299 elf32_arm_create_or_find_stub_sec.
300 (elf32_arm_create_stub): Pass stub type down to elf32_arm_add_stub.
301 (elf32_arm_size_stubs): Pass stub type when calling
302 elf32_arm_create_or_find_stub_sec for Cortex-A8 erratum veneers.
303 (bfd_elf32_arm_keep_private_stub_output_sections): New function.
304
52bf37dd
L
3052016-05-20 H.J. Lu <hongjiu.lu@intel.com>
306
307 * elf32-i386.c (elf_i386_check_relocs): Don't check R_386_GOT32
308 when setting need_convert_load.
309
17c6c9d9
MR
3102016-05-20 Maciej W. Rozycki <macro@imgtec.com>
311
312 * elfxx-mips.c (mips_elf_read_rel_addend): Adjust the addend for
313 microMIPS JALX.
314
7d4d9709
L
3152016-05-19 H.J. Lu <hongjiu.lu@intel.com>
316
317 PR ld/20117
318 * elf32-i386.c (elf_i386_convert_load_reloc): Don't check
319 R_386_GOT32X.
320 (elf_i386_convert_load): Don't convert R_386_GOT32.
321
606851fb
AM
3222016-05-20 Alan Modra <amodra@gmail.com>
323
324 PR gas/20118
325 * elf.c (elf_fake_sections): Set sh_entsize for SHT_INIT_ARRAY,
326 SHT_FINI_ARRAY, and SHT_PREINIT_ARRAY.
327
3c8adaca
CZ
3282016-05-19 Cupertino Miranda <cmiranda@synopsys.com>
329
330 * elf32-arc.c (arc_elf_final_write_processing): Changed.
331 (debug_arc_reloc): Likewise.
332 (elf_arc_relocate_section): Likewise.
333 (elf_arc_check_relocs): Likewise.
334 (elf_arc_adjust_dynamic_symbol): Likewise.
335 (elf_arc_add_symbol_hook): Likewise.
336
6b200de0
MR
3372016-05-19 Maciej W. Rozycki <macro@imgtec.com>
338
339 * config.bfd: Remove `am34-*-linux*' support.
340
57e7d118
AM
3412016-05-19 Alan Modra <amodra@gmail.com>
342
343 * elf64-ppc.c (allocate_dynrelocs): Allocate got and other dynamic
344 relocs before plt relocs.
345
9f284bf9
AM
3462016-05-19 Alan Modra <amodra@gmail.com>
347
348 * elf64-ppc.c (ppc64_elf_branch_reloc): Check for NULL owner
349 before dereferencing.
350
50498060
NC
3512016-05-18 Nick Clifton <nickc@redhat.com>
352
353 * po/sv.po: Updated Swedish translation.
354
7f991970
AM
3552016-05-18 Alan Modra <amodra@gmail.com>
356
357 * elf32-arm.c (elf32_arm_size_stubs): Free or cache local syms
358 for each BFD. Don't goto error_ret_free_local from outside loop.
359
a43942db
MR
3602016-05-17 Maciej W. Rozycki <macro@imgtec.com>
361
362 * elf-s390-common.c (elf_s390_add_symbol_hook): Remove
363 STB_GNU_UNIQUE handling.
364 * elf32-arc.c (elf_arc_add_symbol_hook): Likewise.
365 * elf32-arm.c (elf32_arm_add_symbol_hook): Likewise.
366 * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
367 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
368 * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
369 * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
370 * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
371 * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise.
372 * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
373 * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Likewise.
374 * elf32-i386.c (elf_i386_add_symbol_hook): Remove function.
375 (elf_backend_add_symbol_hook): Remove macro.
376 * elflink.c (elf_link_add_object_symbols): Set `has_gnu_symbols'
377 for STB_GNU_UNIQUE symbols.
378
71de3413
MR
3792016-05-16 Maciej W. Rozycki <macro@imgtec.com>
380
381 * elf32-v850.c (v850_elf_copy_notes): New function, factored out
382 from...
383 (v850_elf_copy_private_bfd_data): ... here. Call the new
384 function and `_bfd_elf_copy_private_bfd_data'.
385
2168b268
L
3862016-05-13 H.J. Lu <hongjiu.lu@intel.com>
387
388 PR ld/20093
389 * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Don't convert
390 GOTPCREL relocation against large section.
391
4ade44b7
AM
3922016-05-13 Alan Modra <amodra@gmail.com>
393
394 * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_sections): Use
395 linker dynamic sections in calculating size and address of
2168b268 396 dynamic tags rather than using output sections. Remove asserts.
4ade44b7
AM
397 * elf32-arm.c (elf32_arm_finish_dynamic_sections): Likewise.
398 * elf32-cr16.c (_bfd_cr16_elf_finish_dynamic_sections): Likewise.
399 * elf32-cris.c (elf_cris_finish_dynamic_sections): Likewise.
400 * elf32-i370.c (i370_elf_finish_dynamic_sections): Likewise.
401 * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Likewise.
402 * elf32-m32r.c (m32r_elf_finish_dynamic_sections): Likewise.
403 * elf32-m68k.c (elf_m68k_finish_dynamic_sections): Likewise.
404 * elf32-metag.c (elf_metag_finish_dynamic_sections): Likewise.
405 * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Likewise.
406 * elf32-nds32.c (nds32_elf_finish_dynamic_sections): Likewise.
407 * elf32-nios2.c (nios2_elf32_finish_dynamic_sections): Likewise.
408 * elf32-or1k.c (or1k_elf_finish_dynamic_sections): Likewise.
409 * elf32-s390.c (elf_s390_finish_dynamic_sections): Likewise.
410 * elf32-score.c (s3_bfd_score_elf_finish_dynamic_sections): Likewise.
411 * elf32-score7.c (s7_bfd_score_elf_finish_dynamic_sections): Likewise.
412 * elf32-vax.c (elf_vax_finish_dynamic_sections): Likewise.
413 * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Likewise.
414 * elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Likewise.
415 * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise.
416 * elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Likewise.
417 * elflink.c (bfd_elf_final_link): Likewise.
418 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Likewise.
419 * elfxx-sparc.c (sparc_finish_dyn): Likewise. Adjust error message.
420 * elf32-arc.c (GET_SYMBOL_OR_SECTION): Remove ASSERT arg and
421 don't set doit. Look up dynobj section.
422 (elf_arc_finish_dynamic_sections): Adjust GET_SYMBOL_OR_SECTION
423 invocation and dynamic tag vma calculation. Don't test
424 boolean var == TRUE.
425 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections): Fix
426 DT_JMPREL calc.
427
c8e44c6d
AM
4282016-05-13 Alan Modra <amodra@gmail.com>
429
430 * elflink.c (elf_link_sort_relocs): Wrap overlong lines. Fix
431 octets_per_byte. Put dynamic .rela.plt last in link orders.
432 Assign output_offset for reloc sections rather than writing
433 sorted relocs from block corresponding to output_offset.
434
1997c994
AM
4352016-05-12 Alan Modra <amodra@gmail.com>
436
437 * elf-bfd.h (elf_reloc_type_class): Put reloc_class_plt last.
438
8f4f9071
MF
4392016-05-11 Andrew Bennett <andrew.bennett@imgtec.com>
440
441 * elfxx-mips.c (print_mips_ases): Add DSPR3.
442
a464198b
AM
4432016-05-11 Alan Modra <amodra@gmail.com>
444
445 * elf32-hppa.c (elf32_hppa_init_stub_bfd): New function.
446 (elf32_hppa_check_relocs): Don't set dynobj.
447 (elf32_hppa_size_stubs): Test !SEC_LINKER_CREATED for stub sections.
448 (elf32_hppa_build_stubs): Likewise.
449 * elf32-hppa.h (elf32_hppa_init_stub_bfd): Declare.
450
3bd43ebc
AM
4512016-05-11 Alan Modra <amodra@gmail.com>
452
453 PR 20060
454 * elf64-ppc.c (ppc64_elf_tls_setup): Clear forced_local.
455 * elf32-ppc.c (ppc_elf_tls_setup): Likewise.
456
4e7fbb34
JW
4572016-05-10 Jiong Wang <jiong.wang@arm.com>
458
459 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Remove redundant
460 aarch64_tls_transition check.
461
4f4faa4d
TP
4622016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
463
464 * elf32-arm.c (enum elf32_arm_stub_type): New max_stub_type
465 enumerator.
466 (arm_stub_sym_claimed): New function.
467 (elf32_arm_create_stub): Use veneered symbol name and section if
468 veneer needs to claim its symbol, and keep logic unchanged otherwise.
469 (arm_stub_claim_sym): New function.
470 (arm_map_one_stub): Call arm_stub_claim_sym if veneer needs to claim
471 veneered symbol, otherwise create local symbol as before.
472
39d911fc
TP
4732016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
474
475 * elf32-arm.c (elf32_arm_size_stubs): Use new macros
476 ARM_GET_SYM_BRANCH_TYPE and ARM_SET_SYM_BRANCH_TYPE to respectively get
477 and set branch type of a symbol.
478 (bfd_elf32_arm_process_before_allocation): Likewise.
479 (elf32_arm_relocate_section): Likewise and fix identation along the
480 way.
481 (allocate_dynrelocs_for_symbol): Likewise.
482 (elf32_arm_finish_dynamic_symbol): Likewise.
483 (elf32_arm_swap_symbol_in): Likewise.
484 (elf32_arm_swap_symbol_out): Likewise.
485
6bde4c52
TP
4862016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
487
488 * bfd-in.h (elf32_arm_size_stubs): Add an output section parameter.
489 * bfd-in2.h: Regenerated.
490 * elf32-arm.c (struct elf32_arm_link_hash_table): Add an output section
491 parameter to add_stub_section callback.
492 (elf32_arm_create_or_find_stub_sec): Get output section from link_sec
493 and pass it down to add_stub_section.
494 (elf32_arm_add_stub): Set section to stub_sec if NULL before using it
495 for error message.
496 (elf32_arm_size_stubs): Add output section parameter to
497 add_stub_section function pointer parameter.
498
b715f643
TP
4992016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
500
501 * elf32-arm.c (elf32_arm_create_stub): New function.
502 (elf32_arm_size_stubs): Use elf32_arm_create_stub for stub creation.
503
8d9d9490
TP
5042016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
505
506 * elf32-arm.c (enum elf32_arm_stub_type): Delete
507 arm_stub_a8_veneer_lwm enumerator.
508 (arm_stub_a8_veneer_lwm): New unsigned constant to replace
509 aforementioned enumerator.
510 (struct elf32_arm_stub_hash_entry): Delete target_addend
511 field and add source_value.
512 (struct a8_erratum_fix): Delete addend field and add target_offset.
513 (stub_hash_newfunc): Initialize source_value field amd remove
514 initialization for target_addend.
515 (arm_build_one_stub): Stop special casing Thumb relocations: promote
516 the else to being always executed, moving the
517 arm_stub_a8_veneer_b_cond specific code in it. Remove
518 stub_entry->target_addend from points_to computation.
519 (cortex_a8_erratum_scan): Store in a8_erratum_fix structure the offset
520 to target symbol from start of section rather than the offset from the
521 stub address.
522 (elf32_arm_size_stubs): Set stub_entry's source_value and target_value
523 fields from struct a8_erratum_fix's offset and target_offset
524 respectively.
525 (make_branch_to_a8_stub): Rename target variable to loc. Compute
526 veneered_insn_loc and loc using stub_entry's source_value.
527
15afaa63
TP
5282016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
529
530 (elf32_arm_merge_eabi_attributes): Add merging logic for
531 Tag_DSP_extension.
532
66a36822
PC
5332016-05-10 Pip Cet <pipcet@gmail.com>
534
535 PR ld/20059
536 * elfxx-target.h (bfd_elfNN_bfd_copy_link_hash_symbol_type):
537 Define as _bfd_generic_copy_link_hash_symbol_type when using
538 generic hash table.
539
315350be
NC
5402016-05-09 Nick Clifton <nickc@redhat.com>
541
542 PR binutils/20063
543 * elf.c (bfd_elf_get_elf_syms): Check for out of range sh_link
544 field before accessing sections array.
545
9239bbd3
CM
5462016-05-09 Christophe Monat <christophe.monat@st.com>
547
548 PR ld/20030
549 * elf32-arm.c (is_thumb2_vldm): Account for T1 (DP) encoding.
550 (stm32l4xx_need_create_replacing_stub): Rename ambiguous nb_regs
551 to nb_words.
552 (create_instruction_vldmia): Add is_dp to disambiguate SP/DP
553 encoding.
554 (create_instruction_vldmdb): Likewise.
555 (stm32l4xx_create_replacing_stub_vldm): is_dp detects DP encoding,
556 uses it to re-encode.
557
73597c18
NC
5582016-05-09 Nick Clifton <nickc@redhat.com>
559
560 PR 19938
561 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Revert accidental
562 commit.
563
ae1bb197
AM
5642016-05-09 Alan Modra <amodra@gmail.com>
565
566 * elf64-ppc.c (ppc64_elf_init_stub_bfd): Remove redundant NULL check.
567
97196564
L
5682016-05-06 H.J. Lu <hongjiu.lu@intel.com>
569
570 PR ld/17550
571 * elf-bfd.h (elf_link_hash_entry): Update comments for indx,
572 documenting that indx == -3 if symbol is defined in a discarded
573 section.
574 * elflink.c (elf_link_add_object_symbols): Set indx to -3 if
575 symbol is defined in a discarded section.
576 (elf_link_output_extsym): Strip a global symbol defined in a
577 discarded section.
578
030e823c
L
5792016-05-06 H.J. Lu <hongjiu.lu@intel.com>
580
581 * elf32-i386.c (elf_backend_add_symbol_hook): Defined for Intel
582 MCU.
583
c175a657
L
5842016-05-05 H.J. Lu <hongjiu.lu@intel.com>
585
586 * elf32-i386.c (elf_i386_convert_load): Extract the GOT load
587 conversion to ...
588 (elf_i386_convert_load_reloc): This. New function.
589 * elf64-x86-64.c (elf_x86_64_convert_load): Extract the GOT load
590 conversion to ...
591 (elf_x86_64_convert_load_reloc): This. New function.
592
bedfd056
L
5932016-05-05 H.J. Lu <hongjiu.lu@intel.com>
594
595 * elf32-i386.c (elf_i386_check_tls_transition): Remove abfd.
596 Don't check if contents == NULL.
597 (elf_i386_tls_transition): Add from_relocate_section. Check
598 from_relocate_section instead of contents != NULL. Update
599 elf_i386_check_tls_transition call.
600 (elf_i386_check_relocs): Cache the section contents if
601 keep_memory is FALSE. Pass FALSE as from_relocate_section to
602 elf_i386_tls_transition.
603 (elf_i386_relocate_section): Pass TRUE as from_relocate_section
604 to elf_i386_tls_transition.
605 (elf_backend_caches_rawsize): New.
606 * elf64-x86-64.c (elf_x86_64_check_tls_transition): Don't check
607 if contents == NULL.
608 (elf_x86_64_tls_transition): Add from_relocate_section. Check
609 from_relocate_section instead of contents != NULL.
610 (elf_x86_64_check_relocs): Cache the section contents if
611 keep_memory is FALSE. Pass FALSE as from_relocate_section to
612 elf_x86_64_tls_transition.
613 (elf_x86_64_relocate_section): Pass TRUE as from_relocate_section
614 to elf_x86_64_tls_transition.
615 (elf_backend_caches_rawsize): New.
616
6d6a648c
MR
6172016-05-03 Maciej W. Rozycki <macro@imgtec.com>
618
619 PR 10549
620 * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Handle
621 STB_GNU_UNIQUE.
622
1f56df9d
JW
6232016-05-03 Jiong Wang <jiong.wang@arm.com>
624
625 * bfd-in.h (bfd_elf64_aarch64_set_options): Update prototype.
626 * bfd-in2.h (bfd_elf64_aarch64_set_options): Likewise.
627 * elfnn-aarch64.c (bfd_elfNN_aarch64_set_options): Initialize
628 no_apply_dynamic_relocs.
629 (elfNN_aarch64_final_link_relocate): Apply absolute relocations even though
630 dynamic relocations generated.
631
493f652c
L
6322016-04-29 H.J. Lu <hongjiu.lu@intel.com>
633
634 * elf32-i386.c (elf_i386_size_dynamic_sections): Move interp
635 setting to ...
636 (elf_i386_create_dynamic_sections): Here.
637 * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Move
638 interp setting to ...
639 (elf_x86_64_create_dynamic_sections): Here.
640
e62b9723
L
6412016-04-29 H.J. Lu <hongjiu.lu@intel.com>
642
643 * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take GOT_RELOC
644 and replace (EH)->has_got_reloc with GOT_RELOC.
645 (elf_i386_fixup_symbol): Pass has_got_reloc to
646 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
647 (elf_i386_allocate_dynrelocs): Likewise.
648 (elf_i386_relocate_section): Likewise.
649 (elf_i386_finish_dynamic_symbol): Likewise.
650 (elf_i386_convert_load): Pass TRUE to
651 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
652 * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take
653 GOT_RELOC and replace (EH)->has_got_reloc with GOT_RELOC.
654 (elf_x86_64_fixup_symbol): Pass has_got_reloc to
655 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
656 (elf_x86_64_allocate_dynrelocs): Likewise.
657 (elf_x86_64_relocate_section): Likewise.
658 (elf_x86_64_finish_dynamic_symbol): Likewise.
659 (elf_x86_64_convert_load): Pass TRUE to
660 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
661
c337a162
L
6622016-04-29 H.J. Lu <hongjiu.lu@intel.com>
663
664 * elf32-i386.c (check_relocs_failed): New.
665 (elf_i386_check_relocs): Set check_relocs_failed on error.
666 (elf_i386_relocate_section): Skip if check_relocs failed.
667
afd9acee
L
6682016-04-29 H.J. Lu <hongjiu.lu@intel.com>
669
670 * elf64-x86-64.c (elf_x86_64_check_relocs): Set
671 check_relocs_failed on error.
672
5522f910
NC
6732016-04-29 Nick Clifton <nickc@redhat.com>
674
675 PR 19938
676 * elf-bfd.h (struct elf_backend_data): Rename
677 elf_backend_set_special_section_info_and_link to
678 elf_backend_copy_special_section_fields.
679 * elfxx-target.h: Likewise.
680 * elf.c (section_match): Ignore the SHF_INFO_LINK flag when
681 comparing section flags.
682 (copy_special_section_fields): New function.
683 (_bfd_elf_copy_private_bfd_data): Copy the EI_ABIVERSION field.
684 Perform two scans over special sections. The first one looks for
685 a direct mapping between the output section and an input section.
686 The second scan looks for a possible match based upon section
687 characteristics.
688 * elf32-arm.c (elf32_arm_copy_special_section_fields): New
689 function. Handle setting the sh_link field of SHT_ARM_EXIDX
690 sections.
691 * elf32-i386.c (elf32_i386_set_special_info_link): Rename to
692 elf32_i386_copy_solaris_special_section_fields.
693 * elf32-sparc.c (elf32_sparc_set_special_section_info_link):
694 Rename to elf32_sparc_copy_solaris_special_section_fields.
695 * elf64-x86-64.c (elf64_x86_64_set_special_info_link): Rename to
696 elf64_x86_64_copy_solaris_special_section_fields.
697
786a118c
NC
6982016-04-28 Nick Clifton <nickc@redhat.com>
699
700 * po/zh_CN.po: Updated Chinese (simplified) translation.
701
91f8bf69
L
7022016-04-27 H.J. Lu <hongjiu.lu@intel.com>
703
704 PR ld/20006
705 * elf64-x86-64.c (elf_x86_64_convert_load): Skip debug sections
706 when estimating distances between output sections.
707
a6a4679f
AM
7082016-04-27 Alan Modra <amodra@gmail.com>
709
710 * elflink.c (_bfd_elf_is_start_stop): New function.
711 (_bfd_elf_gc_mark_rsec): Use it.
712 * elf-bfd.h (_bfd_elf_is_start_stop): Declare.
713
28cc9170
TS
7142016-04-26 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
715
716 * elf32-rx.c (rx_set_section_contents): Avoid arithmetic on void *.
717 * mmo.c (mmo_get_section_contents): Likewise.
718 (mmo_set_section_contents): Likewise.
719
d5486c43
L
7202016-04-26 H.J. Lu <hongjiu.lu@intel.com>
721
722 * elf-bfd.h (elf_link_hash_table): Update comments for
723 dynsymcount.
724 * elflink.c (_bfd_elf_link_renumber_dynsyms): Always count for
725 the unused NULL entry at the head of dynamic symbol table.
726 (bfd_elf_size_dynsym_hash_dynstr): Remove dynsymcount != 0
727 checks.
728
6645479e
L
7292016-04-21 H.J. Lu <hongjiu.lu@intel.com>
730
731 * elflink.c (_bfd_elf_link_create_dynstrtab): Exclude linker
732 created file from dynobj.
733
6cd255ca
L
7342016-04-21 H.J. Lu <hongjiu.lu@intel.com>
735
736 * elflink.c (_bfd_elf_link_create_dynstrtab): Set dynobj to a
737 normal input file if possible.
738
4f3b23b3
NC
7392016-04-21 Nick Clifton <nickc@redhat.com>
740
741 * aout-adobe.c: Use _bfd_generic_link_check_relocs.
742 * aout-target.h: Likewise.
743 * aout-tic30.c: Likewise.
744 * binary.c: Likewise.
745 * bout.c: Likewise.
746 * coff-alpha.c: Likewise.
747 * coff-rs6000.c: Likewise.
748 * coff64-rs6000.c: Likewise.
749 * coffcode.h: Likewise.
750 * i386msdos.c: Likewise.
751 * i386os9k.c: Likewise.
752 * ieee.c: Likewise.
753 * ihex.c: Likewise.
754 * libbfd-in.h: Likewise.
755 * libecoff.h: Likewise.
756 * mach-o-target.c: Likewise.
757 * mmo.c: Likewise.
758 * nlm-target.h: Likewise.
759 * oasys.c: Likewise.
760 * pef.c: Likewise.
761 * plugin.c: Likewise.
762 * ppcboot.c: Likewise.
763 * som.c: Likewise.
764 * srec.c: Likewise.
765 * tekhex.c: Likewise.
766 * versados.c: Likewise.
767 * vms-alpha.c: Likewise.
768 * xsym.c: Likewise.
769 * elfxx-target.h: Use _bfd_elf_link_check_relocs.
770 * linker.c (bfd_link_check_relocs): New function.
771 (_bfd_generic_link_check_relocs): New function.
772 * targets.c (BFD_JUMP_TABLE_LINK): Add initialization of
773 _bfd_link_check_relocs field.
774 (struct bfd_target)L Add _bfd_link_check_relocs field.
775 * bfd-in2.h: Regenerate.
776 * libbfd.h: Regenerate.
777
e66cdd68
L
7782016-04-20 H.J. Lu <hongjiu.lu@intel.com>
779
780 * elf32-i386.c (elf_i386_gc_sweep_hook): Removed.
781 (elf_backend_gc_sweep_hook): Likewise.
782 * elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.
783 (elf_backend_gc_sweep_hook): Likewise.
784
5ce03cea
L
7852016-04-20 H.J. Lu <hongjiu.lu@intel.com>
786
787 * elflink.c (_bfd_elf_link_check_relocs): Don't check relocations
788 in excluded sections
789
338c190a
L
7902016-04-20 H.J. Lu <hongjiu.lu@intel.com>
791
792 PR ld/19969
793 * elf64-x86-64.c (check_relocs_failed): New.
794 (elf_x86_64_need_pic): Moved before elf_x86_64_check_relocs.
795 Support relocation agaist local symbol. Set check_relocs_failed.
796 (elf_x86_64_check_relocs): Use elf_x86_64_need_pic. Check
797 R_X86_64_32 relocation overflow.
798 (elf_x86_64_relocate_section): Skip if check_relocs failed.
799 Update one elf_x86_64_need_pic and remove one elf_x86_64_need_pic.
800
466ee2af
L
8012016-04-20 H.J. Lu <hongjiu.lu@intel.com>
802
803 * elf32-i386.c (elf_i386_check_relocs): Call
804 _bfd_elf_create_ifunc_sections only for STT_GNU_IFUNC symbol.
805 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
806
d9689752
L
8072016-04-20 H.J. Lu <hongjiu.lu@intel.com>
808
809 * elf-bfd.h (_bfd_elf_link_check_relocs): New.
810 * elflink.c (_bfd_elf_link_check_relocs): New function.
811 (elf_link_add_object_symbols): Call _bfd_elf_link_check_relocs
812 if check_relocs_after_open_input is FALSE.
813
e6c7cdec
TS
8142016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
815
816 * cache.c: Update old style function definitions.
817 * elf32-m68k.c: Likewise.
818 * elf64-mmix.c: Likewise.
819 * stab-syms.c: Likewise.
820
b98e6871
TS
8212016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
822
823 * elf32-arm.c (put_thumb2_insn): Change argument type to bfd_byte *.
824
6fd8e7c2
L
8252016-04-15 H.J. Lu <hongjiu.lu@intel.com>
826
827 * Makefile.in: Regenerated with automake 1.11.6.
828 * aclocal.m4: Likewise.
829 * doc/Makefile.in: Likewise.
830
4b0c052e
AB
8312016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
832
833 * reloc.c: Add BFD_RELOC_ARC_NPS_CMEM16 entry.
834 * bfd-in2.h: Regenerate.
835 * libbfd.h: Regenerate.
836 * elf32-arc.c: Add 'opcode/arc.h' include.
837 (struct arc_relocation_data): Add symbol_name.
838 (arc_special_overflow_checks): New function.
839 (arc_do_relocation): Use arc_special_overflow_checks, reindent as
840 required, add an extra comment.
841 (elf_arc_relocate_section): Setup symbol_name in reloc_data.
842
33cbe6c0
AB
8432016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
844
845 * elf32-arc.c (tls_got_entries): Add 'TLS_GOT_' prefix to all
846 entries.
847 (elf_arc_relocate_section): Update enum uses.
848 (elf_arc_check_relocs): Likewise.
849 (elf_arc_finish_dynamic_symbol): Likewise.
850
7634c4e6
L
8512016-04-14 H.J. Lu <hongjiu.lu@intel.com>
852
853 * elf.c (_bfd_elf_copy_private_bfd_data): Replace "link" with
854 "sh_link".
855
84865015
NC
8562016-04-14 Nick Clifton <nickc@redhat.com>
857
858 PR target/19938
859 * elf-bbfd.h (struct elf_backend_data): New field:
860 elf_strtab_flags.
861 New field: elf_backend_set_special_section_info_and_link
862 * elfxx-target.h (elf_backend_strtab_flags): Define if not already
863 defined.
864 (elf_backend_set_special_section_info_and_link): Define if not
865 already defined.
866 (elfNN_bed): Use elf_backend_set_special_section_info_and_link and
867 elf_backend_strtab_flags macros to initialise fields in structure.
868 * elf.c (_bfd_elf_make_section_from_shdr): Check for SHF_STRINGS
869 being set even if SHF_MERGE is not set.
870 (elf_fake_sections): Likewise.
871 (section_match): New function. Matches two ELF sections based
872 upon fixed characteristics.
873 (find_link): New function. Locates a section in a BFD that
874 matches a section in a different BFD.
875 (_bfd_elf_copy_private_bfd_data): Copy the sh_info and sh_link
876 fields of reserved sections.
877 (bfd_elf_compute_section_file_positions): Set the flags for the
878 .shstrtab section based upon the elf_strtab_flags field in the
879 elf_backend_data structure.
880 (swap_out_syms): Likewise for the .strtab section.
881 * elflink.c (bfd_elf_final_link): Set the flags for the
882 .strtab section based upon the elf_strtab_flags field in the
883 elf_backend_data structure.
884 * elf32-i386.c (elf32_i386_set_special_info_link): New function.
885 (elf_backend_strtab_flags): Set to SHF_STRINGS for Solaris
886 targets.
887 (elf_backend_set_special_section_info_and_link): Define for
888 Solaris targets.
889 * elf32-sparc.c: Likewise.
890 * elf64-x86-64.c: Likewise.
891
2df3368d
L
8922016-04-11 H.J. Lu <hongjiu.lu@intel.com>
893
894 PR ld/19939
895 * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer
896 to bfd_boolean.
897 * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated.
898 Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc
899 applies to read-only section.
900 * elf32-i386.c (elf_i386_link_hash_table): Add
901 readonly_dynrelocs_against_ifunc.
902 (elf_i386_allocate_dynrelocs): Updated.
903 (elf_i386_size_dynamic_sections): Issue an error for read-only
904 segment with dynamic IFUNC relocations only if
905 readonly_dynrelocs_against_ifunc is TRUE.
906 * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
907 readonly_dynrelocs_against_ifunc.
908 (elf_x86_64_allocate_dynrelocs): Updated.
909 (elf_x86_64_size_dynamic_sections): Issue an error for read-only
910 segment with dynamic IFUNC relocations only if
911 readonly_dynrelocs_against_ifunc is TRUE.
912 * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs):
913 Updated.
914
15dd01b1
TP
9152016-04-06 Thomas Preud'homme <thomas.preudhomme@arm.com>
916
917 * elf32-arm.c (elf32_arm_size_stubs): Move error_ret_free_local to be
918 a fall through from error_ret_free_internal. Free local_syms in
919 error_ret_free_local if allocated from bfd_elf_get_elf_syms ().
920
1e5885b7
CZ
9212016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
922
923 * elf32-arc.c (plt_do_relocs_for_symbol): Changed.
924 (relocate_plt_for_entry): Likewise.
925
b3aee839
CZ
9262016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
927
928 * elf32-arc.c (elf_arc_check_relocs): Changed
929
094fb063
CZ
9302016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
931
932 * elf32-arc.c (name_for_global_symbol): Changed assert.
933 (get_replace_function): Created.:
934 (struct arc_relocation_data): Changed to signed types.
935 (defines S, L, P, PDATA): Casted to signed type.
936 (defines SECTSTART, _SDA_BASE_, TLS_REL): Likewise.
937 (PRINT_DEBUG_RELOC_INFO_BEFORE): Changed.
938 (arc_do_relocation): Changed.
939
94e5c971
CZ
9402016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
941
942 * elf32-arc.c (name_for_global_symbol): Added assert to check for
943 symbol index.
944 (elf_arc_relocate_section): Added and changed asserts, validating
945 the synamic symbol index.
946 (elf_arc_finish_dynamic_symbol): Do not fill the dynamic
947 relocation if symbol has dynindx set to -1.
948
1f599d0e
MR
9492016-04-05 Maciej W. Rozycki <macro@imgtec.com>
950
951 * elflink.c (elf_link_add_object_symbols): Always turn hidden
952 and internal symbols which have a dynamic index into local
953 ones.
954
67f101ee
NC
9552016-04-04 Nick Clifton <nickc@redhat.com>
956
957 PR 19872
958 * dwarf2.c (parse_comp_unit): Skip warning about unrecognised
959 version number if the version is zero.
960
7b15fa7a
AM
9612016-04-01 Alan Modra <amodra@gmail.com>
962
963 PR 19886
964 * elflink.c (on_needed_list): Recursively check needed status.
965 (elf_link_add_object_symbols): Adjust.
966
024ea11b
SKS
9672016-03-30 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
968
969 * elf32-avr.c (avr_elf32_load_records_from_section): Free
970 internal_relocs only if they aren't cached.
971
ed3056eb
NC
9722016-03-29 Nick Clifton <nickc@redhat.com>
973
974 PR 17334
975 * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax
976 assertion on the size of the got section to allow it to be bigger
977 than the number of relocs.
978
e2b4fc91
TS
9792016-03-29 Toni Spets <toni.spets@iki.fi>
980
981 PR 19878
982 * coffcode.h (coff_write_object_contents): Revert accidental
983 2014-11-10 change.
984
a97fbc7e
AM
9852016-03-22 Alan Modra <amodra@gmail.com>
986
987 PR 19850
988 * dwarf2.c (read_attribute_value): Skip info_ptr check for
989 DW_FORM_flag_present.
990
9780e045
NC
9912016-03-22 Nick Clifton <nickc@redhat.com>
992
96254e5c
NC
993 * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an
994 architecture name for backwards compatibility.
995
7769fa97
NC
996 * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible
997 unbounded stack use.
998
9780e045
NC
999 * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a
1000 sufficiently recent version of GCC.
1001 * configure: Regenerate.
1002
6f4c0a42
AM
10032016-03-22 Alan Modra <amodra@gmail.com>
1004
1005 PR 19851
1006 * plugin.c (try_load_plugin): Avoid -Wstack-usage warning.
1007
8699fc3e
AB
10082016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
1009
1010 * archures.c (bfd_mach_arc_nps400): Define.
1011 * bfd-in2.h: Regenerate.
1012 * cpu-arc.c (arch_info_struct): New entry for nps400, renumber
1013 some existing entries to make space.
1014 * elf32-arc.c (arc_elf_object_p): Add nps400 case.
1015 (arc_elf_final_write_processing): Likewise.
1016
a9522a21
AB
10172016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
1018
1019 * elf32-arc.c (arc_elf_print_private_bfd_data): Remove use of
1020 EF_ARC_CPU_GENERIC.
1021 (arc_elf_final_write_processing): Don't bother setting cpu field
1022 in e_flags, this will have been set elsewhere.
1023
c0334580
AB
10242016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
1025
1026 * elf32-arc.c (arc_elf_final_write_processing): Switch to using
1027 EF_ARC_MACH_MSK.
1028
e1fa0163
NC
10292016-03-21 Nick Clifton <nickc@redhat.com>
1030
1031 * warning.m4 (GCC_WARN_CFLAGS): Add -Wstack-usage=262144
1032 * configure: Regenerate.
1033 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Replace use of
1034 alloca with call to xmalloc.
1035 * elf32-nds32.c: Likewise.
1036 * elf64-hppa.c: Likewise.
1037 * elfxx-mips.c: Likewise.
1038 * pef.c: Likewise.
1039 * pei-x86_64.c: Likewise.
1040 * som.c: Likewise.
1041 * xsym.c: Likewise.
1042
4e0c91e4
L
10432016-03-15 H.J. Lu <hongjiu.lu@intel.com>
1044
1045 PR ld/19827
1046 * elf32-i386.c (elf_i386_check_relocs): Bind defined symbol
1047 locally in PIE.
1048 (elf_i386_relocate_section): Likewise.
1049 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
1050 (elf_x86_64_relocate_section): Likewise.
1051
4c10bbaa
L
10522016-03-15 H.J. Lu <hongjiu.lu@intel.com>
1053
1054 PR ld/19807
1055 * elf64-x86-64.c (elf_x86_64_relocate_section): Check
1056 no_reloc_overflow_check to diable R_X86_64_32/R_X86_64_32S
1057 relocation overflow check.
1058
fbe48798
L
10592016-03-14 H.J. Lu <hongjiu.lu@intel.com>
1060
1061 * bfd-in2.h: Regenerated.
1062
37b01f6a
DG
10632016-03-11 Dan Gissel <dgisselq@ieee.org>
1064
1065 PR 19713
1066 * elf.c (_bfd_elf_section_offset): Ensure that the returned offset
1067 uses bytes not octets.
1068 * elflink.c (resolve_section): Likewise.
1069 Add a bfd parameter.
1070 (eval_section): Pass the input_bfd to resolve_section.
1071 (bfd_elf_perform_complex_relocation): Convert byte offset to
1072 octets before read and writing values.
1073 (elf_link_input_bfd): Add byte to octet conversions.
1074 (elf_reloc_link_order): Likewise.
1075 (elf_fixup_link_order): Likewise.
1076 (bfd_elf_final_link): Likewise.
1077 * reloc.c (_bfd_final_link_relocate): Likewise.
1078 * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
1079
3ed4ff97
NC
10802016-03-10 Nick Clifton <nickc@redhat.com>
1081
1082 * config.bfd: Mark the i370 target as obsolete.
1083
4b05e0a7
PA
10842016-03-09 Pedro Alves <palves@redhat.com>
1085
1086 * cpu-v850.c (N): Append ":old-gcc-abi" instead of " (using old
1087 gcc ABI)" to printable name.
1088 * cpu-v850_rh850.c (bfd_v850_rh850_arch): Use "v850:rh850" instead
1089 of "v850-rh850" as printable name.
1090
26c62da0
LW
10912016-03-09 Leon Winter <winter-gcc@bfw-online.de>
1092
1093 PR ld/19623
1094 * cofflink.c (_bfd_coff_generic_relocate_section): Do not apply
1095 relocations against absolute symbols.
1096
03ee8583
AM
10972016-03-09 Alan Modra <amodra@gmail.com>
1098
1099 PR binutils/19775
1100 * coff-alpha.c (alpha_ecoff_openr_next_archived_file): Allow zero
1101 length elements in the archive.
1102
9c1d7a08
L
11032016-03-08 H.J. Lu <hongjiu.lu@intel.com>
1104
1105 PR ld/19789
1106 * elflink.c (elf_link_add_object_symbols): Create dynamic sections
1107 for -E/--dynamic-list only when not relocatable.
1108
d1ed1c7d
L
11092016-03-08 H.J. Lu <hongjiu.lu@intel.com>
1110
1111 PR ld/19784
1112 * elf32-i386.c (elf_i386_check_relocs): Increment PLT reference
1113 count for locally defined local IFUNC symbols in shared object.
1114 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
1115
202ac193
L
11162016-03-08 H.J. Lu <hongjiu.lu@intel.com>
1117
1118 PR ld/19579
1119 * elflink.c (_bfd_elf_merge_symbol): Group common symbol checking
1120 together.
1121
72f3b6aa
CZ
11222016-03-08 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
1123 Andrew Burgess <andrew.burgess@embecosm.com>
1124
1125 * elf32-arc.c (arc_bfd_get_32): Becomes an alias for bfd_get_32.
1126 (arc_bfd_put_32): Becomes an alias for bfd_put_32.
1127 (arc_elf_howto_init): Added assert to validate relocations.
1128 (get_middle_endian_relocation): Delete.
1129 (middle_endian_convert): New function.
1130 (ME): Redefine, now does nothing.
1131 (IS_ME): New define.
1132 (arc_do_relocation): Extend the attached 'ARC_RELOC_HOWTO'
1133 definition to call middle_endian_convert. Add a new local
1134 variable and make use of this throughout. Added call to
1135 arc_bfd_get_8 and arc_bfd_put_8 for 8 bit relocations.
1136
4fc87424
NC
11372016-03-07 Nick Clifton <nickc@redhat.com>
1138
1139 PR binutils/19775
1140 * archive.c (bfd_generic_openr_next_archived_file): Allow zero
1141 length elements in the archive.
1142
18f822a0
JW
11432016-03-07 Jiong Wang <jiong.wang@arm.com>
1144
1145 * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Always create .got
1146 section if the symbol "_GLOBAL_OFFSET_TABLE_" is referenced.
1147
07492f66
L
11482016-03-04 H.J. Lu <hongjiu.lu@intel.com>
1149
1150 PR ld/19579
1151 * elflink.c (_bfd_elf_merge_symbol): Treat common symbol in
1152 executable as definition if the new definition comes from a
1153 shared library.
1154
70a5df4f
AM
11552016-03-02 Alan Modra <amodra@gmail.com>
1156
1157 * Makefile.in: Regenerate.
1158 * po/SRC-POTFILES.in: Regenerate.
1159
841fdfcd
CZ
11602016-02-29 Cupertino Miranda <cmiranda@synopsys.com>
1161
1162 * elf32-arc.c (elf_arc_relocate_section): Added rules to fix the
1163 relocation addend when sections get merged.
1164
7e458899
CZ
11652016-02-29 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
1166
1167 * elf32-arc.c (arc_elf_final_write_processing): Add condition to
1168 the flag change.
1169 (elf_arc_relocate_section): Fixes and conditions to support PIE.
1170 Assert for code sections dynamic relocs.
1171
c5e3a364
RL
11722016-02-26 Renlin Li <renlin.li@arm.com>
1173
1174 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix signed overflow
1175 check for MOVW_SABS_G0, MOVW_SABS_G1, MOVW_SABS_G2.
1176
bae420ef
L
11772016-02-26 H.J. Lu <hongjiu.lu@intel.com>
1178
1179 PR ld/19609
1180 * elf32-i386.c (elf_i386_convert_load): Convert to R_386_32 for
1181 load with locally bound symbols if PIC is false or there is no
1182 base register. Optimize branch to 0 if PIC is false.
1183 (elf_i386_relocate_section): Don't generate dynamic relocations
1184 against undefined weak symbols if PIC is false.
1185 * elf64-x86-64.c (elf_x86_64_convert_load): Disable optimization
1186 if we can't estimate relocation overflow with --no-relax.
1187 Convert to R_X86_64_32S/R_X86_64_32 for load with locally bound
1188 symbols if PIC is false. Optimize branch to 0 if PIC is false.
1189 (elf_x86_64_relocate_section): Don't generate dynamic relocations
1190 against undefined weak symbols if PIC is false.
1191
11e5f1ec
L
11922016-02-26 H.J. Lu <hongjiu.lu@intel.com>
1193
1194 PR ld/19645
1195 * bfd.c (bfd): Change flags to 20 bits.
1196 (BFD_CONVERT_ELF_COMMON): New.
1197 (BFD_USE_ELF_STT_COMMON): Likewise.
1198 (BFD_FLAGS_SAVED): Add BFD_CONVERT_ELF_COMMON and
1199 BFD_USE_ELF_STT_COMMON.
1200 (BFD_FLAGS_FOR_BFD_USE_MASK): Likewise.
1201 * configure.ac: Remove --enable-elf-stt-common.
1202 * elf.c (swap_out_syms): Choose STT_COMMON or STT_OBJECT for
1203 common symbol depending on BFD_CONVERT_ELF_COMMON and
1204 BFD_USE_ELF_STT_COMMON.
1205 * elfcode.h (elf_slurp_symbol_table): Set BSF_ELF_COMMON for
1206 STT_COMMON.
1207 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Also check
1208 STT_COMMON.
1209 (elf_link_convert_common_type): New function.
1210 (elf_link_output_extsym): Choose STT_COMMON or STT_OBJECT for
1211 common symbol depending on BFD_CONVERT_ELF_COMMON and
1212 BFD_USE_ELF_STT_COMMON. Set sym.st_info after sym.st_shndx.
1213 * elfxx-target.h (TARGET_BIG_SYM): Add BFD_CONVERT_ELF_COMMON
1214 and BFD_USE_ELF_STT_COMMON to object_flags.
1215 (TARGET_LITTLE_SYM): Likewise.
1216 * syms.c (BSF_KEEP_G): Renamed to ...
1217 (BSF_ELF_COMMON): This.
1218 * bfd-in2.h: Regenerated.
1219 * config.in: Likewise.
1220 * configure: Likewise.
1221
aec6b87e
L
12222016-02-26 H.J. Lu <hongjiu.lu@intel.com>
1223
1224 PR ld/19636
1225 PR ld/19704
1226 PR ld/19719
1227 * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
1228 (elf_i386_link_hash_entry): Add has_got_reloc and
1229 has_non_got_reloc.
1230 (elf_i386_link_hash_table): Add interp.
1231 (elf_i386_link_hash_newfunc): Initialize has_got_reloc and
1232 has_non_got_reloc.
1233 (elf_i386_copy_indirect_symbol): Copy has_got_reloc and
1234 has_non_got_reloc.
1235 (elf_i386_check_relocs): Set has_got_reloc and has_non_got_reloc.
1236 (elf_i386_fixup_symbol): New function.
1237 (elf_i386_pie_finish_undefweak_symbol): Likewise.
1238 (elf_i386_allocate_dynrelocs): Don't allocate space for dynamic
1239 relocations and discard relocations against resolved undefined
1240 weak symbols in executable. Don't make resolved undefined weak
1241 symbols in executable dynamic. Keep dynamic non-GOT/non-PLT
1242 relocation against undefined weak symbols in PIE.
1243 (elf_i386_size_dynamic_sections): Set interp to .interp section.
1244 (elf_i386_relocate_section): Don't generate dynamic relocations
1245 against resolved undefined weak symbols in PIE, except for
1246 R_386_PC32.
1247 (elf_i386_finish_dynamic_symbol): Keep PLT/GOT entries without
1248 dynamic PLT/GOT relocations for resolved undefined weak symbols.
1249 Don't generate dynamic relocation against resolved undefined weak
1250 symbol in executable.
1251 (elf_i386_finish_dynamic_sections): Call
1252 elf_i386_pie_finish_undefweak_symbol on all symbols in PIE.
1253 (elf_backend_fixup_symbol): New.
1254 * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
1255 (elf_x86_64_link_hash_entry): Add has_got_reloc and
1256 has_non_got_reloc.
1257 (elf_x86_64_link_hash_table): Add interp.
1258 (elf_x86_64_link_hash_newfunc): Initialize has_got_reloc and
1259 has_non_got_reloc.
1260 (elf_x86_64_copy_indirect_symbol): Copy has_got_reloc and
1261 has_non_got_reloc.
1262 (elf_x86_64_check_relocs): Set has_got_reloc and
1263 has_non_got_reloc.
1264 (elf_x86_64_fixup_symbol): New function.
1265 (elf_x86_64_pie_finish_undefweak_symbol): Likewise.
1266 (elf_x86_64_allocate_dynrelocs): Don't allocate space for dynamic
1267 relocations and discard relocations against resolved undefined
1268 weak symbols in executable. Don't make resolved undefined weak
1269 symbols in executable dynamic.
1270 (elf_x86_64_size_dynamic_sections): Set interp to .interp section.
1271 (elf_x86_64_relocate_section): Check relocation overflow for
1272 dynamic relocations against unresolved weak undefined symbols.
1273 Don't generate dynamic relocations against resolved weak
1274 undefined symbols in PIE.
1275 (elf_x86_64_finish_dynamic_symbol): Keep PLT/GOT entries without
1276 dynamic PLT/GOT relocations for resolved undefined weak symbols.
1277 Don't generate dynamic relocation against resolved undefined weak
1278 symbol in executable.
1279 (elf_x86_64_finish_dynamic_sections): Call
1280 elf_x86_64_pie_finish_undefweak_symbol on all symbols in PIE.
1281 (elf_backend_fixup_symbol): New.
1282
b32547cd
AM
12832016-02-26 Alan Modra <amodra@gmail.com>
1284
1285 * elf64-ppc.c (create_linkage_sections): Create sfpr when
1286 save_restore_funcs, rest of sections when not relocatable.
1287 (ppc64_elf_init_stub_bfd): Always call create_linkage_sections.
1288 (sfpr_define): Define all symbols on emitted code.
1289 (ppc64_elf_func_desc_adjust): Adjust for sfpr now being created
1290 when relocatable. Move sfpr_define loop earlier.
1291
ef77d6af
L
12922016-02-24 H.J. Lu <hongjiu.lu@intel.com>
1293
1294 * elf64-x86-64.c (elf_x86_64_need_pic): New function.
1295 (elf_x86_64_relocate_section): Use it. Replace
1296 x86_64_elf_howto_table[r_type] with howto.
1297
0f550b3d
L
12982016-02-24 H.J. Lu <hongjiu.lu@intel.com>
1299
1300 PR ld/19698
1301 * elflink.c (bfd_elf_record_link_assignment): Set versioned if
1302 symbol version is unknown.
1303
13f42277
L
13042016-02-24 H.J. Lu <hongjiu.lu@intel.com>
1305
1306 * elf32-i386.c (elf_i386_allocate_dynrelocs): Set plt_got.offset
1307 to (bfd_vma) -1 when setting needs_plt to 0.
1308 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
1309
6b3b0ab8
L
13102016-02-23 H.J. Lu <hongjiu.lu@intel.com>
1311
1312 * elflink.c (bfd_elf_record_link_assignment): Check for shared
1313 library, instead of PIC, and don't check PDE when making linker
1314 assigned symbol dynamic.
1315
17733f5b
FS
13162016-02-23 Faraz Shahbazker <faraz.shahbazker@imgtec.com>
1317
1318 * bfd/elfxx-mips.c (_bfd_mips_post_process_headers): Increment
1319 ABIVERSION for non-executable stack.
1320
47993b4a
RF
13212016-02-23 Rich Felker <bugdal@aerifal.cx>
1322
1323 PR target/19516
1324 * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol):
1325 Always produce a RELATIVE reloc for a local symbol.
1326
2d8dcb81
HPN
13272016-02-23 Hans-Peter Nilsson <hp@axis.com>
1328
1329 Fix test-case ld-elf/pr19617b
1330 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
1331 discard unused non-function symbols when --dynamic-list-data.
1332
1a6e6083
L
13332016-02-22 H.J. Lu <hongjiu.lu@intel.com>
1334
1335 * elflink.c (_bfd_elf_link_renumber_dynsyms): Always create the
1336 dynsym section, even if it is empty, with dynamic sections.
1337
75c1920b
L
13382016-02-22 H.J. Lu <hongjiu.lu@intel.com>
1339
1340 * syms.c: Remove BSF_COMMON from comments.
1341 * bfd-in2.h: Regenerated.
1342
9a228467
JW
13432016-02-22 Jiong Wang <jiong.wang@arm.com>
1344
1345 * elfnn-aarch64. (aarch64_type_of_stub): Remove redundation calcuation
1346 for destination. Remove useless function parameters.
1347 (elfNN_aarch64_size_stubs): Update parameters for aarch64_type_of_stub.
1348
73768414
NC
13492016-02-19 Nick Clifton <nickc@redhat.com>
1350
e517df3d
NC
1351 PR ld/19629
1352 * aoutx.h (aout_link_add_symbols): Check for out of range string
1353 table offsets.
1354
73768414
NC
1355 PR ld/19628
1356 * reloc.c (bfd_generic_get_relocated_section_contents): Stop
1357 processing if we encounter a reloc without an associated symbol.
1358
bf89386a
L
13592016-02-18 H.J. Lu <hongjiu.lu@intel.com>
1360
1361 PR ld/19617
1362 * elflink.c (elf_link_add_object_symbols): Always create dynamic
1363 sections for -E/--dynamic-list.
1364
8f79b794
L
13652016-02-17 H.J. Lu <hongjiu.lu@intel.com>
1366
1367 * elf64-x86-64.c (elf_backend_omit_section_dynsym): New. Defined
1368 to bfd_true.
1369
64bfc258
JM
13702016-02-16 Joseph Myers <joseph@codesourcery.com>
1371
1372 * plugin.c (plugin_vec): Set match priority to 255.
1373 * format.c (bfd_check_format_matches) [BFD_SUPPORTS_PLUGINS]: When
1374 matching against the plugin vector, take priority from there not
1375 from TEMP.
1376
9fb71ee4
NC
13772016-02-15 Nick Clifton <nickc@redhat.com>
1378
1379 * elf-bfd.h (struct bfd_elf_special_section): Use unsigned values
1380 for length and type fields. Use a signed value for the
1381 suffix_length field.
1382
32875eb1
L
13832016-02-10 H.J. Lu <hongjiu.lu@intel.com>
1384
1385 PR ld/19601
1386 * elf32-i386.c (elf_i386_relocate_section): Mask off the least
1387 significant bit in GOT offset for R_386_GOT32X.
1388
83da6e74
NC
13892016-02-10 Nick Clifton <nickc@redhat.com>
1390
1391 PR 19405
1392 * elf32-nios2.c (nios2_elf32_install_imm16): Allow for signed
1393 immediate values.
1394 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Limit the
1395 number of messages about FDE encoding preventing .eh_frame_hdr
1396 generation.
1397
027e9c75
NC
13982016-02-09 Nick Clifton <nickc@redhat.com>
1399
609332f1
NC
1400 * oasys.c (oasys_archive_p): Fix indentation.
1401 * elf32-nds32.c (nds32_elf_relax_section): Use an unsigned
1402 constant for left shifting.
1403
027e9c75
NC
1404 * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Add a more
1405 helpful warning message to explain why certain AArch64 relocs
1406 might overflow.
1407
6f57d046
SM
14082016-02-05 Simon Marchi <simon.marchi@ericsson.com>
1409
1410 * pe-mips.c (coff_mips_reloc): Fix formatting.
1411
bdbca4e6
CM
14122016-02-05 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
1413
1414 * cpu-arc.c: Change default archure from bfd_mach_arc_arcv2
1415 to bfd_mach_arc_arc600.
1416
4f038ee5
AM
14172016-02-04 Alan Modra <amodra@gmail.com>
1418
1419 * elf64-ppc.c (ppc64_elf_relocate_section): Adjust last patch
1420 for big-endian.
1421
4a539596
L
14222016-02-02 H.J. Lu <hongjiu.lu@intel.com>
1423
1424 PR ld/19542
1425 * elf64-x86-64.c (elf_x86_64_convert_load): Store the estimated
fb06f1c0 1426 distances in the compressed_size field of the output section.
4a539596 1427
85fabe71
AM
14282016-02-02 Alan Modra <amodra@gmail.com>
1429
1430 * elf64-ppc.c (ppc64_elf_relocate_section): Further restrict
1431 ELFv2 entry optimization.
1432
14f2c699
L
14332016-02-02 H.J. Lu <hongjiu.lu@intel.com>
1434
1435 PR binutils/19547
1436 * elf.c (assign_section_numbers): Clear HAS_RELOC if there are
1437 no relocations in relocatable files.
1438
aef28989
L
14392016-02-01 H.J. Lu <hongjiu.lu@intel.com>
1440
1441 PR ld/19553
1442 * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
1443 if a symbol from a library loaded via DT_NEEDED doesn't match
1444 the symbol referenced by regular object.
1445
655ed9ea
NS
14462016-02-01 Nathaniel Smith <njs@pobox.com>
1447
1448 * peicode.h (pe_ILF_build_a_bfd): Create an import symbol for both
1449 CODE and DATA.
1450
ec1f73bb
AM
14512016-02-01 Alan Modra <amodra@gmail.com>
1452
1453 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Don't abort on
1454 an out of range reloc_index.
1455 * elf32-i386.c (elf_i386_get_plt_sym_val): Likewise.
1456
b6471e6e
KR
14572016-02-01 Kamil Rytarowski <n54@gmx.com>
1458
1459 * Makefile.am (OPTIONAL_BACKENDS): Add netbsd-core.lo.
1460 (OPTIONAL_BACKENDS_CFILES): Add netbsd-core.c.
1461 * Makefile.in: Regenerated.
1462
0bc7245a
JK
14632016-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
1464
1465 * elf64-s390.c (elf_s390_reloc_name_lookup): Fix indentation.
1466
6d4b2867
JDA
14672016-01-31 John David Anglin <danglin@gcc.gnu.org>
1468
1469 PR ld/19526
1470 * elf32-hppa.c (elf32_hppa_final_link): Don't sort non-regular output
1471 files.
1472 * elf64-hppa.c (elf32_hppa_final_link): Likewise. Remove retval.
1473
d9e3b590
L
14742016-01-30 H.J. Lu <hongjiu.lu@intel.com>
1475
1476 PR ld/19539
1477 * elf32-i386.c (elf_i386_reloc_type_class): Check relocation
1478 against STT_GNU_IFUNC symbol only with dynamic symbols.
1479 * elf64-x86-64.c (elf_x86_64_reloc_type_class): Likewise.
1480
bf150a0b
L
14812016-01-28 H.J. Lu <hongjiu.lu@intel.com>
1482
1483 PR binutils/19523
1484 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Set BFD_DECOMPRESS to
1485 decompress debug sections.
1486
840855c5
MR
14872016-01-25 Maciej W. Rozycki <macro@imgtec.com>
1488
1489 * elf32-arc.c (elf_arc_finish_dynamic_symbol): Rename `index' to
1490 `dynindx'.
1491
cf466c2a
NC
14922016-01-25 Nick Clifton <nickc@redhat.com>
1493
1494 PR target/19435
1495 * mach-o.c (bfd_mach_o_close_and_cleanup): Suppress code to free
1496 dsym filename buffer.
1497
eb6b0cf4
MR
14982016-01-24 Maciej W. Rozycki <macro@imgtec.com>
1499
1500 * elfxx-mips.c (BZ16_REG_FIELD): Simplify calculation.
1501
e67f83e5
MR
15022016-01-24 Maciej W. Rozycki <macro@imgtec.com>
1503
1504 * elfxx-mips.c (BZ16_REG): Correct calculation.
1505
23a42089
NC
15062016-01-21 Nick Clifton <nickc@redhat.com>
1507
1508 * elf32-arc.c (ADD_RELA): Fix compile time warning errors by
1509 changing the type of _loc to be bfd_byte *.
1510 (elf_arc_finish_dynamic_symbol): Likewise.
1511
aebf9be7
NC
15122016-01-21 Nick Clifton <nickc@redhat.com>
1513
1514 PR ld/19455
1515 * elf32-arm.c (elf32_arm_create_dynamic_sections): Set the ELF
1516 class of the linker stub bfd.
1517 (elf32_arm_check_relocs): Skip check for pic format after
1518 processing a vxWorks R_ARM_ABS12 reloc.
1519 * elflink.c (bfd_elf_final_link): Check for ELFCLASSNONE when
1520 reporting a class mismatch.
1521
2f340668
JW
15222016-01-21 Jiong Wang <jiong.wang@arm.com>
1523
1524 * elfnn-aarch64.c (aarch64_type_of_stub): Allow insert long branch
1525 veneer for sym_sec != input_sec.
1526 (elfNN_aarch64_size_stub): Support STT_SECTION symbol.
1527 (elfNN_aarch64_final_link_relocate): Take rela addend into account when
1528 calculation destination.
1529
aeb70569
AM
15302016-01-21 Alan Modra <amodra@gmail.com>
1531
1532 * elf-linux-core.h (swap_linux_prpsinfo32_out): New function.
1533 (swap_linux_prpsinfo64_out): New function.
1534 (LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
1535 (LINUX_PRPSINFO64_SWAP_FIELDS): Delete.
1536 * elf.c (elfcore_write_linux_prpsinfo32): Adjust. Don't memset.
1537 (elfcore_write_linux_prpsinfo64): Likewise.
1538 * elf32-ppc.c (swap_ppc_linux_prpsinfo32_out): New function.
1539 (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
1540 (elfcore_write_ppc_linux_prpsinfo32): Adjust. Don't memset.
1541
de64ce13
AM
15422016-01-21 Alan Modra <amodra@gmail.com>
1543
1544 * elf-linux-core.h: Rename from elf-linux-psinfo.h.
1545 * elf.c: Adjust #include.
1546 * elf32-ppc.c: Don't #include elf-linux-psinfo.h
1547 * Makefile.am (SOURCE_HFILES): Update.
1548 * Makefile.in: Regenerate.
1549 * po/SRC-PORFILES.in: Regenerate.
1550
c603b11b
AM
15512016-01-21 Alan Modra <amodra@gmail.com>
1552
1553 * configure.ac: Move corefile selection later in file. Move
1554 tdefaults code immediately after other target vector code.
1555 * configure: Regenerate.
1556
91f68a68
MG
15572016-01-20 Mickael Guene <mickael.guene@st.com>
1558
1559 * elf32-arm.c (elf32_arm_special_sections): Remove catch of noread
1560 section using '.text.noread' pattern.
1561
5b2c414d
JB
15622016-01-19 John Baldwin <jhb@FreeBSD.org>
1563
1564 * elf.c (elfcore_grok_note): Recognize NT_FREEBSD_THRMISC notes.
1565
34e967a5
MC
15662016-01-18 Miranda Cupertino <Cupertino.Miranda@synopsys.com>
1567 Zissulescu Claudiu <Claudiu.Zissulescu@synopsys.com>
1568
1569 * arc-plt.def: New file.
1570 * arc-plt.h: Likewise.
1571 * elf32-arc.c (elf_arc_abs_plt0_entry, elf_arc_abs_pltn_entry,
1572 elf_arcV2_abs_plt0_entry, elf_arcV2_abs_pltn_entry,
1573 elf_arc_pic_plt0_entry, elf_arc_pic_pltn_entry,
1574 elf_arcV2_pic_plt0_entry, elf_arcV2_pic_pltn_entry): Remove.
1575 (name_for_global_symbol): Added.
1576 (ADD_RELA): Helper to create dynamic relocs.
1577 (new_got_entry_to_list): Create a new got entry in linked list.
1578 (symbol_has_entry_of_type): Search for specific type of entry in
1579 list.
1580 (is_reloc_for_GOT): return FALSE for any TLS related relocs.
1581 (is_reloc_for_TLS, arc_elf_set_private_flags)
1582 (arc_elf_print_private_bfd_data, arc_elf_copy_private_bfd_data)
1583 (arc_elf_merge_private_bfd_data): New functions.
1584 (debug_arc_reloc): Cleaned debug info printing.
1585 (PDATA reloc): Changed not to perform address alignment.
1586 (reverse_me): Added. Fix for ARC_32 relocs.
1587 (arc_do_relocation): Return bfd_reloc_of when no relocation should
1588 occur.
1589 (arc_get_local_got_ents): Renamed from arc_get_local_got_offsets.
1590 Changed function to access an array of list of GOT entries instead
1591 of just an array of offsets.
1592 (elf_arc_relocate_section): Added support for PIC and TLS related relocations.
1593 (elf_arc_check_relocs): Likewise.
1594 (elf_arc_adjust_dynamic_symbol, elf_arc_finish_dynamic_symbol,
1595 (elf_arc_finish_dynamic_sections): Likewise
1596 (arc_create_dynamic_sections): Modified conditions to create
1597 dynamic sections.
1598 (ADD_SYMBOL_REF_SEC_AND_RELOC): New macro.
1599 (plt_do_relocs_for_symbol, relocate_plt_for_symbol)
1600 (relocate_plt_for_entry): Changed to support new way to define PLT
1601 related code.
1602 (add_symbol_to_plt): Likewise.
1603 (arc_elf_link_hash_table_create): New function.
1604
9ae678af
NC
16052016-01-18 Nick Clifton <nickc@redhat.com>
1606
1607 PR ld/19440
1608 * coff-rs6000.c (_bfd_xcoff_swap_sym_in): Sign extend external
1609 section number into internal section number.
1610 * coff64-rs6000.c (_bfd_xcoff64_swap_sym_in): Likewise.
1611 * coffswap.h (coff_swap_sym_in): Likewise.
1612 * peXXigen.c (_bfd_XXi_swap_sym_in): Likewise.
1613 * coffcode.h (_coff_bigobj_swap_sym_in): Make sure that internal
1614 section number field is big enough to hold the external value.
1615
5c14705f
AM
16162016-01-17 Alan Modra <amodra@gmail.com>
1617
1618 * configure: Regenerate.
1619
ac06903d
YU
16202016-01-12 Yury Usishchev <y.usishchev@samsung.com>
1621
1622 * elf32-arm.c (elf32_arm_fix_exidx_coverage): Insert cantunwind
1623 when address in first unwind entry does not match start of
1624 section.
1625
109575d7
JW
16262016-01-08 Richard Sandiford <richard.sandiford@arm.com>
1627 Jiong Wang <jiong.wang@arm.com>
1628
1629 PR ld/19368
1630 * elf32-arm.c (elf32_arm_reloc_type_class): Map R_ARM_IRELATIVE to
1631 reloc_class_ifunc.
1632
b05a65d0
AB
16332016-01-06 Andrew Burgess <andrew.burgess@embecosm.com>
1634
1635 * elf32-arc.c (reloc_type_to_name): Change ARC_RELOC_HOWTO to
1636 place 'R_' before the reloc name returned.
1637 (elf_arc_howto_table): Change ARC_RELOC_HOWTO to place 'R_' before
1638 the relocation string.
1639
a3dc0a7f
MR
16402016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1641
1642 * elfxx-mips.c (mips_elf_merge_obj_abiflags): New function,
1643 factored out from...
1644 (_bfd_mips_elf_merge_private_bfd_data): ... here.
1645
d537eeb5
MR
16462016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1647
1648 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Move
1649 attribute check after ELF file header flag check.
1650
43d223b5
MR
16512016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1652
1653 * elfxx-mips.c (mips_elf_merge_obj_attributes): Propagate the
1654 return status from `_bfd_elf_merge_object_attributes'.
1655
b2e9744f
MR
16562016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1657
1658 * elfxx-mips.c (mips_elf_merge_obj_e_flags): New function,
1659 factored out from...
1660 (_bfd_mips_elf_merge_private_bfd_data): ... here.
1661
28d45e28
MR
16622016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1663
1664 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Fold the
1665 handling of input MIPS ABI flags together.
1666
23ba6f18
MR
16672016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1668
1669 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Suppress
1670 attribute checks for null input.
1671
cf8502c1
MR
16722016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1673
1674 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Use local
1675 pointers to target data.
1676
dcb1c796
MR
16772016-01-04 Maciej W. Rozycki <macro@imgtec.com>
1678
1679 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct
1680 an FP ABI warning.
1681
6f2750fe
AM
16822016-01-01 Alan Modra <amodra@gmail.com>
1683
1684 Update year range in copyright notice of all files.
1685
3499769a
AM
1686For older changes see ChangeLog-2015 and doc/ChangeLog-0415
1687\f
1688Copyright (C) 2016 Free Software Foundation, Inc.
1689
1690Copying and distribution of this file, with or without modification,
1691are permitted in any medium without royalty provided the copyright
1692notice and this notice are preserved.
1693
1694Local Variables:
1695mode: change-log
1696left-margin: 8
1697fill-column: 74
1698version-control: never
1699End: