PR25444, Floating point exception in _bfd_elf_compute_section_file_positions
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2020-01-23 Alan Modra <amodra@gmail.com>
2
3 PR 25444
4 * elf.c (assign_file_positions_for_load_sections): Avoid divide
5 by zero when p_align is zero.
6
7 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
8
9 * bfd/elfnn-riscv.c (riscv_skip_prefix): New.
10 (riscv_prefix_cmp): Likewise.
11 (riscv_non_std_ext_p): Deleted.
12 (riscv_std_sv_ext_p): Likewise.
13 (riscv_non_std_sv_ext_p): Likewise.
14 (riscv_merge_non_std_and_sv_ext): Rename to...
15 (riscv_merge_multi_letter_ext): and modified to use riscv_prefix_cmp.
16 (riscv_merge_arch_attr_info): Replace 3 calls to
17 riscv_merge_non_std_and_sv_ext with single call to
18 riscv_merge_multi_letter_ext.
19 * bfd/elfxx-riscv.c (riscv_parse_std_ext): Break if we
20 encounter a 'z' prefix.
21 (riscv_get_prefix_class): New function, return prefix class based
22 on first few characters of input string.
23 (riscv_parse_config): New structure to factor out minor differences
24 in extension class parsing behaviour.
25 (riscv_parse_sv_or_non_std_ext): Rename to...
26 (riscv_parse_prefixed_ext): and parameterise with
27 riscv_parse_config.
28 (riscv_std_z_ext_strtab, riscv_std_s_ext_strtab): New.
29 (riscv_multi_letter_ext_valid_p): New.
30 (riscv_ext_x_valid_p, riscv_ext_z_valid_p, riscv_ext_s_valid_p): New.
31 (riscv_parse_subset): Delegate all non-single-letter parsing work
32 to riscv_parse_prefixed_ext.
33 * bfd/elfxx-riscv.h (riscv_isa_ext_class): New type.
34 (riscv_get_prefix_class): Declare.
35
36 2020-01-22 Alan Modra <amodra@gmail.com>
37
38 * elf64-ppc.c (struct ppc_link_hash_table): Add tga_group.
39 (ppc64_elf_archive_symbol_lookup): Extract __tls_get_addr_opt for
40 __tls_get_addr_desc.
41 (ppc64_elf_size_stubs): Add section for linker generated
42 __tls_get_addr_desc wrapper function. Loop at least once if
43 generating this function.
44 (emit_tga_desc, emit_tga_desc_eh_frame): New functions.
45 (ppc64_elf_build_stubs): Generate __tls_get_addr_desc.
46
47 2020-01-22 Alan Modra <amodra@gmail.com>
48
49 * elf64-ppc.h (struct ppc64_elf_params): Add no_tls_get_addr_regsave.
50 * elf64-ppc.c (struct ppc_link_hash_table): Add tga_desc and
51 tga_desc_fd.
52 (is_tls_get_addr): Match tga_desc and tga_desc_df too.
53 (STDU_R1_0R1, ADDI_R1_R1): Define.
54 (tls_get_addr_prologue, tls_get_addr_epilogue): New functions.
55 (ppc64_elf_tls_setup): Set up tga_desc and tga_desc_fd. Indirect
56 tga_desc_fd to opt_fd, and tga_desc to opt. Set
57 no_tls_get_addr_regsave.
58 (branch_reloc_hash_match): Add hash3 and hash4.
59 (ppc64_elf_tls_optimize): Handle tga_desc_fd and tga_desc too.
60 (ppc64_elf_size_dynamic_sections): Likewise.
61 (ppc64_elf_relocate_section): Likewise.
62 (plt_stub_size, build_plt_stub): Likewise. Size regsave
63 __tls_get_addr stub.
64 (build_tls_get_addr_stub): Build regsave __tls_get_addr stub and
65 eh_frame.
66 (ppc_size_one_stub): Handle tga_desc_fd and tga_desc too. Size
67 eh_frame for regsave __tls_get_addr.
68
69 2020-01-22 Alan Modra <amodra@gmail.com>
70
71 * elf64-ppc.c (ppc64_elf_size_stubs): Correct condition under
72 which __tls_get_addr calls will be eliminated.
73
74 2020-01-20 Nick Clifton <nickc@redhat.com>
75
76 * po/pt.po: Updates Portuguese translation.
77 * po/ru.po: Updated Russian translation.
78 * po/uk.po: Updated Ukranian translation.
79
80 2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
81
82 PR ld/25416
83 * elf64-x86-64.c (elf_x86_64_check_tls_transition): Support
84 "rex leal x@tlsdesc(%rip), %reg" and "call *x@tlsdesc(%eax)" in
85 X32 mode.
86 (elf_x86_64_relocate_section): In x32 mode, for GDesc -> LE
87 transition, relax "rex leal x@tlsdesc(%rip), %reg" to
88 "rex movl $x@tpoff, %reg", for GDesc -> IE transition, relax
89 "rex leal x@tlsdesc(%rip), %reg" to
90 "rex movl x@gottpoff(%rip), %eax". For both transitions, relax
91 "call *(%eax)" to "nopl (%rax)".
92
93 2020-01-20 Alan Modra <amodra@gmail.com>
94
95 * elf64-ppc.c (LD_R11_0R3, CMPDI_R11_0, STD_R11_0R1, LD_R11_0R1),
96 (MTLR_R11): Don't define.
97 (LD_R0_0R3, CMPDI_R0_0): Define.
98 (build_tls_get_addr_stub): Don't use r11 in stub.
99
100 2020-01-20 Alan Modra <amodra@gmail.com>
101
102 * elf64-ppc.c (ppc_elf_hash_entry): New function, use throughout file.
103 (defined_sym_val, is_tls_get_addr): Likewise.
104
105 2020-01-18 Nick Clifton <nickc@redhat.com>
106
107 * version.m4 (BFD_VERSION): Set to 2.34.50.
108 * configure: Regenerate.
109 * po/bfd.pot: Regenerate.
110
111 2020-01-18 Nick Clifton <nickc@redhat.com>
112
113 Binutils 2.34 branch created.
114
115 2020-01-17 Christian Biesinger <cbiesinger@google.com>
116
117 * coff-arm.c: Fix spelling error (seperate).
118 * elfxx-riscv.c (riscv_parse_sv_or_non_std_ext): Fix spelling
119 error (seperate).
120 * sysdep.h (strnlen): Fix spelling error (seperate).
121
122 2020-01-15 Lars Brinkhoff <lars@nocrew.org>
123
124 PR 20694
125 * pdp11.c (TARGET_PAGE_SIZE): Set to 8192.
126
127 2020-01-15 Alan Modra <amodra@gmail.com>
128
129 PR 25384
130 * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Update comment.
131 (ppc64_elf_adjust_dynamic_symbol): Don't allow .dynbss copies
132 of function symbols unless dot symbols are present. Do warn
133 whenever one is created, regardles of whether a PLT entry is
134 also emitted for the function symbol.
135
136 2020-01-14 Alan Modra <amodra@gmail.com>
137
138 * som.c (som_bfd_count_ar_symbols): Error when file position
139 of symbols on chains is not strictly increasing.
140
141 2020-01-14 Alan Modra <amodra@gmail.com>
142
143 * vms.h (VMS_DEBUG): Define as 0.
144 * vms-alpha.c (image_write): Move debug output after bounds check.
145 Tidy bounds check.
146 (_bfd_vms_slurp_eihd): Warning fix.
147 (_bfd_vms_slurp_etir): Init variables to avoid bogus warnings.
148
149 2020-01-13 Alan Modra <amodra@gmail.com>
150
151 * vms-alpha.c (_bfd_vms_slurp_egsd): Ensure minimum size even
152 for "ignored" records.
153
154 2020-01-13 Alan Modra <amodra@gmail.com>
155
156 * wasm-module.c (wasm_scan_name_function_section): Formatting.
157 Delete asect name check. Move asect NULL check to wasm_object_p.
158 Correct bounds check of sizes against end. Replace uses of
159 bfd_zalloc with bfd_alloc, zeroing only necessary bytes. Use
160 just one bfd_release.
161 (wasm_scan): Don't use malloc/strdup for section names,
162 bfd_alloc instead. Simplify code prefixing section name.
163 Formatting. Don't attempt to free memory here..
164 (wasm_object_p): ..do so here.
165
166 2020-01-10 Szabolcs Nagy <szabolcs.nagy@arm.com>
167
168 PR ld/22269
169 * elf32-arm.c (elf32_arm_final_link_relocate): Use
170 UNDEFWEAK_NO_DYNAMIC_RELOC.
171 (allocate_dynrelocs_for_symbol): Likewise.
172
173 2020-01-10 Tamar Christina <tamar.christina@arm.com>
174
175 PR 25210
176 * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Remove elfclass.
177
178 2020-01-10 Alan Modra <amodra@gmail.com>
179
180 * coff-alpha.c (alpha_ecoff_object_p): Calculate size in bfd_size_type.
181
182 2020-01-09 Nick Clifton <nickc@redhat.com>
183
184 PR 25221
185 * bfd.c (bfd_convert_section_contents): Check for a compress
186 header size that is larger than the actual section size.
187
188 2020-01-08 Alan Modra <amodra@gmail.com>
189
190 PR 25351
191 * elflink.c (bfd_elf_final_link): Call _bfd_fix_excluded_sec_syms
192 after removing sections.
193
194 2020-01-06 Jim Wilson <jimw@sifive.com>
195
196 PR 25205
197 * elfnn-riscv.c (riscv_elf_relocate_section) <R_RISCV_CALL>: Add
198 check for !bfd_link_pic (info).
199 <R_RISCV_CALL_PLT>: Move next to R_RISCV_CALL.
200 <R_RISCV_JAL>: Add comment.
201 (_bfd_riscv_relax_section): For plt.offset check, add check for
202 bfd_link_pic (info). Add comment.
203
204 2020-01-06 Alan Modra <amodra@gmail.com>
205
206 * format.c (bfd_check_format_matches): Ignore bfd_error on target
207 match failures. Don't init to bfd_error_wrong_format before
208 calling _bfd_check_format.
209
210 2020-01-06 Alan Modra <amodra@gmail.com>
211
212 * vms-alpha.c (_bfd_vms_push, _bfd_vms_pop): Return pass/fail
213 status rather than exiting on stack overflow or underflow.
214 (_bfd_vms_slurp_etir): Adjust to suit.
215
216 2020-01-06 Alan Modra <amodra@gmail.com>
217
218 * som.c (som_bfd_fill_in_ar_symbols): Bounds check som_dict index.
219
220 2020-01-06 Alan Modra <amodra@gmail.com>
221
222 * mach-o.c (bfd_mach_o_read_dylinker): Don't read past end of
223 command. Check name offset is within command.
224 (bfd_mach_o_read_dylib, bfd_mach_o_read_prebound_dylib),
225 (bfd_mach_o_read_prebind_cksum, bfd_mach_o_read_twolevel_hints),
226 (bfd_mach_o_read_fvmlib, bfd_mach_o_read_dysymtab),
227 (bfd_mach_o_read_symtab, bfd_mach_o_read_uuid),
228 (bfd_mach_o_read_linkedit, bfd_mach_o_read_str),
229 (bfd_mach_o_read_dyld_info, bfd_mach_o_read_version_min),
230 (bfd_mach_o_read_encryption_info, bfd_mach_o_read_source_version),
231 (bfd_mach_o_read_encryption_info_64, bfd_mach_o_read_main),
232 (bfd_mach_o_read_note, bfd_mach_o_read_build_version),
233 (bfd_mach_o_read_segment): Similarly.
234 (bfd_mach_o_read_thread): Properly bound check thread struct.
235 Don't repeat checks on second loop.
236 (bfd_mach_o_read_command): Fail on invalid command length.
237
238 2020-01-04 Alan Modra <amodra@gmail.com>
239
240 * format.c (bfd_check_format_matches): Add preserve_match.
241 Save initial bfd state in "preserve", matched bfd state in
242 "preserve_match". Save just the first match. Release
243 bfd_alloc memory. Restore and finish preserved state as
244 appropriate on all function exit paths.
245
246 2020-01-04 Alan Modra <amodra@gmail.com>
247
248 * mmo.c (mmo_mkobject): Allocate tdata with bfd_zalloc.
249
250 2020-01-04 Alan Modra <amodra@gmail.com>
251
252 * coffgen.c (coff_real_object_p): Free malloc'd memory on target
253 match too.
254
255 2020-01-03 Nick Clifton <nickc@redhat.com>
256
257 PR 25307
258 (bfd_pef_parse_function_stubs): Correct the test that ensures that
259 there is enough data remaining in the code buffer before
260 attempting to read a function stub.
261
262 2020-01-03 Nick Clifton <nickc@redhat.com>
263
264 PR 25308
265 * elf-properties.c (_bfd_elf_convert_gnu_properties): Check the
266 return value from bfd_malloc.
267 * elf32-arm.c (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
268 (bfd_elf32_arm_stm32l4xx_fix_veneer_locations): Likewise.
269 (elf32_arm_filter_cmse_symbols): Likewise.
270 (elf32_arm_write_section): Likewise.
271 * mach-o.c (bfd_mach_o_core_fetch_environment): Likewise.
272 (bfd_mach_o_follow_dsym): Likewise.
273 * pef.c (bfd_pef_print_loader_section): Likewise.
274 (bfd_pef_scan_start_address): Likewise.
275 (bfd_pef_parse_function_stubs): Likewise.
276 (bfd_pef_parse_symbols): Likewise.
277
278 2020-01-03 Sergei Trofimovich <siarheit@google.com>
279
280 * elfnn-ia64.c (elfNN_ia64_merge_private_bfd_data): don't fail
281 on binary inputs ld/PR25316.
282 (is_ia64_elf): new helper to filter on ia64 objects.
283
284 2020-01-03 Jan Beulich <jbeulich@suse.com>
285
286 * mach-o.c (cpusubtype, bfd_mach_o_header_p): Insert underscore
287 in parameter names.
288 (bfd_mach_o_scan): Insert underscore in two variable names.
289
290 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
291
292 * Makefile.am: Add z80-elf target support.
293 * configure.ac: Likewise.
294 * targets.c: Likewise.
295 * Makefile.in: Regenerate.
296 * configure: Regenerate.
297 * config.bfd: Add z80-elf target support and new arches: ez80 and
298 z180.
299 * elf32-z80.c: New file.
300 * archures.c: Add new z80 architectures: eZ80 and Z180.
301 * coffcode.h: Likewise.
302 * cpu-z80.c: Likewise.
303 * coff-z80.c: Add new relocations for Z80 target and local label
304 check.
305 * reloc.c: Add new relocs.
306 * bfd-in2.h: Regenerate.
307 * libbfd.h: Regenerate.
308
309 2020-01-02 Tamar Christina <tamar.christina@arm.com>
310
311 PR 25210
312 PR 24753
313 * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Set ELF class.
314
315 2020-01-01 Alan Modra <amodra@gmail.com>
316
317 Update year range in copyright notice of all files.
318
319 For older changes see ChangeLog-2019
320 \f
321 Copyright (C) 2020 Free Software Foundation, Inc.
322
323 Copying and distribution of this file, with or without modification,
324 are permitted in any medium without royalty provided the copyright
325 notice and this notice are preserved.
326
327 Local Variables:
328 mode: change-log
329 left-margin: 8
330 fill-column: 74
331 version-control: never
332 End:
This page took 0.036491 seconds and 5 git commands to generate.