Stop objcopy from corrupting mach-o files.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
c6643fcc
NC
12018-06-20 Nick Clifton <nickc@redhat.com>
2
3 PR 23299
4 * mach-o.c (cputype): New function.
5 (cpusubtype): New function.
6 (bfd_mach_o_bfd_print_private_data): New function. Dispalys the
7 values in the MACH-O file header.
8 (bfd_mach_o_bfd_copy_private_header_data): Copy the cputype and
9 cpusubtype fields from the input bfd's mach-o header to the output
10 bfd.
11 * mach-o-target.c (bfd_mach_o_bfd_print_private_bfd_data):
12 Redefine to bfd_mach_o_bfd_print_private_data.
13 * mach-o.h (bfd_mach_o_bfd_print_private_bfd_data): Prototype.
14
789ff5b6
MR
152018-06-19 Maciej W. Rozycki <macro@mips.com>
16
17 PR ld/22966
18 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Verify the
19 `.got.plt' entry referred is in range.
20 (mips_finish_exec_plt): Correct the range check for `.got.plt'
21 start. Replace the assertion used for that with a proper error
22 message.
23
6a382bce
MR
242018-06-19 Maciej W. Rozycki <macro@mips.com>
25
26 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Fix
27 formatting.
28
d0ac1c44
SM
292018-06-19 Simon Marchi <simon.marchi@ericsson.com>
30
31 * Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11.
32 (INCLUDES): Rename to ...
33 (AM_CPPFLAGS): ... this.
34 * configure.ac: Remove AC_PREREQ.
35 * doc/Makefile.am (AUTOMAKE_OPTIONS): Remove 1.9, cygnus, add
36 info-in-builddir no-texinfo.tex.
37 (info_TEXINFOS): Rename bfd.texinfo to bfd.texi.
38 * doc/bfd.texinfo: Rename to ...
39 * doc/bfd.texi: ... this.
40 * Makefile.in: Re-generate.
41 * aclocal.m4: Re-generate.
42 * config.in: Re-generate.
43 * configure: Re-generate.
44 * doc/Makefile.in: Re-generate.
45
ed1299fe
M
462018-06-18 Mephi <mephi42@gmail.com>
47
48 PR 23297
49 * mach-o-x86-64.c (x86_64_howto_table): Add entry for
50 BFD_RELOC_MACH_O_X86_64_RELOC_TLV.
51 (bfd_mach_o_x86_64_canonicalize_one_reloc): Handle the new reloc.
52 (bfd_mach_o_x86_64_swap_reloc_out): Likewise.
53 * reloc.c (BFD_RELOC_MACH_O_X86_64_TV): New entry.
54 * bfd-in2.h: Regenerate.
55 * libbfd.h: Regenerate.
56
6f20c942
FS
572018-06-14 Faraz Shahbazker <Faraz.Shahbazker@mips.com>
58
59 * elfxx-mips.c (print_mips_ases): Add GINV extension.
60
1f6f5dba
L
612018-06-14 H.J. Lu <hongjiu.lu@intel.com>
62
63 PR binutils/23267
64 * elf.c (_bfd_elf_get_symbol_version_string): Check if the first
65 symbol version is base version.
66
7f923b7f
AM
672018-06-14 Alan Modra <amodra@gmail.com>
68
69 * elf-bfd.h (struct elf_link_hash_table): Add "dynamic_relocs".
70 * elflink.c (_bfd_elf_init_2_index_sections): Comment fix.
71 (_bfd_elf_add_dynamic_entry): Set "dynamic_relocs".
72 (_bfd_elf_link_renumber_dynsyms): Exclude all section symbols when
73 "dynamic_relocs" is not set.
74 * elfxx-mips.c (count_section_dynsyms): Likewise.
75
ff91d2f0
AM
762018-06-14 Alan Modra <amodra@gmail.com>
77
78 PR 23282
79 * bfdio.c (bfd_seek): Optimize away seeks to current position.
80
730c3174
SE
812018-06-13 Scott Egerton <scott.egerton@imgtec.com>
82 Faraz Shahbazker <Faraz.Shahbazker@mips.com>
83
84 * elfxx-mips.c (print_mips_ases): Add CRC.
85
ecf99cc0
L
862018-06-08 H.J. Lu <hongjiu.lu@intel.com>
87
88 PR ld/23161
89 * elfxx-x86.c (elf_x86_hide_linker_defined): New function.
90 (_bfd_x86_elf_link_check_relocs): Use it to hide hidden
91 __bss_start, _end and _edata in shared libraries.
92
527278f3
AM
932018-06-07 Alan Modra <amodra@gmail.com>
94
95 * elf32-tic6x.c (elf32_tic6x_check_relocs): Reference
96 __c6xabi_DSBT_BASE explicitly for R_C6000_SBR_* relocs.
97
5c4ce239
AM
982018-06-05 Alan Modra <amodra@gmail.com>
99
100 * bfd.c (struct bfd): Update comment on "where" usage.
101 * bfdio.c (bfd_bwrite, bfd_stat): Use and update "iovec",
102 "iostream", and "where" from containing archive file. Return
103 error on NULL iovec.
104 (bfd_bread): Similarly, and return error attempted out of
105 bounds archive element access.
106 (bfd_tell, bfd_flush): Use and update "iovec", "iostream", and
107 "where" from containing archive file.
108 (bfd_seek): Likewise. Return error on NULL iovec. Don't
109 attempt to optimize away seeks. Don't paper over errors by
110 calling bfd_tell.
111 (bfd_get_mtime): Call bfd_stat rather than iovec->bstat.
112 (bfd_get_size): Likewise.
113 (bfd_mmap): Operate on and use iovec of containing archive
114 file. Return error on NULL iovec.
115 * cache.c (bfd_cache_lookup_worker): Abort if working on
116 archive element bfd.
117 (cache_bread_1): Delete bfd parameter, add FILE* parameter.
118 Don't ignore zero byte reads.
119 (cache_bread): Look up FILE* in cache here. Error on NULL
120 lookup.
121 (cache_bwrite): Rename "where" to "from".
122 (cache_bmmap): Don't handle archive elements.
123 * coffcode.h (coff_slurp_line_table): Exit early on zero
124 lineno count.
125 * bfd-in2.h: Regenerate.
126
27b07675
AM
1272018-06-05 Alan Modra <amodra@gmail.com>
128
129 PR 23254
130 * plugin.c (bfd_plugin_open_input): Allow for possibility of
131 nested archives. Open file again for plugin.
132 (try_claim): Don't save and restore file position. Close file
133 if not claimed.
134 * sysdep.h (O_BINARY): Define.
135
4b8e28c7
MF
1362018-06-04 Max Filippov <jcmvbkbc@gmail.com>
137
138 * elf32-xtensa.c (xtensa_read_table_entries): Make global.
139 (compute_fill_extra_space): Drop declaration. Rename function to
140 xtensa_compute_fill_extra_space.
141 (compute_ebb_actions, remove_dead_literal): Update references to
142 compute_fill_extra_space.
143
8255c61b
MF
1442018-06-04 Volodymyr Arbatov <arbatov@cadence.com>
145
146 * elf32-xtensa.c (elf32xtensa_separate_props): New global
147 variable.
148 (xtensa_add_names): New function.
149 (xtensa_property_section_name): Add new parameter
150 separate_sections, use it to choose property section name.
151 (xtensa_get_separate_property_section): New function.
152 (xtensa_get_property_section): Invoke
153 xtensa_get_separate_property_section to get individual property
154 section if it exists, common property section otherwise.
155 (xtensa_make_property_section): Pass elf32xtensa_separate_props
156 to xtensa_property_section_name.
157
95da9854
L
1582018-06-04 H.J. Lu <hongjiu.lu@intel.com>
159
160 PR binutils/23146
161 * bfd-in.h: Include "diagnostics.h".
162 * bfd-in2.h: Regenerated.
163 * elf32-arm.c (elf32_arm_nabi_write_core_note): Use
164 DIAGNOSTIC_PUSH, DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION and
165 DIAGNOSTIC_POP to silence GCC 8.1 warnings with
166 -Wstringop-truncation.
167 * elf32-ppc.c (ppc_elf_write_core_note): Likewse.
168 * elf32-s390.c (elf_s390_write_core_note): Likewse.
169 * elf64-ppc.c (ppc64_elf_write_core_note): Likewse.
170 * elf64-s390.c (elf_s390_write_core_note): Likewse.
171 * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewse.
172
137b5cbd
JW
1732018-06-03 Jim Wilson <jimw@sifive.com>
174
cf7a5066
JW
175 PR ld/23244
176 * elfnn-riscv.c (riscv_elf_relocate_section) <R_RISCV_CALL>: Check
177 for and handle an undefined weak with no PLT.
178
137b5cbd
JW
179 PR ld/22756
180 * elfnn-riscv.c (riscv_relax_delete_bytes): Add versioned_hidden check
181 to code that ignores duplicate symbols.
182
55e99962
L
1832018-06-01 H.J. Lu <hongjiu.lu@intel.com>
184
185 * version.m4: Bump version to 2.30.52
186 * configure: Regenerated.
187
030157d8
AM
1882018-06-01 Alan Modra <amodra@gmail.com>
189
190 * bfd.c (_bfd_error_handler): Arrange for this function to be
191 declared in bfd-in2.h.
192 * libbfd-in.h (_bfd_error_handler): Don't declare.
193 * libbfd.h: Regenerate.
194 * bfd-in2.h: Regenerate.
195
421acf18
AC
1962018-05-30 Amaan Cheval <amaan.cheval@gmail.com>
197
198 * config.bfd (x86_64-*-*): Add pei-x86-64 target to x86_64-*-rtems*
199 This is needed to generate UEFI application image files from ELFs.
200
92e68c1d
L
2012018-05-28 H.J. Lu <hongjiu.lu@intel.com>
202
203 * elf32-i386.c (elf_i386_lazy_plt): Add plt_tlsdesc_entry,
204 plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
205 plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
206 plt_tlsdesc_got2_insn_end for TLSDESC entry.
207 (elf_i386_lazy_ibt_plt): Likewise.
208 (elf_i386_nacl_plt): Likewise.
209 * elf64-x86-64.c (tlsdesc_plt_entry): Moved and renamed to ...
210 (elf_x86_64_tlsdesc_plt_entry): This.
211 (elf_x86_64_lazy_plt): Add plt_tlsdesc_entry,
212 plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
213 plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
214 plt_tlsdesc_got2_insn_end for TLSDESC entry.
215 (elf_x86_64_lazy_bnd_plt): Likewise.
216 (elf_x86_64_lazy_ibt_plt): Likewise.
217 (elf_x32_lazy_ibt_plt): Likewise.
218 (elf_x86_64_nacl_plt): Likewise.
219 (elf_x86_64_finish_dynamic_sections): Use plt_tlsdesc_entry,
220 plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
221 plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
222 plt_tlsdesc_got2_insn_end to update TLSDESC entry.
223 * elfxx-x86.h (elf_x86_lazy_plt_layout): Update comments.
224 Add plt_tlsdesc_entry, plt_tlsdesc_entry_size,
225 plt_tlsdesc_got1_offset, plt_tlsdesc_got2_offset,
226 plt_tlsdesc_got1_insn_end and plt_tlsdesc_got2_insn_end.
227 (elf_x86_non_lazy_plt_layout): Update comments.
228 (elf_x86_plt_layout): Likewise.
229
ac98f9e2
L
2302018-05-28 H.J. Lu <hongjiu.lu@intel.com>
231
232 PR ld/23238
233 * elf-s390-common.c (elf_s390_add_symbol_hook): Removed.
234 * elf32-arc.c (elf_arc_add_symbol_hook): Likewise.
235 (elf_backend_add_symbol_hook): Likewise.
236 * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
237 (elf_backend_add_symbol_hook): Likewise.
238 * elf32-s390.c (elf_backend_add_symbol_hook): Likewise.
239 * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
240 (elf_backend_add_symbol_hook): Likewise.
241 * elf64-s390.c (elf_backend_add_symbol_hook): Likewise.
242 * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
243 * elfxx-aarch64.h (_bfd_aarch64_elf_add_symbol_hook): Likewise.
244 (elf_backend_add_symbol_hook): Likewise.
245 * elf32-arm.c (elf32_arm_add_symbol_hook): Remove STT_GNU_IFUNC
246 handling.
247 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
248 * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
249 * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
250 * elflink.c (elf_link_add_object_symbols): Set
251 elf_gnu_symbol_ifunc for STT_GNU_IFUNC symbols.
252
099bb8fb
L
2532018-05-26 H.J. Lu <hongjiu.lu@intel.com>
254
255 PR ld/23194
256 * elf-bfd.h (_bfd_elf_link_hide_sym_by_version): New.
257 * elflink.c (_bfd_elf_link_hide_versioned_symbol): New function.
258 Extracted from _bfd_elf_link_assign_sym_version.
259 (_bfd_elf_link_hide_sym_by_version): New function.
260 (_bfd_elf_link_assign_sym_version): Use
261 _bfd_elf_link_hide_versioned_symbol.
262 * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Call
263 _bfd_elf_link_hide_sym_by_version instead of
264 bfd_hide_sym_by_version. Don't check unversioned symbol.
265
277eb7f6
AM
2662018-05-25 Alan Modra <amodra@gmail.com>
267
268 * Makefile.in: Regenerate.
269 * po/SRC-POTFILES.in: Regenerate.
270
629dabe3
AM
2712018-05-25 Alan Modra <amodra@gmail.com>
272
273 * configure.ac (bfd_cv_hidden): Run test with -Werror in CFLAGS.
274 * configure: Regenerate.
275
9ef6d1e3
L
2762018-05-23 H.J. Lu <hongjiu.lu@intel.com>
277
278 * elf64-ppc.c (ppc64_elf_write_core_note): Add ATTRIBUTE_NONSTRING
279 to data.
280
215f5271
AM
2812018-05-22 Alan Modra <amodra@gmail.com>
282
283 PR 23207
284 * elf32-hppa.c (hppa_get_stub_entry): Return NULL when link_sec
285 is NULL.
286 (elf32_hppa_size_stubs): Only create stubs for load, alloc, code
287 sections.
288 (final_link_relocate): Revert last change.
289
7455c018
AM
2902018-05-22 Alan Modra <amodra@gmail.com>
291
292 PR 23207
293 * elf32-hppa.c (final_link_relocate): Don't look for plt call
294 stubs in non-alloc sections.
295
34a87bb0
L
2962018-05-21 H.J. Lu <hongjiu.lu@intel.com>
297
298 PR ld/23201
299 * aout-target.h (MY_bfd_link_hide_symbol): New.
300 * aout-tic30.c (MY_bfd_link_hide_symbol): Likewise.
301 * binary.c (binary_bfd_link_hide_symbol): Likewise.
302 * coff-alpha.c (_bfd_ecoff_bfd_link_hide_symbol): Likewise.
303 * coff-mips.c (_bfd_ecoff_bfd_link_hide_symbol): Likewise.
304 * coff-rs6000.c (_bfd_xcoff_bfd_link_hide_symbol): Likewise.
305 * coffcode.h (coff_bfd_link_hide_symbol): Likewise.
306 * elf-bfd.h (_bfd_elf_link_hide_symbol): Likewise.
307 * elfxx-target.h (bfd_elfNN_bfd_link_hide_symbol): Likewise.
308 * i386msdos.c (msdos_bfd_link_hide_symbol): Likewise.
309 * ihex.c (ihex_bfd_link_hide_symbol): Likewise.
310 * libbfd-in.h (_bfd_nolink_bfd_link_hide_symbol): Likewise.
311 * linker.c (_bfd_generic_link_hide_symbol): Likewise.
312 (bfd_link_hide_symbol): Likewise.
313 * mach-o-target.c (bfd_mach_o_bfd_link_hide_symbol): Likewise.
314 * mmo.c (mmo_bfd_link_hide_symbol): Likewise.
315 * pef.c (bfd_pef_bfd_link_hide_symbol): Likewise.
316 * plugin.c (bfd_plugin_bfd_link_hide_symbol): Likewise.
317 * ppcboot.c (ppcboot_bfd_link_hide_symbol): Likewise.
318 * som.c (som_bfd_link_hide_symbol): Likewise.
319 * srec.c (srec_bfd_link_hide_symbol): Likewise.
320 * tekhex.c (tekhex_bfd_link_hide_symbol): Likewise.
321 * vms-alpha.c (vms_bfd_link_hide_symbol): Likewise.
322 (alpha_vms_bfd_link_hide_symbol): Likewise.
323 * xsym.c (bfd_sym_bfd_link_hide_symbol): Likewise.
324 * coff64-rs6000.c (rs6000_xcoff64_vec): Add
325 _bfd_generic_link_hide_symbol.
326 (rs6000_xcoff64_aix_vec): Likewise.
327 * elflink.c (bfd_elf_record_link_assignment): Don't make forced
328 local symbol dynamic.
329 (_bfd_elf_link_hide_symbol): New function.
330 * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't
331 check root.ldscript_def.
332 * targets.c (bfd_target): Add _bfd_link_hide_symbol.
333 (BFD_JUMP_TABLE_LINK): Add NAME##_bfd_link_hide_symbol.
334 * bfd-in2.h: Regenerated.
335 * libbfd.h: Likewise.
336
bae363f1
L
3372018-05-21 H.J. Lu <hongjiu.lu@intel.com>
338
339 PR binutils/23199
340 * elf.c (setup_group): Mark section in a section group with
341 SHF_GROUP.
342
97373b2e
L
3432018-05-18 H.J. Lu <hongjiu.lu@intel.com>
344
345 PR ld/23194
346 * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't
347 set eh->local_ref to 1 if a symbol is versioned and there is a
348 version script.
349
7f999549
JW
3502018-05-18 Kito Cheng <kito.cheng@gmail.com>
351
352 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Handle
353 EF_RISCV_RVE.
354
6487709f
JW
3552018-05-18 Jim Wilson <jimw@sifive.com>
356
357 * elfnn-riscv.c (allocate_dynrelocs): Discard dynamic relocations if
358 UNDEFWEAK_NO_DYNAMIC_RELOC is true.
359 (riscv_elf_relocate_section): Don't generate dynamic relocation if
360 UNDEFWEAK_NO_DYNAMIC_RELOC is true.
361 (riscv_elf_finish_dynamic_symbol): Likewise.
362
7b4ae824
JD
3632018-05-18 John Darrington <john@darrington.wattle.id.au>
364
365 * Makefile.am: Add s12z files.
366 * Makefile.in: Regenerate.
367 * archures.c: Add bfd_s12z_arch.
368 * bfd-in.h: Add exports of bfd_putb24 and bfd_putl24.
369 * bfd-in2.h: Regenerate.
370 * config.bfd: Add s12z target.
371 * configure.ac: Add s12z target.
372 * configure: Regenerate.
373 * cpu-s12z.c: New file.
374 * elf32-s12z.c: New file.
375 * libbfd.c (bfd_putb24): New function.
376 (bfd_putl24): New function.
377 * libbfd.h: Regenerate.
378 * reloc.c: Add s12z relocations.
379 (bfd_get_reloc_size): Handle size 5 relocs.
380 * targets.c: Add s12z_elf32_vec.
381
011b32fd
L
3822018-05-18 H.J. Lu <hongjiu.lu@intel.com>
383
384 PR ld/23189
385 * elf32-i386.c (elf_i386_relocate_section): Handle R_386_GOT32X
386 like R_386_GOT32.
387 * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't
388 set eh->local_ref to 1 for linker defined symbols.
389
4bba0fb1
AM
3902018-05-18 Alan Modra <amodra@gmail.com>
391
392 PR 23199
393 * elf.c (setup_group): Formatting. Check that SHT_GROUP entries
394 don't point at other SHT_GROUP sections. Set shdr corresponding
395 to invalid entry, to NULL rather than section 0. Identify
396 SHT_GROUP section index when reporting an error. Cope with NULL
397 shdr pointer.
398
8722de9c
AM
3992018-05-18 Alan Modra <amodra@gmail.com>
400
401 * libbfd-in.h (ATTRIBUTE_HIDDEN): Define and use throughout.
402 * configure.ac (HAVE_HIDDEN): Check compiler support for hidden
403 visibility.
404 * libbfd.h: Regenerate.
405 * configure: Regenerate.
406 * config.in: Regenerate.
407
0b439543
AM
4082018-05-18 Alan Modra <amodra@gmail.com>
409
410 * libbfd-in.h: Add include guard.
411 * libcoff-in.h: Likewise.
412 * doc/Makefile.am (libbfd.h, libcoff.h): Append another #endif.
413 * doc/Makefile.in: Regenerate.
414 * libbfd.h: Regenerate.
415 * libcoff.h: Regenerate.
416
1624c9ca
MR
4172018-05-16 Maciej W. Rozycki <macro@mips.com>
418
419 * elf32-nds32.c (nds32_convert_32_to_16): Preset `insn_type'.
420
7cf7fcc8
AM
4212018-05-16 Alan Modra <amodra@gmail.com>
422
423 PR 22458
424 * format.c (struct bfd_preserve): Add section_id.
425 (bfd_preserve_save, bfd_preserve_restore): Save and restore
426 _bfd_section_id.
427 (bfd_reinit): Set _bfd_section_id.
428 (bfd_check_format_matches): Put all matches of any priority into
429 matching_vector. Save initial section id and start each attempted
430 match at that section id.
431 * libbfd-in.h (_bfd_section_id): Declare.
432 * section.c (_bfd_section_id): Rename from section_id and make
433 global. Adjust uses.
434 (bfd_get_next_section_id): Delete.
435 * elf64-ppc.c (ppc64_elf_setup_section_lists): Replace use of
436 bfd_get_section_id with _bfd_section_id.
437 * libbfd.h: Regenerate.
438 * bfd-in2.h: Regenerate.
439
810ed4db
CG
4402018-05-15 Christophe Guillon <christophe.guillon@st.com>
441
442 * coffcode.h (coff_bigobj_swap_aux_in): Make sure that all fields
443 of the aux structure are initialised.
444
1678bd35
FT
4452018-05-15 Francois H. Theron <francois.theron@netronome.com>
446
447 * targets.c: Wrap nfp_elf64_vec in BFD64 ifdef.
448
293b4d4f
NC
4492018-05-15 Nick Clifton <nickc@redhat.com>
450
451 * po/pt.po: New Portuguese translation.
452 * configure.ac (ALL_LINGUAS): Add pt.
453 * configure: Regenerate.
454
4ec09950
L
4552018-05-14 H.J. Lu <hongjiu.lu@intel.com>
456
457 PR ld/23169
458 * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Don't issue
459 an error on IFUNC pointer defined in PDE.
460 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Call
461 _bfd_x86_elf_link_fixup_ifunc_symbol.
462 * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
463 * elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): New
464 function.
465 * elfxx-x86.h (_bfd_x86_elf_link_fixup_ifunc_symbol): New.
466
9bc935ef
L
4672018-05-14 H.J. Lu <hongjiu.lu@intel.com>
468
469 PR ld/23162
470 * elfxx-x86.c (elf_x86_linker_defined): New function.
471 (_bfd_x86_elf_link_check_relocs): Use it to mark __bss_start,
472 _end and _edata locally defined within executables.
473
9933dc52
AM
4742018-05-12 Alan Modra <amodra@gmail.com>
475
476 PR 20659
477 * elf.c (rewrite_elf_program_header): Use segment_mark only for
478 PT_LOAD headers. Delete first_matching_lma and first_suggested_lma.
479 Instead make matching_lma and suggested_lma pointers to the
480 sections. Align section vma and lma calculated from segment.
481 Don't clear includes_phdrs or includes_filehdr based on p_paddr
482 test. Try to handle alignment padding before first section by
483 adjusting new segment lma down. Adjust PT_PHDR map p_paddr.
484
493ffac5
DD
4852018-05-09 Dimitar Dimitrov <dimitar@dinux.eu>
486
487 * elf32-pru.c (pru_elf32_do_ldi32_relocate): Make LDI32 relocation
488 conformant to TI ABI.
489 (pru_elf32_relax_section): Likewise.
490 (pru_elf_relax_delete_bytes): Fix offsets for new LDI32 code.
491 * elf32-pru.c (pru_elf32_do_ldi32_relocate): Ignore addend.
492 (pru_elf32_pmem_relocate): Trap - should not get here.
493 (pru_elf32_relocate_section): Add support for REL relocations.
494 (elf_info_to_howto_rel): Enable REL.
495 (elf_backend_may_use_rel_p): Likewise.
496 (elf_backend_may_use_rela_p): Likewise.
497 (elf_backend_default_use_rela_p): Likewise.
498
b4560c7d
AM
4992018-05-09 Alan Modra <amodra@gmail.com>
500
501 PR 23148
502 * peXXigen.c (pe_print_edata): Correct minimum size.
503
53db9cf9
AM
5042018-05-09 Alan Modra <amodra@gmail.com>
505
506 PR 23147
507 * peXXigen.c (pe_print_idata): Bound check hint_addr.
508
95a6d235
NC
5092018-05-08 Nick Clifton <nickc@redhat.com>
510
511 PR 22809
512 * elf.c (bfd_elf_get_str_section): Check for an excessively large
513 string section.
514 * elf-attrs.c (_bfd_elf_parse_attributes): Issue an error if the
515 attribute section is larger than the size of the file.
516
7bd8862c
AM
5172018-05-07 Alan Modra <amodra@gmail.com>
518
519 * cofflink.c (_bfd_coff_link_input_bfd): Use memcmp rather than
520 strncmp when checking for ".bf" special symbol.
521 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Make pe_required_section_flags
522 section name a char array, remove sentinal known_sections entry,
523 and adjust loop over known_sections to suit. Use memcmp rather
524 than strncmp.
525
602f1657
AM
5262018-05-04 Alan Modra <amodra@gmail.com>
527
528 * elf-linux-core.h (struct elf_external_linux_prpsinfo32_ugid32),
529 (struct elf_external_linux_prpsinfo32_ugid16),
530 (struct elf_external_linux_prpsinfo64_ugid32),
531 (struct elf_external_linux_prpsinfo64_ugid16): Add ATTRIBUTE_NONSTRING
532 to pr_fname and pr_psargs fields. Remove GCC diagnostic pragmas.
533 Move comment to..
534 * elf.c (elfcore_write_prpsinfo): ..here. Indent nested preprocessor
535 directives.
536 * elf32-arm.c (elf32_arm_nabi_write_core_note): Add ATTRIBUTE_NONSTRING
537 to data.
538 * elf32-ppc.c (ppc_elf_write_core_note): Likewise.
539 * elf32-s390.c (elf_s390_write_core_note): Likewise.
540 * elf64-s390.c (elf_s390_write_core_note): Likewise.
541 * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise.
542 * elf64-x86-64.c (elf_x86_64_write_core_note): Add GCC diagnostic
543 pragmas.
544 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Use strnlen to avoid
545 false positive gcc-8 warning.
7bd8862c 546 * cofflink.c (_bfd_coff_link_input_bfd): Likewise.
602f1657 547
a27ca19c
TMQMF
5482018-05-04 Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
549
550 * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Fix the order
551 of arguments when warning about different long double types.
552
3be08ea4
SA
5532018-05-03 Simon Atanasyan <simon@atanasyan.com>
554
555 * elf32-mips.c: (elf32_mips_fixup_symbol): New function.
556 (elf_backend_fixup_symbol): New macro.
557 * elfxx-mips.c: (mips_elf_output_extsym): Discard _gp_disp
558 handling.
559 (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
560
fe944acf
FT
5612018-04-30 Francois H. Theron <francois.theron@netronome.com>
562
563 * Makefile.am: Added NFP files to build.
564 * archures.c: Added bfd_arch_nfp
565 * config.bfd: Added NFP support.
566 * configure.ac: Added NFP support.
567 * cpu-nfp.c: New, for NFP support.
568 * elf-bfd.h: Added elf_section_info()
569 * elf64-nfp.c: New, for NFP support.
570 * po/SRC-POTFILES.in: Added NFP source files.
571 * targets.c: Added nfp_elf64_vec
572 * bfd-in2.h: Regenerate.
573 * Makefile.in: Regenerate.
574 * configure: Regenerate.
575
ffa389a3
AM
5762018-04-27 Alan Modra <amodra@gmail.com>
577
578 * bfd-in2.h: Regenerate.
579 * libbfd.h: Regenerate.
580
04383fd1
AM
5812018-04-27 Alan Modra <amodra@gmail.com>
582
583 PR 23123
584 PR 22374
585 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't drop plt
586 relocs for ifuncs.
587 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Comment fixes.
588
bfa5bd2a
PA
5892018-04-26 Pedro Alves <palves@redhat.com>
590
591 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't consider
592 ifunc and non-ifunc symbols duplicates.
593
59029f57
CL
5942018-04-25 Christophe Lyon <christophe.lyon@st.com>
595 Mickaël Guêné <mickael.guene@st.com>
596
597 * elf32-arm.c (elf32_arm_fdpic_thumb_plt_entry): New.
598 (elf32_arm_plt_needs_thumb_stub_p): Handle thumb-only case.
599 (elf32_arm_populate_plt_entry): Likewise.
600 (elf32_arm_output_plt_map_1): Likewise.
601 (elf32_arm_output_arch_local_syms): Likewise.
602
fac7bd64
CL
6032018-04-25 Christophe Lyon <christophe.lyon@st.com>
604 Mickaël Guêné <mickael.guene@st.com>
605
606 * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Handle
607 _GLOBAL_OFFSET_TABLE_ in FDPIC mode.
608
29e9b073
CL
6092018-04-25 Christophe Lyon <christophe.lyon@st.com>
610 Mickaël Guêné <mickael.guene@st.com>
611
612 * elf32-arm.c (bfd_elf32_arm_set_target_params): Handle FDPIC case
613 for R_ARM_TARGET2.
614
cb10292c
CL
6152018-04-25 Christophe Lyon <christophe.lyon@st.com>
616 Mickaël Guêné <mickael.guene@st.com>
617
618 * elf32-arm.c (DEFAULT_STACK_SIZE): New.
619 (elf32_arm_always_size_sections): Create stack segment.
620
5c5a4843
CL
6212018-04-25 Christophe Lyon <christophe.lyon@st.com>
622 Mickaël Guêné <mickael.guene@st.com>
623
624 * bfd-in2.h (BFD_RELOC_ARM_TLS_GD32_FDPIC)
625 (BFD_RELOC_ARM_TLS_LDM32_FDPIC, BFD_RELOC_ARM_TLS_IE32_FDPIC): New
626 relocations.
627 * elf32-arm.c (elf32_arm_howto_table_2): Add R_ARM_TLS_GD32_FDPIC,
628 R_ARM_TLS_LDM32_FDPIC, R_ARM_TLS_IE32_FDPIC relocations.
629 (elf32_arm_reloc_map): Add R_ARM_TLS_GD32_FDPIC,
630 R_ARM_TLS_LDM32_FDPIC, R_ARM_TLS_IE32_FDPIC.
631 (struct elf32_arm_link_hash_table): Update comment.
632 (elf32_arm_final_link_relocate): Handle TLS FDPIC relocations.
633 (IS_ARM_TLS_RELOC): Likewise.
634 (elf32_arm_check_relocs): Likewise.
635 (allocate_dynrelocs_for_symbol): Likewise.
636 (elf32_arm_size_dynamic_sections): Update comment.
637 * reloc.c: Add BFD_RELOC_ARM_TLS_GD32_FDPIC,
638 BFD_RELOC_ARM_TLS_LDM32_FDPIC, BFD_RELOC_ARM_TLS_IE32_FDPIC.
639
7801f98f
CL
6402018-04-25 Christophe Lyon <christophe.lyon@st.com>
641 Mickaël Guêné <mickael.guene@st.com>
642
643 * elf32-arm.c (elf32_arm_fdpic_plt_entry): New.
644 (elf32_arm_create_dynamic_sections): Handle FDPIC.
645 (elf32_arm_allocate_plt_entry): Likewise.
646 (elf32_arm_populate_plt_entry): Likewise.
647 (elf32_arm_output_plt_map_1): Likewise.
648
e8b09b87
CL
6492018-04-25 Christophe Lyon <christophe.lyon@st.com>
650 Mickaël Guêné <mickael.guene@st.com>
651
652 * elf32-arm.c (struct fdpic_local): New.
653 (elf_arm_obj_tdata): Add local_fdpic_cnts field.
654 (elf32_arm_local_fdpic_cnts): New.
655 (struct fdpic_global): New.
656 (elf32_arm_link_hash_entry): Add fdpic_cnts field.
657 (elf32_arm_link_hash_table): Add srofixup field.
658 (arm_elf_add_rofixup): New.
659 (arm_elf_fill_funcdesc): New.
660 (elf32_arm_link_hash_newfunc): Handle fdpic_cnts.
661 (elf32_arm_allocate_local_sym_info): Likewise.
662 (create_got_section): Create .rofixup section.
663 (elf32_arm_copy_indirect_symbol): Handle fdpic_cnts.
664 (bfd_elf32_arm_set_target_params): Handle FDPIC.
665 (elf32_arm_final_link_relocate): Likewise.
666 (elf32_arm_check_relocs): Likewise.
667 (allocate_dynrelocs_for_symbol): Likewise.
668 (elf32_arm_size_dynamic_sections): Likewise.
669 (elf32_arm_finish_dynamic_sections): Likewise.
670 (elf32_arm_output_arch_local_syms): Likewise.
671 (elf32_arm_fdpic_omit_section_dynsym): New.
672
188fd7ae
CL
6732018-04-25 Christophe Lyon <christophe.lyon@st.com>
674 Mickaël Guêné <mickael.guene@st.com>
675
676 * bfd-in2.c (BFD_RELOC_ARM_GOTFUNCDESC)
677 (BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC)
678 (BFD_RELOC_ARM_FUNCDESC_VALUE): New.
679 * elf32-arm.c (elf32_arm_howto_table_2): Add R_ARM_GOTFUNCDESC,
680 R_ARM_GOTOFFFUNCDESC, R_ARM_FUNCDESC, R_ARM_FUNCDESC_VALUE.
681 (elf32_arm_howto_from_type): Take new members of
682 elf32_arm_howto_table_2 into account.
683 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_GOTFUNCDESC,
684 BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC,
685 BFD_RELOC_ARM_FUNCDESC_VALUE.
686 * reloc.c: Add BFD_RELOC_ARM_GOTFUNCDESC,
687 BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC,
688 BFD_RELOC_ARM_FUNCDESC_VALUE.
689
18a20338
CL
6902018-04-25 Christophe Lyon <christophe.lyon@st.com>
691 Mickaël Guêné <mickael.guene@st.com>
692
693 * elf32-arm.c (elf32_arm_print_private_bfd_data): Support
694 EF_ARM_PIC and ELFOSABI_ARM_FDPIC.
695 (elf32_arm_post_process_headers): Support ELFOSABI_ARM_FDPIC.
696 (ELF_OSABI): Define to ELFOSABI_ARM_FDPIC.
697
617a5ada
CL
6982018-04-25 Christophe Lyon <christophe.lyon@st.com>
699 Mickaël Guêné <mickael.guene@st.com>
700
701 * config.bfd (arm*-*-linux-*): Add arm_elf32_fdpic_be_vec and
702 arm_elf32_fdpic_le_vec to targ_selvecs. Accept
703 arm*-*-uclinuxfdpiceabi.
704 * configure.ac: Add support for arm_elf32_fdpic_be_vec and
705 arm_elf32_fdpic_le_vec.
706 * configure: Regenerate.
707 * elf32-arm.c (struct elf32_arm_link_hash_table): Add fdpic_p.
708 (elf32_arm_link_hash_table_create): Initialize fdpic_p.
709 (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM)
710 (TARGET_BIG_NAME, elf_match_priority): Define for FDPIC targets.
711 (elf32_arm_fdpic_link_hash_table_create): New.
712 * targets.c (_bfd_target_vector): Add arm_elf32_fdpic_be_vec and
713 arm_elf32_fdpic_le_vec.
714
d99b4b92
AM
7152018-04-25 Alan Modra <amodra@gmail.com>
716
717 * elf-linux-core.h: Disable gcc-8 string truncation warning.
718 * elf.c (elfcore_write_prpsinfo): Likewise.
719
7202018-04-25 Alan Modra <amodra@gmail.com>
2ac93be7
AM
721
722 * Makefile.am: Remove arm-aout and arm-coff support.
723 * config.bfd: Likewise.
724 * configure.ac: Likewise.
725 * targets.c: Likewise.
726 * aout-arm.c: Delete.
727 * armnetbsd.c: Delete.
728 * riscix.c: Delete.
729 * Makefile.in: Regenerate.
730 * configure: Regenerate.
731 * po/SRC-POTFILES.in: Regenerate.
732
aa4a8c2a
NC
7332018-04-24 Nick Clifton <nickc@redhat.com>
734
db0c309f
NC
735 PR 23113
736 * elf.c (ignore_section_sym): Check for the output_section pointer
737 being NULL before dereferencing it.
738
aa4a8c2a
NC
739 PR 23110
740 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Check for
741 a negative PE_DEBUG_DATA size before iterating over the debug data.
742
b9f26d2e
AM
7432018-04-23 Alan Modra <amodra@gmail.com>
744
745 * elf-linux-core.h: Revert last change.
746 * elf.c: Likewise.
747
bf82069d
NC
7482018-04-23 Nick Clifton <nickc@redhat.com>
749
750 PR 23056
751 * aoutx.h (aout_get_external_symbols): Allocate an extra byte at
752 the end of the string table, and zero it.
753
5a6312e8
AM
7542018-04-23 Alan Modra <amodra@gmail.com>
755
756 * elf-linux-core.h (swap_linux_prpsinfo32_ugid32_out): Disable
757 gcc-8 string truncation warning.
758 (swap_linux_prpsinfo32_ugid16_out): Likewise.
759 (swap_linux_prpsinfo64_ugid32_out): Likewise.
760 (swap_linux_prpsinfo64_ugid16_out): Likewise.
761 * elf.c (elfcore_write_prpsinfo): Likewise.
762
bf82069d
NC
7632018-04-23 Nick Clifton <nickc@redhat.com>
764
765 PR 23056
766 * aoutx.h (aout_get_external_symbols): Allocate an extra byte at
767 the end of the string table, and zero it.
768
4352556b
AM
7692018-04-20 Alan Modra <amodra@gmail.com>
770
771 PR 22978
772 * elf32-hppa.c (got_relocs_needed): Add extra param to special
773 case both dtprel and tprel relocs.
774 (allocate_dynrelocs): Adjust conditions for got relocs.
775 (elf32_hppa_relocate_section): Likewise for local sym got relocs.
776 Emit dynamic relocs on TLS GOT entries for shared libraries,
777 not when pic. Omit dynamic reloc on dtprel entry when local,
778 and on tprel entry when local and executable.
779
f6a8b8c7
AM
7802018-04-19 Alan Modra <amodra@gmail.com>
781
782 PR 22537
783 * elf32-hppa.c (elf32_hppa_size_stubs): Init "destination" to -1.
784 (hppa_type_of_stub): Don't return a long branch stub for
785 symbols other than those defined statically.
786
8e415ce8
AM
7872018-04-19 Alan Modra <amodra@gmail.com>
788
789 * Makefile.am: Revert 2018-04-18 coff-mips changes.
790 * config.bfd: Add back mips_ecoff_le_vec and mips_ecoff_be_vec
791 to selvecs for mips targets change 2018-04-18.
792 * configure.ac: Reinstate mips_ecoff_le_vec, mips_ecoff_be_vec
793 and mips_ecoff_bele_vec.
794 * targets.c: Likewise.
795 * coff-mips.c: Resurrect.
796 * Makefile.in: Regenerate.
797 * configure: Regenerate.
798 * po/SRC-POTFILES.in: Regenerate.
799
3596d8ce
AM
8002018-04-18 Alan Modra <amodra@gmail.com>
801
802 * Makefile.am: Remove mips aout and coff support.
803 * config.bfd: Likewise.
804 * configure.ac: Likewise.
805 * targets.c: Likewise.
806 * coff-mips.c: Delete
807 * mipsbsd.c: Delete
808 * pe-mips.c: Delete
809 * pei-mips.c: Delete
810 * Makefile.in: Regenerate.
811 * configure: Regenerate.
812 * po/SRC-POTFILES.in: Regenerate.
813
d9dd2045
L
8142018-04-17 H.J. Lu <hongjiu.lu@intel.com>
815
816 * elf32-i386.c (elf32_bed): Define before including
817 "elf32-target.h".
818 * elf64-x86-64.c (elf64_bed): Define before including
819 "elf64-target.h".
820 (elf32_bed): Define before including "elf32-target.h".
821
e4e6a73d
L
8222018-04-17 H.J. Lu <hongjiu.lu@intel.com>
823
824 PR ld/23055
825 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Use a
826 normal input file with compatible relocation.
827
c65c21e1
AM
8282018-04-18 Alan Modra <amodra@gmail.com>
829
830 * Makefile.am: Remove support for assorted i386 aout and coff targets.
831 * config.bfd: Likewise.
832 * configure.ac: Likewise.
833 * doc/bfdint.texi: Likewise.
834 * targets.c: Likewise.
835 * freebsd.h: Delete.
836 * i386dynix.c: Delete.
837 * i386freebsd.c: Delete.
838 * i386linux.c: Delete.
839 * i386mach3.c: Delete.
840 * i386netbsd.c: Delete.
841 * i386os9k.c: Delete.
842 * Makefile.in: Regenerate.
843 * configure: Regenerate.
844 * po/SRC-POTFILES.in: Regenerate.
845
884d4d8a 8462018-04-17 Andrew Sadek <andrew.sadek.se@gmail.com>
3f0a5f17
ME
847
848 Microblaze Target: PIC data text relative
849
850 * bfd/reloc.c (2 new BFD relocations):
851 BFD_RELOC_MICROBLAZE_64_TEXTPCREL &
852 BFD_RELOC_MICROBLAZE_64_TEXTPCREL
853 * bfd/bfd-in2.h: Regenerate
854 * bfd/libbfd.h: Regenerate
855 * bfd/elf32-microblaze.c (Handle new relocs): define 'HOWTO' of 3
856 new relocs and handle them in both relocate and relax functions.
857 (microblaze_elf_reloc_type_lookup): add mapping between for new
858 bfd relocs.
859 (microblaze_elf_relocate_section): Handle new relocs in case of
860 elf relocation.
861 (microblaze_elf_relax_section): Handle new relocs for elf relaxation.
862
6327533b
NC
8632018-04-17 Nick Clifton <nickc@redhat.com>
864
808346fc
NC
865 PR 23055
866 * aoutx.h (find_nearest_line): Check that the symbol name exists
867 and is long enough, before attempting to see if it is for a .o
868 file.
869 * hash.c (bfd_hash_hash): Add an assertion that the string is not
870 NULL.
871 * linker.c (bfd_link_hash_lookup): Fail if the table or string are
872 NULL.
873 (_bfd_generic_link_add_archive_symbols): Fail if an archive entry
874 has no name.
875
6327533b
NC
876 PR 23065
877 * dwarf2.c (concat_filename): Check for a NULL table pointer.
878
e9af4700
NC
8792018-04-16 Nick Clifton <nickc@redhat.com>
880
881 PR 23061
882 * coffgen.c (coff_pointerize_aux): Check for an out of range
883 fixup.
884
ddb00039
AM
8852018-04-16 Alan Modra <amodra@gmail.com>
886
887 * Makefile.am: Remove arm-epoc-pe support.
888 * coff-arm.c: Likewise.
889 * config.bfd: Likewise.
890 * configure.ac: Likewise.
891 * targets.c: Likewise.
892 * epoc-pe-arm.c: Delete.
893 * epoc-pei-arm.c: Delete.
894 * Makefile.in: Regenerate.
895 * configure: Regenerate.
896 * po/SRC-POTFILES.in: Regenerate.
897
c9098af4
AM
8982018-04-16 Alan Modra <amodra@gmail.com>
899
900 * Makefile.am: Remove sparc-aout and sparc-coff support.
901 * config.bfd: Likewise.
902 * configure.ac: Likewise.
903 * targets.c: Likewise.
904 * aout-sparcle.c: Delete.
905 * aoutf1.h: Delete.
906 * cf-sparclynx.c: Delete.
907 * coff-sparc.c: Delete.
908 * demo64.c: Delete.
909 * sparclinux.c: Delete.
910 * sparclynx.c: Delete.
911 * sparcnetbsd.c: Delete.
912 * sunos.c: Delete.
913 * Makefile.in: Regenerate.
914 * configure: Regenerate.
915 * po/SRC-POTFILES.in: Regenerate.
916
dc12032b
AM
9172018-04-16 Alan Modra <amodra@gmail.com>
918
919 * Makefile.am: Remove m68k-aout and m68k-coff support.
920 * aoutf1.h: Likewise.
921 * aoutx.h: Likewise.
922 * archive.c: Likewise.
923 * bfd-in.h: Likewise.
924 * bfd.c: Likewise.
925 * coffcode.h: Likewise.
926 * coffswap.h: Likewise.
927 * config.bfd: Likewise.
928 * configure.ac: Likewise.
929 * configure.host: Likewise.
930 * doc/bfd.texinfo: Likewise.
931 * doc/bfdint.texi: Likewise.
932 * freebsd.h: Likewise.
933 * gen-aout.c: Likewise.
934 * hpux-core.c: Likewise.
935 * libaout.h: Likewise.
936 * libbfd-in.h: Likewise.
937 * pdp11.c: Likewise.
938 * peicode.h: Likewise.
939 * riscix.c: Likewise.
940 * targets.c: Likewise.
941 * aout0.c: Delete.
942 * coff-apollo.c: Delete.
943 * coff-aux.c: Delete.
944 * coff-m68k.c: Delete.
945 * coff-svm68k.c: Delete.
946 * coff-u68k.c: Delete.
947 * hosts/delta68.h: Delete.
948 * hosts/hp300bsd.h: Delete.
949 * hosts/m68kaux.h: Delete.
950 * hosts/news.h: Delete.
951 * hp300bsd.c: Delete.
952 * hp300hpux.c: Delete.
953 * liboasys.h: Delete.
954 * m68k4knetbsd.c: Delete.
955 * m68klinux.c: Delete.
956 * m68knetbsd.c: Delete.
957 * oasys.c: Delete.
958 * versados.c: Delete.
959 * Makefile.in: Regenerate.
960 * bfd-in2.h: Regenerate.
961 * configure: Regenerate.
962 * libbfd.h: Regenerate.
963 * po/SRC-POTFILES.in: Regenerate.
964
211dc24b
AM
9652018-04-16 Alan Modra <amodra@gmail.com>
966
967 * Makefile.am: Remove sh5 and sh64 support.
968 * archures.c: Likewise.
969 * config.bfd: Likewise.
970 * configure.ac: Likewise.
971 * cpu-sh.c: Likewise.
972 * elf32-sh-relocs.h: Likewise.
973 * elf32-sh.c: Likewise.
974 * targets.c: Likewise.
975 * elf32-sh64-com.c: Delete.
976 * elf32-sh64.c: Delete.
977 * elf32-sh64.h: Delete.
978 * elf64-sh64.c: Delete.
979 * Makefile.in: Regenerate.
980 * bfd-in2.h: Regenerate.
981 * configure: Regenerate.
982 * po/SRC-POTFILES.in: Regenerate.
983
4db9937a
AM
9842018-04-16 Alan Modra <amodra@gmail.com>
985
986 * Makefile.am: Remove sh-symbianelf support.
987 * config.bfd: Likewise.
988 * configure.ac: Likewise.
989 * targets.c: Likewise.
990 * elf32-sh-symbian.c: Delete.
991 * Makefile.in: Regenerate.
992 * configure: Regenerate.
993 * po/SRC-POTFILES.in: Regenerate.
994
9f5d1593
AM
9952018-04-16 Alan Modra <amodra@gmail.com>
996
997 * Makefile.am: Remove vax-bsd and vax-ultrix support.
998 * config.bfd: Likewise.
999 * configure.ac: Likewise.
1000 * targets.c: Likewise.
1001 * vaxbsd.c: Delete.
1002 * Makefile.in: Regenerate.
1003 * configure: Regenerate.
1004 * po/SRC-POTFILES.in: Regenerate.
1005
a9a4b302
AM
10062018-04-16 Alan Modra <amodra@gmail.com>
1007
1008 * Makefile.am: Remove w65 support.
1009 * archures.c: Likewise.
1010 * coffcode.h: Likewise.
1011 * config.bfd: Likewise.
1012 * configure.ac: Likewise.
1013 * targets.c: Likewise.
1014 * coff-w65.c: Delete.
1015 * cpu-w65.c: Delete.
1016 * Makefile.in: Regenerate.
1017 * bfd-in2.h: Regenerate.
1018 * configure: Regenerate.
1019 * po/SRC-POTFILES.in: Regenerate.
1020
04cb01fd
AM
10212018-04-16 Alan Modra <amodra@gmail.com>
1022
1023 * Makefile.am: Remove we32k support.
1024 * archures.c: Likewise.
1025 * coffcode.h: Likewise.
1026 * config.bfd: Likewise.
1027 * configure.ac: Likewise.
1028 * targets.c: Likewise.
1029 * coff-we32k.c: Delete.
1030 * cpu-we32k.c: Delete.
1031 * Makefile.in: Regenerate.
1032 * bfd-in2.h: Regenerate.
1033 * configure: Regenerate.
1034 * po/SRC-POTFILES.in: Regenerate.
1035
c2bf1eec
AM
10362018-04-16 Alan Modra <amodra@gmail.com>
1037
1038 * Makefile.am: Remove m88k support.
1039 * aoutx.h: Likewise.
1040 * archures.c: Likewise.
1041 * coffcode.h: Likewise.
1042 * coffswap.h: Likewise.
1043 * config.bfd: Likewise.
1044 * configure.ac: Likewise.
1045 * cpu-ns32k.c: Likewise.
1046 * elf32-nds32.c: Likewise.
1047 * mach-o.c: Likewise.
1048 * netbsd-core.c: Likewise.
1049 * reloc.c: Likewise.
1050 * targets.c: Likewise.
1051 * coff-m88k.c: Delete.
1052 * cpu-m88k.c: Delete.
1053 * elf32-m88k.c: Delete.
1054 * hosts/m88kmach3.h: Delete.
1055 * m88kmach3.c: Delete.
1056 * m88kopenbsd.c: Delete.
1057 * Makefile.in: Regenerate.
1058 * bfd-in2.h: Regenerate.
1059 * configure: Regenerate.
1060 * po/SRC-POTFILES.in: Regenerate.
1061
6793974d
AM
10622018-04-16 Alan Modra <amodra@gmail.com>
1063
1064 * Makefile.am: Remove i370 support.
1065 * archures.c: Likewise.
1066 * config.bfd: Likewise.
1067 * configure.ac: Likewise.
1068 * targets.c: Likewise.
1069 * cpu-i370.c: Delete.
1070 * elf32-i370.c: Delete.
1071 * Makefile.in: Regenerate.
1072 * bfd-in2.h: Regenerate.
1073 * configure: Regenerate.
1074 * po/SRC-POTFILES.in: Regenerate.
1075
e82aa794
AM
10762018-04-16 Alan Modra <amodra@gmail.com>
1077
1078 * Makefile.am: Remove h8500 support.
1079 * archures.c: Likewise.
1080 * coffcode.h: Likewise.
1081 * config.bfd: Likewise.
1082 * configure.ac: Likewise.
1083 * targets.c: Likewise.
1084 * coff-h8500.c: Delete.
1085 * cpu-h8500.c: Delete.
1086 * Makefile.in: Regenerate.
1087 * bfd-in2.h: Regenerate.
1088 * configure: Regenerate.
1089 * po/SRC-POTFILES.in: Regenerate.
1090
fe0bf0fd
AM
10912018-04-16 Alan Modra <amodra@gmail.com>
1092
1093 * Makefile.am: Remove h8300-coff support.
1094 * coffcode.h: Likewise.
1095 * config.bfd: Likewise.
1096 * configure.ac: Likewise.
1097 * reloc16.c: Likewise.
1098 * targets.c: Likewise.
1099 * coff-h8300.c: Delete.
1100 * Makefile.in: Regenerate.
1101 * configure: Regenerate.
1102 * po/SRC-POTFILES.in: Regenerate.
1103
fdef3943
AM
11042018-04-16 Alan Modra <amodra@gmail.com>
1105
1106 * Makefile.am: Remove IEEE 695 support.
1107 * archures.c: Likewise.
1108 * bfd.c: Likewise.
1109 * config.bfd: Likewise.
1110 * configure.ac: Likewise.
1111 * doc/bfd.texinfo: Likewise.
1112 * doc/bfdint.texi: Likewise.
1113 * doc/bfdsumm.texi: Likewise.
1114 * section.c: Likewise.
1115 * targets.c: Likewise.
1116 * ieee.c: Delete.
1117 * libieee.h: Delete.
1118 * Makefile.in: Regenerate.
1119 * bfd-in2.h: Regenerate.
1120 * configure: Regenerate.
1121 * po/SRC-POTFILES.in: Regenerate.
1122
de96689e
AM
11232018-04-16 Alan Modra <amodra@gmail.com>
1124
1125 * config.bfd: Remove tandem support.
1126
5972ac73
AM
11272018-04-16 Alan Modra <amodra@gmail.com>
1128
1129 * Makefile.am: Remove newsos3 support.
1130 * aoutx.h: Likewise.
1131 * config.bfd: Likewise.
1132 * configure.ac: Likewise.
1133 * targets.c: Likewise.
1134 * newsos3.c: Delete.
1135 * Makefile.in: Regenerate.
1136 * configure: Regenerate.
1137 * po/SRC-POTFILES.in: Regenerate.
1138
b4b594e3
AM
11392018-04-16 Alan Modra <amodra@gmail.com>
1140
1141 * Makefile.am: Remove netware support.
1142 * bfd-in.h: Likewise.
1143 * bfd.c: Likewise.
1144 * config.bfd: Likewise.
1145 * configure.ac: Likewise.
1146 * doc/bfdint.texi: Likewise.
1147 * ecoff.c: Likewise.
1148 * targets.c: Likewise.
1149 * libnlm.h: Delete.
1150 * nlm-target.h: Delete.
1151 * nlm.c: Delete.
1152 * nlm32-alpha.c: Delete.
1153 * nlm32-i386.c: Delete.
1154 * nlm32-ppc.c: Delete.
1155 * nlm32-sparc.c: Delete.
1156 * nlm32.c: Delete.
1157 * nlm64.c: Delete.
1158 * nlmcode.h: Delete.
1159 * nlmswap.h: Delete.
1160 * Makefile.in: Regenerate.
1161 * bfd-in2.h: Regenerate.
1162 * configure: Regenerate.
1163 * po/SRC-POTFILES.in: Regenerate.
1164
fceadf09
AM
11652018-04-16 Alan Modra <amodra@gmail.com>
1166
1167 * archures.c: Remove tahoe support.
1168 * config.bfd: Likewise.
1169 * configure.ac: Likewise.
1170 * hosts/tahoe.h: Delete.
1171 * bfd-in2.h: Regenerate.
1172 * configure: Regenerate.
1173
702d1671
AM
11742018-04-14 Alan Modra <amodra@gmail.com>
1175
1176 * elf-bfd.h (struct elf_backend_data): Add relropagesize.
1177 * elfxx-target.h (ELF_RELROPAGESIZE): Provide default and
1178 sanity test.
1179 (elfNN_bed): Init relropagesize.
1180 * bfd.c (bfd_emul_get_commonpagesize): Add boolean param to
1181 select relropagesize.
1182 * elf32-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
1183 (ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
1184 (ELF_MINPAGESIZE): Don't define.
1185 * elf64-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
1186 (ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
1187 * bfd-in2.h: Regenerate.
1188
03aa9684
AM
11892018-04-14 Alan Modra <amodra@gmail.com>
1190
1191 * elf32-ppc.c (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): Don't depend
1192 on __QNXTARGET__ define.
1193
24acfe5e
AM
11942018-04-14 Alan Modra <amodra@gmail.com>
1195
1196 * config.bfd: Add powerpc-*-lynxos* and powerpc-*-windiss*
1197 to obsolete list.
1198
a8eb42a8
AM
11992018-04-11 Alan Modra <amodra@gmail.com>
1200
1201 * aout-adobe.c: Delete.
1202 * bout.c: Delete.
1203 * coff-i860.c: Delete.
1204 * coff-i960.c: Delete.
1205 * cpu-i860.c: Delete.
1206 * cpu-i960.c: Delete.
1207 * elf32-i860.c: Delete.
1208 * elf32-i960.c: Delete.
1209 * hosts/i860mach3.h: Delete.
1210 * Makefile.am: Remove i860, i960, bout, and adobe support.
1211 * archures.c: Remove i860 and i960 support.
1212 * coffcode.h: Likewise.
1213 * reloc.c: Likewise.
1214 * aoutx.h: Comment updates.
1215 * archive.c: Remove BOUT and i960 support.
1216 * bfd.c: Remove BOUT support.
1217 * coffswap.h: Remove i960 support.
1218 * config.bfd: Remove i860, i960 and adobe targets.
1219 * configure.ac: Remove adode, bout, i860, i960, icoff targets.
1220 * targets.c: Likewise.
1221 * ieee.c: Remove i960 support.
1222 * mach-o.c: Remove i860 support.
1223 * Makefile.in: Regenerate.
1224 * bfd-in2.h: Regenerate.
1225 * configure: Regenerate.
1226 * libbfd.h: Regenerate.
1227 * po/SRC-POTFILES.in: Regenerate.
1228
aec2e0d2
MR
12292018-04-09 Maciej W. Rozycki <macro@mips.com>
1230
1231 * elf64-mips.c (mips_elf64_write_rel): Handle a NULL BFD pointer
1232 in the BFD symbol referred by the relocation.
1233 (mips_elf64_write_rela): Likewise.
1234
9ccfa98b
MR
12352018-04-09 Maciej W. Rozycki <macro@mips.com>
1236
1237 * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Issue an
1238 error for out-of-range `r_sym' values.
1239
3e04d765
AM
12402018-04-09 Alan Modra <amodra@gmail.com>
1241
1242 * elf64-ppc.c (struct _ppc64_elf_section_data): Add has_pltcall field.
1243 (struct ppc_link_hash_table): Add can_convert_all_inline_plt.
1244 (ppc64_elf_check_relocs): Set has_pltcall.
1245 (ppc64_elf_adjust_dynamic_symbol): Discard some PLT entries.
1246 (ppc64_elf_inline_plt): New function.
1247 (ppc64_elf_size_dynamic_sections): Discard some PLT entries for locals.
1248 * elf64-ppc.h (ppc64_elf_inline_plt): Declare.
1249 * elf32-ppc.c (has_pltcall): Define.
1250 (struct ppc_elf_link_hash_table): Add can_convert_all_inline_plt.
1251 (ppc_elf_check_relocs): Set has_pltcall.
1252 (ppc_elf_inline_plt): New function.
1253 (ppc_elf_adjust_dynamic_symbol): Discard some PLT entries.
1254 (ppc_elf_size_dynamic_sections): Likewise.
1255 * elf32-ppc.h (ppc_elf_inline_plt): Declare.
1256
23cedd1d
AM
12572018-04-09 Alan Modra <amodra@gmail.com>
1258
1259 * elf32-ppc.c (ppc_elf_howto_raw): Add PLTSEQ and PLTCALL howtos.
1260 (is_plt_seq_reloc): New function.
1261 (ppc_elf_check_relocs): Handle PLTSEQ and PLTCALL relocs.
1262 (ppc_elf_tls_optimize): Handle inline plt call sequence.
1263 (ppc_elf_relax_section): Handle PLTCALL reloc.
1264 (ppc_elf_relocate_section): Nop out inline plt call sequence when
1265 resolving locally.
1266 * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_PLTSEQ and
1267 R_PPC64_PLTCALL entries. Comment R_PPC64_TOCSAVE.
1268 (has_tls_get_addr_call): Correct comment.
1269 (is_branch_reloc): Add PLTCALL.
1270 (is_plt_seq_reloc): New function.
1271 (ppc64_elf_check_relocs): Handle PLT16_LO_DS reloc. Set
1272 has_tls_reloc for R_PPC64_TLSGD and R_PPC64_TLSLD. Create plt
1273 entry for R_PPC64_PLTCALL.
1274 (ppc64_elf_tls_optimize): Handle inline plt call sequence.
1275 (ppc_type_of_stub): Handle PLTCALL reloc.
1276 (toc_adjusting_stub_needed): Likewise.
1277 (ppc64_elf_relocate_section): Set "can_plt_call" for PLTCALL
1278 reloc insn. Nop out inline plt call sequence when resolving
1279 locally. Handle __tls_get_addr inline plt call optimization.
1280
2d7ad24e
AM
12812018-04-09 Alan Modra <amodra@gmail.com>
1282
1283 * elf64-ppc.c (LOCAL_PLT_ENTRY_SIZE): Define.
1284 (struct ppc_stub_hash_entry): Add symtype field.
1285 (PLT_KEEP): Define.
1286 (struct ppc_link_hash_table): Add pltlocal and relpltlocal.
1287 (create_linkage_sections): Create pltlocal and relpltlocal.
1288 (ppc64_elf_check_relocs): Allow PLT relocs on local symbols.
1289 Set PLT_KEEP.
1290 (ppc64_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls.
1291 (allocate_dynrelocs): Allocate pltlocal and relpltlocal.
1292 (ppc64_elf_size_dynamic_sections): Size pltlocal and relpltlocal.
1293 Keep PLT entries for inline calls against locals.
1294 (ppc_build_one_stub): Use pltlocal as appropriate.
1295 (ppc_size_one_stub): Likewise.
1296 (ppc64_elf_size_stubs): Set symtype.
1297 (build_global_entry_stubs_and_plt): Init pltlocal and write
1298 relpltlocal for globals.
1299 (write_plt_relocs_for_local_syms): Likewise for local syms.
1300 (ppc64_elf_relocate_section): Support PLT for local syms.
1301 * elf32-ppc.c (PLT_KEEP): Define.
1302 (struct ppc_elf_link_hash_table): Add pltlocal and relpltlocal.
1303 (ppc_elf_create_glink): Create pltlocal and relpltlocal.
1304 (ppc_elf_check_relocs): Allow PLT relocs on local symbols.
1305 Set PLT_KEEP. Adjust update_local_sym_info call.
1306 (ppc_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls.
1307 (allocate_dynrelocs): Allocate pltlocal and relpltlocal.
1308 (ppc_elf_size_dynamic_sections): Size pltlocal and relpltlocal.
1309 (ppc_elf_relocate_section): Support PLT16 relocs for local syms.
1310 (write_global_sym_plt): Init pltlocal and write relpltlocal.
1311 (ppc_finish_symbols): Likewise for locals.
1312
49c09209
AM
13132018-04-09 Alan Modra <amodra@gmail.com>
1314
1315 * elf64-ppc.c (ppc_build_one_stub): Move output of PLT relocs
1316 for local symbols to..
1317 (write_plt_relocs_for_local_syms): ..here. New function.
1318 (ppc64_elf_finish_dynamic_symbol): Move output of PLT relocs for
1319 global symbols to..
1320 (build_global_entry_stubs_and_plt): ..here. Rename from
1321 build_global_entry_stubs.
1322 (ppc64_elf_build_stubs): Always call build_global_entry_stubs_and_plt.
1323 Call write_plt_relocs_for_local_syms.
1324 * elf32-ppc.c (get_sym_h): New function.
1325 (ppc_elf_relax_section): Use get_sym_h.
1326 (ppc_elf_relocate_section): Move output of PLT relocs and glink
1327 stubs for local symbols to..
1328 (ppc_finish_symbols): ..here. New function.
1329 (ppc_elf_finish_dynamic_symbol): Move output of PLT relocs for
1330 global syms to..
1331 (write_global_sym_plt): ..here. New function.
1332 * elf32-ppc.h (ppc_elf_modify_segment_map): Delete attribute.
1333 (ppc_finish_symbols): Declare.
1334
08be3224
AM
13352018-04-09 Alan Modra <amodra@gmail.com>
1336
1337 * elf32-ppc.c (ppc_elf_check_relocs): Handle PLT16 relocs.
1338 (ppc_elf_relocate_section): Likewise.
1339 * elf64-ppc.c (ppc64_elf_check_relocs): Handle PLT16_LO_DS.
1340 (ppc64_elf_relocate_section): Likewise. Correct PLT16
1341 resolution to plt entry relative to toc pointer.
1342
37da22e5
AM
13432018-04-09 Alan Modra <amodra@gmail.com>
1344
1345 * elf64-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL,
1346 TLS_TPRELGD, TLS_EXPLICIT): Renumber. Test TLS_TLS throughout
1347 file when other TLS flags are tested in a mask.
1348 (TLS_MARK, NON_GOT): Define.
1349 (PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well.
1350 (update_local_sym_info): Don't create got entry when NON_GOT.
1351 (ppc64_elf_check_relocs): Pass NON_GOT with PLT_IFUNC.
1352 Set TLS_MARK.
1353 (get_tls_mask): Do toc lookup if tls_mask is just TLS_MARK.
1354 (ppc64_elf_relocate_section): Likewise.
1355 (ppc64_elf_tls_optimize): Don't attempt to optimize indirect
1356 __tls_get_addr calls lacking a marker reloc.
1357 * elf32-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL,
1358 TLS_TPRELGD): Renumber. Update comment.
1359 (TLS_MARK, NON_GOT): Define.
1360 (PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well.
1361 (update_local_sym_info): Don't create got entry when NON_GOT.
1362 (ppc_elf_check_relocs): Pass NON_GOT with PLT_IFUNC.
1363 Set TLS_MARK.
1364 (ppc_elf_tls_optimize): Don't attempt to optimize indirect
1365 __tls_get_addr calls lacking a marker reloc.
1366
a6fd92b0
L
13672018-04-06 H.J. Lu <hongjiu.lu@intel.com>
1368
1369 * elf64-x86-64.c (elf_x86_64_info_to_howto): Don't mask out
1370 R_X86_64_converted_reloc_bit.
1371
3cba8b6c
L
13722018-04-05 H.J. Lu <hongjiu.lu@intel.com>
1373
1374 PR gas/22318
1375 * configure: Regenerated.
1376
0e8452bb
AM
13772018-04-05 Alan Modra <amodra@gmail.com>
1378
1379 * elf-hppa.h (elf_hppa_info_to_howto): Init howto to NULL.
1380 (elf_hppa_info_to_howto_rel): Likewise.
1381
8ee55178
MR
13822018-04-04 Maciej W. Rozycki <macro@mips.com>
1383
1384 * elf-hppa.h (elf_hppa_info_to_howto): Also return
1385 unsuccessfully for unimplemented relocations.
1386 (elf_hppa_info_to_howto_rel): Likewise.
1387
5d7c8b80
MR
13882018-04-04 Maciej W. Rozycki <macro@mips.com>
1389
1390 * elf32-i860.c (lookup_howto): Add `abfd' parameter. Set the
1391 `bfd_error_bad_value' error and call `_bfd_error_handler' on a
1392 howto lookup failure.
1393 (elf32_i860_reloc_type_lookup): Adjust `lookup_howto' call
1394 accordingly.
1395 (elf32_i860_info_to_howto_rela): Likewise.
1396 (elf32_i860_relocate_splitn): Likewise.
1397 (elf32_i860_relocate_pc16): Likewise.
1398 (elf32_i860_relocate_pc26): Likewise.
1399 (elf32_i860_relocate_section): Likewise.
1400
707bad1b
MR
14012018-04-04 Maciej W. Rozycki <macro@mips.com>
1402
1403 * elf32-visium.c (visium_info_to_howto_rela): Correct the range
1404 check for `visium_elf_howto_table' table access.
1405
0cc919dc
MR
14062018-04-04 Maciej W. Rozycki <macro@mips.com>
1407
1408 * elf32-iq2000.c (iq2000_info_to_howto_rela): Correct the range
1409 check for `iq2000_elf_howto_table' table access.
1410
f428698e
MR
14112018-04-04 Maciej W. Rozycki <macro@mips.com>
1412
1413 * elf32-frv.c (frv_info_to_howto_rela): Correct the range check
1414 for `elf32_frv_howto_table' table access.
1415
7ed6f92a
MR
14162018-04-04 Maciej W. Rozycki <macro@mips.com>
1417
1418 * elf32-mips.c (mips_elf32_rtype_to_howto): Also return
1419 unsuccessfully for placeholder howtos.
1420 * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
1421 * elfn32-mips.c (mips_elf_n32_rtype_to_howto): Likewise.
1422
75def2ab
MR
14232018-03-29 Maciej W. Rozycki <macro@mips.com>
1424
1425 * elf32-mips.c (mips_info_to_howto_rel): Remove the calls to
1426 `_bfd_error_handler' and to set the `bfd_error_bad_value' error.
1427
8b6a949a
MR
14282018-03-28 Maciej W. Rozycki <macro@mips.com>
1429
1430 * elf-hppa.h (elf_hppa_info_to_howto_rel): Remove
1431 ATTRIBUTE_UNUSED from `abfd'.
1432
d81270c3
MR
14332018-03-28 Maciej W. Rozycki <macro@mips.com>
1434
1435 * elf-hppa.h (elf_hppa_info_to_howto_rel): Correct
1436 `_bfd_error_handler' call formatting.
1437
60dceb8d 14382018-03-28 Maciej W. Rozycki <macro@mips.com>
8205a328
MR
1439
1440 * elf32-mips.c (mips_info_to_howto_rel): Call
1441 `mips_elf32_rtype_to_howto' directly rather than via
1442 `->elf_backend_mips_rtype_to_howto'.
1443
e04ef022
RL
14442018-03-28 Renlin Li <renlin.li@arm.com>
1445
1446 PR ld/22970
1447 * elfnn-aarch64.c (IS_AARCH64_TLS_RELOC): Add cases for
1448 BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12,
1449 BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,
1450 BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12,
1451 BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,
1452 BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12,
1453 BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,
1454 BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12,
1455 BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC.
1456 (elfNN_aarch64_final_link_relocate): Support new relocations.
1457 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Support new
1458 relocations.
1459 (_bfd_aarch64_elf_resolve_relocation): Support new relocations.
1460
84f1b9fb
RL
14612018-03-28 Renlin Li <renlin.li@arm.com>
1462
1463 PR ld/22970
1464 * reloc.c: Add BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12
1465 BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12_NC,
1466 BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12,
1467 BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,
1468 BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12,
1469 BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,
1470 BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12,
1471 BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,
1472 BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12,
1473 BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC.
1474 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add table entry for
1475 TLSLE_LDST16_TPREL_LO12,
1476 TLSLE_LDST16_TPREL_LO12_NC,
1477 TLSLE_LDST32_TPREL_LO12,
1478 TLSLE_LDST32_TPREL_LO12_NC,
1479 TLSLE_LDST64_TPREL_LO12,
1480 TLSLE_LDST64_TPREL_LO12_NC,
1481 TLSLE_LDST8_TPREL_LO12,
1482 TLSLE_LDST8_TPREL_LO12_NC.
1483 * bfd-in2.h: Regenerated.
1484 * libbfd.h: Regenerated.
1485
f8745e1c
EB
14862018-03-28 Eric Botcazou <ebotcazou@adacore.com>
1487
1488 PR ld/22972
1489 * elfxx-sparc.c (struct _bfd_sparc_elf_link_hash_entry): Add new flag
1490 has_old_style_got_reloc.
1491 (_bfd_sparc_elf_check_relocs) <GOT relocations>: Set it for old-style
1492 relocations. Fix a couple of long lines.
1493 (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: Do not generate
1494 a R_SPARC_NONE for the GOT slot if the symbol is also subject to old-style
1495 GOT relocations.
1496
bf54968b
L
14972018-03-25 H.J. Lu <hongjiu.lu@intel.com>
1498
1499 PR ld/23000
1500 * elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Add
1501 ENDBR64 to the TLSDESC PLT entry.
1502
0ccf57bd
AM
15032018-03-21 Alan Modra <amodra@gmail.com>
1504
1505 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Trim uninteresting
1506 symbols. Use size_t counts. Delete redundant opd test.
1507
4bad6366
AM
15082018-03-21 Alan Modra <amodra@gmail.com>
1509
1510 * elf32-ppc.c (ppc_elf_tls_optimize): Delete locsyms.
1511
bac3c8c5
AM
15122018-03-21 Alan Modra <amodra@gmail.com>
1513
1514 * elf32-ppc.c (struct ppc_elf_link_hash_entry): Make tls_mask
1515 field unsigned.
1516 (update_local_sym_info): Likewise for local_got_tls_masks.
1517 (ppc_elf_tls_optimize): Likewise for lgot_masks.
1518
6a3858a6
AM
15192018-03-21 Alan Modra <amodra@gmail.com>
1520
1521 * elf64-ppc.c (ppc_size_one_stub): Fix comment typo.
1522 (ppc64_elf_layout_multitoc): Allocate relocs for tprel as we
1523 do in size_dynamic_sections.
1524
675e2809
AM
15252018-03-21 Alan Modra <amodra@gmail.com>
1526
1527 * elf64-ppc.c (ppc64_elf_relocate_section): Don't access rel[1]
1528 without first checking array bounds.
1529 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1530
416c34d6
L
15312018-03-20 H.J. Lu <hongjiu.lu@intel.com>
1532
1533 PR ld/22983
1534 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Set
1535 non_ir_ref_dynamic if a symbol is made dynamic by --dynamic-list.
1536
315aa1cf
NC
15372018-03-19 Nick Clifton <nickc@redhat.com>
1538
1539 * po/es.po: Updated Spanish translation.
1540
0854d504
MF
15412018-03-15 Max Filippov <jcmvbkbc@gmail.com>
1542
1543 * elf32-xtensa.c (xlate_map_entry): Change types of address
1544 fields from 'unsigned' to 'bfd_vma'.
1545 (xlate_offset_with_removed_text): Use struct xlate_map_entry as
1546 the key argument to bsearch. Allow offsets past the end of a
1547 section, use the last map entry for translation of such offsets.
1548
f9671640
KLC
15492018-03-15 Kuan-Lin Chen <kuanlinchentw@gmail.com>
1550
1551 * elf32-nds32.c (nds32_elf_ex9_build_hash_table): Removed.
1552 Not support the target feature.
1553 (nds32_elf_ex9_itb_base): Likewise.
1554 (nds32_elf_ex9_import_table): Likewise.
1555 (nds32_elf_ex9_finish): Likewise.
1556 (nds32_elf_ex9_reloc_jmp): Likewise.
1557 (nds32_elf_get_insn_with_reg): Likewise.
1558 (nds32_get_local_syms): Likewise.
1559 (nds32_elf_ex9_replace_instruction): Likewise.
1560 (nds32_elf_ifc_calc): Likewise.
1561 (nds32_elf_ifc_finish): Likewise.
1562 (nds32_elf_ifc_replace): Likewise.
1563 (nds32_elf_ifc_reloc): Likewise.
1564
7dda8d3c
AM
15652018-03-14 Alan Modra <amodra@gmail.com>
1566
1567 * elf64-ppc.c (sfpr_define): Adjust for stub_sec size having
1568 sfpr size added before defining alias symbols.
1569 (ppc64_elf_build_stubs): Add stub section padding before
1570 copying sfpr contents and defining save/restore alias symbols.
1571
9e223787
L
15722018-03-14 H.J. Lu <hongjiu.lu@intel.com>
1573
1574 PR ld/20882
1575 * elflink.c (elf_gc_mark_debug_section): Also check the local
1576 debug definition section.
1577
3e33b239
NC
15782018-03-13 Nick Clifton <nickc@redhat.com>
1579
1580 PR 22113
1581 * pei-x86_64.c (pex64_get_unwind_info): Change to a boolean
1582 function. Add an end address parameter. Check access of the data
1583 pointer to make sure that they do not extend beyond the end
1584 address. Return FALSE if any check fails. Add the end address
1585 pointer to the ui structure.
1586 (pex64_xdata_print_uwd_codes): Check accesses of the raw unwind
1587 codes to make sure that they do not extend beyond the end address
1588 pointer. Print an error message and return immediately if any
1589 check fails.
1590
f657f8c4
NC
15912018-03-09 Nick Clifton <nickc@redhat.com>
1592
1593 * elf64-s390.c (elf_s390_relocate_section): Move check for
1594 relocations against non-allocated sections to before the code that
1595 handles ifunc relocations.
1596 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1597 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Treat
1598 relocs against IFUNC symbols in non-allocated sections as relocs
1599 against FUNC symbols.
1600 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1601
347a8774
L
16022018-03-08 H.J. Lu <hongjiu.lu@intel.com>
1603
1604 PR ld/22929
1605 * elf32-i386.c (elf_i386_relocate_section): Treat relocation
1606 against IFUNC symbol in SHT_NOTE section without SHF_ALLOC as
1607 relocation against FUNC symbol.
1608 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
1609
0c1ded8d
RL
16102018-03-07 Renlin Li <renlin.li@arm.com>
1611
1612 PR ld/20402
1613 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Check absolute
1614 symbol, and don't emit relocation in specific case.
1615
0118219e
AM
16162018-03-07 Alan Modra <amodra@gmail.com>
1617
1618 * elf64-mips.c (mips_elf64_rtype_to_howto): Return NULL on error.
1619 (mips_elf64_slurp_one_reloc_table): Pass on error.
1620
dfb93f11
JC
16212018-03-03 James Cowgill <james.cowgill@mips.com>
1622 Maciej W. Rozycki <macro@mips.com>
1623
1624 PR ld/21900
1625 * elfxx-mips.c (mips_elf_calculate_relocation): Only return
1626 after calling `undefined_symbol' hook if this is an error
1627 condition. Assume the value of 0 for the symbol requested
1628 otherwise.
1629
9a2ebffd
JW
16302018-03-02 Jim Wilson <jimw@sifive.com>
1631
1632 PR 22903
1633 * elfnn-aarch64.c (_bfd_aarch64_resize_stubs): Add 8 bytes for branch
1634 and nop instead of 4.
1635 (elfNN_arch64_build_stubs): Add nop after branch. Increase size by
1636 8 instead of 4.
1637
788af978
JW
16382018-03-01 Jim Wilson <jimw@sifive.com>
1639
1640 PR 22756
1641 * elfnn-riscv.c (riscv_relax_delete_bytes): When adjust st_size, use
1642 else if instead of if.
1643
5224fa03
AM
16442018-03-01 Alan Modra <amodra@gmail.com>
1645
1646 * elf32-ft32.c (ft32_info_to_howto_rela): Correct range test.
1647
116acb2c
AM
16482018-02-28 Alan Modra <amodra@gmail.com>
1649
1650 PR 22887
1651 * aoutx.h (swap_std_reloc_in): Correct r_index bound check.
1652
eef10466
NC
16532018-02-28 Nick Clifton <nickc@redhat.com>
1654
12c96342
NC
1655 PR 22895
1656 PR 22893
1657 * dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
1658 pointer. Drop unused abfd parameter. Check the size of the block
1659 before initialising the data field. Return the end pointer if the
1660 size is invalid.
1661 (read_attribute_value): Adjust invocations of read_n_bytes.
1662
eef10466
NC
1663 PR 22894
1664 * dwarf1.c (parse_die): Check the length of form blocks before
1665 advancing the data pointer.
1666
0d329c0a
AM
16672018-02-28 Alan Modra <amodra@gmail.com>
1668
1669 PR 22887
1670 * aoutx.h (translate_symbol_table): Print an error message and set
1671 bfd_error on finding an invalid name string offset.
1672
f6aec96d
L
16732018-02-27 H.J. Lu <hongjiu.lu@intel.com>
1674
1675 * config.in: Regenerated.
1676 * configure: Likewise.
1677 * configure.ac: Add --enable-separate-code.
1678 (DEFAULT_LD_Z_SEPARATE_CODE): New AC_DEFINE_UNQUOTED. Default
1679 to 1 for Linux/x86 targets,
1680 * elf64-x86-64.c (ELF_MAXPAGESIZE): Set to 0x1000 if
1681 DEFAULT_LD_Z_SEPARATE_CODE is 1.
1682
f3185997
NC
16832018-02-27 Nick Clifton <nickc@redhat.com>
1684
e8f5af78
NC
1685 * aout-cris.c (swap_ext_reloc_out): Standadize error/warning
1686 message.
1687 * elf-hppa.h (elf_hppa_info_to_howto_rel): Likewise.
1688 * elf32-i386.c (elf_i386_reloc_type_lookup): Likewise.
1689 * elf32-xtensa.c (elf_xtensa_reloc_type_lookup): Likewise.
1690 * elf64-ppc.c (ppc64_elf_reloc_type_lookup): Likewise.
1691 * elf64-s390.c (elf_s390_reloc_type_lookup): Likewise.
1692 * elf64-sh64.c (sh_elf64_info_to_howto): Likewise.
1693 * elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise.
1694 * elfxx-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Likewise.
1695 * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
1696
f3185997
NC
1697 PR 22875
1698 * elf-bfd.h (struct elf_backend_data): Change the return type of
1699 the elf_info_to_howto and elf_info_to_howto_rel function pointers
1700 to bfd_boolean.
1701 * elfcode.h (elf_slurp_reloc_table_from_section): Check the return
1702 value from the info_to_howto function and fail if that function
1703 failed.
1704 * elf32-h8300.c (elf32_h8_relocate_section): Check return value
1705 from the info_to_howto function.
1706 (elf32_h8_relax_section): Likewise.
1707 * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
1708 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
1709 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1710 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1711 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
1712 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
1713 * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Likewise.
1714 * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise.
1715 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
1716 * elfnn-riscv.c (riscv_elf_check_relocs): Likewise.
1717 (riscv_elf_relocate_section): Likewise.
1718 * elf-hppa.h (elf_hppa_info_to_howto): Change return type to
1719 bfd_boolean. Issue an error message, set an error value and
1720 return FALSE if the reloc is not recognized.
1721 (elf_hppa_info_to_howto_rel): Likewise.
1722 * elf-m10200.c (mn10200_info_to_howto): Likewise.
1723 * elf-m10300.c (mn10300_info_to_howto): Likewise.
1724 * elf.c (_bfd_elf_no_info_to_howto): Likewise.
1725 * elf32-arc.c (arc_info_to_howto_rel): Likewise.
1726 * elf32-arm.c (elf32_arm_info_to_howto): Likewise.
1727 * elf32-avr.c (avr_info_to_howto_rela): Likewise.
1728 * elf32-bfin.c (bfin_info_to_howto): Likewise.
1729 * elf32-cr16.c (elf_cr16_info_to_howto): Likewise.
1730 * elf32-cr16c.c (elf_cr16c_info_to_howto): Likewise.
1731 * elf32-cris.c (elf_cr16c_info_to_howto_rel)
1732 (cris_info_to_howto_rela): Likewise.
1733 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
1734 * elf32-d10v.c (d10v_info_to_howto_rel): Likewise.
1735 * elf32-d30v.c (d30v_info_to_howto_rel, d30v_info_to_howto_rela):
1736 Likewise.
1737 * elf32-dlx.c (dlx_rtype_to_howto, elf32_dlx_info_to_howto)
1738 (elf32_dlx_info_to_howto_rel): Likewise.
1739 * elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise.
1740 * elf32-fr30.c (fr30_info_to_howto_rela): Likewise.
1741 * elf32-frv.c (frv_info_to_howto_rela)
1742 (frvfdpic_info_to_howto_rel): Likewise.
1743 * elf32-ft32.c (ft32_info_to_howto_rela): Likewise.
1744 * elf32-gen.c (elf_generic_info_to_howto)
1745 (elf_generic_info_to_howto_rel): Likewise.
1746 * elf32-h8300.c (elf32_h8_info_to_howto)
1747 (elf32_h8_info_to_howto_rel): Likewise.
1748 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
1749 * elf32-i386.c (elf_i386_reloc_type_lookup)
1750 (elf_i386_rtype_to_howto, elf_i386_info_to_howto_rel): Likewise.
1751 * elf32-i860.c (lookup_howto, elf32_i860_info_to_howto_rela):
1752 Likewise.
1753 * elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise.
1754 * elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise.
1755 * elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise.
1756 * elf32-lm32.c (lm32_info_to_howto_rela): Likewise.
1757 * elf32-m32c.c (m32c_info_to_howto_rela): Likewise.
1758 * elf32-m32r.c (m32r_info_to_howto_rel, m32r_info_to_howto):
1759 Likewise.
1760 * elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise.
1761 * elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise.
1762 * elf32-m68k.c (rtype_to_howto): Likewise.
1763 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
1764 * elf32-mep.c (mep_info_to_howto_rela): Likewise.
1765 * elf32-metag.c (metag_info_to_howto_rela): Likewise.
1766 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
1767 * elf32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela):
1768 Likewise.
1769 * elf32-moxie.c (moxie_info_to_howto_rela): Likewise.
1770 * elf32-msp430.c (msp430_info_to_howto_rela): Likewise.
1771 * elf32-mt.c (mt_info_to_howto_rela): Likewise.
1772 * elf32-nds32.c (nds32_info_to_howto_rel, nds32_info_to_howto):
1773 Likewise.
1774 * elf32-nios2.c (nios2_elf32_info_to_howto): Likewise.
1775 * elf32-or1k.c (or1k_info_to_howto_rela): Likewise.
1776 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
1777 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
1778 * elf32-pru.c (pru_elf32_info_to_howto): Likewise.
1779 * elf32-rl78.c (rl78_info_to_howto_rela): Likewise.
1780 * elf32-rx.c (rx_info_to_howto_rela): Likewise.
1781 * elf32-s390.c (elf_s390_info_to_howto): Likewise.
1782 * elf32-score.c (s3_bfd_score_info_to_howto)
1783 (_bfd_score_info_to_howto): Likewise.
1784 * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
1785 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
1786 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
1787 * elf32-tic6x.c (elf32_tic6x_info_to_howto)
1788 (elf32_tic6x_info_to_howto_rel): Likewise.
1789 * elf32-tilepro.c (tilepro_info_to_howto_rela): Likewise.
1790 * elf32-v850.c (v850_elf_info_to_howto_rel)
1791 (v850_elf_info_to_howto_rela, v800_elf_info_to_howto): Likewise.
1792 * elf32-vax.c (rtype_to_howto): Likewise.
1793 * elf32-visium.c (visium_info_to_howto_rela): Likewise.
1794 * elf32-wasm32.c (elf32_wasm32_rtype_to_howto)
1795 (elf32_wasm32_info_to_howto_rela): Likewise.
1796 * elf32-xc16x.c (elf32_xc16x_info_to_howto): Likewise.
1797 * elf32-xgate.c (xgate_info_to_howto_rel): Likewise.
1798 * elf32-xstormy16.c (xstormy16_info_to_howto_rela): Likewise.
1799 * elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise.
1800 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
1801 * elf64-gen.c (elf_generic_info_to_howto)
1802 (elf_generic_info_to_howto_rel): Likewise.
1803 * elf64-ia64-vms.c (elf64_ia64_info_to_howto): Likewise.
1804 * elf64-mips.c (mips_elf64_info_to_howto_rela): Likewise.
1805 * elf64-mmix.c (mmix_info_to_howto_rela): Likewise.
1806 * elf64-ppc.c (ppc64_elf_info_to_howto): Likewise.
1807 * elf64-s390.c (elf_s390_reloc_type_lookup): Likewise.
1808 * elf64-sh64.c (elf_s390_info_to_howto, sh_elf64_info_to_howto):
1809 Likewise.
1810 * elf64-x86-64.c (elf_x86_64_info_to_howto): Likewise.
1811 * elfn32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela):
1812 Likewise.
1813 * elfnn-aarch64.c (elfNN_aarch64_info_to_howto): Likewise.
1814 * elfnn-ia64.c (elfNN_ia64_info_to_howto): Likewise.
1815 * elfnn-riscv.c (riscv_info_to_howto_rela): Likewise.
1816 * elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise.
1817 * elfxx-sparc.c (_bfd_sparc_elf_info_to_howto): Likewise.
1818 * elfxx-tilegx.c (tilegx_info_to_howto_rela): Likewise.
1819 * elf32-score.h (s7_bfd_score_info_to_howto): Update prototype.
1820 * elfxx-sparc.h (_bfd_sparc_elf_info_to_howto): Update prototype.
1821 * elfxx-tilegx.h (tilegx_info_to_howto_rela): Update prototype.
1822 * elfxx-target.h (elf_info_to_howto, elf_info_to_howto_rel):
1823 Default to NULL.
1824
1f4bace8
JW
18252018-02-26 Jim Wilson <jimw@sifive.com>
1826 Stephan Schreiber <info@fs-driver.org>
1827
1828 PR 15904
1829 * elfnn-ia64.c (elfNN_ia64_relax_section): After ia64_elf_relax_brl
1830 call, set changed_contents and changed_relocs. Likewise after
1831 successful ia64_elf_relax_br call.
1832
6838f2be
AM
18332018-02-26 Alan Modra <amodra@gmail.com>
1834
1835 * elf.c (assign_file_positions_except_relocs): Don't segfault
1836 when actual number of phdrs is less than allocated. Delete
1837 outdated comment. Formatting.
1838
38f14ab8
AM
18392018-02-26 Alan Modra <amodra@gmail.com>
1840
1841 * elf-m10300.c, * elf-s390-common.c, * elf32-arc.c, * elf32-cris.c,
1842 * elf32-dlx.c, * elf32-frv.c, * elf32-i370.c, * elf32-lm32.c,
1843 * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c,
1844 * elf32-microblaze.c, * elf32-msp430.c, * elf32-nds32.c,
1845 * elf32-nios2.c, * elf32-or1k.c, * elf32-rl78.c, * elf32-rx.c,
1846 * elf32-score.c, * elf32-score7.c, * elf32-sh-symbian.c,
1847 * elf32-sh.c, * elf32-spu.c, * elf32-v850.c, * elf32-xtensa.c,
1848 * elf64-alpha.c, * elf64-ia64-vms.c, * elf64-mmix.c,
1849 * elf64-sh64.c, * elf64-sparc.c, * elfnn-ia64.c, * elfxx-tilegx.c,
1850 * mmo.c, * osf-core.c, * srec.c, * vms-alpha.c: Standardize
1851 error/warning messages.
1852
6e05870c
AM
18532018-02-26 Alan Modra <amodra@gmail.com>
1854
1855 * archive.c, * bfd.c, * linker.c, * reloc.c, * stabs.c,
1856 * syms.c: Standardize error/warning messages.
1857
59d08d6c
AM
18582018-02-26 Alan Modra <amodra@gmail.com>
1859
1860 * aout-adobe.c, * aout-cris.c, * i386linux.c, * m68klinux.c,
1861 * sparclinux.c, * coff-alpha.c, * coff-arm.c, * coff-mcore.c,
1862 * coffcode.h, * coffgen.c, * cofflink.c, * ecoff.c, * pe-mips.c,
1863 * peXXigen.c, * peicode.h: Standardize error/warning messages.
1864
90b6238f
AM
18652018-02-26 Alan Modra <amodra@gmail.com>
1866
1867 * elf32-arm.c, * elfnn-aarch64.c: Standardize error/warning messages.
1868
2c1c9679
AM
18692018-02-26 Alan Modra <amodra@gmail.com>
1870
1871 * elfxx-mips.c: Standardize error/warning messages.
1872
9793eb77
AM
18732018-02-26 Alan Modra <amodra@gmail.com>
1874
1875 * dwarf2.c, * elf-attrs.c, * elf-eh-frame.c, * elf.c, * elf32-gen.c,
1876 * elflink.c: Standardize error/warning messages. Replace use of
1877 linker callback einfo with _bfd_error_handler when possible.
1878
0aa13fee
AM
18792018-02-26 Alan Modra <amodra@gmail.com>
1880
1881 * aoutx.h, * coff-alpha.c, * coff-i860.c, * coff-m68k.c,
1882 * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c, * coff-sh.c,
1883 * coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c, * coff-w65.c,
1884 * elf-bfd.h, * elf-m10300.c, * elf.c, * elf32-avr.c, * elf32-bfin.c,
1885 * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c,
1886 * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
1887 * elf32-fr30.c, * elf32-frv.c, * elf32-i370.c, * elf32-i386.c,
1888 * elf32-i960.c, * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c,
1889 * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
1890 * elf32-m68k.c, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
1891 * elf32-microblaze.c, * elf32-mips.c, * elf32-moxie.c,
1892 * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, * elf32-or1k.c,
1893 * elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-rx.c,
1894 * elf32-s390.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c,
1895 * elf32-v850.c, * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
1896 * elf32-xgate.c, * elf32-xtensa.c, * elf64-alpha.c,
1897 * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c,
1898 * elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c,
1899 * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c,
1900 * elfnn-riscv.c, * elfxx-mips.c, * elfxx-riscv.c, * elfxx-riscv.h,
1901 * elfxx-sparc.c, * elfxx-sparc.h, * reloc.c: Standardize
1902 unrecognized/unsupported reloc message.
1903
cf97bcb0
AM
19042018-02-26 Alan Modra <amodra@gmail.com>
1905
1906 * elf32-ppc.c: Standardize error/warning messages. Use
1907 _bfd_error_handler rather than einfo when einfo features not used.
1908 * elf64-ppc.c: Likewise.
1909
01f7e10c
AM
19102018-02-23 Alan Modra <amodra@gmail.com>
1911
1912 PR 22881
1913 * elf.c (assign_file_positions_for_non_load_sections): Remove RELRO
1914 segment if no matching LOAD segment.
1915
e859f655
KLC
19162018-02-23 Kuan-Lin Chen <kuanlinchentw@gmail.com>
1917
1918 * elf32-nds32.h: Define mask for ict_model.
1919
6e8d06db
JD
19202018-02-20 Jason Duerstock <jason.duerstock@gmail.com>
1921
1922 * elfnn-ia64.c (elf_backend_can_gc_sections): Enable.
1923
b248d650
MR
19242018-02-19 Maciej W. Rozycki <macro@mips.com>
1925
1926 Revert
1927 2018-01-12 Vlad Ivanov <vlad@ivanov.email>
1928
1929 * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
1930 .reginfo section has wrong size.
1931
6798f8bf
MR
19322018-02-19 Maciej W. Rozycki <macro@mips.com>
1933
1934 * elfxx-mips.c (_bfd_mips_elf_always_size_sections): Set
1935 SEC_FIXED_SIZE and SEC_HAS_CONTENTS flags for `.reginfo' and
1936 `.MIPS.abiflags' sections.
1937 (_bfd_mips_elf_final_link): Avoid reading beyond `.reginfo'
1938 section's end.
1939
8772de11
MR
19402018-02-19 Maciej W. Rozycki <macro@mips.com>
1941
1942 * section.c (SEC_FIXED_SIZE): New macro.
1943 * bfd-in2.h: Regenerate.
1944
4f7fd351
MR
19452018-02-19 Maciej W. Rozycki <macro@mips.com>
1946
1947 * section.c (SEC_HAS_GOT_REF): Remove macro.
1948 * bfd-in2.h: Regenerate.
1949
f2b740ac
AM
19502018-02-19 Alan Modra <amodra@gmail.com>
1951
1952 * elf-attrs.c (_bfd_elf_parse_attributes): Correct _bfd_error_handler
1953 arguments.
1954 * elfxx-mips.c (_bfd_mips_elf_final_link): Likewise.
1955 * elfnn-riscv.c (_bfd_riscv_relax_align): Likewise.
1956 (_bfd_riscv_relax_pc): Likewise and fix typos.
1957 * libbfd-in.h (_bfd_error_handler): Add attribute printf.
1958 * libbfd.h: Regenerate.
1959
8979927a
AM
19602018-02-19 Alan Modra <amodra@gmail.com>
1961
1962 * dwarf2.c (read_section): Don't use 'll' format modifier.
1963 (find_abstract_instance): Likewise.
1964 * elfcore.h (elf_core_file_p): Likewise.
1965
2dcf00ce
AM
19662018-02-19 Alan Modra <amodra@gmail.com>
1967
1968 * bfd-in.h: Include inttypes.h or if not available define
1969 PRId64, PRIu64 and PRIx64.
1970 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Remove support for L
1971 modifier to print bfd_vma.
1972 * coff-arm.c, * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c,
1973 * coff-sh.c, * coff-tic80.c, * coffcode.h, * coffgen.c, * cofflink.c,
1974 * compress.c, * dwarf2.c, * elf-m10300.c, * elf.c, * elf32-arc.c,
1975 * elf32-arm.c, * elf32-bfin.c, * elf32-cris.c, * elf32-hppa.c,
1976 * elf32-i386.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32r.c,
1977 * elf32-m68k.c, * elf32-metag.c, * elf32-nds32.c, * elf32-nios2.c,
1978 * elf32-ppc.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c,
1979 * elf32-score7.c, * elf32-sh.c, * elf32-sh64.c, * elf32-spu.c,
1980 * elf32-tic6x.c, * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c,
1981 * elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c,
1982 * elf64-mmix.c, * elf64-s390.c, * elf64-sh64.c, * elf64-x86-64.c,
1983 * elfcode.h, * elfcore.h, * elflink.c, * elfnn-aarch64.c,
1984 * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c, * elfxx-sparc.c,
1985 * elfxx-tilegx.c, * ieee.c, * ihex.c, * mach-o.c, * merge.c, * mmo.c,
1986 * peXXigen.c, * xcofflink.c: Replace use of Lx modifier with PRIx64,
1987 and cast input to uint64_t, and similarly for Ld and Lu.
1988 * bfd-in2.h: Regenerate.
1989
c1c8c1ef
AM
19902018-02-19 Alan Modra <amodra@gmail.com>
1991
1992 * elf32-arm.c, * elf32-hppa.c, * elf32-lm32.c, * elf32-m32r.c,
1993 * elf32-metag.c, * elf32-nds32.c, * elf32-or1k.c, * elf32-ppc.c,
1994 * elf32-s390.c, * elf32-sh.c, * elf32-tic6x.c, * elf32-tilepro.c,
1995 * elf64-ppc.c, * elf64-s390.c, * elflink.c, * elfnn-aarch64.c,
1996 * elfnn-riscv.c, * elfxx-sparc.c, * elfxx-tilegx.c, * elfxx-x86.c,
1997 * reloc.c: Replace use of %R and %T in format strings passed to
1998 einfo and friends by %pR and %pT.
1999
871b3ab2
AM
20002018-02-19 Alan Modra <amodra@gmail.com>
2001
2002 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Handle %pA and %pB in place
2003 of %A and %B.
2004 * aout-adobe.c: Update all messages using %A and %B.
2005 * aout-cris.c: Likewise.
2006 * aoutx.h: Likewise.
2007 * archive.c: Likewise.
2008 * binary.c: Likewise.
2009 * cache.c: Likewise.
2010 * coff-alpha.c: Likewise.
2011 * coff-arm.c: Likewise.
2012 * coff-i860.c: Likewise.
2013 * coff-mcore.c: Likewise.
2014 * coff-ppc.c: Likewise.
2015 * coff-rs6000.c: Likewise.
2016 * coff-sh.c: Likewise.
2017 * coff-tic4x.c: Likewise.
2018 * coff-tic54x.c: Likewise.
2019 * coff-tic80.c: Likewise.
2020 * coff64-rs6000.c: Likewise.
2021 * coffcode.h: Likewise.
2022 * coffgen.c: Likewise.
2023 * cofflink.c: Likewise.
2024 * coffswap.h: Likewise.
2025 * compress.c: Likewise.
2026 * cpu-arm.c: Likewise.
2027 * ecoff.c: Likewise.
2028 * elf-attrs.c: Likewise.
2029 * elf-eh-frame.c: Likewise.
2030 * elf-ifunc.c: Likewise.
2031 * elf-m10300.c: Likewise.
2032 * elf-properties.c: Likewise.
2033 * elf-s390-common.c: Likewise.
2034 * elf.c: Likewise.
2035 * elf32-arc.c: Likewise.
2036 * elf32-arm.c: Likewise.
2037 * elf32-avr.c: Likewise.
2038 * elf32-bfin.c: Likewise.
2039 * elf32-cr16.c: Likewise.
2040 * elf32-cr16c.c: Likewise.
2041 * elf32-cris.c: Likewise.
2042 * elf32-crx.c: Likewise.
2043 * elf32-d10v.c: Likewise.
2044 * elf32-d30v.c: Likewise.
2045 * elf32-epiphany.c: Likewise.
2046 * elf32-fr30.c: Likewise.
2047 * elf32-frv.c: Likewise.
2048 * elf32-gen.c: Likewise.
2049 * elf32-hppa.c: Likewise.
2050 * elf32-i370.c: Likewise.
2051 * elf32-i386.c: Likewise.
2052 * elf32-i960.c: Likewise.
2053 * elf32-ip2k.c: Likewise.
2054 * elf32-iq2000.c: Likewise.
2055 * elf32-lm32.c: Likewise.
2056 * elf32-m32c.c: Likewise.
2057 * elf32-m32r.c: Likewise.
2058 * elf32-m68hc11.c: Likewise.
2059 * elf32-m68hc12.c: Likewise.
2060 * elf32-m68hc1x.c: Likewise.
2061 * elf32-m68k.c: Likewise.
2062 * elf32-mcore.c: Likewise.
2063 * elf32-mep.c: Likewise.
2064 * elf32-metag.c: Likewise.
2065 * elf32-microblaze.c: Likewise.
2066 * elf32-moxie.c: Likewise.
2067 * elf32-msp430.c: Likewise.
2068 * elf32-mt.c: Likewise.
2069 * elf32-nds32.c: Likewise.
2070 * elf32-nios2.c: Likewise.
2071 * elf32-or1k.c: Likewise.
2072 * elf32-pj.c: Likewise.
2073 * elf32-ppc.c: Likewise.
2074 * elf32-rl78.c: Likewise.
2075 * elf32-rx.c: Likewise.
2076 * elf32-s390.c: Likewise.
2077 * elf32-score.c: Likewise.
2078 * elf32-score7.c: Likewise.
2079 * elf32-sh-symbian.c: Likewise.
2080 * elf32-sh.c: Likewise.
2081 * elf32-sh64.c: Likewise.
2082 * elf32-sparc.c: Likewise.
2083 * elf32-spu.c: Likewise.
2084 * elf32-tic6x.c: Likewise.
2085 * elf32-tilepro.c: Likewise.
2086 * elf32-v850.c: Likewise.
2087 * elf32-vax.c: Likewise.
2088 * elf32-visium.c: Likewise.
2089 * elf32-wasm32.c: Likewise.
2090 * elf32-xgate.c: Likewise.
2091 * elf32-xtensa.c: Likewise.
2092 * elf64-alpha.c: Likewise.
2093 * elf64-gen.c: Likewise.
2094 * elf64-hppa.c: Likewise.
2095 * elf64-ia64-vms.c: Likewise.
2096 * elf64-mmix.c: Likewise.
2097 * elf64-ppc.c: Likewise.
2098 * elf64-s390.c: Likewise.
2099 * elf64-sh64.c: Likewise.
2100 * elf64-sparc.c: Likewise.
2101 * elf64-x86-64.c: Likewise.
2102 * elfcode.h: Likewise.
2103 * elfcore.h: Likewise.
2104 * elflink.c: Likewise.
2105 * elfnn-aarch64.c: Likewise.
2106 * elfnn-ia64.c: Likewise.
2107 * elfnn-riscv.c: Likewise.
2108 * elfxx-mips.c: Likewise.
2109 * elfxx-sparc.c: Likewise.
2110 * elfxx-tilegx.c: Likewise.
2111 * elfxx-x86.c: Likewise.
2112 * hpux-core.c: Likewise.
2113 * ieee.c: Likewise.
2114 * ihex.c: Likewise.
2115 * libbfd.c: Likewise.
2116 * linker.c: Likewise.
2117 * mach-o.c: Likewise.
2118 * merge.c: Likewise.
2119 * mmo.c: Likewise.
2120 * oasys.c: Likewise.
2121 * pdp11.c: Likewise.
2122 * pe-mips.c: Likewise.
2123 * peXXigen.c: Likewise.
2124 * peicode.h: Likewise.
2125 * reloc.c: Likewise.
2126 * rs6000-core.c: Likewise.
2127 * srec.c: Likewise.
2128 * stabs.c: Likewise.
2129 * vms-alpha.c: Likewise.
2130 * xcofflink.c: Likewise.
2131
dbc88fc1
AM
21322018-02-19 Alan Modra <amodra@gmail.com>
2133
2134 PR 22845
2135 * elf.c (IS_TBSS): Define.
2136 (_bfd_elf_map_sections_to_segments): Use IS_TBSS.
2137 (assign_file_positions_for_non_load_sections): Revert last change.
2138 Properly calculate load segment limits to compare against relro limits.
2139
325ba6fb
AM
21402018-02-17 Alan Modra <amodra@gmail.com>
2141
2142 PR 22845
2143 * elf.c (assign_file_positions_for_non_load_sections): Ignore
2144 degenerate zero size PT_LOAD segments when finding one overlapping
2145 the PT_GNU_RELRO segment.
2146
d00dd7dc
AM
21472018-02-16 Alan Modra <amodra@gmail.com>
2148
2149 * libbfd.c (_bfd_bool_bfd_false_error): Rename from bfd_false.
2150 (_bfd_bool_bfd_true): Rename from bfd_true.
2151 (_bfd_ptr_bfd_null_error): Rename from bfd_nullvoidptr.
2152 (_bfd_int_bfd_0): Rename from bfd_0.
2153 (_bfd_uint_bfd_0): Rename from bfd_0u.
2154 (_bfd_long_bfd_0): Rename from bfd_0l.
2155 (_bfd_long_bfd_n1_error): Rename from _bfd_n1.
2156 (_bfd_void_bfd): Rename from bfd_void.
2157 (_bfd_bool_bfd_false, _bfd_bool_bfd_asymbol_false),
2158 (_bfd_bool_bfd_link_false_error),
2159 (_bfd_bool_bfd_link_true, _bfd_bool_bfd_bfd_true),
2160 (_bfd_bool_bfd_uint_true, _bfd_bool_bfd_ptr_true),
2161 (_bfd_bool_bfd_asection_bfd_asection_true),
2162 (_bfd_bool_bfd_asymbol_bfd_asymbol_true),
2163 (_bfd_void_bfd_link, _bfd_void_bfd_asection): New functions.
2164 * archive.c (_bfd_noarchive_get_elt_at_index),
2165 (_bfd_noarchive_openr_next_archived_file),
2166 (_bfd_noarchive_construct_extended_name_table),
2167 (_bfd_noarchive_write_ar_hdr, _bfd_noarchive_truncate_arname),
2168 (_bfd_noarchive_write_armap): New functions.
2169 * archures.c (_bfd_nowrite_set_arch_mach): New function.
2170 * coff-alpha.c (alpha_ecoff_swap_coff_aux_in),
2171 (alpha_ecoff_swap_coff_sym_in, alpha_ecoff_swap_coff_lineno_in),
2172 (alpha_ecoff_swap_coff_aux_out, alpha_ecoff_swap_coff_sym_out),
2173 (alpha_ecoff_swap_coff_lineno_out),
2174 (alpha_ecoff_swap_coff_reloc_out): New functions.
2175 * coff-mips.c (mips_ecoff_swap_coff_aux_in),
2176 (mips_ecoff_swap_coff_sym_in, mips_ecoff_swap_coff_lineno_in),
2177 (mips_ecoff_swap_coff_aux_out, mips_ecoff_swap_coff_sym_out),
2178 (mips_ecoff_swap_coff_lineno_out),
2179 (mips_ecoff_swap_coff_reloc_out): New functions.
2180 * coffcode.h (coff_set_alignment_hook): Replace define with
2181 new function.
2182 (symname_in_debug_hook): Likewise.
2183 * ecoff.c (_bfd_ecoff_set_alignment_hook): New function.
2184 * elfxx-target.h (elf_backend_allow_non_load_phdr): Default to 0.
2185 * elf.c (assign_file_positions_except_relocs): Test
2186 elf_backend_allow_non_load_phdr for NULL.
2187 * elflink.c (_bfd_elf_omit_section_dynsym_default): Rename from
2188 _bfd_elf_link_omit_section_dynsym. Update uses.
2189 (_bfd_elf_omit_section_dynsym_all): New function.
2190 * elf-bfd.h (_bfd_elf_link_omit_section_dynsym): Delete.
2191 (_bfd_elf_omit_section_dynsym_default): Declare.
2192 (_bfd_elf_omit_section_dynsym_all): Declare.
2193 * linker.c (_bfd_nolink_sizeof_headers, _bfd_nolink_bfd_relax_section),
2194 (_bfd_nolink_bfd_get_relocated_section_contents),
2195 (_bfd_nolink_bfd_lookup_section_flags),
2196 (_bfd_nolink_bfd_is_group_section, _bfd_nolink_bfd_discard_group),
2197 (_bfd_nolink_bfd_link_hash_table_create),
2198 (_bfd_nolink_bfd_link_just_syms),
2199 (_bfd_nolink_bfd_copy_link_hash_symbol_type),
2200 (_bfd_nolink_bfd_link_split_section),
2201 (_bfd_nolink_section_already_linked),
2202 (_bfd_nolink_bfd_define_common_symbol),
2203 (_bfd_nolink_bfd_define_start_stop): New functions.
2204 * reloc.c (_bfd_norelocs_bfd_reloc_type_lookup),
2205 (_bfd_norelocs_bfd_reloc_name_lookup),
2206 (_bfd_nodynamic_canonicalize_dynamic_reloc): New functions.
2207 * section.c (_bfd_nowrite_set_section_contents): New function.
2208 * syms.c (_bfd_nosymbols_canonicalize_symtab),
2209 (_bfd_nosymbols_print_symbol, _bfd_nosymbols_get_symbol_info),
2210 (_bfd_nosymbols_get_symbol_version_string),
2211 (_bfd_nosymbols_bfd_is_local_label_name),
2212 (_bfd_nosymbols_get_lineno, _bfd_nosymbols_find_nearest_line),
2213 (_bfd_nosymbols_find_line, _bfd_nosymbols_find_inliner_info),
2214 (_bfd_nosymbols_bfd_make_debug_symbol),
2215 ( _bfd_nosymbols_read_minisymbols),
2216 ( _bfd_nosymbols_minisymbol_to_symbol),
2217 (_bfd_nodynamic_get_synthetic_symtab): New functions.
2218 * libbfd-in.h: Declare new functions. Update existing defines,
2219 removing casts.
2220 * aix386-core.c: Update to use new hooks. Formatting.
2221 * aout-adobe.c: Likewise.
2222 * aout-arm.c: Likewise.
2223 * aout-target.h: Likewise.
2224 * aout-tic30.c: Likewise.
2225 * aoutf1.h: Likewise.
2226 * binary.c: Likewise.
2227 * bout.c: Likewise.
2228 * cisco-core.c: Likewise.
2229 * coff-alpha.c: Likewise.
2230 * coff-i386.c: Likewise.
2231 * coff-i860.c: Likewise.
2232 * coff-i960.c: Likewise.
2233 * coff-ia64.c: Likewise.
2234 * coff-mips.c: Likewise.
2235 * coff-ppc.c: Likewise.
2236 * coff-rs6000.c: Likewise.
2237 * coff-sh.c: Likewise.
2238 * coff-tic30.c: Likewise.
2239 * coff-tic54x.c: Likewise.
2240 * coff-x86_64.c: Likewise.
2241 * coff64-rs6000.c: Likewise.
2242 * coffcode.h: Likewise.
2243 * elf-m10300.c: Likewise.
2244 * elf32-cr16.c: Likewise.
2245 * elf32-lm32.c: Likewise.
2246 * elf32-m32r.c: Likewise.
2247 * elf32-metag.c: Likewise.
2248 * elf32-score.c: Likewise.
2249 * elf32-score7.c: Likewise.
2250 * elf32-tilepro.c: Likewise.
2251 * elf32-xstormy16.c: Likewise.
2252 * elf32-xtensa.c: Likewise.
2253 * elf64-alpha.c: Likewise.
2254 * elf64-hppa.c: Likewise.
2255 * elf64-ia64-vms.c: Likewise.
2256 * elf64-mmix.c: Likewise.
2257 * elf64-sh64.c: Likewise.
2258 * elfnn-ia64.c: Likewise.
2259 * elfxx-sparc.c: Likewise.
2260 * elfxx-target.h: Likewise.
2261 * elfxx-tilegx.c: Likewise.
2262 * elfxx-x86.h: Likewise.
2263 * hp300hpux.c: Likewise.
2264 * hppabsd-core.c: Likewise.
2265 * hpux-core.c: Likewise.
2266 * i386msdos.c: Likewise.
2267 * i386os9k.c: Likewise.
2268 * ieee.c: Likewise.
2269 * ihex.c: Likewise.
2270 * irix-core.c: Likewise.
2271 * libaout.h: Likewise.
2272 * libecoff.h: Likewise.
2273 * mach-o-target.c: Likewise.
2274 * mach-o.c: Likewise.
2275 * mipsbsd.c: Likewise.
2276 * mmo.c: Likewise.
2277 * netbsd-core.c: Likewise.
2278 * nlm-target.h: Likewise.
2279 * oasys.c: Likewise.
2280 * osf-core.c: Likewise.
2281 * pdp11.c: Likewise.
2282 * pe-mips.c: Likewise.
2283 * pe-x86_64.c: Likewise.
2284 * pef.c: Likewise.
2285 * plugin.c: Likewise.
2286 * ppcboot.c: Likewise.
2287 * ptrace-core.c: Likewise.
2288 * sco5-core.c: Likewise.
2289 * som.c: Likewise.
2290 * sparclynx.c: Likewise.
2291 * srec.c: Likewise.
2292 * tekhex.c: Likewise.
2293 * trad-core.c: Likewise.
2294 * verilog.c: Likewise.
2295 * versados.c: Likewise.
2296 * vms-alpha.c: Likewise.
2297 * vms-lib.c: Likewise.
2298 * wasm-module.c: Likewise.
2299 * xsym.c: Likewise.
2300 * libbfd.h: Regenerate.
2301
2a0d9853
JW
23022018-02-15 Jim Wilson <jimw@sifive.com>
2303
09ca4b9d
JW
2304 * elfnn-riscv.c (_bfd_riscv_relax_section): Ifdef out check to ignore
2305 symbols whose section address is zero.
2306
2a0d9853
JW
2307 * elfnn-riscv.c (riscv_elf_relocate_section): Use bfd_reloc_dangerous
2308 when pcrel_lo reloc has an addend. Use reloc_dangerous callback for
2309 bfd_reloc_dangerous. Use einfo instead of warning callback for errors.
2310 Add %X%P to error messages.
2311
e513bd38
EB
23122018-02-15 Eric Botcazou <ebotcazou@adacore.com>
2313
2314 PR ld/22832
2315 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
2316 Pass FALSE instead of TRUE as 'create' argument to bfd_link_hash_lookup
2317 and assert that the result of the call is not NULL.
2318
12ef3f5a
NC
23192018-02-14 Nick Clifton <nickc@redhat.com>
2320
2321 PR 22823
2322 Revert previous delta. Add extra casts to avoid compile time
2323 warnings instead.
2324 * libbfd-in.h (_bfd_generic_bfd_copy_private_bfd_data): Add extra
2325 cast to avoid warning from gcc v8 compiler.
2326 (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
2327 (_bfd_generic_bfd_set_private_flags): Likewise.
2328 (_bfd_generic_bfd_copy_private_section_data): Likewise.
2329 (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
2330 (_bfd_generic_bfd_copy_private_header_data): Likewise.
2331 (_bfd_generic_bfd_print_private_bfd_data): Likewise.
2332 (_bfd_noarchive_construct_extended_name_table): Likewise.
2333 (_bfd_noarchive_truncate_arname): Likewise.
2334 (_bfd_noarchive_write_ar_hdr): Likewise.
2335 (_bfd_noarchive_get_elt_at_index): Likewise.
2336 (_bfd_nosymbols_canonicalize_symtab): Likewise.
2337 (_bfd_nosymbols_print_symbol): Likewise.
2338 (_bfd_nosymbols_get_symbol_info): Likewise.
2339 (_bfd_nosymbols_get_symbol_version_string): Likewise.
2340 (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
2341 (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
2342 (_bfd_nosymbols_get_lineno): Likewise.
2343 (_bfd_nosymbols_find_nearest_line): Likewise.
2344 (_bfd_nosymbols_find_line): Likewise.
2345 (_bfd_nosymbols_find_inliner_info): Likewise.
2346 (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
2347 (_bfd_nosymbols_read_minisymbols): Likewise.
2348 (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
2349 (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
2350 (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
2351 (_bfd_nowrite_set_arch_mach): Likewise.
2352 (_bfd_nowrite_set_section_contents): Likewise.
2353 (_bfd_nolink_sizeof_headers): Likewise.
2354 (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
2355 (_bfd_nolink_bfd_relax_section): Likewise.
2356 (_bfd_nolink_bfd_gc_sections): Likewise.
2357 (_bfd_nolink_bfd_lookup_section_flags): Likewise.
2358 (_bfd_nolink_bfd_merge_sections): Likewise.
2359 (_bfd_nolink_bfd_is_group_section): Likewise.
2360 (_bfd_nolink_bfd_discard_group): Likewise.
2361 (_bfd_nolink_bfd_link_hash_table_create): Likewise.
2362 (_bfd_nolink_bfd_link_add_symbols): Likewise.
2363 (_bfd_nolink_bfd_link_just_syms): Likewise.
2364 (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
2365 (_bfd_nolink_bfd_final_link): Likewise.
2366 (_bfd_nolink_bfd_link_split_section): Likewise.
2367 (_bfd_nolink_section_already_linked): Likewise.
2368 (_bfd_nolink_bfd_define_common_symbol): Likewise.
2369 (_bfd_nolink_bfd_define_start_stop): Likewise.
2370 (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
2371 (_bfd_nodynamic_get_synthetic_symtab): Likewise.
2372 (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
2373 (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
2374 * libbfd.c (bfd_false_any): Delete.
2375 (bfd_true_any, bfd_nullvoidptr_any, bfd_0_any): Delete.
2376 (bfd_0u_any, bfd_0l_any, _bfd_n1_any, bfd_void_any): Delete.
2377 * libbfd.h (extern): Regenerate
2378 * aout-target.h (MY_bfd_is_target_special_symbol): Add extra
2379 cast to avoid warning from gcc v8 compiler.
2380 * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
2381 * binary.c (binary_get_symbol_info): Likewise.
2382 * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
2383 * coff-mips.c (mips_ecoff_backend_data): Likewise.
2384 * coffcode.h (coff_set_alignment_hook): Likewise.
2385 (symname_in_debug_hook): Likewise.
2386 (bfd_coff_backend_data bigobj_swap_table): Likewise.
2387 * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
2388 * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
2389 * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
2390 * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
2391 * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
2392 * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
2393 * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
2394 * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
2395 * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
2396 * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
2397 * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
2398 * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
2399 * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
2400 * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
2401 * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
2402 * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
2403 (bfd_elfNN_bfd_make_debug_symbol): Likewise.
2404 (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
2405 (bfd_elfNN_bfd_set_private_flags): Likewise.
2406 (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
2407 (elf_backend_init_index_section): Likewise.
2408 (elf_backend_allow_non_load_phdr): Likewise.
2409 * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
2410 * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
2411 * ieee.c (ieee_construct_extended_name_table): Likewise.
2412 (ieee_write_armap): Likewise.
2413 (ieee_write_ar_hdr): Likewise.
2414 (ieee_bfd_is_target_special_symbol): Likewise.
2415 * ihex.c (ihex_canonicalize_symtab): Likewise.
2416 (ihex_bfd_is_target_special_symbol): Likewise.
2417 * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
2418 * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
2419 (_bfd_ecoff_set_alignment_hook): Likewise.
2420 * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
2421 * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
2422 * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
2423 * oasys.c (oasys_construct_extended_name_table): Likewise.
2424 (oasys_write_armap): Likewise.
2425 (oasys_write_ar_hdr): Likewise.
2426 (oasys_bfd_is_target_special_symbol): Likewise.
2427 * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
2428 * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
2429 * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
2430 * som.c (som_bfd_is_target_special_symbol): Likewise.
2431 * srec.c (srec_bfd_is_target_special_symbol): Likewise.
2432 * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
2433 * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
2434 * versados.c (versados_bfd_is_target_special_symbol): Likewise.
2435 (versados_bfd_reloc_name_lookup): Likewise.
2436 * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
2437 (vms_bfd_define_start_stop): Likewise.
2438 (alpha_vms_bfd_is_target_special_symbol): Likewise.
2439 * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
2440 * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
2441
451875b4
L
24422018-02-14 H.J. Lu <hongjiu.lu@intel.com>
2443
2444 PR ld/22842
2445 * elf32-i386.c (elf_i386_check_relocs): Pass FALSE for non
2446 PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
2447 * elf64-x86-64.c (elf_x86_64_check_relocs): Create PLT for
2448 R_X86_64_PC32 reloc against dynamic function in data section.
2449 Pass TRUE for PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
2450 (elf_x86_64_relocate_section): Use PLT for R_X86_64_PC32 reloc
2451 against dynamic function in data section.
2452 * elfxx-x86.c (elf_x86_allocate_dynrelocs): Use PLT in PIE as
2453 function address only if pcrel_plt is true.
2454 (_bfd_x86_elf_link_hash_table_create): Set pcrel_plt.
2455 * elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): Add PCREL_PLT for
2456 PC-relative PLT. If PLT is PC-relative, don't generate dynamic
2457 PC-relative relocation against a function definition in data
2458 secton in PIE. Remove the obsolete comments.
2459 (elf_x86_link_hash_table): Add pcrel_plt.
2460
1031c264
L
24612018-02-13 H.J. Lu <hongjiu.lu@intel.com>
2462
2463 * elfxx-x86.c (elf_x86_allocate_dynrelocs): Check bfd_link_dll,
2464 instead of bfd_link_pic, for building shared library.
2465
bd7ab16b
L
24662018-02-13 H.J. Lu <hongjiu.lu@intel.com>
2467
2468 PR gas/22791
2469 * elf64-x86-64.c (is_32bit_relative_branch): Removed.
2470 (elf_x86_64_relocate_section): Check PIC relocations in PIE.
2471 Remove is_32bit_relative_branch usage. Disallow PC32 reloc
2472 against protected function in shared object.
2473
80c96350
ST
24742018-02-13 Sergei Trofimovich <slyfox@inbox.ru>
2475
2476 PR 22828
2477 * po/ru.po: Fix typo in Russian translation.
2478
87993319
MR
24792018-02-13 Maciej W. Rozycki <macro@mips.com>
2480
2481 * wasm-module.c (wasm_scan_name_function_section): Rename
2482 `index' local variable to `idx'.
2483
68d20676
NC
24842018-02-13 Nick Clifton <nickc@redhat.com>
2485
2486 PR 22823
2487 Fix compile time warnings generated by gcc version 8.
2488 * libbfd-in.h: Remove extraneous text from prototypes.
2489 Add prototypes for bfd_false_any, bfd_true_any,
2490 bfd_nullvoidptr_any, bfd_0_any, bfd_0u_any, bfd_0l_any,
2491 bfd_n1_any, bfd_void_any.
2492 (_bfd_generic_bfd_copy_private_bfd_data): Use vararg based dummy
2493 function.
2494 (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
2495 (_bfd_generic_bfd_set_private_flags): Likewise.
2496 (_bfd_generic_bfd_copy_private_section_data): Likewise.
2497 (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
2498 (_bfd_generic_bfd_copy_private_header_data): Likewise.
2499 (_bfd_generic_bfd_print_private_bfd_data): Likewise.
2500 (_bfd_noarchive_construct_extended_name_table): Likewise.
2501 (_bfd_noarchive_truncate_arname): Likewise.
2502 (_bfd_noarchive_write_ar_hdr): Likewise.
2503 (_bfd_noarchive_get_elt_at_index): Likewise.
2504 (_bfd_nosymbols_canonicalize_symtab): Likewise.
2505 (_bfd_nosymbols_print_symbol): Likewise.
2506 (_bfd_nosymbols_get_symbol_info): Likewise.
2507 (_bfd_nosymbols_get_symbol_version_string): Likewise.
2508 (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
2509 (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
2510 (_bfd_nosymbols_get_lineno): Likewise.
2511 (_bfd_nosymbols_find_nearest_line): Likewise.
2512 (_bfd_nosymbols_find_line): Likewise.
2513 (_bfd_nosymbols_find_inliner_info): Likewise.
2514 (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
2515 (_bfd_nosymbols_read_minisymbols): Likewise.
2516 (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
2517 (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
2518 (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
2519 (_bfd_nowrite_set_arch_mach): Likewise.
2520 (_bfd_nowrite_set_section_contents): Likewise.
2521 (_bfd_nolink_sizeof_headers): Likewise.
2522 (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
2523 (_bfd_nolink_bfd_relax_section): Likewise.
2524 (_bfd_nolink_bfd_gc_sections): Likewise.
2525 (_bfd_nolink_bfd_lookup_section_flags): Likewise.
2526 (_bfd_nolink_bfd_merge_sections): Likewise.
2527 (_bfd_nolink_bfd_is_group_section): Likewise.
2528 (_bfd_nolink_bfd_discard_group): Likewise.
2529 (_bfd_nolink_bfd_link_hash_table_create): Likewise.
2530 (_bfd_nolink_bfd_link_add_symbols): Likewise.
2531 (_bfd_nolink_bfd_link_just_syms): Likewise.
2532 (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
2533 (_bfd_nolink_bfd_final_link): Likewise.
2534 (_bfd_nolink_bfd_link_split_section): Likewise.
2535 (_bfd_nolink_section_already_linked): Likewise.
2536 (_bfd_nolink_bfd_define_common_symbol): Likewise.
2537 (_bfd_nolink_bfd_define_start_stop): Likewise.
2538 (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
2539 (_bfd_nodynamic_get_synthetic_symtab): Likewise.
2540 (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
2541 (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
2542 * libbfd.c (bfd_false_any): New function. Like bfd_false but
2543 accepts one or more arguments.
2544 (bfd_true_any): Likewise.
2545 (bfd_nullvoidptr_any): Likewise.
2546 (bfd_0_any): Likewise.
2547 (bfd_0u_any): Likewise.
2548 (bfd_0l_any): Likewise.
2549 (_bfd_n1_any): Likewise.
2550 (bfd_void_any): Likewise.
2551 * libbfd.h (extern): Regenerate
2552 * aout-target.h (MY_bfd_is_target_special_symbol): Use vararg
2553 based dummy function.
2554 * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
2555 * binary.c (binary_get_symbol_info): Likewise.
2556 * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
2557 * coff-mips.c (mips_ecoff_backend_data): Likewise.
2558 * coffcode.h (coff_set_alignment_hook): Likewise.
2559 (symname_in_debug_hook): Likewise.
2560 (bfd_coff_backend_data bigobj_swap_table): Likewise.
2561 * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
2562 * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
2563 * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
2564 * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
2565 * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
2566 * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
2567 * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
2568 * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
2569 * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
2570 * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
2571 * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
2572 * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
2573 * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
2574 * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
2575 * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
2576 * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
2577 (bfd_elfNN_bfd_make_debug_symbol): Likewise.
2578 (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
2579 (bfd_elfNN_bfd_set_private_flags): Likewise.
2580 (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
2581 (elf_backend_init_index_section): Likewise.
2582 (elf_backend_allow_non_load_phdr): Likewise.
2583 * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
2584 * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
2585 * ieee.c (ieee_construct_extended_name_table): Likewise.
2586 (ieee_write_armap): Likewise.
2587 (ieee_write_ar_hdr): Likewise.
2588 (ieee_bfd_is_target_special_symbol): Likewise.
2589 * ihex.c (ihex_canonicalize_symtab): Likewise.
2590 (ihex_bfd_is_target_special_symbol): Likewise.
2591 * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
2592 * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
2593 (_bfd_ecoff_set_alignment_hook): Likewise.
2594 * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
2595 * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
2596 * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
2597 * oasys.c (oasys_construct_extended_name_table): Likewise.
2598 (oasys_write_armap): Likewise.
2599 (oasys_write_ar_hdr): Likewise.
2600 (oasys_bfd_is_target_special_symbol): Likewise.
2601 * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
2602 * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
2603 * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
2604 * som.c (som_bfd_is_target_special_symbol): Likewise.
2605 * srec.c (srec_bfd_is_target_special_symbol): Likewise.
2606 * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
2607 * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
2608 * versados.c (versados_bfd_is_target_special_symbol): Likewise.
2609 (versados_bfd_reloc_name_lookup): Likewise.
2610 * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
2611 (vms_bfd_define_start_stop): Likewise.
2612 (alpha_vms_bfd_is_target_special_symbol): Likewise.
2613 * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
2614 * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
2615 * elf32-arc.c (get_replace_function): Assign replacement function
2616 to func pointer.
2617 * elf32-i370.c (i370_noop): Update prototype.
2618
6e5e9d58
AM
26192018-02-13 Alan Modra <amodra@gmail.com>
2620
2621 PR 22836
2622 * elf.c (_bfd_elf_fixup_group_sections): Account for removed
2623 relocation sections. If size reduces to just the flag word,
2624 remove that too and mark with SEC_EXCLUDE.
2625 * elflink.c (bfd_elf_final_link): Strip empty group sections.
2626
f2731e0c
AM
26272018-02-13 Alan Modra <amodra@gmail.com>
2628
2629 PR 22829
2630 * elf.c (assign_file_positions_for_non_load_sections): Rewrite
2631 PT_GNU_RELRO setup.
2632
830db048
ZF
26332018-02-12 Zebediah Figura <z.figura12@gmail.com>
2634
2635 * i386msdos.c (msdos_mkobject); New function.
2636 (msdos_object_p): New function.
2637 (i386_msdos_vec): Use msdos_object_p as the check_format
2638 function.
2639 * peicode.h: Rename external_PEI_DOS_hdr, DOSMAGIC, and
2640 NT_SIGNATURE to external_DOS_hdr, IMAGE_DOS_SIGNATURE, and
2641 IMAGE_NT_SIGNATURE.
2642 * peXXigen.c: Likewise.
2643 * coff-ia64.c: Likewise.
2644
94fe5757
NC
26452018-02-12 Nick Clifton <nickc@redhat.com>
2646
2647 * elf32-nds32.c (nds32_elf_relax_longjump3): Remove redundant
2648 assignment.
0b8683b7 2649 * elf32-arc.c (elf_arc_relocate_section): Likewise.
94fe5757 2650
d805612e 26512018-02-09 Eric Botcazou <ebotcazou@adacore.com>
a8735c82
EB
2652
2653 * elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Reorder conditions.
2654 (sparc_elf_append_rela): Assert that there is enough room in section.
2655 (_bfd_sparc_elf_copy_indirect_symbol): Fix formatting.
2656 (_bfd_sparc_elf_adjust_dynamic_symbol): Minor tweak.
2657 (allocate_dynrelocs): Remove outdated comments and reorder conditions.
2658 For a symbol subject to a GOT relocation, reserve a slot in the
2659 relocation section if the symbol isn't dynamic and we are in PIC mode.
2660 (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: If relocation
2661 is relaxed and a slot was reserved, generate a R_SPARC_NONE relocation.
2662 <R_SPARC_GOTDATA_OP_HIX22>: Adjust comments.
2663 <R_SPARC_PC10>: Reorder conditions. Remove always-false assertion.
2664 (_bfd_sparc_elf_finish_dynamic_symbol): Rename local_undefweak into
2665 resolved_to_zero. Do not generate a dynamic GOT relocation for an
2666 undefined weak symbol with non-default visibility. Remove superfluous
2667 'else' and fix formatting.
2668
3b4c3844
L
26692018-02-09 H.J. Lu <hongjiu.lu@intel.com>
2670
2671 * elf32-i386.c (elf_i386_get_synthetic_symtab): Also handle
2672 is_solaris.
2673 (i386_elf32_sol2_vec): Don't declare.
2674 (elf_i386_link_setup_gnu_properties): Also handle is_solaris.
2675 Don't set need_global_offset_table.
2676 (elf_i386_solaris_arch_bed): New.
2677 (elf_backend_arch_data): Set to elf_i386_solaris_arch_bed for
2678 Solaris.
2679 * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Check
2680 target_os != is_nacl instead of target_os == is_normal.
2681 (x86_64_elf64_sol2_vec): Don't declare.
2682 (elf_x86_64_link_setup_gnu_properties): Check target_os !=
2683 is_nacl instead of target_os == is_normal. Don't set
2684 need_global_offset_table.
2685 (elf_x86_64_solaris_arch_bed): New.
2686 (elf_backend_arch_data): Set to elf_x86_64_solaris_arch_bed for
2687 Solaris.
2688 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep
2689 _GLOBAL_OFFSET_TABLE_ for Solaris.
2690 (_bfd_x86_elf_link_setup_gnu_properties): Don't copy
2691 need_global_offset_table.
2692 * elfxx-x86.h (elf_x86_target_os): Add is_solaris.
2693 (elf_x86_link_hash_table): Remove need_global_offset_table.
2694 (elf_x86_init_table): Likewise.
2695
15b23f36
L
26962018-02-08 H.J. Lu <hongjiu.lu@intel.com>
2697
2698 * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
2699 Remove prototype.
2700 (i386_elf32_sol2_vec): Declared.
2701 (elf_i386_link_setup_gnu_properties): Set
2702 need_global_offset_table with info->output_bfd->xvec.
2703 * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
2704 Remove prototype.
2705 (x86_64_elf64_sol2_vec): Declared.
2706 (elf_x86_64_link_setup_gnu_properties): Set
2707 need_global_offset_table with info->output_bfd->xvec.
2708
dc11dea2
L
27092018-02-08 H.J. Lu <hongjiu.lu@intel.com>
2710
2711 * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
2712 New prototype.
2713 (elf_i386_link_setup_gnu_properties): Set need_global_offset_table
2714 for Solaris.
2715 * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
2716 New prototype.
2717 (elf_x86_64_link_setup_gnu_properties): Set
2718 need_global_offset_table for Solaris.
2719 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep the
2720 unused _GLOBAL_OFFSET_TABLE_ for Solaris.
2721 (_bfd_x86_elf_link_setup_gnu_properties): Copy
2722 need_global_offset_table.
2723 * elfxx-x86.h (elf_x86_link_hash_table): Add
2724 need_global_offset_table.
2725 (elf_x86_init_table): Likewise.
2726
3f48fe4a
JW
27272018-02-08 Jim Wilson <jimw@sifive.com>
2728
2729 * elfnn-riscv.c (riscv_elf_relocate_section): Add comment for previous
2730 change.
2731
ef135d43
NC
27322018-02-08 Nick Clifton <nickc@redhat.com>
2733
2734 PR 22788
2735 * elf.c (elf_parse_notes): Reject notes with excessuively large
2736 alignments.
2737
407aa07c
AM
27382018-02-07 Alan Modra <amodra@gmail.com>
2739
2740 Revert 2018-01-17 Alan Modra <amodra@gmail.com>
2741 * elf32-ppc.c: Remove speculation barrier support.
2742 * elf32-ppc.h: Likewise.
2743 * elf64-ppc.c: Likewise.
2744 * elf64-ppc.h: Likewise.
2745
ed01220c
JW
27462018-02-06 Jim Wilson <jimw@sifive.com>
2747
2748 * elfnn-riscv.c (riscv_elf_relocate_section): Return TRUE if used
2749 callback to report an error.
2750
c20c30f6
EB
27512018-02-06 Eric Botcazou <ebotcazou@adacore.com>
2752
2753 PR ld/22263
2754 * elfxx-sparc.c (sparc_elf_tls_transition): Turn call to bfd_link_pic
2755 into call to !bfd_link_executable and tidy up.
2756 (_bfd_sparc_elf_check_relocs): Fix formatting and tidy up.
2757 <R_SPARC_TLS_LE_HIX22>: Turn call to bfd_link_pic into call to
2758 !bfd_link_executable.
2759 <R_SPARC_TLS_IE_HI22>: Likewise.
2760 <GOT relocations>: Remove useless code, tidy and merge related blocks.
2761 <R_SPARC_TLS_GD_CALL>: Turn call to bfd_link_pic into call to
2762 !bfd_link_executable.
2763 <R_SPARC_WPLT30>: Tidy up.
2764 (_bfd_sparc_elf_gc_mark_hook): Turn call to bfd_link_pic into call to
2765 !bfd_link_executable.
2766 (allocate_dynrelocs): Likewise.
2767 (_bfd_sparc_elf_relocate_section): Fix formatting and tidy up.
2768 <R_SPARC_TLS_GD_HI22>: Merge into...
2769 <R_SPARC_TLS_GD_LO10>: ...this. Adjust 4th argument in call to
2770 sparc_elf_tls_transition and remove redundant code.
2771 <R_SPARC_TLS_LDM_HI22>: Turn call to bfd_link_pic into call to
2772 !bfd_link_executable.
2773 <R_SPARC_TLS_LDO_HIX22>: Likewise.
2774 <R_SPARC_TLS_LE_HIX22>: Likewise. Tidy up.
2775 <R_SPARC_TLS_LDM_CALL>: Likewise.
2776 <R_SPARC_TLS_GD_CALL>: Likewise. Tidy up.
2777 <R_SPARC_TLS_GD_ADD>: Likewise.
2778 <R_SPARC_TLS_LDM_ADD>: Likewise.
2779 <R_SPARC_TLS_LDO_ADD>: Likewise.
2780 <R_SPARC_TLS_IE_LD>: Likewise.
2781
46d09186
NC
27822018-02-06 Miloš Stojanović <milos.stojanovic@rt-rk.com>
2783
2784 PR 22789
2785 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): If the dwarf
2786 functions failed to find the function name, try the generic elf
2787 find function instead.
2788
8278e7ce
SDJ
27892018-02-06 Sergio Durigan Junior <sergiodj@redhat.com>
2790
2791 * coff-rs6000.c (xcoff_write_archive_contents_old): Use
2792 'memcpy' instead of 'strncpy' when writing the magic number.
2793
64e234d4
NC
27942018-02-06 Nick Clifton <nickc@redhat.com>
2795
2796 PR 22794
2797 * opncls.c (bfd_get_debug_link_info_1): Check the size of the
2798 section before attempting to read it in.
2799 (bfd_get_alt_debug_link_info): Likewise.
2800
422f3d3d
PC
28012018-02-06 Paul Carroll <pcarroll@codesourcery.com>
2802
2803 * bfd/dwarf2.c (find_abstract_name): Modified to return file and
2804 line information in addition to name, if they can be found.
2805
279b2f94
RL
28062018-02-05 Renlin Li <renlin.li@arm.com>
2807
2808 PR ld/22764
2809 * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Relax the
2810 R_AARCH64_ABS32 and R_AARCH64_ABS16 for absolute symbol. Apply the
2811 check for writeable section as well.
2812
cd048363
L
28132018-02-05 H.J. Lu <hongjiu.lu@intel.com>
2814
2815 PR ld/22782
2816 * elf32-i386.c (elf_i386_check_relocs): Set got_referenced if
2817 _GLOBAL_OFFSET_TABLE_ is referenced or GOT is needed to resolve
2818 undefined weak symbol to 0.
2819 * elf64-x86-64.c (elf_x86_64_check_relocs): Set got_referenced
2820 if _GLOBAL_OFFSET_TABLE_ is referenced.
2821 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Check
2822 got_referenced instead of ref_regular_nonweak. Remove the
2823 unused _GLOBAL_OFFSET_TABLE_ from symbol table.
2824 * elfxx-x86.h (elf_x86_link_hash_table): Add got_referenced.
2825
e65b1a78
MR
28262018-02-05 Maciej W. Rozycki <macro@mips.com>
2827
2828 * elfnn-riscv.c (_bfd_riscv_relax_pc): Use `memset' to
2829 initialize `hi_reloc'.
2830
2d6dda71
MR
28312018-02-05 Maciej W. Rozycki <macro@mips.com>
2832
2833 * elfxx-mips.c (_bfd_mips_elf_section_processing): For
2834 SHT_MIPS_REGINFO sections don't assert the correct size and
2835 report an error instead.
2836
75506100
MR
28372018-02-05 Maciej W. Rozycki <macro@mips.com>
2838
2839 * elf.c (_bfd_elf_write_object_contents): Propagate a failure
2840 status from `->elf_backend_section_processing'.
2841
7f02625e
JW
28422018-02-02 Jim Wilson <jimw@sifive.com>
2843
2844 PR ld/22756
2845 * elfnn-riscv.c (riscv_relax_delete_bytes): New parameter link_info.
2846 If link_info->wrap_hash, check for a duplicate symbol and ignore.
2847 (_bfd_riscv_relax_call, bfd_riscv_relax_lui, _bfd_riscv_relax_tls_le):
2848 Pass new argument to riscv_relax_delete_bytes.
2849 (_bfd_riscv_relax_align, _bfd_riscv_relax_delete): Likewise. Remove
2850 ATTRIBUTE_UNUSED from link_info parameter.
2851
d830549d
AM
28522018-02-02 Alan Modra <amodra@gmail.com>
2853
2854 * elf64-ppc.c (ppc64_elf_relocate_section): Don't relocate nops
2855 emitted for toc sequence optimization. Set and use "howto" later.
2856
e99955cd
SM
28572018-02-01 Simon Marchi <simon.marchi@ericsson.com>
2858
2859 * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Avoid pointer
2860 arithmetic on NULL pointer.
2861 * elflink.c (_bfd_elf_archive_symbol_lookup,
2862 elf_link_add_archive_symbols): Likewise.
2863
bf3077a6
MM
28642018-01-31 Michael Matz <matz@suse.de>
2865
2866 * elflink.c (bfd_elf_define_start_stop): Fix check of
2867 def_dynamic.
2868
823143c6
L
28692018-01-31 H.J. Lu <hongjiu.lu@intel.com>
2870
2871 PR ld/21964
2872 * elflink.c (bfd_elf_define_start_stop): Check if __start and
2873 __stop symbols are referenced by shared objects.
2874
76cb3a89
AM
28752018-01-30 Alan Modra <amodra@gmail.com>
2876
2877 PR 22758
2878 * elf.c (_bfd_elf_map_sections_to_segments): Don't start a new
2879 segment when demand paged with lma on the same page. Test this
2880 before load/non-load, executable/non-executable,
2881 writable/non-writable tests and simplify. Delete bogus relro
2882 condition in writable/non-writable test. Delete outdated
2883 comment. Formatting.
2884
36b8fda5
AM
28852018-01-30 Alan Modra <amodra@gmail.com>
2886
2887 * elflink.c (bfd_elf_define_start_stop): Make __start and __stop
2888 symbols dynamic.
2889
eb77f6a4
AM
28902018-01-29 Alan Modra <amodra@gmail.com>
2891
2892 PR 22741
2893 * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
2894 range before converting to a symbol table pointer.
2895
7d73b4c8
NC
28962018-01-27 Nick Clifton <nickc@redhat.com>
2897
2898 * po/ru.po: Updated Russian translation.
2899
32253bb7
AM
29002018-01-26 Alan Modra <amodra@gmail.com>
2901
2902 * elflink.c (bfd_elf_define_start_stop): Override symbols when
2903 they are defined dynamically.
2904
ba21f564
AM
29052018-01-26 Alan Modra <amodra@gmail.com>
2906
2907 * elf64-ppc.c (ppc64_elf_size_stubs): Iterate sizing when
2908 .branch_lt changes size.
2909
38e64b0e
AM
29102018-01-25 Alan Modra <amodra@gmail.com>
2911
2912 PR 22746
2913 * elfcode.h (elf_object_p): Avoid integer overflow.
2914
bb363086
EB
29152018-01-25 Eric Botcazou <ebotcazou@adacore.com>
2916
2917 PR ld/22727
2918 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
2919 Do a mere lookup of the __tls_get_addr symbol instead of adding it.
2920
2921 Revert
2922 2017-10-19 H.J. Lu <hongjiu.lu@intel.com>
2923
2924 PR ld/22263
2925 * elfxx-sparc.c (sparc_elf_tls_transition): Replace
2926 bfd_link_pic with !bfd_link_executable, !bfd_link_pic with
2927 bfd_link_executable for TLS check.
2928 (_bfd_sparc_elf_check_relocs): Likewise.
2929 (allocate_dynrelocs): Likewise.
2930 (_bfd_sparc_elf_relocate_section): Likewise.
2931
1daf502a
RL
29322018-01-24 Renlin Li <renlin.li@arm.com>
2933
2934 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Add support for
2935 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
2936 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
2937 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
2938 BFD_RELOC_AARCH64_MOVW_PREL_G3.
2939 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
2940 (_bfd_aarch64_elf_resolve_relocation): Likewise.
2941
32247401
RL
29422018-01-24 Renlin Li <renlin.li@arm.com>
2943
2944 * reloc.c: Add BFD_RELOC_AARCH64_MOVW_PREL_G0,
2945 BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, BFD_RELOC_AARCH64_MOVW_PREL_G1,
2946 BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, BFD_RELOC_AARCH64_MOVW_PREL_G2,
2947 BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, BFD_RELOC_AARCH64_MOVW_PREL_G3.
2948 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add entries for
2949 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
2950 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
2951 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
2952 BFD_RELOC_AARCH64_MOVW_PREL_G3.
2953 * bfd-in2.h: Regenerate.
2954 * libbfd.h: Regenerate.
2955
1c5e4ee9
MR
29562018-01-23 Maciej W. Rozycki <macro@mips.com>
2957
2958 * elfxx-mips.c (_bfd_mips_elf_final_link): Update a stale
2959 `mips_elf32_section_processing' comment reference.
2960
8a1b824a
L
29612018-01-20 H.J. Lu <hongjiu.lu@intel.com>
2962
2963 PR ld/22721
2964 * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Check the
2965 versioned __tls_get_addr symbol.
2966
ee3fbc1e
NC
29672018-01-19 Nick Clifton <nickc@redhat.com>
2968
2969 * po/fr.po: Updated French translation.
2970
691d2e9a
AM
29712018-01-18 Alan Modra <amodra@gmail.com>
2972
2973 * elf32-ppc.c (ppc_elf_create_glink): Correct alignment of .glink.
2974 * elf64-ppc.c (ppc64_elf_size_stubs): Handle negative plt_stub_align.
2975 (ppc64_elf_build_stubs): Likewise.
2976
4bfce128
NC
29772018-01-17 Nick Clifton <nickc@redhat.com>
2978
2979 * po/ru.po: Updated Russian translation.
2980 * po/uk/po: Updated Ukranian translation.
2981
c75bc4f7
AM
29822018-01-17 Alan Modra <amodra@gmail.com>
2983
2984 * elf64-ppc.c (ppc64_elf_build_stubs): Silence gcc warning.
2985
1be5d8d3
AM
29862018-01-17 Alan Modra <amodra@gmail.com>
2987
2988 * elf32-ppc.c (GLINK_ENTRY_SIZE): Handle speculation barrier.
2989 (CRSETEQ, BEQCTRM): Define.
2990 (is_nonpic_glink_stub): Don't check bctr.
2991 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
2992 (ppc_elf_relax_section): Size speculation barrier.
2993 (output_bctr): New function.
2994 (write_glink_stub): Use output_bctr.
2995 (ppc_elf_relocate_section): Use output_bctr for long branch stub.
2996 (ppc_elf_finish_dynamic_symbol): Likewise.
2997 (ppc_elf_finish_dynamic_sections): Use output_bctr.
2998 * elf32-ppc.h (struct ppc_elf_params): Add speculate_indirect_jumps.
2999 * elf64-ppc.c (CRSETEQ, BEQCTRM, BEQCTRLM): Define.
3000 (GLINK_PLTRESOLVE_SIZE): Size speculation barrier.
3001 (size_global_entry_stubs): Handle speculation barrier sizing.
3002 (plt_stub_size): Likewise.
3003 (output_bctr): New function.
3004 (build_plt_stub, build_tls_get_addr_stub): Output speculation
3005 barrier.
3006 (ppc_build_one_stub): Likewise for ppc_stub_plt_branch.
3007 (ppc_size_one_stub): Size speculation barrier in ppc_stub_plt_branch.
3008 (build_global_entry_stubs): Output speculation barrier.
3009 (ppc64_elf_build_stubs): Likewise in __glink_PLTresolve stub.
3010 * elf64-ppc.h (struct ppc64_elf_params): Add speculate_indirect_jumps.
3011
9e390558
AM
30122018-01-17 Alan Modra <amodra@gmail.com>
3013
3014 * elf32-ppc.c (GLINK_ENTRY_SIZE): Add parameters, handle
3015 __tls_get_addr_opt, and alignment sizing.
3016 (TLS_GET_ADDR_GLINK_SIZE): Delete.
3017 (is_nonpic_glink_stub): Don't use GLINK_ENTRY_SIZE.
3018 (ppc_elf_get_synthetic_symtab): Recognize stubs spaced at 4, 6,
3019 or 8 insns.
3020 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
3021 (allocate_dynrelocs): Use new GLINK_ENTRY_SIZE.
3022 (ppc_elf_size_dynamic_sections): Likewise. Size branch table
3023 by PLT reloc count.
3024 (write_glink_stub): Handle __tls_get_addr_opt stub.
3025 Pad out to size given by GLINK_ENTRY_SIZE.
3026 (ppc_elf_relocate_section): Adjust write_glink_stub call.
3027 (ppc_elf_finish_dynamic_symbol): Likewise.
3028 (ppc_elf_finish_dynamic_sections): Write PLTresolve without using
3029 insn array since so many need rewriting.
3030 * elf32-ppc.h (struct ppc_elf_params): Add plt_stub_align.
3031 * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Rename from
3032 GLINK_CALL_STUB_SIZE. Add htab param and evaluate to size without
3033 nops. Adjust all uses.
3034 (ppc64_elf_get_synthetic_symtab): Don't use GLINK_CALL_STUB_SIZE
3035 in glink_vma calculation.
3036 (struct ppc_link_hash_table): Add global_entry section pointer.
3037 (create_linkage_sections): Create separate section for global
3038 entry stubs.
3039 (PPC_LO, PPC_HI, PPC_HA): Move earlier.
3040 (size_global_entry_stubs): Handle sizing for aligned stubs.
3041 (ppc64_elf_size_dynamic_sections): Handle global_entry alloc,
3042 and don't stash end of glink branch table in rawsize.
3043 (ppc_build_one_stub): Rewrite stub size calculations.
3044 (build_global_entry_stubs): Use new section.
3045 (ppc64_elf_build_stubs): Don't pad __glink_PLTresolve with nops.
3046 Build lazy link stubs out to end of section. Build global entry
3047 stubs in new section.
3048
616dcb87
NC
30492018-01-15 Nick Clifton <nickc@redhat.com>
3050
3051 * po/uk.po: Updated Ukranian translation.
3052
3957a496
NC
30532018-01-13 Nick Clifton <nickc@redhat.com>
3054
3055 * po/bfd.pot: Regenerated.
3056
769c7ea5
NC
30572018-01-13 Nick Clifton <nickc@redhat.com>
3058
3059 * version.m4: Bump version to 2.30.51
3060 * configure: Regenerate.
3061
faf766e3
NC
30622018-01-13 Nick Clifton <nickc@redhat.com>
3063
3064 2.30 branch created.
3065
564e11c9
JW
30662018-01-12 Jens Widell <jl@opera.com>
3067
3068 * elf.c (setup_group): Optimize search for group by remembering
3069 last found group and restarting search at that index.
3070 * elf-bfd.h (struct elf_obj_tdata): Add group_search_offset field.
3071
a78eea16
AM
30722018-01-12 Gunther Nikl <gnikl@users.sourceforge.net>
3073
3074 * aoutx.h (aout_link_check_ar_symbols): Remove default and handle
3075 bfd_link_common_skip_none in switch.
3076
87e79a65
AM
30772018-01-12 Alan Modra <amodra@gmail.com>
3078
3079 PR ld/22649
3080 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore dynamic
3081 references on forced local symbols.
3082
58807c48
VI
30832018-01-12 Vlad Ivanov <vlad@ivanov.email>
3084
3085 * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
3086 .reginfo section has wrong size.
3087
2888249f
L
30882018-01-11 H.J. Lu <hongjiu.lu@intel.com>
3089
3090 PR ld/22393
3091 * elf.c (_bfd_elf_map_sections_to_segments): When generating
3092 separate code and read-only data LOAD segments, create a new
3093 LOAD segment if the previous section contains text and the
3094 current section doesn't or vice versa. Don't put a writable
3095 section in a read-only segment if there is a RELRO segment.
3096
d664fd41
L
30972018-01-11 H.J. Lu <hongjiu.lu@intel.com>
3098
3099 PR ld/22649
3100 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Ignore dynamic
3101 references on forced local symbols.
3102
8b6f4cd3
L
31032018-01-11 H.J. Lu <hongjiu.lu@intel.com>
3104
3105 PR ld/22677
3106 * elflink.c (bfd_elf_gc_sections): Keep all PREINIT_ARRAY,
3107 INIT_ARRAY as well as FINI_ARRAY sections for ld -r --gc-section.
3108
9c70c522 31092018-01-09 Kuan-Lin Chen <kuanlinchentw@gmail.com>
6cef73f9
KLC
3110
3111 PR 22662
3112 * elf32-nds32.c (nds32_elf_relax_loadstore): Fix a typographical error.
3113
ddb2bbcf
JB
31142018-01-03 John Baldwin <jhb@FreeBSD.org>
3115
3116 * elf.c (elfcore_grok_freebsd_note): Handle
3117 NT_FREEBSD_PROCSTAT_PROC, NT_FREEBSD_PROCSTAT_FILES, and
3118 NT_FREEBSD_PROCSTAT_VMMAP.
3119
219d1afa
AM
31202018-01-03 Alan Modra <amodra@gmail.com>
3121
3122 Update year range in copyright notice of all files.
3123
1e563868 3124For older changes see ChangeLog-2017
3499769a 3125\f
1e563868 3126Copyright (C) 2018 Free Software Foundation, Inc.
3499769a
AM
3127
3128Copying and distribution of this file, with or without modification,
3129are permitted in any medium without royalty provided the copyright
3130notice and this notice are preserved.
3131
3132Local Variables:
3133mode: change-log
3134left-margin: 8
3135fill-column: 74
3136version-control: never
3137End:
This page took 0.33044 seconds and 4 git commands to generate.