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