MIPS16: Add R_MIPS16_PC16_S1 branch relocation support
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2016-06-28 Maciej W. Rozycki <macro@imgtec.com>
2
3 * elf32-mips.c (elf_mips16_howto_table_rel): Add
4 R_MIPS16_PC16_S1.
5 (mips16_reloc_map): Likewise.
6 * elf64-mips.c (mips16_elf64_howto_table_rel): Likewise.
7 (mips16_elf64_howto_table_rela): Likewise.
8 (mips16_reloc_map): Likewise.
9 * elfn32-mips.c (elf_mips16_howto_table_rel): Likewise.
10 (elf_mips16_howto_table_rela): Likewise.
11 (mips16_reloc_map): Likewise.
12 * elfxx-mips.c (mips16_branch_reloc_p): New function.
13 (mips16_reloc_p): Handle R_MIPS16_PC16_S1.
14 (b_reloc_p): Likewise.
15 (mips_elf_calculate_relocation): Likewise.
16 (_bfd_mips_elf_check_relocs): Likewise.
17 * reloc.c (BFD_RELOC_MIPS16_16_PCREL_S1): New relocation.
18 * bfd-in2.h: Regenerate.
19 * libbfd.h: Regenerate.
20
21 2016-06-27 Alan Modra <amodra@gmail.com>
22
23 PR ld/19264
24 * elf64-ppc.c (STUB_SHRINK_ITER): Define.
25 (ppc64_elf_size_stubs): Exit stub sizing loop past STUB_SHRINK_ITER
26 if shrinking stubs.
27 (ppc64_elf_size_stubs): Adjust to suit.
28
29 2016-06-27 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
30
31 * elf32-dlx.h: New file.
32 * elf32-dlx.c: Adjust.
33
34 2016-06-25 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
35
36 * elf32-xtensa.c (xtensa_make_property_section): Remove prototype.
37
38 2016-06-24 John Baldwin <jhb@FreeBSD.org>
39
40 * elf.c (elfcore_grok_freebsd_note): Handle NT_FREEBSD_PROCSTAT_AUXV
41 notes.
42
43 2016-06-24 John Baldwin <jhb@FreeBSD.org>
44
45 * elf.c (elfcore_grok_note): Remove handling of NT_X86_XSTATE for
46 FreeBSD. Remove case for NT_FREEBSD_THRMISC.
47 (elfcore_grok_freebsd_psinfo): New function.
48 (elfcore_grok_freebsd_prstatus): New function.
49 (elfcore_grok_freebsd_note): New function.
50 (elf_parse_notes): Use "elfcore_grok_freebsd_note" for "FreeBSD"
51 notes.
52
53 2016-06-24 Joel Brobecker <brobecker@adacore.com>
54
55 * elflink.c: Check the value of BFD_SUPPORTS_PLUGINS rather
56 than its existance.
57
58 2016-06-24 Alan Modra <amodra@gmail.com>
59
60 * config.bfd: Delete mips vxworks patterns matched earlier.
61 Combine mips*-*-none with mips*-*-elf*.
62
63 2016-06-21 Maciej W. Rozycki <macro@imgtec.com>
64
65 * elfxx-mips.c (mips_elf_perform_relocation): Call
66 `info->callbacks->einfo' rather than `*_bfd_error_handler' and
67 use the `%X%H' format for the cross-mode jump conversion error
68 message. Remove the full stop from the end of the message.
69 Continue processing rather than returning failure.
70
71 2016-06-21 Graham Markall <graham.markall@embecosm.com>
72
73 * archures.c: Remove bfd_mach_arc_nps400.
74 * bfd-in2.h: Likewise.
75 * cpu-arc.c (arch_info_struct): Likewise.
76 * elf32-arc.c (arc_elf_object_p, arc_elf_final_write_processing):
77 Likewise.
78
79 2016-06-20 H.J. Lu <hongjiu.lu@intel.com>
80
81 PR ld/18250
82 PR ld/20267
83 * elflink.c: Include plugin.h if BFD_SUPPORTS_PLUGINS is
84 defined.
85 (elf_link_is_defined_archive_symbol): Call
86 bfd_link_plugin_object_p on unknown plugin object and use the
87 IR symbol table if the input is an IR object.
88 * plugin.c (bfd_link_plugin_object_p): New function.
89 * plugin.h (bfd_link_plugin_object_p): New prototype.
90
91 2016-06-20 H.J. Lu <hongjiu.lu@intel.com>
92
93 PR ld/20276
94 * elflink.c (elf_link_add_object_symbols): Don't check alignment
95 on symbol from plugin dummy input.
96
97 2016-06-18 H.J. Lu <hongjiu.lu@intel.com>
98
99 * bfd.c (bfd_plugin_format): Rename bfd_plugin_uknown to
100 bfd_plugin_unknown.
101 * bfd-in2.h: Regenerated.
102 * plugin.c (bfd_plugin_object_p): Replace bfd_plugin_uknown
103 with bfd_plugin_unknown.
104
105 2016-06-18 H.J. Lu <hongjiu.lu@intel.com>
106
107 PR ld/20253
108 * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add an
109 bfd_boolean argument.
110 * elf-ifunc.c (_bfd_elf_create_ifunc_sections): Replace
111 "shared object" with "PIC object" in comments.
112 (_bfd_elf_allocate_ifunc_dyn_relocs): Updated. Replace
113 "shared object" with "PIC object" in comments. Avoid PLT if
114 requested. Generate dynamic relocations for non-GOT references.
115 Make room for the special first entry in PLT and allocate PLT
116 entry only for PLT and PC-relative references. Store dynamic
117 GOT relocations in .rel[a].iplt section for static executables.
118 If PLT isn't used, always use GOT for symbol value. Don't
119 allocate GOT entry if it isn't used.
120 * elf32-i386.c (elf_i386_check_relocs): Increment PLT reference
121 count only in the code section. Allocate dynamic pointer
122 relocation against STT_GNU_IFUNC symbol in the non-code section.
123 (elf_i386_adjust_dynamic_symbol): Increment PLT reference count
124 only for PC-relative references.
125 (elf_i386_allocate_dynrelocs): Pass TRUE to
126 _bfd_elf_allocate_ifunc_dyn_relocs.
127 (elf_i386_relocate_section): Allow R_386_GOT32/R_386_GOT32X
128 relocations against STT_GNU_IFUNC symbols without PLT. Generate
129 dynamic pointer relocation against STT_GNU_IFUNC symbol in
130 the non-code section and store it in the proper REL section.
131 Don't allow non-pointer relocation against STT_GNU_IFUNC symbol
132 without PLT.
133 (elf_i386_finish_dynamic_symbol): Generate dynamic
134 R_386_IRELATIVE and R_386_GLOB_DAT GOT relocations against
135 STT_GNU_IFUNC symbols without PLT.
136 (elf_i386_finish_dynamic_sections): Don't handle local
137 STT_GNU_IFUNC symbols here.
138 (elf_i386_output_arch_local_syms): Handle local STT_GNU_IFUNC
139 symbols here.
140 (elf_backend_output_arch_local_syms): New.
141 * elf32-x86-64.c (elf_i386_check_relocs): Increment PLT reference
142 count only in the code section. Allocate dynamic pointer
143 relocation against STT_GNU_IFUNC symbol in the non-code section.
144 (elf_x86_64_adjust_dynamic_symbol): Increment PLT reference
145 count only for PC-relative references.
146 (elf_x86_64_allocate_dynrelocs): Pass TRUE to
147 _bfd_elf_allocate_ifunc_dyn_relocs.
148 (elf_x86_64_relocate_section): Allow R_X86_64_GOTPCREL,
149 R_X86_64_GOTPCRELX, R_X86_64_REX_GOTPCRELX and
150 R_X86_64_GOTPCREL64 relocations against STT_GNU_IFUNC symbols
151 without PLT. Generate dynamic pointer relocation against
152 STT_GNU_IFUNC symbol in the non-code section and store it in
153 the proper RELA section. Don't allow non-pointer relocation
154 against STT_GNU_IFUNC symbol without PLT.
155 (elf_x86_64_finish_dynamic_symbol): Generate dynamic
156 R_X86_64_IRELATIVE and R_X86_64_GLOB_DAT GOT relocations against
157 STT_GNU_IFUNC symbols without PLT.
158 (elf_x86_64_finish_dynamic_sections): Don't handle local
159 STT_GNU_IFUNC symbols here.
160 (elf_x86_64_output_arch_local_syms): Handle local STT_GNU_IFUNC
161 symbols here.
162 (elf_backend_output_arch_local_syms): New.
163 * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs):
164 Pass FALSE to _bfd_elf_allocate_ifunc_dyn_relocs.
165
166 2016-06-17 Thomas Preud'homme <thomas.preudhomme@arm.com>
167 Tony Wang <tony.wang@arm.com>
168
169 * elf32-arm.c (elf32_arm_stub_long_branch_thumb2_only): Define stub
170 sequence.
171 (stub_long_branch_thumb2_only): Define stub.
172 (arm_stub_is_thumb): Add case for arm_stub_long_branch_thumb2_only.
173 (arm_stub_long_branch_thumb2_only): Likewise.
174 (arm_type_of_stub): Use arm_stub_long_branch_thumb2_only for Thumb-2
175 capable targets.
176
177 2016-06-17 Jose E. Marchesi <jose.marchesi@oracle.com>
178
179 * archures.c (bfd_mach_sparc_v8plusc): Define.
180 (bfd_mach_sparc_v9c): Likewise.
181 (bfd_mach_sparc_v8plusd): Likewise.
182 (bfd_mach_sparc_v9d): Likewise.
183 (bfd_mach_sparc_v8pluse): Likewise.
184 (bfd_mach_sparc_v9e): Likewise.
185 (bfd_mach_sparc_v8plusv): Likewise
186 (bfd_mach_sparc_v9v): Likewise.
187 (bfd_mach_sparc_v8plusm): Likewise.
188 (bfd_mach_sparc_v9m): Likewise.
189 (bfd_mach_sparc_v9_p): Adapt to v8plusm and v9m.
190 (bfd_mach_sparc_64bit_p): Likewise.
191 * bfd-in2.h: Regenerate.
192 * cpu-sparc.c (arch_info_struct): Add entries for
193 bfd_mach_sparc_v8plus{c,d,e,v,m} and bfd_mach_sparc_v9{c,d,e,v,m}.
194 * aoutx.h (machine_type): Handle bfd_mach_sparc_v8plus{c,d,e,v,m}
195 and bfd_mach_sparc_v9{c,d,e,v,m}.
196 * elf32-sparc.c (elf32_sparc_final_write_processing): Likewise.
197 * elfxx-sparc.c (_bfd_sparc_elf_object_p): Likewise.
198
199 2016-06-16 H.J. Lu <hongjiu.lu@intel.com>
200
201 * elf32-i386.c (elf_i386_check_relocs): Don't check undefined
202 symbols for relocations against IFUNC symbols.
203 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
204
205 2016-06-16 Marcin Koƛcielnicki <koriakin@0x04.net>
206
207 * elf32-s390.c (elf_s390_finish_dynamic_sections): Include
208 .rela.iplt in DT_PLTRELSZ.
209 * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise,
210 for DT_PLTRELSZ and DT_RELASZ as well.
211
212 2016-06-16 H.J. Lu <hongjiu.lu@intel.com>
213
214 * elf32-i386.c (elf_i386_check_relocs): Skip relocations in
215 non-loaded, non-alloced sections.
216 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
217
218 2016-06-15 H.J. Lu <hongjiu.lu@intel.com>
219
220 * elf32-i386.c (elf_i386_check_relocs): Check SEC_ALLOC before
221 allocating dynamic relocation.
222 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
223
224 2016-06-14 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
225
226 PR ld/20254
227 * elf32-avr.c (elf32_avr_relax_delete_bytes): Adjust reloc
228 offsets until reloc_toaddr.
229
230 2016-06-14 H.J. Lu <hongjiu.lu@intel.com>
231
232 * elf32-i386.c (elf_i386_reloc_type_class): Check R_386_IRELATIVE.
233 Don't check symbol type for STN_UNDEF symbol index.
234 * elf64-x86-64.c (elf_x86_64_reloc_type_class): Check
235 R_X86_64_IRELATIVE. Don't check symbol type for STN_UNDEF symbol
236 index.
237
238 2016-06-14 Thomas Preud'homme <thomas.preudhomme@arm.com>
239
240 * elf32-arm.c (using_thumb_only): Force review of arch check logic for
241 new architecture.
242 (using_thumb2): Try Tag_THUMB_ISA_use first and check
243 for exact arch value then. Force review of arch check logic for new
244 architecture.
245 (arch_has_arm_nop): Update and fix arch check logic. Force review of
246 that logic for new architecture.
247 (arch_has_thumb2_nop): Remove.
248 (elf32_arm_tls_relax): Use using_thumb2 instead of above function.
249 (elf32_arm_final_link_relocate): Likewise but using thumb2.
250
251 2016-06-14 Alan Modra <amodra@gmail.com>
252
253 * bfd-in.h (bfd_my_archive): Delete.
254 * bfd-in2.h: Regenerate.
255
256 2016-06-14 Alan Modra <amodra@gmail.com>
257
258 PR ld/20241
259 * archive.c (open_nested_file): Set my_archive.
260 * bfd.c (_bfd_default_error_handler <%B>): Exclude archive file name
261 for thin archives.
262 * bfdio.c (bfd_tell): Don't adjust origin for thin archives.
263 (bfd_seek): Likewise.
264 * bfdwin.c (bfd_get_file_window): Likewise.
265 * cache.c (cache_bmmap): Likewise.
266 (bfd_cache_lookup_worker): Don't look in my_archive for thin archives.
267 * mach-o.c (bfd_mach_o_follow_dsym): Don't open my_archive for
268 thin archives.
269 * plugin.c (try_claim): Likewise.
270 * xcofflink.c (xcoff_link_add_dynamic_symbols): Use import path of
271 file within thin archive, not the archive.
272
273 2016-06-13 H.J. Lu <hongjiu.lu@intel.com>
274
275 PR ld/20244
276 * elf32-i386.c (elf_i386_relocate_section): Add the .got.plt
277 section address for R_386_GOT32/R_386_GOT32X relocations against
278 IFUNC symbols if there is no base register and return error for
279 PIC.
280
281 2016-06-13 H.J. Lu <hongjiu.lu@intel.com>
282
283 * elf32-i386.c (elf_i386_relocate_section): Simplify IFUNC
284 GOT32 adjustment for static executables.
285
286 2016-06-13 Maciej W. Rozycki <macro@imgtec.com>
287
288 * elf32-mips.c (elf_mips_gnu_pcrel32): Update comment.
289
290 2016-06-13 Cupertino Miranda <cmiranda@synospsy.com>
291
292 * elf32-arc.c (elf_arc_relocate_section): Fixed condition.
293
294 2016-06-13 Cupertino Miranda <cmiranda@synospsy.com>
295
296 * elf32-arc.c (elf_arc_finish_dynamic_sections): Changed.
297
298 2016-06-13 Cupertino Miranda <cmiranda@synospsy.com>
299
300 * elf32-arc.c (arc_local_data, arc_local_data): Removed.
301 (SECTSTART): Changed.
302 (elf_arc_relocate_section): Fixed mistake in PIE related
303 condition.
304 (elf_arc_size_dynamic_sections): Changed DT_RELENT to DT_RELAENT.
305
306 2016-06-13 Cupertino Miranda <cmiranda@synospsy.com>
307
308 * elf32-arc.c (elf32_arc_reloc_type_class): Defined function to
309 enable support for "-z combreloc" and DT_RELACOUNT.
310 (elf_backend_reloc_type_class): Likewise
311
312 2016-06-11 H.J. Lu <hongjiu.lu@intel.com>
313
314 PR ld/20244
315 * elf32-i386.c (elf_i386_relocate_section): When relocating
316 R_386_GOT32, return error without a base register for PIC and
317 subtract the .got.plt section address only with a base register.
318
319 2016-06-10 Alan Modra <amodra@gmail.com>
320
321 * elf-strtab.c (struct strtab_save): Use size_t for "size".
322 (struct elf_strtab_hash): Likewise for "size" and "alloced".
323 (_bfd_elf_strtab_init): Formatting.
324 (_bfd_elf_strtab_add): Return size_t rather than bfd_size_type.
325 (_bfd_elf_strtab_addref): Take size_t idx param.
326 (_bfd_elf_strtab_delref, _bfd_elf_strtab_refcount): Likewise.
327 (_bfd_elf_strtab_offset): Likewise.
328 (_bfd_elf_strtab_clear_all_refs): Use size_t idx.
329 (_bfd_elf_strtab_save): Use size_t "idx" and "size" vars.
330 (_bfd_elf_strtab_restore, _bfd_elf_strtab_emit): Similarly.
331 (_bfd_elf_strtab_finalize): Similarly.
332 * elf-bfd.h (_bfd_elf_strtab_add): Update prototypes.
333 (_bfd_elf_strtab_addref, _bfd_elf_strtab_delref): Likewise.
334 (_bfd_elf_strtab_refcount, _bfd_elf_strtab_offset): Likewise.
335 * elf.c (bfd_elf_get_elf_syms): Calculate symbol buffer size
336 using bfd_size_type.
337 (bfd_section_from_shdr): Delete amt.
338 (_bfd_elf_init_reloc_shdr): Likewise.
339 (_bfd_elf_link_assign_sym_version): Likewise.
340 (assign_section_numbers): Use size_t reloc_count.
341 * elflink.c (struct elf_symbuf_head): Use size_t "count".
342 (bfd_elf_link_record_dynamic_symbol): Use size_t for some vars.
343 (elf_link_is_defined_archive_symbol): Likewise.
344 (elf_add_dt_needed_tag): Likewise.
345 (elf_finalize_dynstr): Likewise.
346 (elf_link_add_object_symbols): Likewise.
347 (bfd_elf_size_dynamic_sections): Likewise.
348 (elf_create_symbuf): Similarly.
349 (bfd_elf_match_symbols_in_sections): Likewise.
350 (elf_link_swap_symbols_out): Likewise.
351 (elf_link_check_versioned_symbol): Likewise.
352 (bfd_elf_gc_record_vtinherit): Likewise.
353 (bfd_elf_gc_common_finalize_got_offsets): Likewise.
354
355 2016-06-08 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
356
357 PR ld/20221
358 * elf32-avr.c (elf32_avr_relax_delete_bytes): Adjust syms
359 and relocs only if shrinking occurred.
360
361 2016-06-08 H.J. Lu <hongjiu.lu@intel.com>
362
363 * elf64-i386.c (elf_i386_link_hash_entry): Add tls_get_addr.
364 (elf_i386_link_hash_newfunc): Initialize tls_get_addr to 2.
365 (elf_i386_check_tls_transition): Check indirect call and direct
366 call with the addr32 prefix for general and local dynamic models.
367 Set the tls_get_addr feild.
368 (elf_i386_convert_load_reloc): Always use addr32 prefix for
369 indirect ___tls_get_addr call via GOT.
370 (elf_i386_relocate_section): Handle GD->LE, GD->IE and LD->LE
371 transitions with indirect call and direct call with the addr32
372 prefix.
373
374 2016-06-07 Marcin Koƛcielnicki <koriakin@0x04.net>
375
376 * elf32-s390.c (elf_s390_finish_dynamic_symbol): Fix comment.
377 * elf64-s390.c (elf_s390x_plt_entry): Fix comment.
378 (elf_s390_relocate_section): Fix comment.
379 (elf_s390_finish_dynamic_sections): Fix initialization of fixed
380 .got.plt entries.
381
382 2016-06-07 Ulrich Weigand <ulrich.weigand@de.ibm.com>
383
384 * elf64-s390.c (elf_s390_finish_dynamic_sections): Subtract plt
385 section offset when calculation the larl operand in the first PLT
386 entry.
387
388 2016-06-07 Alan Modra <amodra@gmail.com>
389
390 * cpu-powerpc.c (powerpc_compatible): Allow bfd_mach_ppc_vle entry
391 to match other 32-bit archs.
392 * elf32-ppc.c (_bfd_elf_ppc_set_arch): New function.
393 (ppc_elf_object_p): Call it.
394 (ppc_elf_special_sections): Use APUINFO_SECTION_NAME. Fix
395 overlong line.
396 (APUINFO_SECTION_NAME, APUINFO_LABEL): Don't define here.
397 * elf64-ppc.c (ppc64_elf_object_p): Call _bfd_elf_ppc_set_arch.
398 * bfd-in.h (_bfd_elf_ppc_at_tls_transform,
399 _bfd_elf_ppc_at_tprel_transform): Move to..
400 * elf-bfd.h: ..here.
401 (_bfd_elf_ppc_set_arch): Declare.
402 * bfd-in2.h: Regenerate.
403
404 2016-06-06 H.J. Lu <hongjiu.lu@intel.com>
405
406 * elf64-x86-64.c (elf_x86_64_link_hash_entry): Add tls_get_addr.
407 (elf_x86_64_link_hash_newfunc): Initialize tls_get_addr to 2.
408 (elf_x86_64_check_tls_transition): Check indirect call and
409 direct call with the addr32 prefix for general and local dynamic
410 models. Set the tls_get_addr feild.
411 (elf_x86_64_convert_load_reloc): Always use addr32 prefix for
412 indirect __tls_get_addr call via GOT.
413 (elf_x86_64_relocate_section): Handle GD->LE, GD->IE and LD->LE
414 transitions with indirect call and direct call with the addr32
415 prefix.
416
417 2016-06-04 Christian Groessler <chris@groessler.org>
418
419 * coff-z8k.c (extra_case): Fix range check for R_JR relocation.
420
421 2016-06-02 Nick Clifton <nickc@redhat.com>
422
423 PR target/20088
424 * cpu-arm.c (processors): Add "arm_any" type to match any ARM
425 architecture.
426 (arch_info_struct): Likewise.
427 (architectures): Likewise.
428
429 2016-06-02 Vineet Gupta <Vineet.Gupta1@synopsys.com>
430
431 * config.bfd: Replace -uclibc with *.
432
433 2016-06-02 H.J. Lu <hongjiu.lu@intel.com>
434
435 * elf64-x86-64.c: Replace data32 with data16 in comments.
436
437 2016-05-31 Alan Modra <amodra@gmail.com>
438
439 PR ld/20159
440 PR ld/16467
441 * elflink.c (_bfd_elf_merge_symbol): Revert PR16467 change.
442 (_bfd_elf_add_default_symbol): Don't indirect to/from defined
443 symbol given a version by a script different to the version
444 of the symbol being added.
445 (elf_link_add_object_symbols): Use _bfd_elf_strtab_save and
446 _bfd_elf_strtab_restore. Don't fudge dynstr references.
447 * elf-strtab.c (_bfd_elf_strtab_restore_size): Delete.
448 (struct strtab_save): New.
449 (_bfd_elf_strtab_save, _bfd_elf_strtab_restore): New functions.
450 * elf-bfd.h (_bfd_elf_strtab_restore_size): Delete.
451 (_bfd_elf_strtab_save, _bfd_elf_strtab_restore): Declare.
452
453 2016-06-01 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
454
455 * elf32-hppa.h: Add extern "C".
456 * elf32-nds32.h: Likewise.
457 * elf32-tic6x.h: Likewise.
458
459 2016-06-01 Nick Clifton <nickc@redhat.com>
460
461 * po/sr.po: New Serbian translation.
462 * configure.ac (ALL_LINGUAS): Add sr.
463 * configure: Regenerate.
464
465 2016-05-28 Maciej W. Rozycki <macro@imgtec.com>
466
467 * elfxx-mips.c (b_reloc_p): New function.
468 (_bfd_mips_elf_relocate_section) <bfd_reloc_outofrange>: Handle
469 branch relocations.
470
471 2016-05-28 Maciej W. Rozycki <macro@imgtec.com>
472
473 * elfxx-mips.c (mips_elf_calculate_relocation): <R_MIPS16_26>
474 <R_MIPS_26, R_MICROMIPS_26_S1>: Drop the region bits of the
475 reloc location from calculation, treat the addend as signed with
476 local non-section symbols and enable overflow detection.
477
478 2016-05-28 Alan Modra <amodra@gmail.com>
479
480 * aoutx.h: Adjust linker callback calls throughout file,
481 removing dead code.
482 * bout.c: Likewise.
483 * coff-alpha.c: Likewise.
484 * coff-arm.c: Likewise.
485 * coff-h8300.c: Likewise.
486 * coff-h8500.c: Likewise.
487 * coff-i960.c: Likewise.
488 * coff-mcore.c: Likewise.
489 * coff-mips.c: Likewise.
490 * coff-ppc.c: Likewise.
491 * coff-rs6000.c: Likewise.
492 * coff-sh.c: Likewise.
493 * coff-tic80.c: Likewise.
494 * coff-w65.c: Likewise.
495 * coff-z80.c: Likewise.
496 * coff-z8k.c: Likewise.
497 * coff64-rs6000.c: Likewise.
498 * cofflink.c: Likewise.
499 * ecoff.c: Likewise.
500 * elf-bfd.h: Likewise.
501 * elf-m10200.c: Likewise.
502 * elf-m10300.c: Likewise.
503 * elf32-arc.c: Likewise.
504 * elf32-arm.c: Likewise.
505 * elf32-avr.c: Likewise.
506 * elf32-bfin.c: Likewise.
507 * elf32-cr16.c: Likewise.
508 * elf32-cr16c.c: Likewise.
509 * elf32-cris.c: Likewise.
510 * elf32-crx.c: Likewise.
511 * elf32-d10v.c: Likewise.
512 * elf32-epiphany.c: Likewise.
513 * elf32-fr30.c: Likewise.
514 * elf32-frv.c: Likewise.
515 * elf32-ft32.c: Likewise.
516 * elf32-h8300.c: Likewise.
517 * elf32-hppa.c: Likewise.
518 * elf32-i370.c: Likewise.
519 * elf32-i386.c: Likewise.
520 * elf32-i860.c: Likewise.
521 * elf32-ip2k.c: Likewise.
522 * elf32-iq2000.c: Likewise.
523 * elf32-lm32.c: Likewise.
524 * elf32-m32c.c: Likewise.
525 * elf32-m32r.c: Likewise.
526 * elf32-m68hc1x.c: Likewise.
527 * elf32-m68k.c: Likewise.
528 * elf32-mep.c: Likewise.
529 * elf32-metag.c: Likewise.
530 * elf32-microblaze.c: Likewise.
531 * elf32-moxie.c: Likewise.
532 * elf32-msp430.c: Likewise.
533 * elf32-mt.c: Likewise.
534 * elf32-nds32.c: Likewise.
535 * elf32-nios2.c: Likewise.
536 * elf32-or1k.c: Likewise.
537 * elf32-ppc.c: Likewise.
538 * elf32-s390.c: Likewise.
539 * elf32-score.c: Likewise.
540 * elf32-score7.c: Likewise.
541 * elf32-sh.c: Likewise.
542 * elf32-sh64.c: Likewise.
543 * elf32-spu.c: Likewise.
544 * elf32-tic6x.c: Likewise.
545 * elf32-tilepro.c: Likewise.
546 * elf32-v850.c: Likewise.
547 * elf32-vax.c: Likewise.
548 * elf32-visium.c: Likewise.
549 * elf32-xstormy16.c: Likewise.
550 * elf32-xtensa.c: Likewise.
551 * elf64-alpha.c: Likewise.
552 * elf64-hppa.c: Likewise.
553 * elf64-ia64-vms.c: Likewise.
554 * elf64-mmix.c: Likewise.
555 * elf64-ppc.c: Likewise.
556 * elf64-s390.c: Likewise.
557 * elf64-sh64.c: Likewise.
558 * elf64-x86-64.c: Likewise.
559 * elflink.c: Likewise.
560 * elfnn-aarch64.c: Likewise.
561 * elfnn-ia64.c: Likewise.
562 * elfxx-mips.c: Likewise.
563 * elfxx-sparc.c: Likewise.
564 * elfxx-tilegx.c: Likewise.
565 * linker.c: Likewise.
566 * pdp11.c: Likewise.
567 * pe-mips.c: Likewise.
568 * reloc.c: Likewise.
569 * reloc16.c: Likewise.
570 * simple.c: Likewise.
571 * vms-alpha.c: Likewise.
572 * xcofflink.c: Likewise.
573 * elf32-rl78.c (get_symbol_value, get_romstart, get_ramstart): Delete
574 status param. Adjust calls to these and linker callbacks throughout.
575 * elf32-rx.c: (get_symbol_value, get_gp, get_romstart,
576 get_ramstart): Delete status param. Adjust calls to these and
577 linker callbacks throughout.
578
579 2016-05-27 Maciej W. Rozycki <macro@imgtec.com>
580
581 * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS16_26>
582 <R_MIPS_26, R_MICROMIPS_26_S1>: Include the addend in JALX's
583 target alignment verification.
584
585 2016-05-27 Maciej W. Rozycki <macro@imgtec.com>
586
587 * elfxx-mips.c (mips_elf_calculate_relocation): Also use the
588 section name if `bfd_elf_string_from_elf_section' returns an
589 empty string.
590
591 2016-05-26 Maciej W. Rozycki <macro@imgtec.com>
592
593 * elfxx-mips.c (_bfd_mips_elf_relocate_section)
594 <bfd_reloc_outofrange>: Use the `%X%H' rather than `%C' format
595 for message. Continue processing rather than returning failure.
596
597 2016-05-25 Maciej W. Rozycki <macro@imgtec.com>
598
599 * elfxx-mips.c (_bfd_mips_elf_relocate_section)
600 <bfd_reloc_outofrange>: Call `->einfo' rather than `->warning'.
601 Call `bfd_set_error'.
602
603 2016-05-25 H.J. Lu <hongjiu.lu@intel.com>
604
605 PR binutils/14625
606 * archive.c (bfd_slurp_armap): Replace
607 bfd_elf64_archive_slurp_armap with
608 _bfd_archive_64_bit_slurp_armap.
609 (bsd_write_armap): Call _bfd_archive_64_bit_write_armap if
610 BFD64 is defined and the archive is too big.
611 (coff_write_armap): Likewise.
612 * archive64.c (bfd_elf64_archive_slurp_armap): Renamed to ...
613 (_bfd_archive_64_bit_slurp_armap): This.
614 (bfd_elf64_archive_write_armap): Renamed to ...
615 (_bfd_archive_64_bit_write_armap): This.
616 * configure.ac: Add --enable-64-bit-archive.
617 (want_64_bit_archive): New. Set to true by default for 64-bit
618 MIPS and s390 ELF targets.
619 (USE_64_BIT_ARCHIVE): New AC_DEFINE.
620 * config.in: Regenerated.
621 * configure: Likewise.
622 * elf64-mips.c (bfd_elf64_archive_functions): Removed.
623 (bfd_elf64_archive_slurp_armap): Likewise.
624 (bfd_elf64_archive_write_armap): Likewise.
625 (bfd_elf64_archive_slurp_extended_name_table): Likewise.
626 (bfd_elf64_archive_construct_extended_name_table): Likewise.
627 (bfd_elf64_archive_truncate_arname): Likewise.
628 (bfd_elf64_archive_read_ar_hdr): Likewise.
629 (bfd_elf64_archive_write_ar_hdr): Likewise.
630 (bfd_elf64_archive_openr_next_archived_file): Likewise.
631 (bfd_elf64_archive_get_elt_at_index): Likewise.
632 (bfd_elf64_archive_generic_stat_arch_elt): Likewise.
633 (bfd_elf64_archive_update_armap_timestamp): Likewise.
634 * elf64-s390.c (bfd_elf64_archive_functions): Removed.
635 (bfd_elf64_archive_slurp_armap): Likewise.
636 (bfd_elf64_archive_write_armap): Likewise.
637 (bfd_elf64_archive_slurp_extended_name_table): Likewise.
638 (bfd_elf64_archive_construct_extended_name_table): Likewise.
639 (bfd_elf64_archive_truncate_arname): Likewise.
640 (bfd_elf64_archive_read_ar_hdr): Likewise.
641 (bfd_elf64_archive_write_ar_hdr): Likewise.
642 (bfd_elf64_archive_openr_next_archived_file): Likewise.
643 (bfd_elf64_archive_get_elt_at_index): Likewise.
644 (bfd_elf64_archive_generic_stat_arch_elt): Likewise.
645 (bfd_elf64_archive_update_armap_timestamp): Likewise.
646 * elfxx-target.h (TARGET_BIG_SYM): Use _bfd_archive_64_bit on
647 BFD_JUMP_TABLE_ARCHIVE if USE_64_BIT_ARCHIVE is defined and
648 bfd_elfNN_archive_functions isn't defined.
649 (TARGET_LITTLE_SYM): Likewise.
650 * libbfd-in.h (_bfd_archive_64_bit_slurp_armap): New prototype.
651 (_bfd_archive_64_bit_write_armap): Likewise.
652 (_bfd_archive_64_bit_slurp_extended_name_table): New macro.
653 (_bfd_archive_64_bit_construct_extended_name_table): Likewise.
654 (_bfd_archive_64_bit_truncate_arname): Likewise.
655 (_bfd_archive_64_bit_read_ar_hdr): Likewise.
656 (_bfd_archive_64_bit_write_ar_hdr): Likewise.
657 (_bfd_archive_64_bit_openr_next_archived_file): Likewise.
658 (_bfd_archive_64_bit_get_elt_at_index): Likewise.
659 (_bfd_archive_64_bit_generic_stat_arch_elt): Likewise.
660 (_bfd_archive_64_bit_update_armap_timestamp): Likewise.
661 * libbfd.h: Regenerated.
662 * plugin.c (plugin_vec): Use _bfd_archive_64_bit on
663 BFD_JUMP_TABLE_ARCHIVE if USE_64_BIT_ARCHIVE is defined.
664
665 2016-05-25 H.J. Lu <hongjiu.lu@intel.com>
666
667 PR ld/20103
668 * cofflink.c (coff_link_check_archive_element): Return TRUE if
669 linker add_archive_element callback returns FALSE.
670 * ecoff.c (ecoff_link_check_archive_element): Likewise.
671 * elf64-ia64-vms.c (elf64_vms_link_add_archive_symbols): Skip
672 archive element if linker add_archive_element callback returns
673 FALSE.
674 * elflink.c (elf_link_add_archive_symbols): Likewise.
675 * pdp11.c (aout_link_check_ar_symbols): Likewise.
676 * vms-alpha.c (alpha_vms_link_add_archive_symbols): Likewise.
677 * xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Likewise.
678 (xcoff_link_check_ar_symbols): Likewise.
679
680 2016-05-24 Maciej W. Rozycki <macro@imgtec.com>
681
682 * elfxx-mips.c (_bfd_mips_elf_relocate_section)
683 <bfd_reloc_outofrange>: Unify error reporting code.
684
685 2016-05-23 Jim Wilson <jim.wilson@linaro.org>
686
687 * elfnn-aarch64.c: Unconditionally enable R_AARCH64_NULL and
688 R_AARCH64_NONE. Use HOWTO64 for R_AARCH64_NULL.
689 * relocs.c: Add BFD_RELOC_AARCH64_NULL.
690 * bfd-in2.h: Regenerate.
691 * libbfd.h: Likewise.
692
693 2016-05-23 Kuba Sejdak <jakub.sejdak@phoesys.com>
694
695 * config.bfd: Add entry for arm-phoenix.
696
697 2016-05-23 Thomas Preud'homme <thomas.preudhomme@arm.com>
698
699 * elf32-arm.c (arm_dedicated_stub_section_padding): New function.
700 (elf32_arm_size_stubs): Declare stub_type in a more outer scope and
701 account for padding for stub section requiring one.
702 (elf32_arm_build_stubs): Add comment to stress the importance of
703 zeroing veneer section content.
704
705 2016-05-23 Thomas Preud'homme <thomas.preudhomme@arm.com>
706
707 * bfd-in.h (bfd_elf32_arm_keep_private_stub_output_sections): Declare
708 bfd hook.
709 * bfd-in2.h: Regenerate.
710 * elf32-arm.c (arm_dedicated_stub_output_section_required): New
711 function.
712 (arm_dedicated_stub_output_section_required_alignment): Likewise.
713 (arm_dedicated_stub_output_section_name): Likewise.
714 (arm_dedicated_stub_input_section_ptr): Likewise.
715 (elf32_arm_create_or_find_stub_sec): Add stub type parameter and
716 function description comment. Add support for dedicated output stub
717 section to given stub types.
718 (elf32_arm_add_stub): Add a stub type parameter and pass it down to
719 elf32_arm_create_or_find_stub_sec.
720 (elf32_arm_create_stub): Pass stub type down to elf32_arm_add_stub.
721 (elf32_arm_size_stubs): Pass stub type when calling
722 elf32_arm_create_or_find_stub_sec for Cortex-A8 erratum veneers.
723 (bfd_elf32_arm_keep_private_stub_output_sections): New function.
724
725 2016-05-20 H.J. Lu <hongjiu.lu@intel.com>
726
727 * elf32-i386.c (elf_i386_check_relocs): Don't check R_386_GOT32
728 when setting need_convert_load.
729
730 2016-05-20 Maciej W. Rozycki <macro@imgtec.com>
731
732 * elfxx-mips.c (mips_elf_read_rel_addend): Adjust the addend for
733 microMIPS JALX.
734
735 2016-05-19 H.J. Lu <hongjiu.lu@intel.com>
736
737 PR ld/20117
738 * elf32-i386.c (elf_i386_convert_load_reloc): Don't check
739 R_386_GOT32X.
740 (elf_i386_convert_load): Don't convert R_386_GOT32.
741
742 2016-05-20 Alan Modra <amodra@gmail.com>
743
744 PR gas/20118
745 * elf.c (elf_fake_sections): Set sh_entsize for SHT_INIT_ARRAY,
746 SHT_FINI_ARRAY, and SHT_PREINIT_ARRAY.
747
748 2016-05-19 Cupertino Miranda <cmiranda@synopsys.com>
749
750 * elf32-arc.c (arc_elf_final_write_processing): Changed.
751 (debug_arc_reloc): Likewise.
752 (elf_arc_relocate_section): Likewise.
753 (elf_arc_check_relocs): Likewise.
754 (elf_arc_adjust_dynamic_symbol): Likewise.
755 (elf_arc_add_symbol_hook): Likewise.
756
757 2016-05-19 Maciej W. Rozycki <macro@imgtec.com>
758
759 * config.bfd: Remove `am34-*-linux*' support.
760
761 2016-05-19 Alan Modra <amodra@gmail.com>
762
763 * elf64-ppc.c (allocate_dynrelocs): Allocate got and other dynamic
764 relocs before plt relocs.
765
766 2016-05-19 Alan Modra <amodra@gmail.com>
767
768 * elf64-ppc.c (ppc64_elf_branch_reloc): Check for NULL owner
769 before dereferencing.
770
771 2016-05-18 Nick Clifton <nickc@redhat.com>
772
773 * po/sv.po: Updated Swedish translation.
774
775 2016-05-18 Alan Modra <amodra@gmail.com>
776
777 * elf32-arm.c (elf32_arm_size_stubs): Free or cache local syms
778 for each BFD. Don't goto error_ret_free_local from outside loop.
779
780 2016-05-17 Maciej W. Rozycki <macro@imgtec.com>
781
782 * elf-s390-common.c (elf_s390_add_symbol_hook): Remove
783 STB_GNU_UNIQUE handling.
784 * elf32-arc.c (elf_arc_add_symbol_hook): Likewise.
785 * elf32-arm.c (elf32_arm_add_symbol_hook): Likewise.
786 * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
787 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
788 * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
789 * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
790 * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
791 * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise.
792 * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
793 * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Likewise.
794 * elf32-i386.c (elf_i386_add_symbol_hook): Remove function.
795 (elf_backend_add_symbol_hook): Remove macro.
796 * elflink.c (elf_link_add_object_symbols): Set `has_gnu_symbols'
797 for STB_GNU_UNIQUE symbols.
798
799 2016-05-16 Maciej W. Rozycki <macro@imgtec.com>
800
801 * elf32-v850.c (v850_elf_copy_notes): New function, factored out
802 from...
803 (v850_elf_copy_private_bfd_data): ... here. Call the new
804 function and `_bfd_elf_copy_private_bfd_data'.
805
806 2016-05-13 H.J. Lu <hongjiu.lu@intel.com>
807
808 PR ld/20093
809 * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Don't convert
810 GOTPCREL relocation against large section.
811
812 2016-05-13 Alan Modra <amodra@gmail.com>
813
814 * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_sections): Use
815 linker dynamic sections in calculating size and address of
816 dynamic tags rather than using output sections. Remove asserts.
817 * elf32-arm.c (elf32_arm_finish_dynamic_sections): Likewise.
818 * elf32-cr16.c (_bfd_cr16_elf_finish_dynamic_sections): Likewise.
819 * elf32-cris.c (elf_cris_finish_dynamic_sections): Likewise.
820 * elf32-i370.c (i370_elf_finish_dynamic_sections): Likewise.
821 * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Likewise.
822 * elf32-m32r.c (m32r_elf_finish_dynamic_sections): Likewise.
823 * elf32-m68k.c (elf_m68k_finish_dynamic_sections): Likewise.
824 * elf32-metag.c (elf_metag_finish_dynamic_sections): Likewise.
825 * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Likewise.
826 * elf32-nds32.c (nds32_elf_finish_dynamic_sections): Likewise.
827 * elf32-nios2.c (nios2_elf32_finish_dynamic_sections): Likewise.
828 * elf32-or1k.c (or1k_elf_finish_dynamic_sections): Likewise.
829 * elf32-s390.c (elf_s390_finish_dynamic_sections): Likewise.
830 * elf32-score.c (s3_bfd_score_elf_finish_dynamic_sections): Likewise.
831 * elf32-score7.c (s7_bfd_score_elf_finish_dynamic_sections): Likewise.
832 * elf32-vax.c (elf_vax_finish_dynamic_sections): Likewise.
833 * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Likewise.
834 * elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Likewise.
835 * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise.
836 * elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Likewise.
837 * elflink.c (bfd_elf_final_link): Likewise.
838 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Likewise.
839 * elfxx-sparc.c (sparc_finish_dyn): Likewise. Adjust error message.
840 * elf32-arc.c (GET_SYMBOL_OR_SECTION): Remove ASSERT arg and
841 don't set doit. Look up dynobj section.
842 (elf_arc_finish_dynamic_sections): Adjust GET_SYMBOL_OR_SECTION
843 invocation and dynamic tag vma calculation. Don't test
844 boolean var == TRUE.
845 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections): Fix
846 DT_JMPREL calc.
847
848 2016-05-13 Alan Modra <amodra@gmail.com>
849
850 * elflink.c (elf_link_sort_relocs): Wrap overlong lines. Fix
851 octets_per_byte. Put dynamic .rela.plt last in link orders.
852 Assign output_offset for reloc sections rather than writing
853 sorted relocs from block corresponding to output_offset.
854
855 2016-05-12 Alan Modra <amodra@gmail.com>
856
857 * elf-bfd.h (elf_reloc_type_class): Put reloc_class_plt last.
858
859 2016-05-11 Andrew Bennett <andrew.bennett@imgtec.com>
860
861 * elfxx-mips.c (print_mips_ases): Add DSPR3.
862
863 2016-05-11 Alan Modra <amodra@gmail.com>
864
865 * elf32-hppa.c (elf32_hppa_init_stub_bfd): New function.
866 (elf32_hppa_check_relocs): Don't set dynobj.
867 (elf32_hppa_size_stubs): Test !SEC_LINKER_CREATED for stub sections.
868 (elf32_hppa_build_stubs): Likewise.
869 * elf32-hppa.h (elf32_hppa_init_stub_bfd): Declare.
870
871 2016-05-11 Alan Modra <amodra@gmail.com>
872
873 PR 20060
874 * elf64-ppc.c (ppc64_elf_tls_setup): Clear forced_local.
875 * elf32-ppc.c (ppc_elf_tls_setup): Likewise.
876
877 2016-05-10 Jiong Wang <jiong.wang@arm.com>
878
879 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Remove redundant
880 aarch64_tls_transition check.
881
882 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
883
884 * elf32-arm.c (enum elf32_arm_stub_type): New max_stub_type
885 enumerator.
886 (arm_stub_sym_claimed): New function.
887 (elf32_arm_create_stub): Use veneered symbol name and section if
888 veneer needs to claim its symbol, and keep logic unchanged otherwise.
889 (arm_stub_claim_sym): New function.
890 (arm_map_one_stub): Call arm_stub_claim_sym if veneer needs to claim
891 veneered symbol, otherwise create local symbol as before.
892
893 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
894
895 * elf32-arm.c (elf32_arm_size_stubs): Use new macros
896 ARM_GET_SYM_BRANCH_TYPE and ARM_SET_SYM_BRANCH_TYPE to respectively get
897 and set branch type of a symbol.
898 (bfd_elf32_arm_process_before_allocation): Likewise.
899 (elf32_arm_relocate_section): Likewise and fix identation along the
900 way.
901 (allocate_dynrelocs_for_symbol): Likewise.
902 (elf32_arm_finish_dynamic_symbol): Likewise.
903 (elf32_arm_swap_symbol_in): Likewise.
904 (elf32_arm_swap_symbol_out): Likewise.
905
906 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
907
908 * bfd-in.h (elf32_arm_size_stubs): Add an output section parameter.
909 * bfd-in2.h: Regenerated.
910 * elf32-arm.c (struct elf32_arm_link_hash_table): Add an output section
911 parameter to add_stub_section callback.
912 (elf32_arm_create_or_find_stub_sec): Get output section from link_sec
913 and pass it down to add_stub_section.
914 (elf32_arm_add_stub): Set section to stub_sec if NULL before using it
915 for error message.
916 (elf32_arm_size_stubs): Add output section parameter to
917 add_stub_section function pointer parameter.
918
919 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
920
921 * elf32-arm.c (elf32_arm_create_stub): New function.
922 (elf32_arm_size_stubs): Use elf32_arm_create_stub for stub creation.
923
924 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
925
926 * elf32-arm.c (enum elf32_arm_stub_type): Delete
927 arm_stub_a8_veneer_lwm enumerator.
928 (arm_stub_a8_veneer_lwm): New unsigned constant to replace
929 aforementioned enumerator.
930 (struct elf32_arm_stub_hash_entry): Delete target_addend
931 field and add source_value.
932 (struct a8_erratum_fix): Delete addend field and add target_offset.
933 (stub_hash_newfunc): Initialize source_value field amd remove
934 initialization for target_addend.
935 (arm_build_one_stub): Stop special casing Thumb relocations: promote
936 the else to being always executed, moving the
937 arm_stub_a8_veneer_b_cond specific code in it. Remove
938 stub_entry->target_addend from points_to computation.
939 (cortex_a8_erratum_scan): Store in a8_erratum_fix structure the offset
940 to target symbol from start of section rather than the offset from the
941 stub address.
942 (elf32_arm_size_stubs): Set stub_entry's source_value and target_value
943 fields from struct a8_erratum_fix's offset and target_offset
944 respectively.
945 (make_branch_to_a8_stub): Rename target variable to loc. Compute
946 veneered_insn_loc and loc using stub_entry's source_value.
947
948 2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
949
950 (elf32_arm_merge_eabi_attributes): Add merging logic for
951 Tag_DSP_extension.
952
953 2016-05-10 Pip Cet <pipcet@gmail.com>
954
955 PR ld/20059
956 * elfxx-target.h (bfd_elfNN_bfd_copy_link_hash_symbol_type):
957 Define as _bfd_generic_copy_link_hash_symbol_type when using
958 generic hash table.
959
960 2016-05-09 Nick Clifton <nickc@redhat.com>
961
962 PR binutils/20063
963 * elf.c (bfd_elf_get_elf_syms): Check for out of range sh_link
964 field before accessing sections array.
965
966 2016-05-09 Christophe Monat <christophe.monat@st.com>
967
968 PR ld/20030
969 * elf32-arm.c (is_thumb2_vldm): Account for T1 (DP) encoding.
970 (stm32l4xx_need_create_replacing_stub): Rename ambiguous nb_regs
971 to nb_words.
972 (create_instruction_vldmia): Add is_dp to disambiguate SP/DP
973 encoding.
974 (create_instruction_vldmdb): Likewise.
975 (stm32l4xx_create_replacing_stub_vldm): is_dp detects DP encoding,
976 uses it to re-encode.
977
978 2016-05-09 Nick Clifton <nickc@redhat.com>
979
980 PR 19938
981 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Revert accidental
982 commit.
983
984 2016-05-09 Alan Modra <amodra@gmail.com>
985
986 * elf64-ppc.c (ppc64_elf_init_stub_bfd): Remove redundant NULL check.
987
988 2016-05-06 H.J. Lu <hongjiu.lu@intel.com>
989
990 PR ld/17550
991 * elf-bfd.h (elf_link_hash_entry): Update comments for indx,
992 documenting that indx == -3 if symbol is defined in a discarded
993 section.
994 * elflink.c (elf_link_add_object_symbols): Set indx to -3 if
995 symbol is defined in a discarded section.
996 (elf_link_output_extsym): Strip a global symbol defined in a
997 discarded section.
998
999 2016-05-06 H.J. Lu <hongjiu.lu@intel.com>
1000
1001 * elf32-i386.c (elf_backend_add_symbol_hook): Defined for Intel
1002 MCU.
1003
1004 2016-05-05 H.J. Lu <hongjiu.lu@intel.com>
1005
1006 * elf32-i386.c (elf_i386_convert_load): Extract the GOT load
1007 conversion to ...
1008 (elf_i386_convert_load_reloc): This. New function.
1009 * elf64-x86-64.c (elf_x86_64_convert_load): Extract the GOT load
1010 conversion to ...
1011 (elf_x86_64_convert_load_reloc): This. New function.
1012
1013 2016-05-05 H.J. Lu <hongjiu.lu@intel.com>
1014
1015 * elf32-i386.c (elf_i386_check_tls_transition): Remove abfd.
1016 Don't check if contents == NULL.
1017 (elf_i386_tls_transition): Add from_relocate_section. Check
1018 from_relocate_section instead of contents != NULL. Update
1019 elf_i386_check_tls_transition call.
1020 (elf_i386_check_relocs): Cache the section contents if
1021 keep_memory is FALSE. Pass FALSE as from_relocate_section to
1022 elf_i386_tls_transition.
1023 (elf_i386_relocate_section): Pass TRUE as from_relocate_section
1024 to elf_i386_tls_transition.
1025 (elf_backend_caches_rawsize): New.
1026 * elf64-x86-64.c (elf_x86_64_check_tls_transition): Don't check
1027 if contents == NULL.
1028 (elf_x86_64_tls_transition): Add from_relocate_section. Check
1029 from_relocate_section instead of contents != NULL.
1030 (elf_x86_64_check_relocs): Cache the section contents if
1031 keep_memory is FALSE. Pass FALSE as from_relocate_section to
1032 elf_x86_64_tls_transition.
1033 (elf_x86_64_relocate_section): Pass TRUE as from_relocate_section
1034 to elf_x86_64_tls_transition.
1035 (elf_backend_caches_rawsize): New.
1036
1037 2016-05-03 Maciej W. Rozycki <macro@imgtec.com>
1038
1039 PR 10549
1040 * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Handle
1041 STB_GNU_UNIQUE.
1042
1043 2016-05-03 Jiong Wang <jiong.wang@arm.com>
1044
1045 * bfd-in.h (bfd_elf64_aarch64_set_options): Update prototype.
1046 * bfd-in2.h (bfd_elf64_aarch64_set_options): Likewise.
1047 * elfnn-aarch64.c (bfd_elfNN_aarch64_set_options): Initialize
1048 no_apply_dynamic_relocs.
1049 (elfNN_aarch64_final_link_relocate): Apply absolute relocations even though
1050 dynamic relocations generated.
1051
1052 2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
1053
1054 * elf32-i386.c (elf_i386_size_dynamic_sections): Move interp
1055 setting to ...
1056 (elf_i386_create_dynamic_sections): Here.
1057 * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Move
1058 interp setting to ...
1059 (elf_x86_64_create_dynamic_sections): Here.
1060
1061 2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
1062
1063 * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take GOT_RELOC
1064 and replace (EH)->has_got_reloc with GOT_RELOC.
1065 (elf_i386_fixup_symbol): Pass has_got_reloc to
1066 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
1067 (elf_i386_allocate_dynrelocs): Likewise.
1068 (elf_i386_relocate_section): Likewise.
1069 (elf_i386_finish_dynamic_symbol): Likewise.
1070 (elf_i386_convert_load): Pass TRUE to
1071 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
1072 * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take
1073 GOT_RELOC and replace (EH)->has_got_reloc with GOT_RELOC.
1074 (elf_x86_64_fixup_symbol): Pass has_got_reloc to
1075 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
1076 (elf_x86_64_allocate_dynrelocs): Likewise.
1077 (elf_x86_64_relocate_section): Likewise.
1078 (elf_x86_64_finish_dynamic_symbol): Likewise.
1079 (elf_x86_64_convert_load): Pass TRUE to
1080 UNDEFINED_WEAK_RESOLVED_TO_ZERO.
1081
1082 2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
1083
1084 * elf32-i386.c (check_relocs_failed): New.
1085 (elf_i386_check_relocs): Set check_relocs_failed on error.
1086 (elf_i386_relocate_section): Skip if check_relocs failed.
1087
1088 2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
1089
1090 * elf64-x86-64.c (elf_x86_64_check_relocs): Set
1091 check_relocs_failed on error.
1092
1093 2016-04-29 Nick Clifton <nickc@redhat.com>
1094
1095 PR 19938
1096 * elf-bfd.h (struct elf_backend_data): Rename
1097 elf_backend_set_special_section_info_and_link to
1098 elf_backend_copy_special_section_fields.
1099 * elfxx-target.h: Likewise.
1100 * elf.c (section_match): Ignore the SHF_INFO_LINK flag when
1101 comparing section flags.
1102 (copy_special_section_fields): New function.
1103 (_bfd_elf_copy_private_bfd_data): Copy the EI_ABIVERSION field.
1104 Perform two scans over special sections. The first one looks for
1105 a direct mapping between the output section and an input section.
1106 The second scan looks for a possible match based upon section
1107 characteristics.
1108 * elf32-arm.c (elf32_arm_copy_special_section_fields): New
1109 function. Handle setting the sh_link field of SHT_ARM_EXIDX
1110 sections.
1111 * elf32-i386.c (elf32_i386_set_special_info_link): Rename to
1112 elf32_i386_copy_solaris_special_section_fields.
1113 * elf32-sparc.c (elf32_sparc_set_special_section_info_link):
1114 Rename to elf32_sparc_copy_solaris_special_section_fields.
1115 * elf64-x86-64.c (elf64_x86_64_set_special_info_link): Rename to
1116 elf64_x86_64_copy_solaris_special_section_fields.
1117
1118 2016-04-28 Nick Clifton <nickc@redhat.com>
1119
1120 * po/zh_CN.po: Updated Chinese (simplified) translation.
1121
1122 2016-04-27 H.J. Lu <hongjiu.lu@intel.com>
1123
1124 PR ld/20006
1125 * elf64-x86-64.c (elf_x86_64_convert_load): Skip debug sections
1126 when estimating distances between output sections.
1127
1128 2016-04-27 Alan Modra <amodra@gmail.com>
1129
1130 * elflink.c (_bfd_elf_is_start_stop): New function.
1131 (_bfd_elf_gc_mark_rsec): Use it.
1132 * elf-bfd.h (_bfd_elf_is_start_stop): Declare.
1133
1134 2016-04-26 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
1135
1136 * elf32-rx.c (rx_set_section_contents): Avoid arithmetic on void *.
1137 * mmo.c (mmo_get_section_contents): Likewise.
1138 (mmo_set_section_contents): Likewise.
1139
1140 2016-04-26 H.J. Lu <hongjiu.lu@intel.com>
1141
1142 * elf-bfd.h (elf_link_hash_table): Update comments for
1143 dynsymcount.
1144 * elflink.c (_bfd_elf_link_renumber_dynsyms): Always count for
1145 the unused NULL entry at the head of dynamic symbol table.
1146 (bfd_elf_size_dynsym_hash_dynstr): Remove dynsymcount != 0
1147 checks.
1148
1149 2016-04-21 H.J. Lu <hongjiu.lu@intel.com>
1150
1151 * elflink.c (_bfd_elf_link_create_dynstrtab): Exclude linker
1152 created file from dynobj.
1153
1154 2016-04-21 H.J. Lu <hongjiu.lu@intel.com>
1155
1156 * elflink.c (_bfd_elf_link_create_dynstrtab): Set dynobj to a
1157 normal input file if possible.
1158
1159 2016-04-21 Nick Clifton <nickc@redhat.com>
1160
1161 * aout-adobe.c: Use _bfd_generic_link_check_relocs.
1162 * aout-target.h: Likewise.
1163 * aout-tic30.c: Likewise.
1164 * binary.c: Likewise.
1165 * bout.c: Likewise.
1166 * coff-alpha.c: Likewise.
1167 * coff-rs6000.c: Likewise.
1168 * coff64-rs6000.c: Likewise.
1169 * coffcode.h: Likewise.
1170 * i386msdos.c: Likewise.
1171 * i386os9k.c: Likewise.
1172 * ieee.c: Likewise.
1173 * ihex.c: Likewise.
1174 * libbfd-in.h: Likewise.
1175 * libecoff.h: Likewise.
1176 * mach-o-target.c: Likewise.
1177 * mmo.c: Likewise.
1178 * nlm-target.h: Likewise.
1179 * oasys.c: Likewise.
1180 * pef.c: Likewise.
1181 * plugin.c: Likewise.
1182 * ppcboot.c: Likewise.
1183 * som.c: Likewise.
1184 * srec.c: Likewise.
1185 * tekhex.c: Likewise.
1186 * versados.c: Likewise.
1187 * vms-alpha.c: Likewise.
1188 * xsym.c: Likewise.
1189 * elfxx-target.h: Use _bfd_elf_link_check_relocs.
1190 * linker.c (bfd_link_check_relocs): New function.
1191 (_bfd_generic_link_check_relocs): New function.
1192 * targets.c (BFD_JUMP_TABLE_LINK): Add initialization of
1193 _bfd_link_check_relocs field.
1194 (struct bfd_target)L Add _bfd_link_check_relocs field.
1195 * bfd-in2.h: Regenerate.
1196 * libbfd.h: Regenerate.
1197
1198 2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
1199
1200 * elf32-i386.c (elf_i386_gc_sweep_hook): Removed.
1201 (elf_backend_gc_sweep_hook): Likewise.
1202 * elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.
1203 (elf_backend_gc_sweep_hook): Likewise.
1204
1205 2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
1206
1207 * elflink.c (_bfd_elf_link_check_relocs): Don't check relocations
1208 in excluded sections
1209
1210 2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
1211
1212 PR ld/19969
1213 * elf64-x86-64.c (check_relocs_failed): New.
1214 (elf_x86_64_need_pic): Moved before elf_x86_64_check_relocs.
1215 Support relocation agaist local symbol. Set check_relocs_failed.
1216 (elf_x86_64_check_relocs): Use elf_x86_64_need_pic. Check
1217 R_X86_64_32 relocation overflow.
1218 (elf_x86_64_relocate_section): Skip if check_relocs failed.
1219 Update one elf_x86_64_need_pic and remove one elf_x86_64_need_pic.
1220
1221 2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
1222
1223 * elf32-i386.c (elf_i386_check_relocs): Call
1224 _bfd_elf_create_ifunc_sections only for STT_GNU_IFUNC symbol.
1225 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
1226
1227 2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
1228
1229 * elf-bfd.h (_bfd_elf_link_check_relocs): New.
1230 * elflink.c (_bfd_elf_link_check_relocs): New function.
1231 (elf_link_add_object_symbols): Call _bfd_elf_link_check_relocs
1232 if check_relocs_after_open_input is FALSE.
1233
1234 2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
1235
1236 * cache.c: Update old style function definitions.
1237 * elf32-m68k.c: Likewise.
1238 * elf64-mmix.c: Likewise.
1239 * stab-syms.c: Likewise.
1240
1241 2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
1242
1243 * elf32-arm.c (put_thumb2_insn): Change argument type to bfd_byte *.
1244
1245 2016-04-15 H.J. Lu <hongjiu.lu@intel.com>
1246
1247 * Makefile.in: Regenerated with automake 1.11.6.
1248 * aclocal.m4: Likewise.
1249 * doc/Makefile.in: Likewise.
1250
1251 2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
1252
1253 * reloc.c: Add BFD_RELOC_ARC_NPS_CMEM16 entry.
1254 * bfd-in2.h: Regenerate.
1255 * libbfd.h: Regenerate.
1256 * elf32-arc.c: Add 'opcode/arc.h' include.
1257 (struct arc_relocation_data): Add symbol_name.
1258 (arc_special_overflow_checks): New function.
1259 (arc_do_relocation): Use arc_special_overflow_checks, reindent as
1260 required, add an extra comment.
1261 (elf_arc_relocate_section): Setup symbol_name in reloc_data.
1262
1263 2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
1264
1265 * elf32-arc.c (tls_got_entries): Add 'TLS_GOT_' prefix to all
1266 entries.
1267 (elf_arc_relocate_section): Update enum uses.
1268 (elf_arc_check_relocs): Likewise.
1269 (elf_arc_finish_dynamic_symbol): Likewise.
1270
1271 2016-04-14 H.J. Lu <hongjiu.lu@intel.com>
1272
1273 * elf.c (_bfd_elf_copy_private_bfd_data): Replace "link" with
1274 "sh_link".
1275
1276 2016-04-14 Nick Clifton <nickc@redhat.com>
1277
1278 PR target/19938
1279 * elf-bbfd.h (struct elf_backend_data): New field:
1280 elf_strtab_flags.
1281 New field: elf_backend_set_special_section_info_and_link
1282 * elfxx-target.h (elf_backend_strtab_flags): Define if not already
1283 defined.
1284 (elf_backend_set_special_section_info_and_link): Define if not
1285 already defined.
1286 (elfNN_bed): Use elf_backend_set_special_section_info_and_link and
1287 elf_backend_strtab_flags macros to initialise fields in structure.
1288 * elf.c (_bfd_elf_make_section_from_shdr): Check for SHF_STRINGS
1289 being set even if SHF_MERGE is not set.
1290 (elf_fake_sections): Likewise.
1291 (section_match): New function. Matches two ELF sections based
1292 upon fixed characteristics.
1293 (find_link): New function. Locates a section in a BFD that
1294 matches a section in a different BFD.
1295 (_bfd_elf_copy_private_bfd_data): Copy the sh_info and sh_link
1296 fields of reserved sections.
1297 (bfd_elf_compute_section_file_positions): Set the flags for the
1298 .shstrtab section based upon the elf_strtab_flags field in the
1299 elf_backend_data structure.
1300 (swap_out_syms): Likewise for the .strtab section.
1301 * elflink.c (bfd_elf_final_link): Set the flags for the
1302 .strtab section based upon the elf_strtab_flags field in the
1303 elf_backend_data structure.
1304 * elf32-i386.c (elf32_i386_set_special_info_link): New function.
1305 (elf_backend_strtab_flags): Set to SHF_STRINGS for Solaris
1306 targets.
1307 (elf_backend_set_special_section_info_and_link): Define for
1308 Solaris targets.
1309 * elf32-sparc.c: Likewise.
1310 * elf64-x86-64.c: Likewise.
1311
1312 2016-04-11 H.J. Lu <hongjiu.lu@intel.com>
1313
1314 PR ld/19939
1315 * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer
1316 to bfd_boolean.
1317 * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated.
1318 Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc
1319 applies to read-only section.
1320 * elf32-i386.c (elf_i386_link_hash_table): Add
1321 readonly_dynrelocs_against_ifunc.
1322 (elf_i386_allocate_dynrelocs): Updated.
1323 (elf_i386_size_dynamic_sections): Issue an error for read-only
1324 segment with dynamic IFUNC relocations only if
1325 readonly_dynrelocs_against_ifunc is TRUE.
1326 * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
1327 readonly_dynrelocs_against_ifunc.
1328 (elf_x86_64_allocate_dynrelocs): Updated.
1329 (elf_x86_64_size_dynamic_sections): Issue an error for read-only
1330 segment with dynamic IFUNC relocations only if
1331 readonly_dynrelocs_against_ifunc is TRUE.
1332 * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs):
1333 Updated.
1334
1335 2016-04-06 Thomas Preud'homme <thomas.preudhomme@arm.com>
1336
1337 * elf32-arm.c (elf32_arm_size_stubs): Move error_ret_free_local to be
1338 a fall through from error_ret_free_internal. Free local_syms in
1339 error_ret_free_local if allocated from bfd_elf_get_elf_syms ().
1340
1341 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
1342
1343 * elf32-arc.c (plt_do_relocs_for_symbol): Changed.
1344 (relocate_plt_for_entry): Likewise.
1345
1346 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
1347
1348 * elf32-arc.c (elf_arc_check_relocs): Changed
1349
1350 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
1351
1352 * elf32-arc.c (name_for_global_symbol): Changed assert.
1353 (get_replace_function): Created.:
1354 (struct arc_relocation_data): Changed to signed types.
1355 (defines S, L, P, PDATA): Casted to signed type.
1356 (defines SECTSTART, _SDA_BASE_, TLS_REL): Likewise.
1357 (PRINT_DEBUG_RELOC_INFO_BEFORE): Changed.
1358 (arc_do_relocation): Changed.
1359
1360 2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
1361
1362 * elf32-arc.c (name_for_global_symbol): Added assert to check for
1363 symbol index.
1364 (elf_arc_relocate_section): Added and changed asserts, validating
1365 the synamic symbol index.
1366 (elf_arc_finish_dynamic_symbol): Do not fill the dynamic
1367 relocation if symbol has dynindx set to -1.
1368
1369 2016-04-05 Maciej W. Rozycki <macro@imgtec.com>
1370
1371 * elflink.c (elf_link_add_object_symbols): Always turn hidden
1372 and internal symbols which have a dynamic index into local
1373 ones.
1374
1375 2016-04-04 Nick Clifton <nickc@redhat.com>
1376
1377 PR 19872
1378 * dwarf2.c (parse_comp_unit): Skip warning about unrecognised
1379 version number if the version is zero.
1380
1381 2016-04-01 Alan Modra <amodra@gmail.com>
1382
1383 PR 19886
1384 * elflink.c (on_needed_list): Recursively check needed status.
1385 (elf_link_add_object_symbols): Adjust.
1386
1387 2016-03-30 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
1388
1389 * elf32-avr.c (avr_elf32_load_records_from_section): Free
1390 internal_relocs only if they aren't cached.
1391
1392 2016-03-29 Nick Clifton <nickc@redhat.com>
1393
1394 PR 17334
1395 * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax
1396 assertion on the size of the got section to allow it to be bigger
1397 than the number of relocs.
1398
1399 2016-03-29 Toni Spets <toni.spets@iki.fi>
1400
1401 PR 19878
1402 * coffcode.h (coff_write_object_contents): Revert accidental
1403 2014-11-10 change.
1404
1405 2016-03-22 Alan Modra <amodra@gmail.com>
1406
1407 PR 19850
1408 * dwarf2.c (read_attribute_value): Skip info_ptr check for
1409 DW_FORM_flag_present.
1410
1411 2016-03-22 Nick Clifton <nickc@redhat.com>
1412
1413 * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an
1414 architecture name for backwards compatibility.
1415
1416 * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible
1417 unbounded stack use.
1418
1419 * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a
1420 sufficiently recent version of GCC.
1421 * configure: Regenerate.
1422
1423 2016-03-22 Alan Modra <amodra@gmail.com>
1424
1425 PR 19851
1426 * plugin.c (try_load_plugin): Avoid -Wstack-usage warning.
1427
1428 2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
1429
1430 * archures.c (bfd_mach_arc_nps400): Define.
1431 * bfd-in2.h: Regenerate.
1432 * cpu-arc.c (arch_info_struct): New entry for nps400, renumber
1433 some existing entries to make space.
1434 * elf32-arc.c (arc_elf_object_p): Add nps400 case.
1435 (arc_elf_final_write_processing): Likewise.
1436
1437 2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
1438
1439 * elf32-arc.c (arc_elf_print_private_bfd_data): Remove use of
1440 EF_ARC_CPU_GENERIC.
1441 (arc_elf_final_write_processing): Don't bother setting cpu field
1442 in e_flags, this will have been set elsewhere.
1443
1444 2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
1445
1446 * elf32-arc.c (arc_elf_final_write_processing): Switch to using
1447 EF_ARC_MACH_MSK.
1448
1449 2016-03-21 Nick Clifton <nickc@redhat.com>
1450
1451 * warning.m4 (GCC_WARN_CFLAGS): Add -Wstack-usage=262144
1452 * configure: Regenerate.
1453 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Replace use of
1454 alloca with call to xmalloc.
1455 * elf32-nds32.c: Likewise.
1456 * elf64-hppa.c: Likewise.
1457 * elfxx-mips.c: Likewise.
1458 * pef.c: Likewise.
1459 * pei-x86_64.c: Likewise.
1460 * som.c: Likewise.
1461 * xsym.c: Likewise.
1462
1463 2016-03-15 H.J. Lu <hongjiu.lu@intel.com>
1464
1465 PR ld/19827
1466 * elf32-i386.c (elf_i386_check_relocs): Bind defined symbol
1467 locally in PIE.
1468 (elf_i386_relocate_section): Likewise.
1469 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
1470 (elf_x86_64_relocate_section): Likewise.
1471
1472 2016-03-15 H.J. Lu <hongjiu.lu@intel.com>
1473
1474 PR ld/19807
1475 * elf64-x86-64.c (elf_x86_64_relocate_section): Check
1476 no_reloc_overflow_check to diable R_X86_64_32/R_X86_64_32S
1477 relocation overflow check.
1478
1479 2016-03-14 H.J. Lu <hongjiu.lu@intel.com>
1480
1481 * bfd-in2.h: Regenerated.
1482
1483 2016-03-11 Dan Gissel <dgisselq@ieee.org>
1484
1485 PR 19713
1486 * elf.c (_bfd_elf_section_offset): Ensure that the returned offset
1487 uses bytes not octets.
1488 * elflink.c (resolve_section): Likewise.
1489 Add a bfd parameter.
1490 (eval_section): Pass the input_bfd to resolve_section.
1491 (bfd_elf_perform_complex_relocation): Convert byte offset to
1492 octets before read and writing values.
1493 (elf_link_input_bfd): Add byte to octet conversions.
1494 (elf_reloc_link_order): Likewise.
1495 (elf_fixup_link_order): Likewise.
1496 (bfd_elf_final_link): Likewise.
1497 * reloc.c (_bfd_final_link_relocate): Likewise.
1498 * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
1499
1500 2016-03-10 Nick Clifton <nickc@redhat.com>
1501
1502 * config.bfd: Mark the i370 target as obsolete.
1503
1504 2016-03-09 Pedro Alves <palves@redhat.com>
1505
1506 * cpu-v850.c (N): Append ":old-gcc-abi" instead of " (using old
1507 gcc ABI)" to printable name.
1508 * cpu-v850_rh850.c (bfd_v850_rh850_arch): Use "v850:rh850" instead
1509 of "v850-rh850" as printable name.
1510
1511 2016-03-09 Leon Winter <winter-gcc@bfw-online.de>
1512
1513 PR ld/19623
1514 * cofflink.c (_bfd_coff_generic_relocate_section): Do not apply
1515 relocations against absolute symbols.
1516
1517 2016-03-09 Alan Modra <amodra@gmail.com>
1518
1519 PR binutils/19775
1520 * coff-alpha.c (alpha_ecoff_openr_next_archived_file): Allow zero
1521 length elements in the archive.
1522
1523 2016-03-08 H.J. Lu <hongjiu.lu@intel.com>
1524
1525 PR ld/19789
1526 * elflink.c (elf_link_add_object_symbols): Create dynamic sections
1527 for -E/--dynamic-list only when not relocatable.
1528
1529 2016-03-08 H.J. Lu <hongjiu.lu@intel.com>
1530
1531 PR ld/19784
1532 * elf32-i386.c (elf_i386_check_relocs): Increment PLT reference
1533 count for locally defined local IFUNC symbols in shared object.
1534 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
1535
1536 2016-03-08 H.J. Lu <hongjiu.lu@intel.com>
1537
1538 PR ld/19579
1539 * elflink.c (_bfd_elf_merge_symbol): Group common symbol checking
1540 together.
1541
1542 2016-03-08 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
1543 Andrew Burgess <andrew.burgess@embecosm.com>
1544
1545 * elf32-arc.c (arc_bfd_get_32): Becomes an alias for bfd_get_32.
1546 (arc_bfd_put_32): Becomes an alias for bfd_put_32.
1547 (arc_elf_howto_init): Added assert to validate relocations.
1548 (get_middle_endian_relocation): Delete.
1549 (middle_endian_convert): New function.
1550 (ME): Redefine, now does nothing.
1551 (IS_ME): New define.
1552 (arc_do_relocation): Extend the attached 'ARC_RELOC_HOWTO'
1553 definition to call middle_endian_convert. Add a new local
1554 variable and make use of this throughout. Added call to
1555 arc_bfd_get_8 and arc_bfd_put_8 for 8 bit relocations.
1556
1557 2016-03-07 Nick Clifton <nickc@redhat.com>
1558
1559 PR binutils/19775
1560 * archive.c (bfd_generic_openr_next_archived_file): Allow zero
1561 length elements in the archive.
1562
1563 2016-03-07 Jiong Wang <jiong.wang@arm.com>
1564
1565 * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Always create .got
1566 section if the symbol "_GLOBAL_OFFSET_TABLE_" is referenced.
1567
1568 2016-03-04 H.J. Lu <hongjiu.lu@intel.com>
1569
1570 PR ld/19579
1571 * elflink.c (_bfd_elf_merge_symbol): Treat common symbol in
1572 executable as definition if the new definition comes from a
1573 shared library.
1574
1575 2016-03-02 Alan Modra <amodra@gmail.com>
1576
1577 * Makefile.in: Regenerate.
1578 * po/SRC-POTFILES.in: Regenerate.
1579
1580 2016-02-29 Cupertino Miranda <cmiranda@synopsys.com>
1581
1582 * elf32-arc.c (elf_arc_relocate_section): Added rules to fix the
1583 relocation addend when sections get merged.
1584
1585 2016-02-29 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
1586
1587 * elf32-arc.c (arc_elf_final_write_processing): Add condition to
1588 the flag change.
1589 (elf_arc_relocate_section): Fixes and conditions to support PIE.
1590 Assert for code sections dynamic relocs.
1591
1592 2016-02-26 Renlin Li <renlin.li@arm.com>
1593
1594 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix signed overflow
1595 check for MOVW_SABS_G0, MOVW_SABS_G1, MOVW_SABS_G2.
1596
1597 2016-02-26 H.J. Lu <hongjiu.lu@intel.com>
1598
1599 PR ld/19609
1600 * elf32-i386.c (elf_i386_convert_load): Convert to R_386_32 for
1601 load with locally bound symbols if PIC is false or there is no
1602 base register. Optimize branch to 0 if PIC is false.
1603 (elf_i386_relocate_section): Don't generate dynamic relocations
1604 against undefined weak symbols if PIC is false.
1605 * elf64-x86-64.c (elf_x86_64_convert_load): Disable optimization
1606 if we can't estimate relocation overflow with --no-relax.
1607 Convert to R_X86_64_32S/R_X86_64_32 for load with locally bound
1608 symbols if PIC is false. Optimize branch to 0 if PIC is false.
1609 (elf_x86_64_relocate_section): Don't generate dynamic relocations
1610 against undefined weak symbols if PIC is false.
1611
1612 2016-02-26 H.J. Lu <hongjiu.lu@intel.com>
1613
1614 PR ld/19645
1615 * bfd.c (bfd): Change flags to 20 bits.
1616 (BFD_CONVERT_ELF_COMMON): New.
1617 (BFD_USE_ELF_STT_COMMON): Likewise.
1618 (BFD_FLAGS_SAVED): Add BFD_CONVERT_ELF_COMMON and
1619 BFD_USE_ELF_STT_COMMON.
1620 (BFD_FLAGS_FOR_BFD_USE_MASK): Likewise.
1621 * configure.ac: Remove --enable-elf-stt-common.
1622 * elf.c (swap_out_syms): Choose STT_COMMON or STT_OBJECT for
1623 common symbol depending on BFD_CONVERT_ELF_COMMON and
1624 BFD_USE_ELF_STT_COMMON.
1625 * elfcode.h (elf_slurp_symbol_table): Set BSF_ELF_COMMON for
1626 STT_COMMON.
1627 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Also check
1628 STT_COMMON.
1629 (elf_link_convert_common_type): New function.
1630 (elf_link_output_extsym): Choose STT_COMMON or STT_OBJECT for
1631 common symbol depending on BFD_CONVERT_ELF_COMMON and
1632 BFD_USE_ELF_STT_COMMON. Set sym.st_info after sym.st_shndx.
1633 * elfxx-target.h (TARGET_BIG_SYM): Add BFD_CONVERT_ELF_COMMON
1634 and BFD_USE_ELF_STT_COMMON to object_flags.
1635 (TARGET_LITTLE_SYM): Likewise.
1636 * syms.c (BSF_KEEP_G): Renamed to ...
1637 (BSF_ELF_COMMON): This.
1638 * bfd-in2.h: Regenerated.
1639 * config.in: Likewise.
1640 * configure: Likewise.
1641
1642 2016-02-26 H.J. Lu <hongjiu.lu@intel.com>
1643
1644 PR ld/19636
1645 PR ld/19704
1646 PR ld/19719
1647 * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
1648 (elf_i386_link_hash_entry): Add has_got_reloc and
1649 has_non_got_reloc.
1650 (elf_i386_link_hash_table): Add interp.
1651 (elf_i386_link_hash_newfunc): Initialize has_got_reloc and
1652 has_non_got_reloc.
1653 (elf_i386_copy_indirect_symbol): Copy has_got_reloc and
1654 has_non_got_reloc.
1655 (elf_i386_check_relocs): Set has_got_reloc and has_non_got_reloc.
1656 (elf_i386_fixup_symbol): New function.
1657 (elf_i386_pie_finish_undefweak_symbol): Likewise.
1658 (elf_i386_allocate_dynrelocs): Don't allocate space for dynamic
1659 relocations and discard relocations against resolved undefined
1660 weak symbols in executable. Don't make resolved undefined weak
1661 symbols in executable dynamic. Keep dynamic non-GOT/non-PLT
1662 relocation against undefined weak symbols in PIE.
1663 (elf_i386_size_dynamic_sections): Set interp to .interp section.
1664 (elf_i386_relocate_section): Don't generate dynamic relocations
1665 against resolved undefined weak symbols in PIE, except for
1666 R_386_PC32.
1667 (elf_i386_finish_dynamic_symbol): Keep PLT/GOT entries without
1668 dynamic PLT/GOT relocations for resolved undefined weak symbols.
1669 Don't generate dynamic relocation against resolved undefined weak
1670 symbol in executable.
1671 (elf_i386_finish_dynamic_sections): Call
1672 elf_i386_pie_finish_undefweak_symbol on all symbols in PIE.
1673 (elf_backend_fixup_symbol): New.
1674 * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New.
1675 (elf_x86_64_link_hash_entry): Add has_got_reloc and
1676 has_non_got_reloc.
1677 (elf_x86_64_link_hash_table): Add interp.
1678 (elf_x86_64_link_hash_newfunc): Initialize has_got_reloc and
1679 has_non_got_reloc.
1680 (elf_x86_64_copy_indirect_symbol): Copy has_got_reloc and
1681 has_non_got_reloc.
1682 (elf_x86_64_check_relocs): Set has_got_reloc and
1683 has_non_got_reloc.
1684 (elf_x86_64_fixup_symbol): New function.
1685 (elf_x86_64_pie_finish_undefweak_symbol): Likewise.
1686 (elf_x86_64_allocate_dynrelocs): Don't allocate space for dynamic
1687 relocations and discard relocations against resolved undefined
1688 weak symbols in executable. Don't make resolved undefined weak
1689 symbols in executable dynamic.
1690 (elf_x86_64_size_dynamic_sections): Set interp to .interp section.
1691 (elf_x86_64_relocate_section): Check relocation overflow for
1692 dynamic relocations against unresolved weak undefined symbols.
1693 Don't generate dynamic relocations against resolved weak
1694 undefined symbols in PIE.
1695 (elf_x86_64_finish_dynamic_symbol): Keep PLT/GOT entries without
1696 dynamic PLT/GOT relocations for resolved undefined weak symbols.
1697 Don't generate dynamic relocation against resolved undefined weak
1698 symbol in executable.
1699 (elf_x86_64_finish_dynamic_sections): Call
1700 elf_x86_64_pie_finish_undefweak_symbol on all symbols in PIE.
1701 (elf_backend_fixup_symbol): New.
1702
1703 2016-02-26 Alan Modra <amodra@gmail.com>
1704
1705 * elf64-ppc.c (create_linkage_sections): Create sfpr when
1706 save_restore_funcs, rest of sections when not relocatable.
1707 (ppc64_elf_init_stub_bfd): Always call create_linkage_sections.
1708 (sfpr_define): Define all symbols on emitted code.
1709 (ppc64_elf_func_desc_adjust): Adjust for sfpr now being created
1710 when relocatable. Move sfpr_define loop earlier.
1711
1712 2016-02-24 H.J. Lu <hongjiu.lu@intel.com>
1713
1714 * elf64-x86-64.c (elf_x86_64_need_pic): New function.
1715 (elf_x86_64_relocate_section): Use it. Replace
1716 x86_64_elf_howto_table[r_type] with howto.
1717
1718 2016-02-24 H.J. Lu <hongjiu.lu@intel.com>
1719
1720 PR ld/19698
1721 * elflink.c (bfd_elf_record_link_assignment): Set versioned if
1722 symbol version is unknown.
1723
1724 2016-02-24 H.J. Lu <hongjiu.lu@intel.com>
1725
1726 * elf32-i386.c (elf_i386_allocate_dynrelocs): Set plt_got.offset
1727 to (bfd_vma) -1 when setting needs_plt to 0.
1728 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
1729
1730 2016-02-23 H.J. Lu <hongjiu.lu@intel.com>
1731
1732 * elflink.c (bfd_elf_record_link_assignment): Check for shared
1733 library, instead of PIC, and don't check PDE when making linker
1734 assigned symbol dynamic.
1735
1736 2016-02-23 Faraz Shahbazker <faraz.shahbazker@imgtec.com>
1737
1738 * bfd/elfxx-mips.c (_bfd_mips_post_process_headers): Increment
1739 ABIVERSION for non-executable stack.
1740
1741 2016-02-23 Rich Felker <bugdal@aerifal.cx>
1742
1743 PR target/19516
1744 * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol):
1745 Always produce a RELATIVE reloc for a local symbol.
1746
1747 2016-02-23 Hans-Peter Nilsson <hp@axis.com>
1748
1749 Fix test-case ld-elf/pr19617b
1750 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
1751 discard unused non-function symbols when --dynamic-list-data.
1752
1753 2016-02-22 H.J. Lu <hongjiu.lu@intel.com>
1754
1755 * elflink.c (_bfd_elf_link_renumber_dynsyms): Always create the
1756 dynsym section, even if it is empty, with dynamic sections.
1757
1758 2016-02-22 H.J. Lu <hongjiu.lu@intel.com>
1759
1760 * syms.c: Remove BSF_COMMON from comments.
1761 * bfd-in2.h: Regenerated.
1762
1763 2016-02-22 Jiong Wang <jiong.wang@arm.com>
1764
1765 * elfnn-aarch64. (aarch64_type_of_stub): Remove redundation calcuation
1766 for destination. Remove useless function parameters.
1767 (elfNN_aarch64_size_stubs): Update parameters for aarch64_type_of_stub.
1768
1769 2016-02-19 Nick Clifton <nickc@redhat.com>
1770
1771 PR ld/19629
1772 * aoutx.h (aout_link_add_symbols): Check for out of range string
1773 table offsets.
1774
1775 PR ld/19628
1776 * reloc.c (bfd_generic_get_relocated_section_contents): Stop
1777 processing if we encounter a reloc without an associated symbol.
1778
1779 2016-02-18 H.J. Lu <hongjiu.lu@intel.com>
1780
1781 PR ld/19617
1782 * elflink.c (elf_link_add_object_symbols): Always create dynamic
1783 sections for -E/--dynamic-list.
1784
1785 2016-02-17 H.J. Lu <hongjiu.lu@intel.com>
1786
1787 * elf64-x86-64.c (elf_backend_omit_section_dynsym): New. Defined
1788 to bfd_true.
1789
1790 2016-02-16 Joseph Myers <joseph@codesourcery.com>
1791
1792 * plugin.c (plugin_vec): Set match priority to 255.
1793 * format.c (bfd_check_format_matches) [BFD_SUPPORTS_PLUGINS]: When
1794 matching against the plugin vector, take priority from there not
1795 from TEMP.
1796
1797 2016-02-15 Nick Clifton <nickc@redhat.com>
1798
1799 * elf-bfd.h (struct bfd_elf_special_section): Use unsigned values
1800 for length and type fields. Use a signed value for the
1801 suffix_length field.
1802
1803 2016-02-10 H.J. Lu <hongjiu.lu@intel.com>
1804
1805 PR ld/19601
1806 * elf32-i386.c (elf_i386_relocate_section): Mask off the least
1807 significant bit in GOT offset for R_386_GOT32X.
1808
1809 2016-02-10 Nick Clifton <nickc@redhat.com>
1810
1811 PR 19405
1812 * elf32-nios2.c (nios2_elf32_install_imm16): Allow for signed
1813 immediate values.
1814 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Limit the
1815 number of messages about FDE encoding preventing .eh_frame_hdr
1816 generation.
1817
1818 2016-02-09 Nick Clifton <nickc@redhat.com>
1819
1820 * oasys.c (oasys_archive_p): Fix indentation.
1821 * elf32-nds32.c (nds32_elf_relax_section): Use an unsigned
1822 constant for left shifting.
1823
1824 * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Add a more
1825 helpful warning message to explain why certain AArch64 relocs
1826 might overflow.
1827
1828 2016-02-05 Simon Marchi <simon.marchi@ericsson.com>
1829
1830 * pe-mips.c (coff_mips_reloc): Fix formatting.
1831
1832 2016-02-05 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
1833
1834 * cpu-arc.c: Change default archure from bfd_mach_arc_arcv2
1835 to bfd_mach_arc_arc600.
1836
1837 2016-02-04 Alan Modra <amodra@gmail.com>
1838
1839 * elf64-ppc.c (ppc64_elf_relocate_section): Adjust last patch
1840 for big-endian.
1841
1842 2016-02-02 H.J. Lu <hongjiu.lu@intel.com>
1843
1844 PR ld/19542
1845 * elf64-x86-64.c (elf_x86_64_convert_load): Store the estimated
1846 distances in the compressed_size field of the output section.
1847
1848 2016-02-02 Alan Modra <amodra@gmail.com>
1849
1850 * elf64-ppc.c (ppc64_elf_relocate_section): Further restrict
1851 ELFv2 entry optimization.
1852
1853 2016-02-02 H.J. Lu <hongjiu.lu@intel.com>
1854
1855 PR binutils/19547
1856 * elf.c (assign_section_numbers): Clear HAS_RELOC if there are
1857 no relocations in relocatable files.
1858
1859 2016-02-01 H.J. Lu <hongjiu.lu@intel.com>
1860
1861 PR ld/19553
1862 * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
1863 if a symbol from a library loaded via DT_NEEDED doesn't match
1864 the symbol referenced by regular object.
1865
1866 2016-02-01 Nathaniel Smith <njs@pobox.com>
1867
1868 * peicode.h (pe_ILF_build_a_bfd): Create an import symbol for both
1869 CODE and DATA.
1870
1871 2016-02-01 Alan Modra <amodra@gmail.com>
1872
1873 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Don't abort on
1874 an out of range reloc_index.
1875 * elf32-i386.c (elf_i386_get_plt_sym_val): Likewise.
1876
1877 2016-02-01 Kamil Rytarowski <n54@gmx.com>
1878
1879 * Makefile.am (OPTIONAL_BACKENDS): Add netbsd-core.lo.
1880 (OPTIONAL_BACKENDS_CFILES): Add netbsd-core.c.
1881 * Makefile.in: Regenerated.
1882
1883 2016-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
1884
1885 * elf64-s390.c (elf_s390_reloc_name_lookup): Fix indentation.
1886
1887 2016-01-31 John David Anglin <danglin@gcc.gnu.org>
1888
1889 PR ld/19526
1890 * elf32-hppa.c (elf32_hppa_final_link): Don't sort non-regular output
1891 files.
1892 * elf64-hppa.c (elf32_hppa_final_link): Likewise. Remove retval.
1893
1894 2016-01-30 H.J. Lu <hongjiu.lu@intel.com>
1895
1896 PR ld/19539
1897 * elf32-i386.c (elf_i386_reloc_type_class): Check relocation
1898 against STT_GNU_IFUNC symbol only with dynamic symbols.
1899 * elf64-x86-64.c (elf_x86_64_reloc_type_class): Likewise.
1900
1901 2016-01-28 H.J. Lu <hongjiu.lu@intel.com>
1902
1903 PR binutils/19523
1904 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Set BFD_DECOMPRESS to
1905 decompress debug sections.
1906
1907 2016-01-25 Maciej W. Rozycki <macro@imgtec.com>
1908
1909 * elf32-arc.c (elf_arc_finish_dynamic_symbol): Rename `index' to
1910 `dynindx'.
1911
1912 2016-01-25 Nick Clifton <nickc@redhat.com>
1913
1914 PR target/19435
1915 * mach-o.c (bfd_mach_o_close_and_cleanup): Suppress code to free
1916 dsym filename buffer.
1917
1918 2016-01-24 Maciej W. Rozycki <macro@imgtec.com>
1919
1920 * elfxx-mips.c (BZ16_REG_FIELD): Simplify calculation.
1921
1922 2016-01-24 Maciej W. Rozycki <macro@imgtec.com>
1923
1924 * elfxx-mips.c (BZ16_REG): Correct calculation.
1925
1926 2016-01-21 Nick Clifton <nickc@redhat.com>
1927
1928 * elf32-arc.c (ADD_RELA): Fix compile time warning errors by
1929 changing the type of _loc to be bfd_byte *.
1930 (elf_arc_finish_dynamic_symbol): Likewise.
1931
1932 2016-01-21 Nick Clifton <nickc@redhat.com>
1933
1934 PR ld/19455
1935 * elf32-arm.c (elf32_arm_create_dynamic_sections): Set the ELF
1936 class of the linker stub bfd.
1937 (elf32_arm_check_relocs): Skip check for pic format after
1938 processing a vxWorks R_ARM_ABS12 reloc.
1939 * elflink.c (bfd_elf_final_link): Check for ELFCLASSNONE when
1940 reporting a class mismatch.
1941
1942 2016-01-21 Jiong Wang <jiong.wang@arm.com>
1943
1944 * elfnn-aarch64.c (aarch64_type_of_stub): Allow insert long branch
1945 veneer for sym_sec != input_sec.
1946 (elfNN_aarch64_size_stub): Support STT_SECTION symbol.
1947 (elfNN_aarch64_final_link_relocate): Take rela addend into account when
1948 calculation destination.
1949
1950 2016-01-21 Alan Modra <amodra@gmail.com>
1951
1952 * elf-linux-core.h (swap_linux_prpsinfo32_out): New function.
1953 (swap_linux_prpsinfo64_out): New function.
1954 (LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
1955 (LINUX_PRPSINFO64_SWAP_FIELDS): Delete.
1956 * elf.c (elfcore_write_linux_prpsinfo32): Adjust. Don't memset.
1957 (elfcore_write_linux_prpsinfo64): Likewise.
1958 * elf32-ppc.c (swap_ppc_linux_prpsinfo32_out): New function.
1959 (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): Delete.
1960 (elfcore_write_ppc_linux_prpsinfo32): Adjust. Don't memset.
1961
1962 2016-01-21 Alan Modra <amodra@gmail.com>
1963
1964 * elf-linux-core.h: Rename from elf-linux-psinfo.h.
1965 * elf.c: Adjust #include.
1966 * elf32-ppc.c: Don't #include elf-linux-psinfo.h
1967 * Makefile.am (SOURCE_HFILES): Update.
1968 * Makefile.in: Regenerate.
1969 * po/SRC-PORFILES.in: Regenerate.
1970
1971 2016-01-21 Alan Modra <amodra@gmail.com>
1972
1973 * configure.ac: Move corefile selection later in file. Move
1974 tdefaults code immediately after other target vector code.
1975 * configure: Regenerate.
1976
1977 2016-01-20 Mickael Guene <mickael.guene@st.com>
1978
1979 * elf32-arm.c (elf32_arm_special_sections): Remove catch of noread
1980 section using '.text.noread' pattern.
1981
1982 2016-01-19 John Baldwin <jhb@FreeBSD.org>
1983
1984 * elf.c (elfcore_grok_note): Recognize NT_FREEBSD_THRMISC notes.
1985
1986 2016-01-18 Miranda Cupertino <Cupertino.Miranda@synopsys.com>
1987 Zissulescu Claudiu <Claudiu.Zissulescu@synopsys.com>
1988
1989 * arc-plt.def: New file.
1990 * arc-plt.h: Likewise.
1991 * elf32-arc.c (elf_arc_abs_plt0_entry, elf_arc_abs_pltn_entry,
1992 elf_arcV2_abs_plt0_entry, elf_arcV2_abs_pltn_entry,
1993 elf_arc_pic_plt0_entry, elf_arc_pic_pltn_entry,
1994 elf_arcV2_pic_plt0_entry, elf_arcV2_pic_pltn_entry): Remove.
1995 (name_for_global_symbol): Added.
1996 (ADD_RELA): Helper to create dynamic relocs.
1997 (new_got_entry_to_list): Create a new got entry in linked list.
1998 (symbol_has_entry_of_type): Search for specific type of entry in
1999 list.
2000 (is_reloc_for_GOT): return FALSE for any TLS related relocs.
2001 (is_reloc_for_TLS, arc_elf_set_private_flags)
2002 (arc_elf_print_private_bfd_data, arc_elf_copy_private_bfd_data)
2003 (arc_elf_merge_private_bfd_data): New functions.
2004 (debug_arc_reloc): Cleaned debug info printing.
2005 (PDATA reloc): Changed not to perform address alignment.
2006 (reverse_me): Added. Fix for ARC_32 relocs.
2007 (arc_do_relocation): Return bfd_reloc_of when no relocation should
2008 occur.
2009 (arc_get_local_got_ents): Renamed from arc_get_local_got_offsets.
2010 Changed function to access an array of list of GOT entries instead
2011 of just an array of offsets.
2012 (elf_arc_relocate_section): Added support for PIC and TLS related relocations.
2013 (elf_arc_check_relocs): Likewise.
2014 (elf_arc_adjust_dynamic_symbol, elf_arc_finish_dynamic_symbol,
2015 (elf_arc_finish_dynamic_sections): Likewise
2016 (arc_create_dynamic_sections): Modified conditions to create
2017 dynamic sections.
2018 (ADD_SYMBOL_REF_SEC_AND_RELOC): New macro.
2019 (plt_do_relocs_for_symbol, relocate_plt_for_symbol)
2020 (relocate_plt_for_entry): Changed to support new way to define PLT
2021 related code.
2022 (add_symbol_to_plt): Likewise.
2023 (arc_elf_link_hash_table_create): New function.
2024
2025 2016-01-18 Nick Clifton <nickc@redhat.com>
2026
2027 PR ld/19440
2028 * coff-rs6000.c (_bfd_xcoff_swap_sym_in): Sign extend external
2029 section number into internal section number.
2030 * coff64-rs6000.c (_bfd_xcoff64_swap_sym_in): Likewise.
2031 * coffswap.h (coff_swap_sym_in): Likewise.
2032 * peXXigen.c (_bfd_XXi_swap_sym_in): Likewise.
2033 * coffcode.h (_coff_bigobj_swap_sym_in): Make sure that internal
2034 section number field is big enough to hold the external value.
2035
2036 2016-01-17 Alan Modra <amodra@gmail.com>
2037
2038 * configure: Regenerate.
2039
2040 2016-01-12 Yury Usishchev <y.usishchev@samsung.com>
2041
2042 * elf32-arm.c (elf32_arm_fix_exidx_coverage): Insert cantunwind
2043 when address in first unwind entry does not match start of
2044 section.
2045
2046 2016-01-08 Richard Sandiford <richard.sandiford@arm.com>
2047 Jiong Wang <jiong.wang@arm.com>
2048
2049 PR ld/19368
2050 * elf32-arm.c (elf32_arm_reloc_type_class): Map R_ARM_IRELATIVE to
2051 reloc_class_ifunc.
2052
2053 2016-01-06 Andrew Burgess <andrew.burgess@embecosm.com>
2054
2055 * elf32-arc.c (reloc_type_to_name): Change ARC_RELOC_HOWTO to
2056 place 'R_' before the reloc name returned.
2057 (elf_arc_howto_table): Change ARC_RELOC_HOWTO to place 'R_' before
2058 the relocation string.
2059
2060 2016-01-04 Maciej W. Rozycki <macro@imgtec.com>
2061
2062 * elfxx-mips.c (mips_elf_merge_obj_abiflags): New function,
2063 factored out from...
2064 (_bfd_mips_elf_merge_private_bfd_data): ... here.
2065
2066 2016-01-04 Maciej W. Rozycki <macro@imgtec.com>
2067
2068 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Move
2069 attribute check after ELF file header flag check.
2070
2071 2016-01-04 Maciej W. Rozycki <macro@imgtec.com>
2072
2073 * elfxx-mips.c (mips_elf_merge_obj_attributes): Propagate the
2074 return status from `_bfd_elf_merge_object_attributes'.
2075
2076 2016-01-04 Maciej W. Rozycki <macro@imgtec.com>
2077
2078 * elfxx-mips.c (mips_elf_merge_obj_e_flags): New function,
2079 factored out from...
2080 (_bfd_mips_elf_merge_private_bfd_data): ... here.
2081
2082 2016-01-04 Maciej W. Rozycki <macro@imgtec.com>
2083
2084 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Fold the
2085 handling of input MIPS ABI flags together.
2086
2087 2016-01-04 Maciej W. Rozycki <macro@imgtec.com>
2088
2089 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Suppress
2090 attribute checks for null input.
2091
2092 2016-01-04 Maciej W. Rozycki <macro@imgtec.com>
2093
2094 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Use local
2095 pointers to target data.
2096
2097 2016-01-04 Maciej W. Rozycki <macro@imgtec.com>
2098
2099 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Correct
2100 an FP ABI warning.
2101
2102 2016-01-01 Alan Modra <amodra@gmail.com>
2103
2104 Update year range in copyright notice of all files.
2105
2106 For older changes see ChangeLog-2015 and doc/ChangeLog-0415
2107 \f
2108 Copyright (C) 2016 Free Software Foundation, Inc.
2109
2110 Copying and distribution of this file, with or without modification,
2111 are permitted in any medium without royalty provided the copyright
2112 notice and this notice are preserved.
2113
2114 Local Variables:
2115 mode: change-log
2116 left-margin: 8
2117 fill-column: 74
2118 version-control: never
2119 End:
This page took 0.07545 seconds and 4 git commands to generate.