3 * opcode/crx.h (inst <match>): Make unsigned int.
7 * opcode/nds32.h (N32_BIT): Define using 1u.
8 (__SEXT): Use __MASK and N32_BIT.
9 (N32_IMMS): Remove duplicate mask.
13 * diagnostics.h (DIAGNOSTIC_IGNORE_UNUSED_FUNCTION). Remove
18 * opcode/mmix.h (PUSHGO_INSN_BYTE): Make unsigned.
19 (GO_INSN_BYTE, SETL_INSN_BYTE, INCML_INSN_BYTE, INCMH_INSN_BYTE),
20 (INCH_INSN_BYTE, SWYM_INSN_BYTE, JMP_INSN_BYTE): Likewise.
24 * dis-asm.h (INSN_HAS_RELOC, DISASSEMBLE_DATA),
25 (USER_SPECIFIED_MACHINE_TYPE, WIDE_OUTPUT): Make unsigned.
26 * opcode/tic80.h (TIC80_OPERAND_*): Likewise.
31 * dis-asm.h (disassemble_free_target): Declare.
35 * dis-asm.h (struct disassemble_info): Delete insn_sets.
36 (INIT_DISASSEMBLE_INFO_NO_ARCH): Don't define.
40 * opcode/aarch64.h (AARCH64_FEATURE_CRYPTO): Expand to the
41 combination of AES and SHA2.
45 * coff/ti.h (GET_SCNHDR_SIZE, PUT_SCNHDR_SIZE, GET_SCN_SCNLEN),
46 (PUT_SCN_SCNLEN): Adjust bfd_octets_per_byte calls.
50 * opcode/arm.h (ARM_EXT2_CRC): New extension feature
51 to replace CRC_EXT_ARMV8.
52 (CRC_EXT_ARMV8): Remove and mark bit as unused.
53 (ARM_ARCH_V8A_CRC, ARM_ARCH_V8_1A, ARM_ARCH_V8_2A,
54 ARM_ARCH_V8_3A, ARM_ARCH_V8_4A, ARM_ARCH_V8_5A,
55 ARM_ARCH_V8_6A): Redefine using ARM_EXT2_CRC instead of
60 * dwarf2.h (DW_CIE_VERSION): Delete.
64 * opcode/arm.h (ARM_EXT2_I8MM): New feature macro.
68 * opcode/aarch64.h (AARCH64_FEATURE_I8MM): New.
69 (AARCH64_FEATURE_F32MM): New.
70 (AARCH64_FEATURE_F64MM): New.
71 (AARCH64_OPND_SVE_ADDR_RI_S4x32): New.
72 (enum aarch64_insn_class): Add new instruction class "aarch64_misc" for
73 instructions that do not require special handling.
78 * opcode/arm.h (ARM_EXT2_V8_6A, ARM_AEXT2_V8_6A,
80 * opcode/arm.h (ARM_EXT2_BF16): New feature macro.
81 (ARM_AEXT2_V8_6A): Include above macro in definition.
86 * opcode/aarch64.h (AARCH64_FEATURE_BFLOAT16): New feature macros.
87 (AARCH64_ARCH_V8_6): Include BFloat16 feature macros.
88 (enum aarch64_opnd_qualifier): Introduce new operand qualifier
89 AARCH64_OPND_QLF_S_2H.
90 (enum aarch64_insn_class): Introduce new class "bfloat16".
91 (BFLOAT16_SVE_INSNC): New feature set for bfloat16
92 instructions to support the movprfx constraint.
97 * opcode/aarch64.h (AARCH64_FEATURE_V8_6): New.
98 (AARCH64_ARCH_V8_6): New.
102 * elf/cr16c.h: Delete.
106 * coff/internal.h (struct internal_extra_pe_filehdr): Use ints
107 instead of longs to hold dos_message.
112 * elf/internal.h (struct elf_segment_map): Delete header_size.
113 Add no_sort_lma and idx.
118 * bfdlink.h (struct bfd_link_info <big_endian>): New field.
122 * elf/msp430.h: Add enums for MSPABI and GNU object attribute tag
127 * ctf-api.h (ctf_cuname_set): Can now fail, returning int.
128 (ctf_parent_name_set): Likewise.
132 * ctf-api.h (ECTF_NONREPRESENTABLE): New.
136 * ctf-api.h: Note the instability of the ctf_link interfaces.
140 * bfdlink.h (elf_strtab_hash): New forward.
141 (elf_sym_strtab): Likewise.
142 (struct bfd_link_callbacks <examine_strtab>): New.
143 (struct bfd_link_callbacks <emit_ctf>): Likewise.
147 * ctf-api.h (includes): No longer include <sys/param.h>.
151 * ctf-api.h (ctf_link_add_cu_mapping): New.
152 (ctf_link_memb_name_changer_f): New.
153 (ctf_link_set_memb_name_changer): New.
157 * ctf-api.h (ECTF_INTERNAL): New.
161 * ctf-api.h (struct ctf_link_sym): New, a symbol in flight to the
162 libctf linking machinery.
163 (CTF_LINK_SHARE_UNCONFLICTED): New.
164 (CTF_LINK_SHARE_DUPLICATED): New.
165 (ECTF_LINKADDEDLATE): New, replacing ECTF_UNUSED.
166 (ECTF_NOTYET): New, a 'not yet implemented' message.
167 (ctf_link_add_ctf): New, add an input file's CTF to the link.
168 (ctf_link): New, merge the type and string sections.
169 (ctf_link_strtab_string_f): New, callback for feeding strtab info.
170 (ctf_link_iter_symbol_f): New, callback for feeding symtab info.
171 (ctf_link_add_strtab): New, tell the CTF linker about the ELF
173 (ctf_link_shuffle_syms): New, ask the CTF linker to shuffle its
174 symbols into symtab order.
175 (ctf_link_write): New, ask the CTF linker to write the CTF out.
179 * ctf-api.h (ctf_arc_write_fd): New.
180 (ctf_write_mem): Likewise.
181 (ctf_gzwrite): Spacing fix.
185 * ctf.h (CTF_SET_STID): New.
189 * ctf-api.h (ctf_type_all_f): New.
190 (ctf_type_iter_all): New.
194 * ctf.h: Add object index and function index sections. Describe
195 them. Improve the description of the variable section and clarify
196 the constraints on backward-pointing type nodes.
197 (ctf_header): Add cth_objtidxoff, cth_funcidxoff.
201 * ctf-api.h (ctf_cuname): New function.
202 (ctf_cuname_set): Likewise.
203 * ctf.h: Improve comment around upgrading, no longer
204 implying that v2 is the target of upgrades (it is v3 now).
205 (ctf_header_v2_t): New, old-format header for backward
207 (ctf_header_t): Add cth_cuname: this is the first of several
208 header changes in format v3.
212 * bfdlink.h (struct bfd_section_already_linked): Forward declare.
213 (bfd_section_already_linked_table_init),
214 (bfd_section_already_linked_table_free),
215 (_bfd_handle_already_linked, _bfd_nearby_section),
216 (_bfd_fix_excluded_sec_syms): Declare.
220 * bfdlink.h (enum notice_asneeded_action): Define.
224 * opcode/riscv.h (riscv_insn_class): New enum.
225 * opcode/riscv.h (struct riscv_opcode): Change
226 subset field to insn_class field.
230 binutils 2.33 branch created.
234 * opcode/arc.h (FASTMATH): Move it from insn_class_t to
235 insn_subclass_t enum.
239 * elf/arm.h (ARM_GET_SYM_CMSE_SPCL, ARM_SET_SYM_CMSE_SPCL): Delete.
243 * elf/mips.h (SHT_GNU_XHASH): New define.
244 (DT_GNU_XHASH): New define.
248 * opcode/h8300.h (EXPAND_UNOP_EXTENDED_B): Add MODEL.
249 (EXPAND_UNOP_EXTENDED_W): Likewise.
250 (EXPAND_UNOP_EXTENDED_L): Likewise.
251 (struct h8_opcode h8_opcodes): Likewise.
252 (struct h8_opcode h8_opcodes): tas / ldm / stm supported H8S or
257 * opcode/arc.h (FASTMATH): Add.
262 * elf/internal.h (ELF_SECTION_IN_SEGMENT_1): Exclude non-alloc
263 sections in GNU_MBIND segments.
267 * coff/i386.h (IMAGE_FILE_MACHINE_NATIVE_APPLE_OVERRIDE): Define.
268 (IMAGE_FILE_MACHINE_NATIVE_FREEBSD_OVERRIDE): Define.
269 (IMAGE_FILE_MACHINE_NATIVE_LINUX_OVERRIDE): Define.
270 (IMAGE_FILE_MACHINE_NATIVE_NETBSD_OVERRIDE): Define.
271 (I386_APPLE_MAGIC): Define.
272 (I386_FREEBSD_MAGIC): Define.
273 (I386_LINUX_MAGIC): Define.
274 (I386_NETBSD_MAGIC): Define.
275 (I386BADMAG): Extend macro to allow new magic numbers.
276 * coff/x86_64.h (IMAGE_FILE_MACHINE_NATIVE_APPLE_OVERRIDE): Define.
277 (IMAGE_FILE_MACHINE_NATIVE_FREEBSD_OVERRIDE): Define.
278 (IMAGE_FILE_MACHINE_NATIVE_LINUX_OVERRIDE): Define.
279 (IMAGE_FILE_MACHINE_NATIVE_NETBSD_OVERRIDE): Define.
280 (AMD64_APPLE_MAGIC): Define.
281 (AMD64_FREEBSD_MAGIC): Define.
282 (AMD64_LINUX_MAGIC): Define.
283 (AMD64_NETBSD_MAGIC): Define.
284 (AMD64BADMAG): Extend macro to allow new magic numbers.
288 * elf/ppc64.h (R_PPC64_TPREL34, R_PPC64_DTPREL34),
289 (R_PPC64_GOT_TLSGD34, R_PPC64_GOT_TLSLD34),
290 (R_PPC64_GOT_TPREL34, R_PPC64_GOT_DTPREL34): Define.
291 (IS_PPC64_TLS_RELOC): Include new tls relocs.
295 * ctf-api.h (ECTF_NOTFUNC): Fix description.
296 (ctf_func_type_info): New.
297 (ctf_func_type_args): Likewise.
298 (ctf_type_aname_raw): Likewise.
302 * opcode/i386.h (POP_SEG386_SHORT): New.
306 * opcode/aarch64.h (enum aarch64_insn_class): sve_size_013
307 renamed to sve_size_13.
311 * ctf.h (ctf_slice_t): Make cts_offset and cts_bits unsigned
312 short, so following structures are properly aligned.
316 * elf/aarch64.h (R_AARCH64_P32_MOVW_PREL_G0): Define.
317 (R_AARCH64_P32_MOVW_PREL_G0_NC): Define.
318 (R_AARCH64_P32_MOVW_PREL_G1): Define.
322 * ctf.h (ctf_enum.cte_value): Fix type to int32_t.
326 * ctf-api.h (ctf_sect_t): Drop cts_type, cts_flags, and cts_offset.
327 (ctf_id_t): This is now an unsigned type.
328 (CTF_ERR): Cast it to ctf_id_t. Note that it should only be used
329 for ctf_id_t-returning functions.
333 * ctf-api.h (ctf_dump_decorate_f): New.
334 (ctf_dump_state_t): new.
339 * ctf-api.h (ctf_label_f): New.
340 (ctf_label_set): New.
341 (ctf_label_get): New.
342 (ctf_label_topmost): New.
343 (ctf_label_info): New.
344 (ctf_label_iter): New.
348 * ctf-api.h (ctf_version): New.
352 * ctf-api.h (ctf_func_info): New.
353 (ctf_func_args): Likewise.
354 (ctf_lookup_by_symbol): Likewise.
355 (ctf_lookup_by_symbol): Likewise.
356 (ctf_lookup_variable): Likewise.
360 * ctf-api.h (ctf_visit_f): New definition.
361 (ctf_member_f): Likewise.
362 (ctf_enum_f): Likewise.
363 (ctf_variable_f): Likewise.
364 (ctf_type_f): Likewise.
365 (ctf_type_isparent): Likewise.
366 (ctf_type_ischild): Likewise.
367 (ctf_type_resolve): Likewise.
368 (ctf_type_aname): Likewise.
369 (ctf_type_lname): Likewise.
370 (ctf_type_name): Likewise.
371 (ctf_type_sizee): Likewise.
372 (ctf_type_align): Likewise.
373 (ctf_type_kind): Likewise.
374 (ctf_type_reference): Likewise.
375 (ctf_type_pointer): Likewise.
376 (ctf_type_encoding): Likewise.
377 (ctf_type_visit): Likewise.
378 (ctf_type_cmp): Likewise.
379 (ctf_type_compat): Likewise.
380 (ctf_member_info): Likewise.
381 (ctf_array_info): Likewise.
382 (ctf_enum_name): Likewise.
383 (ctf_enum_value): Likewise.
384 (ctf_member_iter): Likewise.
385 (ctf_enum_iter): Likewise.
386 (ctf_type_iter): Likewise.
387 (ctf_variable_iter): Likewise.
391 * ctf-api.h (struct bfd): New forward.
393 (ctf_bfdopen): Likewise.
394 (ctf_open): Likewise.
395 (ctf_arc_open): Likewise.
399 * ctf.h (CTFA_MAGIC): New.
400 (struct ctf_archive): New.
401 (struct ctf_archive_modent): Likewise.
402 * ctf-api.h (ctf_archive_member_f): New.
403 (ctf_archive_raw_member_f): Likewise.
404 (ctf_arc_write): Likewise.
405 (ctf_arc_close): Likewise.
406 (ctf_arc_open_by_name): Likewise.
407 (ctf_archive_iter): Likewise.
408 (ctf_archive_raw_iter): Likewise.
409 (ctf_get_arc): Likewise.
413 * ctf-api.h (ctf_file_close): New declaration.
414 (ctf_getdatasect): Likewise.
415 (ctf_parent_file): Likewise.
416 (ctf_parent_name): Likewise.
417 (ctf_parent_name_set): Likewise.
418 (ctf_import): Likewise.
419 (ctf_setmodel): Likewise.
420 (ctf_getmodel): Likewise.
421 (ctf_setspecific): Likewise.
422 (ctf_getspecific): Likewise.
426 * ctf-api.h (zlib.h): New include.
428 (ctf_sect_names_t): Likewise.
429 (ctf_encoding_t): Likewise.
430 (ctf_membinfo_t): Likewise.
431 (ctf_arinfo_t): Likewise.
432 (ctf_funcinfo_t): Likewise.
433 (ctf_lblinfo_t): Likewise.
434 (ctf_snapshot_id_t): Likewise.
435 (CTF_FUNC_VARARG): Likewise.
436 (ctf_simple_open): Likewise.
437 (ctf_bufopen): Likewise.
438 (ctf_create): Likewise.
439 (ctf_add_array): Likewise.
440 (ctf_add_const): Likewise.
441 (ctf_add_enum_encoded): Likewise.
442 (ctf_add_enum): Likewise.
443 (ctf_add_float): Likewise.
444 (ctf_add_forward): Likewise.
445 (ctf_add_function): Likewise.
446 (ctf_add_integer): Likewise.
447 (ctf_add_slice): Likewise.
448 (ctf_add_pointer): Likewise.
449 (ctf_add_type): Likewise.
450 (ctf_add_typedef): Likewise.
451 (ctf_add_restrict): Likewise.
452 (ctf_add_struct): Likewise.
453 (ctf_add_union): Likewise.
454 (ctf_add_struct_sized): Likewise.
455 (ctf_add_union_sized): Likewise.
456 (ctf_add_volatile): Likewise.
457 (ctf_add_enumerator): Likewise.
458 (ctf_add_member): Likewise.
459 (ctf_add_member_offset): Likewise.
460 (ctf_add_member_encoded): Likewise.
461 (ctf_add_variable): Likewise.
462 (ctf_set_array): Likewise.
463 (ctf_update): Likewise.
464 (ctf_snapshot): Likewise.
465 (ctf_rollback): Likewise.
466 (ctf_discard): Likewise.
467 (ctf_write): Likewise.
468 (ctf_gzwrite): Likewise.
469 (ctf_compress_write): Likewise.
473 * ctf-api.h (ctf_errno): New declaration.
474 (ctf_errmsg): Likewise.
478 * ctf-api.h (ctf_setdebug): New.
479 (ctf_getdebug): Likewise.
483 * ctf-api.h: New file.
491 * elf/aarch64.h (DT_AARCH64_VARIANT_PCS): Define.
492 (STO_AARCH64_VARIANT_PCS): Define.
496 * elf/ppc64.h (R_PPC64_PLTSEQ_NOTOC, R_PPC64_PLTCALL_NOTOC),
497 (R_PPC64_PCREL_OPT, R_PPC64_D34, R_PPC64_D34_LO, R_PPC64_D34_HI30),
498 (R_PPC64_D34_HA30, R_PPC64_PCREL34, R_PPC64_GOT_PCREL34),
499 (R_PPC64_PLT_PCREL34, R_PPC64_PLT_PCREL34_NOTOC),
500 (R_PPC64_ADDR16_HIGHER34, R_PPC64_ADDR16_HIGHERA34),
501 (R_PPC64_ADDR16_HIGHEST34, R_PPC64_ADDR16_HIGHESTA34),
502 (R_PPC64_REL16_HIGHER34, R_PPC64_REL16_HIGHERA34),
503 (R_PPC64_REL16_HIGHEST34, R_PPC64_REL16_HIGHESTA34),
504 (R_PPC64_D28, R_PPC64_PCREL28): Define.
509 * dis-asm.h (WIDE_OUTPUT): Define.
510 * opcode/ppc.h (prefix_opcodes, prefix_num_opcodes): Declare.
511 (PPC_OPCODE_POWERXX, PPC_GET_PREFIX, PPC_GET_SUFFIX),
512 (PPC_PREFIX_P, PPC_PREFIX_SEG): Define.
516 * elf/bpf.h: New file.
520 * elf/arm.h (Tag_MVE_arch): Define new enum value.
521 * opcode/arm.h (FPU_MVE, FPU_MVE_FP): New MACROs for new features.
525 * opcode/aarch64.h (enum aarch64_opnd): New SVE_SHLIMM_UNPRED_22
530 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_tsz_bhs
535 * opcode/aarch64.h (enum aarch64_opnd): New SVE_Zm4_11_INDEX operand.
539 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_shift_tsz_bhsd
544 * opcode/aarch64.h (enum aarch64_opnd): New SVE_SHRIMM_UNPRED_22
546 (enum aarch64_insn_class): Add sve_shift_tsz_hsd iclass.
550 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_013 iclass.
554 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_bh iclass.
558 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_sd2 iclass.
562 * opcode/aarch64.h (enum aarch64_opnd): New SVE_ADDR_ZX operand.
566 * opcode/aarch64.h (enum aarch64_opnd): New SVE_Zm3_11_INDEX operand.
570 * opcode/aarch64.h (enum aarch64_insn_class): Add sve_size_hsd2 iclass.
574 * opcode/aarch64.h (enum aarch64_opnd): New SVE_IMM_ROT3 operand.
578 * opcode/aarch64.h (AARCH64_FEATURE_SVE2
579 AARCH64_FEATURE_SVE2_AES, AARCH64_FEATURE_SVE2_BITPERM,
580 AARCH64_FEATURE_SVE2_SM4, AARCH64_FEATURE_SVE2_SHA3): New
586 * opcode/mips.h (ASE_EVA_R6): New macro.
587 (M_LLWPE_AB, M_SCWPE_AB): New enum values.
591 * opcode/aarch64.h (AARCH64_FEATURE_TME): New.
592 (enum aarch64_opnd): Add AARCH64_OPND_TME_UIMM16.
597 * opcode/mips.h (M_LLWP_AB, M_LLDP_AB): New enum values.
598 (M_SCWP_AB, M_SCDP_AB): Likewise.
602 * opcode/mips.h: Update comment for MIPS32 CODE20 operand.
606 * elf/arm.h (START_RELOC_NUMBERS): New entry for R_ARM_THM_BF12.
610 * elf/arm.h (START_RELOC_NUMBERS): New entry for R_ARM_THM_BF18.
614 * elf/arm.h (START_RELOC_NUMBERS): New entry for R_ARM_THM_BF16.
618 * elf/arm.h (TAG_CPU_ARCH_V8_1M_MAIN): new macro.
619 (MAX_TAG_CPU_ARCH): Set value to above macro.
620 * opcode/arm.h (ARM_EXT2_V8_1M_MAIN): New macro.
621 (ARM_AEXT_V8_1M_MAIN): Likewise.
622 (ARM_AEXT2_V8_1M_MAIN): Likewise.
623 (ARM_ARCH_V8_1M_MAIN): Likewise.
627 * opcode/aarch64.h (enum aarch64_opnd): Add AARCH64_OPND_Rt_SP.
631 * elf/common.h (GNU_PROPERTY_X86_ISA_1_AVX512_BF16): New.
638 * longlong.h [__arc__] (add_ssaaaa): Add cc clobber.
639 (sub_ddmmss): Likewise.
643 * bfdlink.h (bfd_link_info): Remove x86-specific linker options.
647 * opcode/arm.h (FPU_NEON_ARMV8_1): New.
648 (FPU_ARCH_NEON_VFP_ARMV8_1): Use FPU_NEON_ARMV8_1.
649 (FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_1): Likewise.
650 (FPU_ARCH_DOTPROD_NEON_VFP_ARMV8): Likewise.
651 (FPU_ARCH_NEON_VFP_ARMV8_2_FP16): New.
652 (FPU_ARCH_NEON_VFP_ARMV8_2_FP16FML): New.
653 (FPU_ARCH_NEON_VFP_ARMV8_4_FP16FML): New.
654 (FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_4): New.
659 * opcode/ppc.h (PPC_OPERAND_CR_REG): Comment.
663 * dis-asm.h (struct disassemble_info): Add stop_offset.
667 * elf/aarch64.h (DT_AARCH64_PAC_PLT): New.
672 * elf/aarch64.h (DT_AARCH64_BTI_PLT): New.
676 * elf/common.h (GNU_PROPERTY_AARCH64_FEATURE_1_AND): New.
677 (GNU_PROPERTY_AARCH64_FEATURE_1_BTI): New.
678 (GNU_PROPERTY_AARCH64_FEATURE_1_PAC): New.
682 * elf/common.h (NT_ARM_PAC_MASK): Add define.
686 * mach-o/loader.h: Use new OS names in comments.
690 * splay-tree.h (splay_tree_delete_key_fn): Update comment.
691 (splay_tree_delete_value_fn): Likewise.
695 * opcode/s390.h (enum s390_opcode_cpu_val): Add
701 * opcode/aarch64.h (enum aarch64_opnd): Remove
702 AARCH64_OPND_ADDR_SIMPLE_2.
703 (enum aarch64_insn_class): Remove ldstgv_indexed.
707 * coff/ecoff.h: Include coff/sym.h.
715 * elf/riscv.h (SHT_RISCV_ATTRIBUTES): Define.
716 (Tag_RISCV_arch): Likewise.
717 (Tag_RISCV_priv_spec): Likewise.
718 (Tag_RISCV_priv_spec_minor): Likewise.
719 (Tag_RISCV_priv_spec_revision): Likewise.
720 (Tag_RISCV_unaligned_access): Likewise.
721 (Tag_RISCV_stack_align): Likewise.
725 * dis-asm.h: include <string.h>
732 * demangle.h: Remove support for ancient GNU (pre-3.0), Lucid,
733 ARM, HP, and EDG demangling styles.
740 * libiberty.h: Mechanically replace "can not" with "cannot".
741 * plugin-api.h: Likewise.
745 * elf/rx.h (EF_RX_CPU_MASK): Update new bits.
746 (E_FLAG_RX_V3): New RXv3 type.
747 * opcode/rx.h (RX_Size): Add double size.
748 (RX_Operand_Type): Add double FPU registers.
749 (RX_Opcode_ID): Add new instuctions.
753 Update year range in copyright notice of all files.
755 For older changes see ChangeLog-2018
757 Copyright (C) 2019 Free Software Foundation, Inc.
759 Copying and distribution of this file, with or without modification,
760 are permitted in any medium without royalty provided the copyright
761 notice and this notice are preserved.
767 version-control: never