3 * dis-asm.h (struct disassemble_info): Delete insn_sets.
4 (INIT_DISASSEMBLE_INFO_NO_ARCH): Don't define.
8 * opcode/aarch64.h (AARCH64_FEATURE_CRYPTO): Expand to the
9 combination of AES and SHA2.
13 * coff/ti.h (GET_SCNHDR_SIZE, PUT_SCNHDR_SIZE, GET_SCN_SCNLEN),
14 (PUT_SCN_SCNLEN): Adjust bfd_octets_per_byte calls.
18 * opcode/arm.h (ARM_EXT2_CRC): New extension feature
19 to replace CRC_EXT_ARMV8.
20 (CRC_EXT_ARMV8): Remove and mark bit as unused.
21 (ARM_ARCH_V8A_CRC, ARM_ARCH_V8_1A, ARM_ARCH_V8_2A,
22 ARM_ARCH_V8_3A, ARM_ARCH_V8_4A, ARM_ARCH_V8_5A,
23 ARM_ARCH_V8_6A): Redefine using ARM_EXT2_CRC instead of
28 * dwarf2.h (DW_CIE_VERSION): Delete.
32 * opcode/arm.h (ARM_EXT2_I8MM): New feature macro.
36 * opcode/aarch64.h (AARCH64_FEATURE_I8MM): New.
37 (AARCH64_FEATURE_F32MM): New.
38 (AARCH64_FEATURE_F64MM): New.
39 (AARCH64_OPND_SVE_ADDR_RI_S4x32): New.
40 (enum aarch64_insn_class): Add new instruction class "aarch64_misc" for
41 instructions that do not require special handling.
46 * opcode/arm.h (ARM_EXT2_V8_6A, ARM_AEXT2_V8_6A,
48 * opcode/arm.h (ARM_EXT2_BF16): New feature macro.
49 (ARM_AEXT2_V8_6A): Include above macro in definition.
54 * opcode/aarch64.h (AARCH64_FEATURE_BFLOAT16): New feature macros.
55 (AARCH64_ARCH_V8_6): Include BFloat16 feature macros.
56 (enum aarch64_opnd_qualifier): Introduce new operand qualifier
57 AARCH64_OPND_QLF_S_2H.
58 (enum aarch64_insn_class): Introduce new class "bfloat16".
59 (BFLOAT16_SVE_INSNC): New feature set for bfloat16
60 instructions to support the movprfx constraint.
65 * opcode/aarch64.h (AARCH64_FEATURE_V8_6): New.
66 (AARCH64_ARCH_V8_6): New.
70 * elf/cr16c.h: Delete.
74 * coff/internal.h (struct internal_extra_pe_filehdr): Use ints
75 instead of longs to hold dos_message.
80 * elf/internal.h (struct elf_segment_map): Delete header_size.
81 Add no_sort_lma and idx.
86 * bfdlink.h (struct bfd_link_info <big_endian>): New field.
90 * elf/msp430.h: Add enums for MSPABI and GNU object attribute tag
95 * ctf-api.h (ctf_cuname_set): Can now fail, returning int.
96 (ctf_parent_name_set): Likewise.
100 * ctf-api.h (ECTF_NONREPRESENTABLE): New.
104 * ctf-api.h: Note the instability of the ctf_link interfaces.
108 * bfdlink.h (elf_strtab_hash): New forward.
109 (elf_sym_strtab): Likewise.
110 (struct bfd_link_callbacks <examine_strtab>): New.
111 (struct bfd_link_callbacks <emit_ctf>): Likewise.
115 * ctf-api.h (includes): No longer include <sys/param.h>.
119 * ctf-api.h (ctf_link_add_cu_mapping): New.
120 (ctf_link_memb_name_changer_f): New.
121 (ctf_link_set_memb_name_changer): New.
125 * ctf-api.h (ECTF_INTERNAL): New.
129 * ctf-api.h (struct ctf_link_sym): New, a symbol in flight to the
130 libctf linking machinery.
131 (CTF_LINK_SHARE_UNCONFLICTED): New.
132 (CTF_LINK_SHARE_DUPLICATED): New.
133 (ECTF_LINKADDEDLATE): New, replacing ECTF_UNUSED.
134 (ECTF_NOTYET): New, a 'not yet implemented' message.
135 (ctf_link_add_ctf): New, add an input file's CTF to the link.
136 (ctf_link): New, merge the type and string sections.
137 (ctf_link_strtab_string_f): New, callback for feeding strtab info.
138 (ctf_link_iter_symbol_f): New, callback for feeding symtab info.
139 (ctf_link_add_strtab): New, tell the CTF linker about the ELF
141 (ctf_link_shuffle_syms): New, ask the CTF linker to shuffle its
142 symbols into symtab order.
143 (ctf_link_write): New, ask the CTF linker to write the CTF out.
147 * ctf-api.h (ctf_arc_write_fd): New.
148 (ctf_write_mem): Likewise.
149 (ctf_gzwrite): Spacing fix.
153 * ctf.h (CTF_SET_STID): New.
157 * ctf-api.h (ctf_type_all_f): New.
158 (ctf_type_iter_all): New.
162 * ctf.h: Add object index and function index sections. Describe
163 them. Improve the description of the variable section and clarify
164 the constraints on backward-pointing type nodes.
165 (ctf_header): Add cth_objtidxoff, cth_funcidxoff.
169 * ctf-api.h (ctf_cuname): New function.
170 (ctf_cuname_set): Likewise.
171 * ctf.h: Improve comment around upgrading, no longer
172 implying that v2 is the target of upgrades (it is v3 now).
173 (ctf_header_v2_t): New, old-format header for backward
175 (ctf_header_t): Add cth_cuname: this is the first of several
176 header changes in format v3.
180 * bfdlink.h (struct bfd_section_already_linked): Forward declare.
181 (bfd_section_already_linked_table_init),
182 (bfd_section_already_linked_table_free),
183 (_bfd_handle_already_linked, _bfd_nearby_section),
184 (_bfd_fix_excluded_sec_syms): Declare.
188 * bfdlink.h (enum notice_asneeded_action): Define.
192 * opcode/riscv.h (riscv_insn_class): New enum.
193 * opcode/riscv.h (struct riscv_opcode): Change
194 subset field to insn_class field.
198 binutils 2.33 branch created.
202 * opcode/arc.h (FASTMATH): Move it from insn_class_t to
203 insn_subclass_t enum.
207 * elf/arm.h (ARM_GET_SYM_CMSE_SPCL, ARM_SET_SYM_CMSE_SPCL): Delete.
211 * elf/mips.h (SHT_GNU_XHASH): New define.
212 (DT_GNU_XHASH): New define.
216 * opcode/h8300.h (EXPAND_UNOP_EXTENDED_B): Add MODEL.
217 (EXPAND_UNOP_EXTENDED_W): Likewise.
218 (EXPAND_UNOP_EXTENDED_L): Likewise.
219 (struct h8_opcode h8_opcodes): Likewise.
220 (struct h8_opcode h8_opcodes): tas / ldm / stm supported H8S or
225 * opcode/arc.h (FASTMATH): Add.
230 * elf/internal.h (ELF_SECTION_IN_SEGMENT_1): Exclude non-alloc
231 sections in GNU_MBIND segments.
235 * coff/i386.h (IMAGE_FILE_MACHINE_NATIVE_APPLE_OVERRIDE): Define.
236 (IMAGE_FILE_MACHINE_NATIVE_FREEBSD_OVERRIDE): Define.
237 (IMAGE_FILE_MACHINE_NATIVE_LINUX_OVERRIDE): Define.
238 (IMAGE_FILE_MACHINE_NATIVE_NETBSD_OVERRIDE): Define.
239 (I386_APPLE_MAGIC): Define.
240 (I386_FREEBSD_MAGIC): Define.
241 (I386_LINUX_MAGIC): Define.
242 (I386_NETBSD_MAGIC): Define.
243 (I386BADMAG): Extend macro to allow new magic numbers.
244 * coff/x86_64.h (IMAGE_FILE_MACHINE_NATIVE_APPLE_OVERRIDE): Define.
245 (IMAGE_FILE_MACHINE_NATIVE_FREEBSD_OVERRIDE): Define.
246 (IMAGE_FILE_MACHINE_NATIVE_LINUX_OVERRIDE): Define.
247 (IMAGE_FILE_MACHINE_NATIVE_NETBSD_OVERRIDE): Define.
248 (AMD64_APPLE_MAGIC): Define.
249 (AMD64_FREEBSD_MAGIC): Define.
250 (AMD64_LINUX_MAGIC): Define.
251 (AMD64_NETBSD_MAGIC): Define.
252 (AMD64BADMAG): Extend macro to allow new magic numbers.
256 * elf/ppc64.h (R_PPC64_TPREL34, R_PPC64_DTPREL34),
257 (R_PPC64_GOT_TLSGD34, R_PPC64_GOT_TLSLD34),
258 (R_PPC64_GOT_TPREL34, R_PPC64_GOT_DTPREL34): Define.
259 (IS_PPC64_TLS_RELOC): Include new tls relocs.
263 * ctf-api.h (ECTF_NOTFUNC): Fix description.
264 (ctf_func_type_info): New.
265 (ctf_func_type_args): Likewise.
266 (ctf_type_aname_raw): Likewise.
270 * opcode/i386.h (POP_SEG386_SHORT): New.
274 * opcode/aarch64.h (enum aarch64_insn_class): sve_size_013
275 renamed to sve_size_13.
279 * ctf.h (ctf_slice_t): Make cts_offset and cts_bits unsigned
280 short, so following structures are properly aligned.
284 * elf/aarch64.h (R_AARCH64_P32_MOVW_PREL_G0): Define.
285 (R_AARCH64_P32_MOVW_PREL_G0_NC): Define.
286 (R_AARCH64_P32_MOVW_PREL_G1): Define.
290 * ctf.h (ctf_enum.cte_value): Fix type to int32_t.
294 * ctf-api.h (ctf_sect_t): Drop cts_type, cts_flags, and cts_offset.
295 (ctf_id_t): This is now an unsigned type.
296 (CTF_ERR): Cast it to ctf_id_t. Note that it should only be used
297 for ctf_id_t-returning functions.
301 * ctf-api.h (ctf_dump_decorate_f): New.
302 (ctf_dump_state_t): new.
307 * ctf-api.h (ctf_label_f): New.
308 (ctf_label_set): New.
309 (ctf_label_get): New.
310 (ctf_label_topmost): New.
311 (ctf_label_info): New.
312 (ctf_label_iter): New.
316 * ctf-api.h (ctf_version): New.
320 * ctf-api.h (ctf_func_info): New.
321 (ctf_func_args): Likewise.
322 (ctf_lookup_by_symbol): Likewise.
323 (ctf_lookup_by_symbol): Likewise.
324 (ctf_lookup_variable): Likewise.
328 * ctf-api.h (ctf_visit_f): New definition.
329 (ctf_member_f): Likewise.
330 (ctf_enum_f): Likewise.
331 (ctf_variable_f): Likewise.
332 (ctf_type_f): Likewise.
333 (ctf_type_isparent): Likewise.
334 (ctf_type_ischild): Likewise.
335 (ctf_type_resolve): Likewise.
336 (ctf_type_aname): Likewise.
337 (ctf_type_lname): Likewise.
338 (ctf_type_name): Likewise.
339 (ctf_type_sizee): Likewise.
340 (ctf_type_align): Likewise.
341 (ctf_type_kind): Likewise.
342 (ctf_type_reference): Likewise.
343 (ctf_type_pointer): Likewise.
344 (ctf_type_encoding): Likewise.
345 (ctf_type_visit): Likewise.
346 (ctf_type_cmp): Likewise.
347 (ctf_type_compat): Likewise.
348 (ctf_member_info): Likewise.
349 (ctf_array_info): Likewise.
350 (ctf_enum_name): Likewise.
351 (ctf_enum_value): Likewise.
352 (ctf_member_iter): Likewise.
353 (ctf_enum_iter): Likewise.
354 (ctf_type_iter): Likewise.
355 (ctf_variable_iter): Likewise.
359 * ctf-api.h (struct bfd): New forward.
361 (ctf_bfdopen): Likewise.
362 (ctf_open): Likewise.
363 (ctf_arc_open): Likewise.
367 * ctf.h (CTFA_MAGIC): New.
368 (struct ctf_archive): New.
369 (struct ctf_archive_modent): Likewise.
370 * ctf-api.h (ctf_archive_member_f): New.
371 (ctf_archive_raw_member_f): Likewise.
372 (ctf_arc_write): Likewise.
373 (ctf_arc_close): Likewise.
374 (ctf_arc_open_by_name): Likewise.
375 (ctf_archive_iter): Likewise.
376 (ctf_archive_raw_iter): Likewise.
377 (ctf_get_arc): Likewise.
381 * ctf-api.h (ctf_file_close): New declaration.
382 (ctf_getdatasect): Likewise.
383 (ctf_parent_file): Likewise.
384 (ctf_parent_name): Likewise.
385 (ctf_parent_name_set): Likewise.
386 (ctf_import): Likewise.
387 (ctf_setmodel): Likewise.
388 (ctf_getmodel): Likewise.
389 (ctf_setspecific): Likewise.
390 (ctf_getspecific): Likewise.
394 * ctf-api.h (zlib.h): New include.
396 (ctf_sect_names_t): Likewise.
397 (ctf_encoding_t): Likewise.
398 (ctf_membinfo_t): Likewise.
399 (ctf_arinfo_t): Likewise.
400 (ctf_funcinfo_t): Likewise.
401 (ctf_lblinfo_t): Likewise.
402 (ctf_snapshot_id_t): Likewise.
403 (CTF_FUNC_VARARG): Likewise.
404 (ctf_simple_open): Likewise.
405 (ctf_bufopen): Likewise.
406 (ctf_create): Likewise.
407 (ctf_add_array): Likewise.
408 (ctf_add_const): Likewise.
409 (ctf_add_enum_encoded): Likewise.
410 (ctf_add_enum): Likewise.
411 (ctf_add_float): Likewise.
412 (ctf_add_forward): Likewise.
413 (ctf_add_function): Likewise.
414 (ctf_add_integer): Likewise.
415 (ctf_add_slice): Likewise.
416 (ctf_add_pointer): Likewise.
417 (ctf_add_type): Likewise.
418 (ctf_add_typedef): Likewise.
419 (ctf_add_restrict): Likewise.
420 (ctf_add_struct): Likewise.
421 (ctf_add_union): Likewise.
422 (ctf_add_struct_sized): Likewise.
423 (ctf_add_union_sized): Likewise.
424 (ctf_add_volatile): Likewise.
425 (ctf_add_enumerator): Likewise.
426 (ctf_add_member): Likewise.
427 (ctf_add_member_offset): Likewise.
428 (ctf_add_member_encoded): Likewise.
429 (ctf_add_variable): Likewise.
430 (ctf_set_array): Likewise.
431 (ctf_update): Likewise.
432 (ctf_snapshot): Likewise.
433 (ctf_rollback): Likewise.
434 (ctf_discard): Likewise.
435 (ctf_write): Likewise.
436 (ctf_gzwrite): Likewise.
437 (ctf_compress_write): Likewise.
441 * ctf-api.h (ctf_errno): New declaration.
442 (ctf_errmsg): Likewise.
446 * ctf-api.h (ctf_setdebug): New.
447 (ctf_getdebug): Likewise.
451 * ctf-api.h: New file.
459 * elf/aarch64.h (DT_AARCH64_VARIANT_PCS): Define.
460 (STO_AARCH64_VARIANT_PCS): Define.
464 * elf/ppc64.h (R_PPC64_PLTSEQ_NOTOC, R_PPC64_PLTCALL_NOTOC),
465 (R_PPC64_PCREL_OPT, R_PPC64_D34, R_PPC64_D34_LO, R_PPC64_D34_HI30),
466 (R_PPC64_D34_HA30, R_PPC64_PCREL34, R_PPC64_GOT_PCREL34),
467 (R_PPC64_PLT_PCREL34, R_PPC64_PLT_PCREL34_NOTOC),
468 (R_PPC64_ADDR16_HIGHER34, R_PPC64_ADDR16_HIGHERA34),
469 (R_PPC64_ADDR16_HIGHEST34, R_PPC64_ADDR16_HIGHESTA34),
470 (R_PPC64_REL16_HIGHER34, R_PPC64_REL16_HIGHERA34),
471 (R_PPC64_REL16_HIGHEST34, R_PPC64_REL16_HIGHESTA34),
472 (R_PPC64_D28, R_PPC64_PCREL28): Define.
477 * dis-asm.h (WIDE_OUTPUT): Define.
478 * opcode/ppc.h (prefix_opcodes, prefix_num_opcodes): Declare.
479 (PPC_OPCODE_POWERXX, PPC_GET_PREFIX, PPC_GET_SUFFIX),
480 (PPC_PREFIX_P, PPC_PREFIX_SEG): Define.
484 * elf/bpf.h: New file.
488 * elf/arm.h (Tag_MVE_arch): Define new enum value.
489 * opcode/arm.h (FPU_MVE, FPU_MVE_FP): New MACROs for new features.
493 * opcode/aarch64.h (enum aarch64_opnd): New SVE_SHLIMM_UNPRED_22
498 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_tsz_bhs
503 * opcode/aarch64.h (enum aarch64_opnd): New SVE_Zm4_11_INDEX operand.
507 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_shift_tsz_bhsd
512 * opcode/aarch64.h (enum aarch64_opnd): New SVE_SHRIMM_UNPRED_22
514 (enum aarch64_insn_class): Add sve_shift_tsz_hsd iclass.
518 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_013 iclass.
522 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_bh iclass.
526 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_sd2 iclass.
530 * opcode/aarch64.h (enum aarch64_opnd): New SVE_ADDR_ZX operand.
534 * opcode/aarch64.h (enum aarch64_opnd): New SVE_Zm3_11_INDEX operand.
538 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_hsd2 iclass.
542 * opcode/aarch64.h (enum aarch64_opnd): New SVE_IMM_ROT3 operand.
546 * opcode/aarch64.h (AARCH64_FEATURE_SVE2
547 AARCH64_FEATURE_SVE2_AES, AARCH64_FEATURE_SVE2_BITPERM,
548 AARCH64_FEATURE_SVE2_SM4, AARCH64_FEATURE_SVE2_SHA3): New
554 * opcode/mips.h (ASE_EVA_R6): New macro.
555 (M_LLWPE_AB, M_SCWPE_AB): New enum values.
559 * opcode/aarch64.h (AARCH64_FEATURE_TME): New.
560 (enum aarch64_opnd): Add AARCH64_OPND_TME_UIMM16.
565 * opcode/mips.h (M_LLWP_AB, M_LLDP_AB): New enum values.
566 (M_SCWP_AB, M_SCDP_AB): Likewise.
570 * opcode/mips.h: Update comment for MIPS32 CODE20 operand.
574 * elf/arm.h (START_RELOC_NUMBERS): New entry for R_ARM_THM_BF12.
578 * elf/arm.h (START_RELOC_NUMBERS): New entry for R_ARM_THM_BF18.
582 * elf/arm.h (START_RELOC_NUMBERS): New entry for R_ARM_THM_BF16.
586 * elf/arm.h (TAG_CPU_ARCH_V8_1M_MAIN): new macro.
587 (MAX_TAG_CPU_ARCH): Set value to above macro.
588 * opcode/arm.h (ARM_EXT2_V8_1M_MAIN): New macro.
589 (ARM_AEXT_V8_1M_MAIN): Likewise.
590 (ARM_AEXT2_V8_1M_MAIN): Likewise.
591 (ARM_ARCH_V8_1M_MAIN): Likewise.
595 * opcode/aarch64.h (enum aarch64_opnd): Add AARCH64_OPND_Rt_SP.
599 * elf/common.h (GNU_PROPERTY_X86_ISA_1_AVX512_BF16): New.
606 * longlong.h [__arc__] (add_ssaaaa): Add cc clobber.
607 (sub_ddmmss): Likewise.
611 * bfdlink.h (bfd_link_info): Remove x86-specific linker options.
615 * opcode/arm.h (FPU_NEON_ARMV8_1): New.
616 (FPU_ARCH_NEON_VFP_ARMV8_1): Use FPU_NEON_ARMV8_1.
617 (FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_1): Likewise.
618 (FPU_ARCH_DOTPROD_NEON_VFP_ARMV8): Likewise.
619 (FPU_ARCH_NEON_VFP_ARMV8_2_FP16): New.
620 (FPU_ARCH_NEON_VFP_ARMV8_2_FP16FML): New.
621 (FPU_ARCH_NEON_VFP_ARMV8_4_FP16FML): New.
622 (FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_4): New.
627 * opcode/ppc.h (PPC_OPERAND_CR_REG): Comment.
631 * dis-asm.h (struct disassemble_info): Add stop_offset.
635 * elf/aarch64.h (DT_AARCH64_PAC_PLT): New.
640 * elf/aarch64.h (DT_AARCH64_BTI_PLT): New.
644 * elf/common.h (GNU_PROPERTY_AARCH64_FEATURE_1_AND): New.
645 (GNU_PROPERTY_AARCH64_FEATURE_1_BTI): New.
646 (GNU_PROPERTY_AARCH64_FEATURE_1_PAC): New.
650 * elf/common.h (NT_ARM_PAC_MASK): Add define.
654 * mach-o/loader.h: Use new OS names in comments.
658 * splay-tree.h (splay_tree_delete_key_fn): Update comment.
659 (splay_tree_delete_value_fn): Likewise.
663 * opcode/s390.h (enum s390_opcode_cpu_val): Add
669 * opcode/aarch64.h (enum aarch64_opnd): Remove
670 AARCH64_OPND_ADDR_SIMPLE_2.
671 (enum aarch64_insn_class): Remove ldstgv_indexed.
675 * coff/ecoff.h: Include coff/sym.h.
683 * elf/riscv.h (SHT_RISCV_ATTRIBUTES): Define.
684 (Tag_RISCV_arch): Likewise.
685 (Tag_RISCV_priv_spec): Likewise.
686 (Tag_RISCV_priv_spec_minor): Likewise.
687 (Tag_RISCV_priv_spec_revision): Likewise.
688 (Tag_RISCV_unaligned_access): Likewise.
689 (Tag_RISCV_stack_align): Likewise.
693 * dis-asm.h: include <string.h>
700 * demangle.h: Remove support for ancient GNU (pre-3.0), Lucid,
701 ARM, HP, and EDG demangling styles.
708 * libiberty.h: Mechanically replace "can not" with "cannot".
709 * plugin-api.h: Likewise.
713 * elf/rx.h (EF_RX_CPU_MASK): Update new bits.
714 (E_FLAG_RX_V3): New RXv3 type.
715 * opcode/rx.h (RX_Size): Add double size.
716 (RX_Operand_Type): Add double FPU registers.
717 (RX_Opcode_ID): Add new instuctions.
721 Update year range in copyright notice of all files.
723 For older changes see ChangeLog-2018
725 Copyright (C) 2019 Free Software Foundation, Inc.
727 Copying and distribution of this file, with or without modification,
728 are permitted in any medium without royalty provided the copyright
729 notice and this notice are preserved.
735 version-control: never