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