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