MIPS16: Add R_MIPS16_PC16_S1 branch relocation support
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
c9775dde
MR
12016-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
c9301e31
AM
212016-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
3cd72572
TS
292016-06-27 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
30
31 * elf32-dlx.h: New file.
32 * elf32-dlx.c: Adjust.
33
7c2c4aa1
TS
342016-06-25 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
35
36 * elf32-xtensa.c (xtensa_make_property_section): Remove prototype.
37
3350c5f5
JB
382016-06-24 John Baldwin <jhb@FreeBSD.org>
39
40 * elf.c (elfcore_grok_freebsd_note): Handle NT_FREEBSD_PROCSTAT_AUXV
41 notes.
42
aa1ed4a9
JB
432016-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
6e321fa8
JB
532016-06-24 Joel Brobecker <brobecker@adacore.com>
54
55 * elflink.c: Check the value of BFD_SUPPORTS_PLUGINS rather
56 than its existance.
57
9cc0123f
AM
582016-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
5f68df25
MR
632016-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
bdd582db
GM
712016-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
7dc3990e
L
792016-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
0616a280
AM
912016-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
49f30d83
L
972016-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
233cc9c1
L
1052016-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
80c135e5
TP
1662016-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
4f26fb3a
JM
1772016-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
ca45f6e9
L
1992016-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
f92339b8
MK
2052016-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
081b1afe
L
2122016-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
4c23f2ff
L
2182016-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
31eef93e
SKS
2242016-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
c428ce9d
L
2302016-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
60a019a0
TP
2382016-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
3860d2b4
AM
2512016-06-14 Alan Modra <amodra@gmail.com>
252
253 * bfd-in.h (bfd_my_archive): Delete.
254 * bfd-in2.h: Regenerate.
255
b0cffb47
AM
2562016-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
712ec279
L
2732016-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
ca8c86ef
L
2812016-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
0c9663cb
MR
2862016-06-13 Maciej W. Rozycki <macro@imgtec.com>
287
288 * elf32-mips.c (elf_mips_gnu_pcrel32): Update comment.
289
815dc1bc
CZ
2902016-06-13 Cupertino Miranda <cmiranda@synospsy.com>
291
292 * elf32-arc.c (elf_arc_relocate_section): Fixed condition.
293
3b63d2ce
CM
2942016-06-13 Cupertino Miranda <cmiranda@synospsy.com>
295
296 * elf32-arc.c (elf_arc_finish_dynamic_sections): Changed.
297
2ab2f40d
CM
2982016-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
0f7f3789
CM
3062016-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
74d7f0aa
L
3122016-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
ef53be89
AM
3192016-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
5c41dbc3
DC
3552016-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
6eaa7fb5
L
3612016-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
3b67f094
MK
3742016-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
161db279
AK
3822016-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
14b57c7c
AM
3882016-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
e2cbcd91
L
4042016-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
2ac27cd3
CG
4172016-06-04 Christian Groessler <chris@groessler.org>
418
419 * coff-z8k.c (extra_case): Fix range check for R_JR relocation.
420
99914dfd
NC
4212016-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
4ad0bb5f
VG
4292016-06-02 Vineet Gupta <Vineet.Gupta1@synopsys.com>
430
431 * config.bfd: Replace -uclibc with *.
432
3ddf1bdd
L
4332016-06-02 H.J. Lu <hongjiu.lu@intel.com>
434
435 * elf64-x86-64.c: Replace data32 with data16 in comments.
436
5b677558
AM
4372016-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
1fe0971e
TS
4532016-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
885a1087
NC
4592016-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
99aefae6
MR
4652016-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
77434823
MR
4712016-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
1a72702b
AM
4782016-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
bc27bb05
MR
5792016-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
ceab86af
MR
5852016-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
ed53407e
MR
5912016-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
de341542 5972016-05-25 Maciej W. Rozycki <macro@imgtec.com>
ed53407e 598
de341542
MR
599 * elfxx-mips.c (_bfd_mips_elf_relocate_section)
600 <bfd_reloc_outofrange>: Call `->einfo' rather than `->warning'.
601 Call `bfd_set_error'.
602
e6cc316a
L
6032016-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
b95a0a31
L
6652016-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
7db9a74e
MR
6802016-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
b7f28d87
JW
6852016-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
a2bea324
KS
6932016-05-23 Kuba Sejdak <jakub.sejdak@phoesys.com>
694
695 * config.bfd: Add entry for arm-phoenix.
696
d7c5bd02
TP
6972016-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
daa4adae
TP
7052016-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
52bf37dd
L
7252016-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
17c6c9d9
MR
7302016-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
7d4d9709
L
7352016-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
606851fb
AM
7422016-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
3c8adaca
CZ
7482016-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
6b200de0
MR
7572016-05-19 Maciej W. Rozycki <macro@imgtec.com>
758
759 * config.bfd: Remove `am34-*-linux*' support.
760
57e7d118
AM
7612016-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
9f284bf9
AM
7662016-05-19 Alan Modra <amodra@gmail.com>
767
768 * elf64-ppc.c (ppc64_elf_branch_reloc): Check for NULL owner
769 before dereferencing.
770
50498060
NC
7712016-05-18 Nick Clifton <nickc@redhat.com>
772
773 * po/sv.po: Updated Swedish translation.
774
7f991970
AM
7752016-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
a43942db
MR
7802016-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
71de3413
MR
7992016-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
2168b268
L
8062016-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
4ade44b7
AM
8122016-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
2168b268 816 dynamic tags rather than using output sections. Remove asserts.
4ade44b7
AM
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
c8e44c6d
AM
8482016-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
1997c994
AM
8552016-05-12 Alan Modra <amodra@gmail.com>
856
857 * elf-bfd.h (elf_reloc_type_class): Put reloc_class_plt last.
858
8f4f9071
MF
8592016-05-11 Andrew Bennett <andrew.bennett@imgtec.com>
860
861 * elfxx-mips.c (print_mips_ases): Add DSPR3.
862
a464198b
AM
8632016-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
3bd43ebc
AM
8712016-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
4e7fbb34
JW
8772016-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
4f4faa4d
TP
8822016-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
39d911fc
TP
8932016-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
6bde4c52
TP
9062016-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
b715f643
TP
9192016-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
8d9d9490
TP
9242016-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
15afaa63
TP
9482016-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
66a36822
PC
9532016-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
315350be
NC
9602016-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
9239bbd3
CM
9662016-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
73597c18
NC
9782016-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
ae1bb197
AM
9842016-05-09 Alan Modra <amodra@gmail.com>
985
986 * elf64-ppc.c (ppc64_elf_init_stub_bfd): Remove redundant NULL check.
987
97196564
L
9882016-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
030e823c
L
9992016-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
c175a657
L
10042016-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
bedfd056
L
10132016-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
6d6a648c
MR
10372016-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
1f56df9d
JW
10432016-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
493f652c
L
10522016-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
e62b9723
L
10612016-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
c337a162
L
10822016-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
afd9acee
L
10882016-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
5522f910
NC
10932016-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
786a118c
NC
11182016-04-28 Nick Clifton <nickc@redhat.com>
1119
1120 * po/zh_CN.po: Updated Chinese (simplified) translation.
1121
91f8bf69
L
11222016-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
a6a4679f
AM
11282016-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
28cc9170
TS
11342016-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
d5486c43
L
11402016-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
6645479e
L
11492016-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
6cd255ca
L
11542016-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
4f3b23b3
NC
11592016-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
e66cdd68
L
11982016-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
5ce03cea
L
12052016-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
338c190a
L
12102016-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
466ee2af
L
12212016-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
d9689752
L
12272016-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
e6c7cdec
TS
12342016-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
b98e6871
TS
12412016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
1242
1243 * elf32-arm.c (put_thumb2_insn): Change argument type to bfd_byte *.
1244
6fd8e7c2
L
12452016-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
4b0c052e
AB
12512016-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
33cbe6c0
AB
12632016-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
7634c4e6
L
12712016-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
84865015
NC
12762016-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
2df3368d
L
13122016-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
15dd01b1
TP
13352016-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
1e5885b7
CZ
13412016-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
b3aee839
CZ
13462016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
1347
1348 * elf32-arc.c (elf_arc_check_relocs): Changed
1349
094fb063
CZ
13502016-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
94e5c971
CZ
13602016-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
1f599d0e
MR
13692016-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
67f101ee
NC
13752016-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
7b15fa7a
AM
13812016-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
024ea11b
SKS
13872016-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
ed3056eb
NC
13922016-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
e2b4fc91
TS
13992016-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
a97fbc7e
AM
14052016-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
9780e045
NC
14112016-03-22 Nick Clifton <nickc@redhat.com>
1412
96254e5c
NC
1413 * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an
1414 architecture name for backwards compatibility.
1415
7769fa97
NC
1416 * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible
1417 unbounded stack use.
1418
9780e045
NC
1419 * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a
1420 sufficiently recent version of GCC.
1421 * configure: Regenerate.
1422
6f4c0a42
AM
14232016-03-22 Alan Modra <amodra@gmail.com>
1424
1425 PR 19851
1426 * plugin.c (try_load_plugin): Avoid -Wstack-usage warning.
1427
8699fc3e
AB
14282016-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
a9522a21
AB
14372016-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
c0334580
AB
14442016-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
e1fa0163
NC
14492016-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
4e0c91e4
L
14632016-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
4c10bbaa
L
14722016-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
fbe48798
L
14792016-03-14 H.J. Lu <hongjiu.lu@intel.com>
1480
1481 * bfd-in2.h: Regenerated.
1482
37b01f6a
DG
14832016-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
3ed4ff97
NC
15002016-03-10 Nick Clifton <nickc@redhat.com>
1501
1502 * config.bfd: Mark the i370 target as obsolete.
1503
4b05e0a7
PA
15042016-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
26c62da0
LW
15112016-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
03ee8583
AM
15172016-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
9c1d7a08
L
15232016-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
d1ed1c7d
L
15292016-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
202ac193
L
15362016-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
72f3b6aa
CZ
15422016-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
4fc87424
NC
15572016-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
18f822a0
JW
15632016-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
07492f66
L
15682016-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
70a5df4f
AM
15752016-03-02 Alan Modra <amodra@gmail.com>
1576
1577 * Makefile.in: Regenerate.
1578 * po/SRC-POTFILES.in: Regenerate.
1579
841fdfcd
CZ
15802016-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
7e458899
CZ
15852016-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
c5e3a364
RL
15922016-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
bae420ef
L
15972016-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
11e5f1ec
L
16122016-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
aec6b87e
L
16422016-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
b32547cd
AM
17032016-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
ef77d6af
L
17122016-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
0f550b3d
L
17182016-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
13f42277
L
17242016-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
6b3b0ab8
L
17302016-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
17733f5b
FS
17362016-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
47993b4a
RF
17412016-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
2d8dcb81
HPN
17472016-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
1a6e6083
L
17532016-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
75c1920b
L
17582016-02-22 H.J. Lu <hongjiu.lu@intel.com>
1759
1760 * syms.c: Remove BSF_COMMON from comments.
1761 * bfd-in2.h: Regenerated.
1762
9a228467
JW
17632016-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
73768414
NC
17692016-02-19 Nick Clifton <nickc@redhat.com>
1770
e517df3d
NC
1771 PR ld/19629
1772 * aoutx.h (aout_link_add_symbols): Check for out of range string
1773 table offsets.
1774
73768414
NC
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
bf89386a
L
17792016-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
8f79b794
L
17852016-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
64bfc258
JM
17902016-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
9fb71ee4
NC
17972016-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
32875eb1
L
18032016-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
83da6e74
NC
18092016-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
027e9c75
NC
18182016-02-09 Nick Clifton <nickc@redhat.com>
1819
609332f1
NC
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
027e9c75
NC
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
6f57d046
SM
18282016-02-05 Simon Marchi <simon.marchi@ericsson.com>
1829
1830 * pe-mips.c (coff_mips_reloc): Fix formatting.
1831
bdbca4e6
CM
18322016-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
4f038ee5
AM
18372016-02-04 Alan Modra <amodra@gmail.com>
1838
1839 * elf64-ppc.c (ppc64_elf_relocate_section): Adjust last patch
1840 for big-endian.
1841
4a539596
L
18422016-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
fb06f1c0 1846 distances in the compressed_size field of the output section.
4a539596 1847
85fabe71
AM
18482016-02-02 Alan Modra <amodra@gmail.com>
1849
1850 * elf64-ppc.c (ppc64_elf_relocate_section): Further restrict
1851 ELFv2 entry optimization.
1852
14f2c699
L
18532016-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
aef28989
L
18592016-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
655ed9ea
NS
18662016-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
ec1f73bb
AM
18712016-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
b6471e6e
KR
18772016-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
0bc7245a
JK
18832016-02-01 Jan Kratochvil <jan.kratochvil@redhat.com>
1884
1885 * elf64-s390.c (elf_s390_reloc_name_lookup): Fix indentation.
1886
6d4b2867
JDA
18872016-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
d9e3b590
L
18942016-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
bf150a0b
L
19012016-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
840855c5
MR
19072016-01-25 Maciej W. Rozycki <macro@imgtec.com>
1908
1909 * elf32-arc.c (elf_arc_finish_dynamic_symbol): Rename `index' to
1910 `dynindx'.
1911
cf466c2a
NC
19122016-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
eb6b0cf4
MR
19182016-01-24 Maciej W. Rozycki <macro@imgtec.com>
1919
1920 * elfxx-mips.c (BZ16_REG_FIELD): Simplify calculation.
1921
e67f83e5
MR
19222016-01-24 Maciej W. Rozycki <macro@imgtec.com>
1923
1924 * elfxx-mips.c (BZ16_REG): Correct calculation.
1925
23a42089
NC
19262016-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
aebf9be7
NC
19322016-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
2f340668
JW
19422016-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
aeb70569
AM
19502016-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
de64ce13
AM
19622016-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
c603b11b
AM
19712016-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
91f68a68
MG
19772016-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
5b2c414d
JB
19822016-01-19 John Baldwin <jhb@FreeBSD.org>
1983
1984 * elf.c (elfcore_grok_note): Recognize NT_FREEBSD_THRMISC notes.
1985
34e967a5
MC
19862016-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
9ae678af
NC
20252016-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
5c14705f
AM
20362016-01-17 Alan Modra <amodra@gmail.com>
2037
2038 * configure: Regenerate.
2039
ac06903d
YU
20402016-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
109575d7
JW
20462016-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
b05a65d0
AB
20532016-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
a3dc0a7f
MR
20602016-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
d537eeb5
MR
20662016-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
43d223b5
MR
20712016-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
b2e9744f
MR
20762016-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
28d45e28
MR
20822016-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
23ba6f18
MR
20872016-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
cf8502c1
MR
20922016-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
dcb1c796
MR
20972016-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
6f2750fe
AM
21022016-01-01 Alan Modra <amodra@gmail.com>
2103
2104 Update year range in copyright notice of all files.
2105
3499769a
AM
2106For older changes see ChangeLog-2015 and doc/ChangeLog-0415
2107\f
2108Copyright (C) 2016 Free Software Foundation, Inc.
2109
2110Copying and distribution of this file, with or without modification,
2111are permitted in any medium without royalty provided the copyright
2112notice and this notice are preserved.
2113
2114Local Variables:
2115mode: change-log
2116left-margin: 8
2117fill-column: 74
2118version-control: never
2119End:
This page took 0.135338 seconds and 4 git commands to generate.