]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - bfd/ChangeLog
elf: Set p_memsz to p_filesz for loadable PT_NOTE segment
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
1 2021-04-14 H.J. Lu <hongjiu.lu@intel.com>
2
3 PR binutils/27708
4 * elf.c (assign_file_positions_for_non_load_sections): Set
5 p_memsz to p_filesz for the loadable PT_NOTE segment.
6
7 2021-04-14 Frederic Cambus <fred@statdns.com>
8
9 * elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef
10 checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS.
11
12 2021-04-14 Alan Modra <amodra@gmail.com>
13
14 PR 27631
15 * elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf
16 when hh might be NULL, test for NULL first.
17
18 2021-04-14 Alan Modra <amodra@gmail.com>
19
20 PR 27630
21 * elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when
22 hash might be NULL, cast instead.
23
24 2021-04-13 Clément Chigot <clement.chigot@atos.net>
25
26 * xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier.
27
28 2021-04-13 Nelson Chu <nelson.chu@sifive.com>
29
30 * elfnn-riscv.c (riscv_version_mismatch): Do not report the warning
31 when the version of input or output is RISCV_UNKNOWN_VERSION, since
32 the extension is added implicitly.
33 * elfxx-riscv.c: Updated the obsolete comments.
34 (RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h.
35 * elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added.
36
37 2021-04-12 Alan Modra <amodra@gmail.com>
38
39 * elf-bfd.h (ENABLE_CHECKING): Define.
40 (elf_link_hash_lookup): Abort if wrong type of hash table.
41 * configure.ac (--enable-checking): Add support.
42 * config.in: Regenerate.
43 * configure: Regenerate.
44
45 2021-04-12 Alan Modra <amodra@gmail.com>
46
47 * elf-bfd.h (is_elf_hash_table): Convert macro to inline function.
48 (elf_link_hash_lookup, elf_link_hash_traverse): Likewise.
49 (elf_hash_table, elf_hash_table_id): Likewise.
50 * elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant
51 is_elf_hash_table check.
52 * elf32-csky.c (elf32_csky_setup_section_lists): Likewise.
53 * elf32-hppa.c (clobber_millicode_symbols): Correct param types.
54 * elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
55 * elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise.
56 (elfNN_ia64_global_dyn_sym_thunk: Likewise.
57 * elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise.
58 (elf64_ia64_global_dyn_sym_thunk): Likewise.
59 (elf64_vms_link_add_object_symbols): Pass base type of hash table
60 to is_elf_hash_table.
61 * elflink.c (_bfd_elf_dynamic_symbol_p): Likewise.
62 (_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise.
63 (_bfd_elf_strip_zero_sized_dynamic_sections): Likewise.
64 (_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise.
65 (bfd_elf_final_link): Likewise.
66 * elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise.
67 * elf64-ppc.c (ppc64_elf_set_toc): Likewise. Use bfd_link_hash_lookup.
68
69 2021-04-12 Alan Modra <amodra@gmail.com>
70
71 * elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry*
72 from elf_backend_archive_symbol_lookup.
73 (_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*.
74 * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise. Check
75 we have a ppc_hash_table before accessing ppc_link_hash_entry
76 fields.
77 * elflink.c (_bfd_elf_archive_symbol_lookup): Return
78 bfd_link_hash_entry*.
79 (elf_link_add_archive_symbols): Adjust to suit.
80
81 2021-04-12 Nelson Chu <nelson.chu@sifive.com>
82
83 * elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of
84 i-ext when expanding g-ext.
85
86 2021-04-12 Nelson Chu <nelson.chu@sifive.com>
87
88 * elfxx-riscv.c (riscv_ext_dont_care_version): Removed.
89 (riscv_parse_add_subset): Always add the implicit extensions, even if
90 their versions are RISCV_UNKNOWN_VERSION.
91 (riscv_parse_std_ext): Delay to add i-ext as the implicit extension
92 in the riscv_parse_add_implicit_subsets. Besides, add g-ext as the
93 implicit extension after it has been expanded.
94 (riscv_parse_add_implicit_subsets): Updated.
95
96 2021-04-12 Nelson Chu <nelson.chu@sifive.com>
97
98 * elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward.
99 (riscv_std_s_ext_strtab): Likewise.
100 (riscv_std_h_ext_strtab): Likewise.
101 (riscv_std_zxm_ext_strtab): Added for the zxm prefix.
102 (enum riscv_prefix_ext_class): Moved forward and renamed from
103 riscv_isa_ext_class. Reorder them according to the parsing order,
104 since the enum values are used to check the orders in the
105 riscv_compare_subsets.
106 (struct riscv_parse_prefix_config): Moved forward and renamed from
107 riscv_parse_config_t. Also removed the ext_valid_p field, the
108 related functions are replaced by riscv_valid_prefixed_ext.
109 (parse_config): Moved forward and updated. The more letters of the
110 prefix string, the more forward it must be defined. Otherwise, we
111 will get the wrong mapping when using strncmp in riscv_get_prefix_class.
112 (riscv_get_prefix_class): Moved forward. Support to parse the
113 multi-letter prefix, like zxm.
114 (riscv_known_prefixed_ext): New function, check if the prefixed
115 extension is supported according to the right riscv_std_*_ext_strtab.
116 (riscv_valid_prefixed_ext): New function, used to replace the
117 riscv_ext_*_valid_p functions.
118 (riscv_init_ext_order): Do not set the values for prefix keywords
119 since they may have multiple letters for now.
120 (riscv_compare_subsets): Set the order values of prefix keywords
121 to negative numbers according to the riscv_prefix_ext_class.
122 (riscv_parse_std_ext): Call riscv_get_prefix_class to see if we
123 have parsed the prefixed extensions.
124 (riscv_parse_prefixed_ext): Updated and removed the parameter config.
125 Report error when the prefix is unknown.
126 (riscv_parse_subset): Do not parse the prefixed extensions according
127 to the orders in the parse_config. Remove the confused message and
128 let riscv_parse_prefixed_ext to report the details.
129 * elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c.
130 (riscv_get_prefix_class): Removed to static.
131
132 2021-04-08 Mike Frysinger <vapier@gentoo.org>
133
134 * configure.ac (ACX_BUGURL): Use https://.
135 * configure.com (COPY_TEXT): Likewise.
136 * configure: Regenerate.
137
138 2021-04-05 Alan Modra <amodra@gmail.com>
139
140 * configure.ac: Don't check for long long or long double type.
141 Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h,
142 strings.h, time.h, wchar.h, wctype.h or sys/time.h. Don't check
143 for strtoull, free, malloc, realloc, getenv, strstr, snprintf,
144 vsnprintf, strlen or setitimer. Sort AC_CHECK_DECLS.
145 (AC_ISC_POSIX): Don't invoke.
146 (AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise.
147 * sysdep.h: Remove many HAVE_*_H checks and fallback declarations.
148 Do test HAVE_SYS_TYPES_H. Don't include sys/time.h. Reorder
149 header order as per automake AC_INCLUDES_DEFAULT.
150 * bfd-in.h: Include inttypes.h unconditionally.
151 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and
152 long double are available.
153 (bfd_scan_vma): Assume long long and strtoull are available.
154 * elflink.c: Include limits.h unconditionally.
155 * elfnn-riscv.c: Likewise.
156 * wasm-module.c: Likewise.
157 * hpux-core.c: Include dirent.h unconditionally.
158 * trad-core.c: Likewise.
159 * hosts/x86-64linux.h: Include stdlib.h unconditionally.
160 * peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks.
161 * elf32-m68hc1x.c: Don't include alloca-conf.h.
162 * elf64-hppa.c: Likewise.
163 * som.c: Likewise.
164 * wasm-module.c: Likewise.
165 * xsym.c: Likewise.
166 * bfd-in2.h: Regenerate.
167 * config.in: Regenerate.
168 * configure: Regenerate.
169
170 2021-04-01 Tamar Christina <tamar.christina@arm.com>
171
172 PR ld/26659
173 * cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow.
174
175 2021-04-01 Martin Liska <mliska@suse.cz>
176
177 * ecoff.c (strneq): Remove strneq and use startswith.
178 (_bfd_ecoff_slurp_armap): Likewise.
179
180 2021-04-01 Martin Liska <mliska@suse.cz>
181
182 * elf-bfd.h (bfd_section_is_ctf): Use startswith function.
183 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
184 (elf_get_reloc_section): Likewise.
185 * elf32-arc.c (elf_arc_size_dynamic_sections): Likewise.
186 * elf32-m32r.c (m32r_elf_section_flags): Likewise.
187 * elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise.
188 * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise.
189 (nds32_elf_relocate_section): Likewise.
190 (nds32_elf_action_discarded): Likewise.
191 (nds32_elf_check_relocs): Likewise.
192 (nds32_elf_section_flags): Likewise.
193 * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
194 * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
195 * elf32-rx.c (rx_table_find): Likewise.
196 (rx_table_map): Likewise.
197 * elf32-spu.c (spu_elf_backend_symbol_processing): Likewise.
198 (spu_elf_find_overlays): Likewise.
199 (needs_ovl_stub): Likewise.
200 (allocate_spuear_stubs): Likewise.
201 (build_spuear_stubs): Likewise.
202 (mark_overlay_section): Likewise.
203 (spu_elf_auto_overlay): Likewise.
204 (spu_elf_output_symbol_hook): Likewise.
205 * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise.
206 * elf32-xtensa.c (xtensa_property_section_name): Likewise.
207 * elf64-ppc.c (ppc64_elf_section_flags): Likewise.
208 (ppc64_elf_relocate_section): Likewise.
209 * elflink.c (resolve_section): Likewise.
210 (UNARY_OP): Likewise.
211 (BINARY_OP_HEAD): Likewise.
212 (elf_link_input_bfd): Likewise.
213 * elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise.
214 * elfxx-riscv.c (riscv_parse_subset): Likewise.
215 * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise.
216 * opncls.c (get_build_id): Likewise.
217
218 2021-03-31 Alan Modra <amodra@gmail.com>
219
220 PR 27671
221 * bfd-in.h: Don't poison FALSE or TRUE.
222 * bfd-in2.h: Regenerate.
223
224 2021-03-31 Alan Modra <amodra@gmail.com>
225
226 * sysdep.h: POISON_BFD_BOOLEAN: Define.
227 * aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h,
228 * aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c,
229 * bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c,
230 * coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c,
231 * coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c,
232 * coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c,
233 * coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c,
234 * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c,
235 * coffcode.h, * coffgen.c, * cofflink.c, * compress.c,
236 * corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c,
237 * cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c,
238 * cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c,
239 * cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c,
240 * cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c,
241 * cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c,
242 * cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c,
243 * cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c,
244 * cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c,
245 * cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c,
246 * cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c,
247 * cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c,
248 * cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c,
249 * cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c,
250 * cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c,
251 * cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c,
252 * cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c,
253 * cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c,
254 * cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c,
255 * cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c,
256 * cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c,
257 * dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c,
258 * elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h,
259 * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c,
260 * elf-nacl.h, * elf-properties.c, * elf-s390-common.c,
261 * elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h,
262 * elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c,
263 * elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c,
264 * elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c,
265 * elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c,
266 * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
267 * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c,
268 * elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c,
269 * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
270 * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
271 * elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c,
272 * elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
273 * elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c,
274 * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
275 * elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c,
276 * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c,
277 * elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c,
278 * elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h,
279 * elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h,
280 * elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c,
281 * elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h,
282 * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
283 * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
284 * elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c,
285 * elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c,
286 * elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c,
287 * elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c,
288 * elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h,
289 * elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c,
290 * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c,
291 * elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h,
292 * elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h,
293 * elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h,
294 * elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h,
295 * format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c,
296 * i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h,
297 * libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h,
298 * libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c,
299 * mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h,
300 * merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c,
301 * pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c,
302 * pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c,
303 * pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c,
304 * peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c,
305 * reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c,
306 * som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c,
307 * verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h,
308 * wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c,
309 * xsym.h: Replace bfd_boolean with bool, FALSE with false, and
310 TRUE with true throughout.
311 * bfd-in2.h: Regenerate.
312 * libbfd.h: Regenerate.
313 * libcoff.h: Regenerate.
314
315 2021-03-31 Alan Modra <amodra@gmail.com>
316
317 * bfd-in.h: Include stdbool.h.
318 (bfd_boolean): Define as bool
319 * bfd-in2.h: Regenerate.
320
321 2021-03-31 Alan Modra <amodra@gmail.com>
322
323 * .gitignore: Delete bfd_stdint.h entry.
324 * Makefile.am (bfdinclude_HEADERS): Delete bfd_stdint.h.
325 (BUILD_HFILES, LOCAL_H_DEPS): Likewise.
326 * bfd-in.h: Include stdint.h in place of bfd_stdint.h.
327 * configure.ac: Don't invoke GCC_HEADER_STDINT.
328 * configure.com: Don't create bfd_stdint.h.
329 * Makefile.in: Regenerate.
330 * aclocal.m4: Regenerate.
331 * bfd-in2.h: Regenerate.
332 * config.in: Regenerate.
333 * configure: Regenerate.
334 * doc/Makefile.in: Regenerate.
335 * po/BLD-POTFILES.in: Regenerate.
336
337 2021-03-31 Alan Modra <amodra@gmail.com>
338
339 * bfd-in.h: Include string.h.
340 (LITMEMCPY, LITSTRCPY): Delete.
341 * bfd-in2.h: Regenerate.
342
343 2021-03-30 Alan Modra <amodra@gmail.com>
344
345 * elflink.c (elf_link_add_object_symbols): Don't set h->indx
346 unless is_elf_hash_table.
347
348 2021-03-29 Alan Modra <amodra@gmail.com>
349
350 * aoutx.h (aout_link_write_symbols): Don't cast boolean expression
351 to bfd_boolean.
352 * elf32-or1k.c (or1k_set_got_and_rela_sizes): Dont compare booleans
353 against FALSE.
354 * elf32-arc.c (name_for_global_symbol): Don't compare boolean to TRUE.
355 (is_reloc_PC_relative): Don't use "boolean_condition ? TRUE : FALSE".
356 (is_reloc_SDA_relative, is_reloc_for_GOT): Likewise.
357 (is_reloc_for_PLT, is_reloc_for_TLS): Likewise.
358 * elf32-arm.c (stm32l4xx_need_create_replacing_stub): Likewise.
359 * elf32-nds32.c (insert_nds32_elf_blank): Likewise.
360 * elf32-rx.c (rx_set_section_contents): Likewise.
361 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise.
362 * elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): Likewise.
363 * mach-o.c (bfd_mach_o_read_command): Likewise.
364 * targets.c (bfd_get_target_info): Likewise.
365
366 2021-03-29 Alan Modra <amodra@gmail.com>
367
368 * coff-z80.c (z80_is_local_label_name): Return bfd_boolean.
369 * elf32-z80.c (z80_is_local_label_name): Likewise.
370 * elf32-spu.c (spu_elf_modify_headers): Likewise.
371 * elf32-nds32.h (struct elf_nds32_link_hash_table <hyper_relax>):
372 Change type to int.
373 * vms-lib.c (_bfd_vms_lib_write_archive_contents): Correct test
374 for error return from vms_write_data_block.
375
376 2021-03-29 Alan Modra <amodra@gmail.com>
377
378 * elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int.
379 * elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise.
380 (elf64_ia64_local_dyn_sym_thunk): Likewise.
381 * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise.
382 * elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs),
383 (elfNN_aarch64_finish_local_dynamic_symbol): Likewise.
384 * elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise.
385 (elfNN_ia64_local_dyn_sym_thunk): Likewise.
386 * elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise.
387 (riscv_pcrel_reloc_eq): Likewise.
388 (riscv_elf_finish_local_dynamic_symbol): Likewise.
389 * elfxx-sparc.c (allocate_local_dynrelocs): Likewise.
390 (finish_local_dynamic_symbol): Likewise.
391 * elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise.
392 * elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise.
393 (mips_elf_count_got_symbols): Change return type to bfd_boolean.
394
395 2021-03-29 Alan Modra <amodra@gmail.com>
396
397 * elflink.c (elf_link_output_symstrtab): Make flinfo parameter
398 a void pointer.
399 (bfd_elf_final_link): Delete out_sym_func typedef and don't cast
400 elf_link_output_symstrtab when calling output_arch_syms and
401 output_arch_local_syms.
402 * elf-bfd.h (struct elf_backend_data <elf_backend_output_arch_syms,
403 elf_backend_output_arch_local_syms>): Change return type of func
404 arg to match elf_link_output_symstrtab.
405 * elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Correct
406 return type.
407 * elf32-nds32.c (nds32_elf_output_symbol_hook): Correct return type.
408 (nds32_elf_output_arch_syms): Correct func return type.
409
410 2021-03-29 Alan Modra <amodra@gmail.com>
411
412 * elf-m10200.c (mn10200_elf_relocate_section): Return int.
413 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
414 * elf32-arc.c (elf_arc_relocate_section): Likewise.
415 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
416 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
417 * elf32-bfin.c (bfin_relocate_section): Likewise.
418 (bfinfdpic_relocate_section): Likewise.
419 * elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
420 * elf32-cris.c (cris_elf_relocate_section): Likewise.
421 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
422 * elf32-csky.c (csky_elf_relocate_section): Likewise.
423 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
424 * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
425 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
426 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
427 * elf32-ft32.c (ft32_elf_relocate_section): Likewise.
428 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
429 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
430 * elf32-i386.c (elf_i386_relocate_section): Likewise.
431 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
432 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
433 * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
434 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
435 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
436 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
437 * elf32-m68hc1x.h (elf32_m68hc11_relocate_section): Likewise.
438 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
439 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
440 * elf32-mep.c (mep_elf_relocate_section): Likewise.
441 * elf32-metag.c (elf_metag_relocate_section): Likewise.
442 * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
443 * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
444 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
445 * elf32-mt.c (mt_elf_relocate_section): Likewise.
446 * elf32-nds32.c (nds32_elf_relocate_section): Likewise.
447 * elf32-nios2.c (nios2_elf32_relocate_section): Likewise.
448 * elf32-or1k.c (or1k_elf_relocate_section): Likewise.
449 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
450 * elf32-pru.c (pru_elf32_relocate_section): Likewise.
451 * elf32-rl78.c (rl78_elf_relocate_section): Likewise.
452 * elf32-rx.c (rx_elf_relocate_section): Likewise.
453 * elf32-s390.c (elf_s390_relocate_section): Likewise.
454 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
455 (_bfd_score_elf_relocate_section): Likewise.
456 * elf32-score.h (s7_bfd_score_elf_relocate_section): Likewise.
457 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
458 * elf32-sh.c (sh_elf_relocate_section): Likewise.
459 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
460 * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
461 * elf32-v850.c (v850_elf_relocate_section): Likewise.
462 * elf32-vax.c (elf_vax_relocate_section): Likewise.
463 * elf32-visium.c (visium_elf_relocate_section): Likewise.
464 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
465 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
466 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
467 * elf32-z80.c (z80_elf_relocate_section): Likewise.
468 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
469 (elf64_alpha_relocate_section): Likewise.
470 * elf64-bpf.c (bpf_elf_relocate_section): Likewise.
471 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
472 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
473 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
474 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
475 * elf64-s390.c (elf_s390_relocate_section): Likewise.
476 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
477 * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise.
478 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
479 * elfnn-riscv.c (riscv_elf_relocate_section): Likewise.
480 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
481 * elfxx-mips.h (_bfd_mips_elf_relocate_section): Likewise.
482 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
483 * elfxx-sparc.h (_bfd_sparc_elf_relocate_section): Likewise.
484 * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
485 * elfxx-tilegx.h (tilegx_elf_relocate_section): Likewise.
486
487 2021-03-26 Keith Seitz <keiths@redhat.com>
488
489 * elfcore.h (_bfd_elf_core_find_build_id): Seek file
490 offset of program headers after calling elf_read_notes.
491
492 2021-03-23 Jan Beulich <jbeulich@suse.com>
493
494 * dwarf2.c (read_indexed_string): Rename index to idx.
495
496 2021-03-22 Martin Liska <mliska@suse.cz>
497
498 * bfd-in.h (startswith): Add startswith function.
499 (CONST_STRNEQ): Remove.
500 * bfd-in2.h (startswith): Regenerate with make headers.
501 * archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith.
502 (_bfd_slurp_extended_name_table): Likewise.
503 * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
504 * bfd.c (bfd_get_sign_extend_vma): Likewise.
505 (bfd_convert_section_size): Likewise.
506 (bfd_convert_section_contents): Likewise.
507 * coff-stgo32.c (go32exe_create_stub): Likewise.
508 (go32exe_check_format): Likewise.
509 * coffcode.h (styp_to_sec_flags): Likewise.
510 (GNU_DEBUGALTLINK): Likewise.
511 * coffgen.c (_bfd_coff_section_already_linked): Likewise.
512 (coff_gc_sweep): Likewise.
513 (bfd_coff_gc_sections): Likewise.
514 * cofflink.c (coff_link_add_symbols): Likewise.
515 (process_embedded_commands): Likewise.
516 * compress.c (bfd_is_section_compressed_with_header): Likewise.
517 (bfd_init_section_decompress_status): Likewise.
518 * dwarf2.c (find_debug_info): Likewise.
519 (place_sections): Likewise.
520 * ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
521 * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
522 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
523 (assign_section_numbers): Likewise.
524 (elfcore_grok_win32pstatus): Likewise.
525 * elf32-arm.c (cmse_scan): Likewise.
526 (elf32_arm_gc_mark_extra_sections): Likewise.
527 (elf32_arm_size_dynamic_sections): Likewise.
528 (is_arm_elf_unwind_section_name): Likewise.
529 * elf32-bfin.c (bfin_size_dynamic_sections): Likewise.
530 * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
531 * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
532 * elf32-csky.c (csky_elf_size_dynamic_sections): Likewise.
533 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
534 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
535 * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
536 * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
537 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
538 * elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
539 * elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
540 * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
541 * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
542 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
543 * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
544 * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
545 * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
546 * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
547 * elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise.
548 (elf32_tic6x_size_dynamic_sections): Likewise.
549 * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
550 * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
551 (xtensa_is_insntable_section): Likewise.
552 (xtensa_is_littable_section): Likewise.
553 (xtensa_is_proptable_section): Likewise.
554 (xtensa_property_section_name): Likewise.
555 (xtensa_callback_required_dependence): Likewise.
556 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
557 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
558 * elf64-ia64-vms.c (is_unwind_section_name): Likewise.
559 (get_reloc_section): Likewise.
560 (elf64_ia64_size_dynamic_sections): Likewise.
561 (elf64_ia64_object_p): Likewise.
562 * elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise.
563 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
564 * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
565 * elflink.c (elf_link_add_object_symbols): Likewise.
566 (_bfd_elf_gc_mark_extra_sections): Likewise.
567 (bfd_elf_parse_eh_frame_entries): Likewise.
568 (_bfd_elf_section_already_linked): Likewise.
569 * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
570 * elfnn-ia64.c (is_unwind_section_name): Likewise.
571 (elfNN_ia64_size_dynamic_sections): Likewise.
572 (elfNN_ia64_object_p): Likewise.
573 * elfxx-mips.c (FN_STUB_P): Likewise.
574 (CALL_STUB_P): Likewise.
575 (CALL_FP_STUB_P): Likewise.
576 (_bfd_mips_elf_section_from_shdr): Likewise.
577 (_bfd_mips_elf_fake_sections): Likewise.
578 (_bfd_mips_elf_size_dynamic_sections): Likewise.
579 (_bfd_mips_final_write_processing): Likewise.
580 (_bfd_mips_elf_final_link): Likewise.
581 * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
582 * elfxx-x86.c (elf_i386_is_reloc_section): Likewise.
583 (elf_x86_64_is_reloc_section): Likewise.
584 * hpux-core.c (thread_section_p): Likewise.
585 * libcoff.h (bfd_pei_p): Likewise.
586 * linker.c (REAL): Likewise.
587 (unwrap_hash_lookup): Likewise.
588 (_bfd_generic_link_add_one_symbol): Likewise.
589 * mmo.c (mmo_internal_write_section): Likewise.
590 * osf-core.c (osf_core_core_file_p): Likewise.
591 * pef.c (bfd_pef_print_symbol): Likewise.
592 * pei-x86_64.c (pex64_print_all_pdata_sections): Likewise.
593 * som.c (som_slurp_symbol_table): Likewise.
594 (som_slurp_armap): Likewise.
595 * wasm-module.c (wasm_compute_custom_section_file_position): Likewise.
596
597 2021-03-22 Jan Beulich <jbeulich@suse.com>
598
599 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing
600 language translation wrapping to _bfd_error_handler()
601 invocations.
602
603 2021-03-21 Alan Modra <amodra@gmail.com>
604
605 * bfd-in.h (startswith): New inline.
606 (CONST_STRNEQ): Use startswith.
607 * bfd-in2.h: Regenerate.
608
609 2021-03-20 Alan Modra <amodra@gmail.com>
610
611 PR 27590
612 * elf.c (_bfd_elf_make_section_from_shdr): Remove SHF_EXCLUDE
613 test for .gnu.debuglto*.
614
615 2021-03-18 H.J. Lu <hongjiu.lu@intel.com>
616
617 PR ld/27590
618 * elf.c (_bfd_elf_make_section_from_shdr): Treat
619 .gnu.debuglto_.debug_ section as debugging section unless it is
620 marked with SHF_EXCLUDE.
621 * elflink.c (elf_create_symbuf): Revert commit 994b2513281.
622 (bfd_elf_match_symbols_in_sections): Ignore section symbols when
623 matching non-debugging sections or linkonce section with comdat
624 section.
625
626 2021-03-18 H.J. Lu <hongjiu.lu@intel.com>
627
628 PR ld/27587
629 * dwarf2.c (read_attribute_value): Check version >= 3 for
630 DW_FORM_ref_addr.
631
632 2021-03-16 Nick Clifton <nickc@redhat.com>
633
634 * peXXigen.c (_bfd_XXi_swap_aux_out): Avoid potential buffer
635 overrun by using sizeof of the destination x_fname field as the
636 limit for a memcpy.
637
638 2021-03-16 Kuan-Lin Chen <kuanlinchentw@gmail.com>
639
640 * elfxx-riscv.c (riscv_std_z_ext_strtab): Add zba, zbb and zbc.
641
642 2021-03-12 Clément Chigot <clement.chigot@atos.net>
643
644 * reloc.c (BFD_RELOC_PPC_TLS_LE, BFD_RELOC_PPC_TLS_IE,
645 BFD_RELOC_PPC_TLS_M, BFD_RELOC_PPC_TLS_ML, BFD_RELOC_PPC64_TLS_GD,
646 BFD_RELOC_PPC64_TLS_LD, BFD_RELOC_PPC64_TLS_LE,
647 BFD_RELOC_PPC64_TLS_IE, BFD_RELOC_PPC64_TLS_M,
648 BFD_RELOC_PPC64_TLS_ML): New relocations.
649 * bfd-in2.h: Regenerate.
650 * libbfd.h: Regenerate.
651 * coff-rs6000.c (xcoff_calculate_relocation): Call
652 xcoff_reloc_type_tls for TLS relocations.
653 (xcoff_howto_table): Implement TLS relocations.
654 (_bfd_xcoff_reloc_type_lookup): Add cases TLS relocations.
655 (xcoff_reloc_type_tls): New function.
656 * coff64-rs6000.c (xcoff_calculate_relocation): Likewise.
657 (xcoff_howto_table): Likewise.
658 (_bfd_xcoff_reloc_type_lookup): Likewise.
659 * coffcode.h (sec_to_styp_flags): Handle TLS sections.
660 (styp_to_sec_flags): Likewise.
661 (coff_compute_section_file_positions): Avoid file offset
662 optimisation for .data when the previous section is .tdata.
663 (coff_write_object_contents): Handle TLS sections.
664 * coffswap.h (coff_swap_aouthdr_out): Add support for
665 new fields in aouthdr.
666 * libxcoff.h (xcoff_reloc_type_tls): Add prototype.
667 * xcofflink.c (xcoff_link_add_symbols): Handle XMC_UL.
668 (xcoff_need_ldrel_p): Add cases for TLS relocations.
669 (xcoff_create_ldrel): Add l_symndx for TLS sections.
670
671 2021-03-12 Clément Chigot <clement.chigot@atos.net>
672
673 * reloc.c (BFD_RELOC_PPC_TOC16_HI, BFD_RELOC_PPC_TOC16_LO):
674 New relocations.
675 * bfd-in2.h: Regenerate.
676 * libbfd.h: Regenerate.
677 * coff-rs6000.c (xcoff_calculate_relocation): Call
678 xcoff_reloc_type_toc for R_TOCU and R_TOCL.
679 (xcoff_howto_table): Remove src_mask for TOC relocations.
680 Add R_TOCU and R_TOCL howtos.
681 (_bfd_xcoff_reloc_type_lookup): Add cases for
682 BFD_RELOC_PPC_TOC16_HI and BFD_RELOC_PPC_TOC16_LO.
683 (xcoff_reloc_type_toc): Compute the whole offset.
684 Implement R_TOCU and R_TOCL.
685 * coff64-rs6000.c (xcoff64_calculate_relocation):
686 Likewise.
687 (xcoff64_howto_table): Likewise.
688 (xcoff64_reloc_type_lookup): Likewise.
689
690 2021-03-12 Clément Chigot <clement.chigot@atos.net>
691
692 * coff-rs6000.c (xcoff_calculate_relocation): Correct and
693 add new relocations.
694 (xcoff_howto_table): Likewise.
695 (xcoff_rtype2howto): Increase r_type maximum value.
696 (xcoff_ppc_relocate_section): Reuse predefined HOWTOs instead
697 of create a new one from scratch. Enable only some relocations
698 to have a changing r_size.
699 * coff64-rs6000.c (xcoff64_calculate_relocation): Likewise.
700 (xcoff64_howto_table): Likewise.
701 (xcoff64_rtype2howto): Likewise.
702 (xcoff64_ppc_relocate_section): Likewise.
703 * libxcoff.h (XCOFF_MAX_CALCULATE_RELOCATION): Fix value.
704
705 2021-03-12 Clément Chigot <clement.chigot@atos.net>
706
707 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Move.
708
709 2021-03-12 Clément Chigot <clement.chigot@atos.net>
710
711 * coff64-rs6000.c (xcoff64_write_object_contents): Remove.
712 * coffcode.h (coff_write_object_contents): Add bfd_mach_ppc_620
713 support for o_cputype field. Avoid creating an empty a.out header
714 for XCOFF64.
715
716 2021-03-12 Clément Chigot <clement.chigot@atos.net>
717
718 * coff64-rs6000.c (xcoff64_create_csect_from_smclas): Add
719 missing smclass.
720
721 2021-03-11 Nelson Chu <nelson.chu@sifive.com>
722
723 * elfnn-riscv.c (riscv_elf_link_hash_table): New boolean
724 restart_relax, used to check if we need to run the whole
725 relaxations from relax pass 0 to 2 again.
726 (riscv_elf_link_hash_table_create): Init restart_relax to FALSE.
727 (_bfd_riscv_relax_align): Remove obsolete sec_flg0 set.
728 (_bfd_riscv_relax_delete): Set again to TRUE if we do delete the code.
729 (bfd_elfNN_riscv_restart_relax_sections): New function. Called by
730 after_allocation to check if we need to run the whole relaxations again.
731 (_bfd_riscv_relax_section): We will only enter into the relax pass 3
732 when the restart_relax is FALSE; At last set restart_relax to TRUE if
733 again is TRUE, too.
734 * elfxx-riscv.h (bfd_elf32_riscv_restart_relax_sections): Declaration.
735 (bfd_elf64_riscv_restart_relax_sections): Likewise.
736
737 2021-03-10 Jan Beulich <jbeulich@suse.com>
738
739 * cofflink.c (_bfd_coff_write_global_sym): Range-check symbol
740 offset.
741
742 2021-03-10 Alan Modra <amodra@gmail.com>
743 Jan Beulich <jbeulich@suse.com>
744
745 * elf.c (bfd_elf_generic_reloc): Make references between debug
746 sections use section relative values.
747
748 2021-03-09 Jan Beulich <jbeulich@suse.com>
749
750 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Diagnose out of range RVA.
751
752 2021-03-05 H.J. Lu <hongjiu.lu@intel.com>
753
754 PR ld/27425
755 PR ld/27432
756 * bfd.c (_bfd_get_link_info): New function.
757 * elf-bfd.h (output_elf_obj_tdata): Add link_info.
758 (elf_link_info): New.
759 * libbfd-in.h (_bfd_get_link_info): New prototype.
760 * coff-x86_64.c (coff_amd64_reloc): Also subtract __ImageBase for
761 R_AMD64_IMAGEBASE when generating x86-64 ELF executable.
762 * pe-x86_64.c: Include "coff/internal.h" and "libcoff.h".
763 (pex64_link_add_symbols): New function.
764 (coff_bfd_link_add_symbols): New macro.
765 * libbfd.h: Regenerated.
766
767 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
768 Andrew Burgess <andrew.burgess@embecosm.com>
769
770 * elf-bfd.h (elfcore_write_riscv_csr): Declare.
771 * elf.c (elfcore_grok_riscv_csr): New function.
772 (elfcore_grok_note): Handle NT_RISCV_CSR.
773 (elfcore_write_riscv_csr): New function.
774 (elfcore_write_register_note): Handle '.reg-riscv-csr'.
775
776 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
777 Andrew Burgess <andrew.burgess@embecosm.com>
778
779 * elfnn-riscv.c (PRPSINFO_PR_FNAME_LENGTH): Define.
780 (PRPSINFO_PR_PSARGS_LENGTH): Define.
781 (riscv_write_core_note): New function.
782 (riscv_elf_grok_psinfo): Make use of two new length defines.
783 (elf_backend_write_core_note): Define.
784
785 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
786 Andrew Burgess <andrew.burgess@embecosm.com>
787
788 * elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function.
789 * elf.c (elfcore_grok_gdb_tdesc): New function.
790 (elfcore_grok_note): Handle NT_GDB_TDESC.
791 (elfcore_write_gdb_tdesc): New function.
792 (elfcore_write_register_note): Handle NT_GDB_TDESC.
793
794 2021-03-05 Nick Clifton <nickc@redhat.com>
795
796 PR 27521
797 * dwarf2.c (is_str_attr): Add DW_FORM_strx* forms.
798 (read_indexed_string): Placeholder function.
799 (read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx*
800 forms.
801
802 2021-03-05 Alan Modra <amodra@gmail.com>
803
804 * reloc.c (bfd_perform_relocation): Revert 2021-01-12 and
805 2020-09-16 changes.
806 * coff-x86_64.c (coff_amd64_reloc): Do more or less the same
807 adjustments here instead. Separate pc-relative adjustments
808 from symbol related adjustments. Tidy comments and formatting.
809
810 2021-03-04 Jan Beulich <jbeulich@suse.com>
811
812 * coffcode.h (sec_to_styp_flags): Don't set IMAGE_SCN_LNK_* in
813 final PE images.
814
815 2021-03-04 Alan Modra <amodra@gmail.com>
816
817 * rs6000-core.c (rs6000coff_core_p): Correct prototype.
818
819 2021-03-03 Alan Modra <amodra@gmail.com>
820
821 PR 27500
822 * elflink.c (_bfd_elf_gc_mark_rsec): Do special start/stop
823 processing not when start/stop symbol section is unmarked but
824 on first time a start/stop symbol is processed.
825
826 2021-03-03 Alan Modra <amodra@gmail.com>
827
828 * reloc.c: Include x86_64.h rather than internal.h.
829
830 2021-03-02 Nick Clifton <nickc@redhat.com>
831
832 PR 27484
833 * dwarf2.c (scan_unit_for_symbols): Scan twice, once to accumulate
834 function and variable tags and a second time to resolve their
835 attributes.
836
837 2021-03-02 Nick Alcock <nick.alcock@oracle.com>
838
839 * elf-strtab.c (_bfd_elf_strtab_str): Skip strings with zero refcount.
840
841 2021-03-02 Alan Modra <amodra@gmail.com>
842
843 PR 27451
844 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore synthesized
845 linker defined start/stop symbols when start_stop_gc.
846
847 2021-03-02 Alan Modra <amodra@gmail.com>
848
849 * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimise got
850 indirect to pc-relative or toc-relative for undefined symbols.
851
852 2021-03-01 Alan Modra <amodra@gmail.com>
853 Fangrui Song <maskray@google.com>
854
855 * elflink.c (_bfd_elf_gc_mark_rsec): Ignore synthesized linker
856 defined start/stop symbols when start_stop_gc.
857 (bfd_elf_gc_mark_dynamic_ref_symbol): Likewise.
858 (bfd_elf_define_start_stop): Don't modify ldscript_def syms.
859 * linker.c (bfd_generic_define_start_stop): Likewise.
860
861 2021-02-25 Alan Modra <amodra@gmail.com>
862
863 PR 27441
864 * elf-bfd.h (struct elf_link_hash_entry): Add ref_ir_nonweak.
865 * elflink.c (elf_link_add_object_symbols): Set ref_ir_nonweak and
866 use when deciding an as-needed library should be loaded instead
867 of using the binding of the library definition.
868
869 2021-02-24 Alan Modra <amodra@gmail.com>
870
871 PR 27459
872 * coff-stgo32.c (go32exe_check_format): Sanity check size of
873 header to avoid a buffer overflow.
874
875 2021-02-22 Alan Modra <amodra@gmail.com>
876
877 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16.
878 * coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
879
880 2021-02-19 Nelson Chu <nelson.chu@sifive.com>
881
882 PR 27158
883 * elfnn-riscv.c (perform_relocation): Updated encoding macros.
884 (_bfd_riscv_relax_call): Likewise.
885 (_bfd_riscv_relax_lui): Likewise.
886 * elfxx-riscv.c (howto_table): Likewise.
887
888 2021-02-18 Nelson Chu <nelson.chu@sifive.com>
889
890 * Makefile.am: Added cpu-riscv.h.
891 * Makefile.in: Regenerated.
892 * po/SRC-POTFILES.in: Regenerated.
893 * cpu-riscv.h: Added to support spec versions controlling.
894 Also added extern arrays and functions for cpu-riscv.c.
895 (enum riscv_spec_class): Define all spec classes here uniformly.
896 (struct riscv_spec): Added for all specs.
897 (RISCV_GET_SPEC_CLASS): Added to reduce repeated code.
898 (RISCV_GET_SPEC_NAME): Likewise.
899 (RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class.
900 (RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class.
901 (RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name.
902 * cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec.
903 (riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS.
904 (riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME.
905 (riscv_priv_specs): Moved below.
906 (riscv_get_priv_spec_class_from_numbers): Likewise, updated.
907 (riscv_isa_specs): Moved from include/opcode/riscv.h.
908 * elfnn-riscv.c: Included cpu-riscv.h.
909 (riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec.
910 * elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h.
911 (RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h.
912 * elfxx-riscv.h: Removed extern functions to cpu-riscv.h.
913
914 2021-02-17 Alan Modra <amodra@gmail.com>
915
916 * wasm-module.c: Guard include of limits.h.
917 (CHAR_BIT): Provide backup define.
918 (wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
919 Correct signed overflow checking.
920
921 2021-02-17 Nelson Chu <nelson.chu@sifive.com>
922
923 PR 27200
924 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay
925 copying the elf flags from input BFD to output BFD, until we have
926 checked if the input BFD has no code section or not. Also fix the
927 problem that we only check the first section rather than the entire
928 sections for input BFD.
929
930 2021-02-16 Alan Modra <amodra@gmail.com>
931
932 * libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift.
933 (_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise.
934
935 2021-02-15 Jan Beulich <jbeulich@suse.com>
936
937 * doc/Makefile.am: Replace "cp -p" by "$(LN_S)".
938 * doc/Makefile.in: Re-generate.
939
940 2021-02-15 Alan Modra <amodra@gmail.com>
941
942 * elf32-nds32.c (nds32_get_section_contents): Replace
943 bfd_malloc_and_get_section with bfd_get_full_section_contents.
944 (nds32_elf_relax_delete_blanks): Init contents.
945 (nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise.
946
947 2021-02-15 Alan Modra <amodra@gmail.com>
948
949 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
950 bfd_get_full_section_contents.
951
952 2021-02-14 Alan Modra <amodra@gmail.com>
953
954 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply
955 all fixes to bfd_generic_get_relocated_section_contents since this
956 function was split out.
957
958 2021-02-11 Alan Modra <amodra@gmail.com>
959
960 * config.bfd: Remove ia64 from obsolete list.
961
962 2021-02-11 Alan Modra <amodra@gmail.com>
963
964 PR ld/22269
965 * elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234.
966
967 2021-02-11 Alan Modra <amodra@gmail.com>
968
969 PR 27294
970 * elf32-avr.c (avr_elf32_load_records_from_section): Use
971 bfd_malloc_and_get_section. Use bfd_byte* vars and remove then
972 unnecessary casts.
973
974 2021-02-11 Alan Modra <amodra@gmail.com>
975
976 PR 27291
977 * section.c (bfd_get_section_contents): Avoid possible overflow
978 when range checking offset and count.
979 (bfd_set_section_contents): Likewise.
980
981 2021-02-03 Nick Alcock <nick.alcock@oracle.com>
982
983 * configure.ac (SHARED_LIBADD): Remove explicit -lintl population in
984 favour of LIBINTL.
985 * configure: Regenerated.
986
987 2021-02-09 Alan Modra <amodra@gmail.com>
988
989 * config.bfd (arm*-*-symbianelf*): Move from obsolete to removed.
990 * configure.ac: Delete symbian entries.
991 * elf-bfd.h (enum elf_target_os): Delete is_symbian.
992 * elf32-arm.c: Remove symbian support. Formatting.
993 * targets.c: Delete symbian entries.
994 * configure: Regenerate.
995
996 2021-02-04 H.J. Lu <hongjiu.lu@intel.com>
997
998 PR ld/19609
999 * elf64-x86-64.c (elf_x86_64_relocate_section): Provide more
1000 info when failed to convert GOTPCREL relocation.
1001
1002 2021-02-04 Nelson Chu <nelson.chu@sifive.com>
1003
1004 * elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*.
1005
1006 2021-02-04 Alan Modra <amodra@gmail.com>
1007
1008 PR 27311
1009 * elflink.c (elf_link_add_object_symbols): Don't pull in as-needed
1010 libraries for IR references on pass over libraries after LTO
1011 recompilation.
1012
1013 2021-02-03 Alan Modra <amodra@gmail.com>
1014
1015 PR 27311
1016 * elflink.c (_bfd_elf_add_default_symbol): Revert last two changes.
1017 (elf_link_add_object_symbols): Here too. Don't pull in as-needed
1018 libraries when H is an indirect symbol after calling
1019 _bfd_elf_add_default_symbol.
1020
1021 2021-02-03 Alan Modra <amodra@gmail.com>
1022
1023 PR 27311
1024 * elflink.c (_bfd_elf_add_default_symbol): Clear override when
1025 undecorated symbol will have a different version.
1026
1027 2021-02-02 Alan Modra <amodra@gmail.com>
1028
1029 PR 27311
1030 * elflink.c (_bfd_elf_add_default_symbol): Add override parameter.
1031 Use when handling default versioned symbol. Rename existing
1032 override variable to nondef_override and use for non-default
1033 versioned symbol.
1034 (elf_link_add_object_symbols): Adjust call to suit. Don't
1035 pull in as-needed libraries when override is set.
1036
1037 2021-02-01 Emery Hemingway <ehmry@posteo.net>
1038
1039 * config.bfd: Add *-*-genode* as a target for AArch64 and x86.
1040
1041 2021-02-01 Egor Vishnyakov <lenvampir@yandex.ru>
1042
1043 PR 27254
1044 * elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of
1045 offset for the R_RL78_RH_SADDR relocation.
1046
1047 2021-01-29 Alan Modra <amodra@gmail.com>
1048
1049 PR 27271
1050 * elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault
1051 on symbols defined in absolute or other special sections.
1052
1053 2021-01-28 Alan Modra <amodra@gmail.com>
1054
1055 PR 27259
1056 * elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to
1057 prevent endless looping of linked-to sections.
1058
1059 2020-12-17 Mihails Strasuns <mihails.strasuns@intel.com>
1060
1061 * bfd-elf.h (elfcore_write_file_note): New function.
1062 * elf.c (elfcore_write_file_note): New function.
1063
1064 2021-01-26 Alan Modra <amodra@gmail.com>
1065
1066 * elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0].
1067
1068 2021-01-24 H.J. Lu <hongjiu.lu@intel.com>
1069
1070 PR binutils/27231
1071 * dwarf2.c (read_rnglists): Ignore empty range when parsing line
1072 number tables.
1073
1074 2021-01-23 H.J. Lu <hongjiu.lu@intel.com>
1075
1076 PR binutils/27231
1077 * dwarf2.c (read_rnglists): Advance rngs_ptr after
1078 _bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
1079
1080 2021-01-20 Alan Modra <amodra@gmail.com>
1081
1082 * elf32-ppc.c: Delete outdated comment.
1083 (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
1084 * elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
1085
1086 2021-01-20 Alan Modra <amodra@gmail.com>
1087
1088 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume
1089 section symbols are present.
1090
1091 2021-01-19 Alan Modra <amodra@gmail.com>
1092
1093 * elf64-ppc.c (elf_hash_entry): New inline function. Use
1094 throughout to replace casts.
1095 (branch_reloc_hash_match): Remove const from params.
1096 (use_local_plt): New function.
1097 (allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub),
1098 (build_global_entry_stubs_and_plt, ppc64_elf_relocate_section):
1099 Use use_local_plt.
1100 * elf32-ppc.c (use_local_plt): New function.
1101 (allocate_dynrelocs, ppc_elf_relocate_section),
1102 (write_global_sym_plt): Use use_local_plt.
1103
1104 2021-01-17 H.J. Lu <hongjiu.lu@intel.com>
1105
1106 PR ld/27193
1107 * elflink.c (elf_create_symbuf): Also ignore section symbols.
1108
1109 2021-01-16 H.J. Lu <hongjiu.lu@intel.com>
1110
1111 PR ld/23169
1112 * elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't
1113 check pointer_equality_needed.
1114
1115 2021-01-15 H.J. Lu <hongjiu.lu@intel.com>
1116
1117 * elf-linker-x86.h (elf_linker_x86_params): Add
1118 report_relative_reloc.
1119 * elf32-i386.c (elf_i386_relocate_section): Call
1120 _bfd_x86_elf_link_report_relative_reloc to report relative
1121 relocations for -z report-relative-reloc.
1122 (elf_i386_finish_dynamic_symbol): Likewse.
1123 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewse.
1124 (elf_x86_64_finish_dynamic_symbol): Likewse.
1125 * elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New
1126 function.
1127 * elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New
1128 prototype.
1129
1130 2021-01-16 Alan Modra <amodra@gmail.com>
1131
1132 * compress.c (decompress_contents): Tidy inflateEnd result test.
1133
1134 2021-01-16 Alan Modra <amodra@gmail.com>
1135
1136 PR 26002
1137 * elflink.c (elf_link_output_extsym): Use version 1 in
1138 .gnu.version for undefined unversioned symbols.
1139
1140 2021-01-15 Nelson Chu <nelson.chu@sifive.com>
1141
1142 * elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that
1143 caused the by previous commit accidentally.
1144
1145 2021-01-15 Nelson Chu <nelson.chu@sifive.com>
1146
1147 * elfnn-riscv.c: Indent, labels and GNU coding standards tidy,
1148 also aligned the code.
1149
1150 2021-01-15 Nelson Chu <nelson.chu@sifive.com>
1151
1152 * elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages.
1153
1154 2021-01-15 Nelson Chu <nelson.chu@sifive.com>
1155
1156 * elfnn-riscv.c: Comments tidy and improvement.
1157 * elfxx-riscv.c: Likewise.
1158 * elfxx-riscv.h: Likewise.
1159
1160 2021-01-14 H.J. Lu <hongjiu.lu@intel.com>
1161
1162 PR ld/26688
1163 * elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC
1164 section for R_BFIN_FUNCDESC.
1165
1166 2021-01-14 Nick Clifton <nickc@redhat.com>
1167
1168 * elf.c (elfcore_grok_win32pstatus): Check for a note type of 0.
1169
1170 2021-01-13 Alan Modra <amodra@gmail.com>
1171
1172 * Makefile.in: Regenerate.
1173 * doc/Makefile.in: Regenerate.
1174
1175 2021-01-13 Alan Modra <amodra@gmail.com>
1176
1177 PR 27160
1178 * section.c (struct bfd_section): Remove pattern field.
1179 (BFD_FAKE_SECTION): Adjust to suit.
1180 * bfd-in2.h: Regenerate.
1181 * elflink.c (compare_link_order, elf_fixup_link_order): Delete.
1182 (bfd_elf_final_link): Don't call elf_fixup_link_order.
1183
1184 2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
1185
1186 PR binutils/26792
1187 * configure.ac: Use GNU_MAKE_JOBSERVER.
1188 * aclocal.m4: Regenerated.
1189 * configure: Likewise.
1190
1191 2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
1192
1193 PR ld/27171
1194 * reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and
1195 R_AMD64_DIR32 relocations for PE/x86-64 inputs.
1196
1197 2021-01-11 H.J. Lu <hongjiu.lu@intel.com>
1198
1199 PR ld/27173
1200 * configure: Regenerated.
1201
1202 2021-01-11 Nick Clifton <nickc@redhat.com>
1203
1204 * po/fr.po: Updated French translation.
1205 * po/pt.po: Updated Portuguese translation.
1206 * po/sr.po: Updated Serbian translation.
1207 * po/uk.po: Updated Ukranian translation.
1208
1209 2021-01-09 H.J. Lu <hongjiu.lu@intel.com>
1210
1211 * configure: Regenerated.
1212
1213 2021-01-09 H.J. Lu <hongjiu.lu@intel.com>
1214
1215 PR ld/27166
1216 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle
1217 -z lam-u48 and -z lam-u57.
1218
1219 2021-01-09 Nick Clifton <nickc@redhat.com>
1220
1221 * version.m4: Change to 2.36.50.
1222 * configure: Regenerate.
1223 * po/bfd.pot: Regenerate.
1224
1225 2021-01-09 Nick Clifton <nickc@redhat.com>
1226
1227 * 2.36 release branch crated.
1228
1229 2021-01-08 H.J. Lu <hongjiu.lu@intel.com>
1230
1231 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set
1232 LAM_U57 when setting LAM_U48.
1233
1234 2021-01-08 H.J. Lu <hongjiu.lu@intel.com>
1235
1236 PR ld/26256
1237 PR ld/27160
1238 * elflink.c (elf_fixup_link_order): Verify that fixing up
1239 SHF_LINK_ORDER doesn't increase the output section size.
1240
1241 2021-01-09 Alan Modra <amodra@gmail.com>
1242
1243 * configure: Regenerate.
1244
1245 2021-01-07 Samuel Thibault <samuel.thibault@gnu.org>
1246
1247 * configure: Regenerate.
1248
1249 2021-01-07 H.J. Lu <hongjiu.lu@intel.com>
1250
1251 PR 27109
1252 * aix386-core.c (core_aix386_vec): Initialize
1253 keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS.
1254 * aout-target.h (MY (vec)): Likewise.
1255 * binary.c (binary_vec): Likewise.
1256 * cisco-core.c (core_cisco_be_vec): Likewise.
1257 (core_cisco_le_vec): Likewise.
1258 * coff-alpha.c (alpha_ecoff_le_vec): Likewise.
1259 * coff-i386.c (TARGET_SYM): Likewise.
1260 (TARGET_SYM_BIG): Likewise.
1261 * coff-ia64.c (TARGET_SYM): Likewise.
1262 * coff-mips.c (mips_ecoff_le_vec): Likewise.
1263 (mips_ecoff_be_vec): Likewise.
1264 (mips_ecoff_bele_vec): Likewise.
1265 * coff-rs6000.c (rs6000_xcoff_vec): Likewise.
1266 (powerpc_xcoff_vec): Likewise.
1267 * coff-sh.c (sh_coff_small_vec): Likewise.
1268 (sh_coff_small_le_vec): Likewise.
1269 * coff-tic30.c (tic30_coff_vec): Likewise.
1270 * coff-tic54x.c (tic54x_coff0_vec): Likewise.
1271 (tic54x_coff0_beh_vec): Likewise.
1272 (tic54x_coff1_vec): Likewise.
1273 (tic54x_coff1_beh_vec): Likewise.
1274 (tic54x_coff2_vec): Likewise.
1275 (tic54x_coff2_beh_vec): Likewise.
1276 * coff-x86_64.c (TARGET_SYM): Likewise.
1277 (TARGET_SYM_BIG): Likewise.
1278 * coff64-rs6000.c (rs6000_xcoff64_vec): Likewise.
1279 (rs6000_xcoff64_aix_vec): Likewise.
1280 * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise.
1281 (CREATE_BIGHDR_COFF_TARGET_VEC): Likewise.
1282 (CREATE_LITTLE_COFF_TARGET_VEC): Likewise.
1283 * elfxx-target.h (TARGET_BIG_SYM): Likewise.
1284 (TARGET_LITTLE_SYM): Likewise.
1285 * hppabsd-core.c (core_hppabsd_vec): Likewise.
1286 * hpux-core.c (core_hpux_vec): Likewise.
1287 * i386msdos.c (i386_msdos_vec): Likewise.
1288 * ihex.c (ihex_vec): Likewise.
1289 * irix-core.c (core_irix_vec): Likewise.
1290 * mach-o-target.c (TARGET_NAME): Likewise.
1291 * mmo.c (mmix_mmo_vec): Likewise.
1292 * netbsd-core.c (core_netbsd_vec): Likewise.
1293 * osf-core.c (core_osf_vec): Likewise.
1294 * pdp11.c (MY (vec)): Likewise.
1295 * pef.c (pef_vec): Likewise.
1296 (pef_xlib_vec): Likewise.
1297 * plugin.c (plugin_vec): Likewise.
1298 * ppcboot.c (powerpc_boot_vec): Likewise.
1299 * ptrace-core.c (core_ptrace_vec): Likewise.
1300 * sco5-core.c (core_sco5_vec): Likewise.
1301 * som.c (hppa_som_vec): Likewise.
1302 * srec.c (srec_vec): Likewise.
1303 (symbolsrec_vec): Likewise.
1304 * tekhex.c (tekhex_vec): Likewise.
1305 * trad-core.c (core_trad_vec): Likewise.
1306 * verilog.c (verilog_vec): Likewise.
1307 * vms-alpha.c (alpha_vms_vec): Likewise.
1308 * vms-lib.c (alpha_vms_lib_txt_vec): Likewise.
1309 * wasm-module.c (wasm_vec): Likewise.
1310 * xsym.c (sym_vec): Likewise.
1311 * elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED
1312 isn't set.
1313 (elf_map_symbols): Don't include ignored section symbols.
1314 * elfcode.h (elf_slurp_symbol_table): Also set
1315 BSF_SECTION_SYM_USED on STT_SECTION symbols.
1316 * elflink.c (bfd_elf_final_link): Generated section symbols only
1317 when emitting relocations or reqired.
1318 * elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
1319 * syms.c (BSF_SECTION_SYM_USED): New.
1320 * targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
1321 (bfd_target): Add keep_unused_section_symbols.
1322 (bfd_keep_unused_section_symbols): New.
1323 * bfd-in2.h: Regenerated.
1324
1325 2021-01-07 Nick Clifton <nickc@redhat.com>
1326
1327 PR 25713
1328 * bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to
1329 absolute paths and check to see if they are longer than MAX_PATH.
1330
1331 2021-01-07 Philipp Tomsich <prt@gnu.org>
1332
1333 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause.
1334
1335 2021-01-07 Claire Xenia Wolf <claire@symbioticeda.com>
1336 Jim Wilson <jimw@sifive.com>
1337 Andrew Waterman <andrew@sifive.com>
1338 Maxim Blinov <maxim.blinov@embecosm.com>
1339 Kito Cheng <kito.cheng@sifive.com>
1340 Nelson Chu <nelson.chu@sifive.com>
1341
1342 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc.
1343
1344 2021-01-06 H.J. Lu <hongjiu.lu@intel.com>
1345
1346 * elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect.
1347 (bfinfdpic_check_relocs): Likewise.
1348
1349 2021-01-06 Alan Modra <amodra@gmail.com>
1350
1351 * elf32-score.c (s3_bfd_score_info_to_howto): Report an error
1352 on unknown r_type.
1353 * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
1354
1355 2021-01-06 Alan Modra <amodra@gmail.com>
1356
1357 * config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec.
1358 (sparc64-*-solaris2*): Add sparc_elf64_vec and
1359 sparc_elf32_vec.
1360
1361 2021-01-06 Marcus Comstedt <marcus@mc.pp.se>
1362
1363 * config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and
1364 riscvbe*-*-*. Also added riscv_elf[32|64]_be_vec.
1365 * configure.ac: Handle riscv_elf[32|64]_be_vec.
1366 * configure: Regenerate.
1367 * elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for
1368 riscv_is_insn_reloc.
1369 (riscv_get_insn): RISC-V instructions are always little endian, but
1370 bfd_get may be used for big-endian, so add new riscv_get_insn to handle
1371 the insturctions.
1372 (riscv_put_insn): Likewsie.
1373 (riscv_is_insn_reloc): Check if we are relocaing an instruction.
1374 (perform_relocation): Call riscv_is_insn_reloc to decide if we should
1375 use riscv_[get|put]_insn or bfd_[get|put].
1376 (riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32
1377 or bfd_[get|put]l16 for code.
1378 (riscv_elf_relocate_section): Likewise.
1379 (riscv_elf_finish_dynamic_symbol): Likewise.
1380 (riscv_elf_finish_dynamic_sections): Likewise.
1381 (_bfd_riscv_relax_call): Likewise.
1382 (_bfd_riscv_relax_lui): Likewise.
1383 (_bfd_riscv_relax_align): Likewise.
1384 (_bfd_riscv_relax_pc): Likewise.
1385 (riscv_elf_object_p): Handled for big endian.
1386 (TARGET_BIG_SYM, TARGET_BIG_NAME): Defined.
1387 * targets.c: Add riscv_elf[32|64]_be_vec.
1388 (_bfd_target_vector): Likewise.
1389
1390 2021-01-05 Alan Modra <amodra@gmail.com>
1391
1392 * elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export
1393 for relocatable executable.
1394
1395 2021-01-05 Alan Modra <amodra@gmail.com>
1396
1397 * vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check.
1398
1399 2021-01-05 Nelson Chu <nelson.chu@sifive.com>
1400
1401 * elfnn-riscv.c (allocate_dynrelocs): When we are generating pde,
1402 make sure gp symbol is output as a dynamic symbol.
1403
1404 2021-01-04 H.J. Lu <hongjiu.lu@intel.com>
1405
1406 PR ld/26256
1407 * elflink.c (compare_link_order): Place unordered sections before
1408 ordered sections.
1409 (elf_fixup_link_order): Add a link info argument. Allow mixed
1410 ordered and unordered input sections for non-relocatable link.
1411 Sort the consecutive bfd_indirect_link_order sections with the
1412 same pattern. Change the offsets of the bfd_indirect_link_order
1413 sections only.
1414 (bfd_elf_final_link): Pass info to elf_fixup_link_order.
1415 * section.c (bfd_section): Add pattern.
1416 (BFD_FAKE_SECTION): Initialize pattern to NULL.
1417 * bfd-in2.h: Regenerated.
1418
1419 2021-01-04 Alexander Fedotov <alfedotov@gmail.com>
1420
1421 * elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value
1422 of private flags with 0x.
1423 * elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise.
1424
1425 2021-01-04 Alan Modra <amodra@gmail.com>
1426
1427 PR 26822
1428 * elflink.c (elf_link_input_bfd): Use the file base name in
1429 linker generated STT_FILE symbols.
1430
1431 2021-01-04 Nelson Chu <nelson.chu@sifive.com>
1432
1433 * elfxx-riscv.c (riscv_compare_subsets): Removed static.
1434 * elfxx-riscv.h: Add declaration.
1435 * elfnn-riscv.c (riscv_merge_multi_letter_ext): Use
1436 riscv_compare_subsets to check the orders.
1437 (riscv_skip_prefix): Removed.
1438 (riscv_prefix_cmp): Removed.
1439
1440 2021-01-04 Alan Modra <amodra@gmail.com>
1441
1442 PR 26741
1443 * elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after
1444 calculating subset version length.
1445
1446 2021-01-01 Nicolas Boulenguez <nicolas@debian.org>
1447
1448 * xcofflink.c: Correct spelling in comments.
1449
1450 2021-01-01 Alan Modra <amodra@gmail.com>
1451
1452 Update year range in copyright notice of all files.
1453
1454 For older changes see ChangeLog-2020
1455 \f
1456 Copyright (C) 2021 Free Software Foundation, Inc.
1457
1458 Copying and distribution of this file, with or without modification,
1459 are permitted in any medium without royalty provided the copyright
1460 notice and this notice are preserved.
1461
1462 Local Variables:
1463 mode: change-log
1464 left-margin: 8
1465 fill-column: 74
1466 version-control: never
1467 End: