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