binutils-gdb/include
Jiawei 89d59bf712 RISC-V: Add Zvdota extension classes
Zvfqwdota8f: dot product of 8-bit floating-point numbers with 32-bit accumulation.

Zvdota also uses the vtype alternative format bit, altfmt, which is bit 8 of the vtype CSR. This patch adds symbolic e8alt and e16alt vsew constants for vsetvli/vsetivli so that assembly code can select the alternative element formats required by these dot-product instructions.

[1] https://github.com/riscv/riscv-isa-manual/blob/zvbdot/src/zvdota.adoc

bfd/ChangeLog:

	* elfxx-riscv.c (riscv_implicit_subsets): New implies.
	(riscv_supported_std_z_ext): New extensions.
	(riscv_multi_subset_supports): Ditto.
	(riscv_multi_subset_supports_ext): Ditto.

gas/ChangeLog:

	* NEWS: Add zvqwdota8i, zvqwdota16i, zvfwdota16bf and
	zvfqwdota8f extensions.
	* config/tc-riscv.c (riscv_vsew_altfmt): New vsew altfmt
	constants array for e8alt and e16alt.
	(riscv_vtype_altfmt_supported): New function.
	(my_getVsetvliExpression): Ditto.
	* testsuite/gas/riscv/march-help.l: New test.
	* testsuite/gas/riscv/vector-vtype-altfmt.d: Ditto.
	* testsuite/gas/riscv/vector-vtype-altfmt.s: Ditto.
	* testsuite/gas/riscv/zvdota.d: Ditto.
	* testsuite/gas/riscv/zvdota.s: Ditto.

include/ChangeLog:

	* opcode/riscv-opc.h (MATCH_VQWDOTAU_VV, MASK_VQWDOTAU_VV): New encoding.
	(MATCH_VQWDOTAS_VV, MASK_VQWDOTAS_VV): Ditto.
	(MATCH_VFWDOTA_VV, MASK_VFWDOTA_VV): Ditto.
	(MATCH_VFQWDOTA_VV, MASK_VFQWDOTA_VV): Ditto.
	(MATCH_VFQWDOTA_ALT_VV, MASK_VFQWDOTA_ALT_VV): Ditto.
	(DECLARE_INSN): New declarations.
	* opcode/riscv.h (OP_MASK_VTYPE_ALTFMT, OP_SH_VTYPE_ALTFMT): New vtype altfmt.
	(enum riscv_insn_class): New extension classes.

opcodes/ChangeLog:

	* riscv-dis.c (print_insn_args): Add altfmt support.
	* riscv-opc.c (riscv_opcodes): New instructions.
2026-06-30 07:54:21 -06:00
..
aout Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
cgen Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
coff Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
elf gas, bfd, gold: Rename Arm v8/v9 architecture tags 2026-05-28 11:33:39 +00:00
gdb Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
mach-o Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
opcode RISC-V: Add Zvdota extension classes 2026-06-30 07:54:21 -06:00
sim include/sim: remove arm simulator header 2026-02-13 18:57:08 +00:00
som Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
vms Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
alloca-conf.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
ansidecl.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
bfdlink.h Remove check_relocs_after_open_input 2026-05-01 22:18:44 +09:30
binary-io.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
ChangeLog Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
ChangeLog-0415 binutils ChangeLog rotation 2016-01-01 22:59:17 +10:30
ChangeLog-2016 ChangeLog rotation 2017-01-02 13:55:05 +10:30
ChangeLog-2017 ChangeLog rotation 2018-01-03 17:49:42 +10:30
ChangeLog-2018 ChangeLog rotation 2019-01-01 21:25:40 +10:30
ChangeLog-2019 ChangeLog rotation 2020-01-01 18:12:08 +10:30
ChangeLog-2020 ChangeLog rotation 2021-01-01 10:31:02 +10:30
ChangeLog-9103 Add copyright notices 2012-12-10 12:48:03 +00:00
collectorAPI.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
COPYING
COPYING3
ctf-api.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
ctf.h libctf: remove CTF_F_ARRNELEMS flag 2026-02-27 15:06:41 +00:00
demangle.h Sync libiberty sources with gcc master version 2026-01-07 11:33:07 +00:00
diagnostics.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
dis-asm.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
doubly-linked-list.h libiberty: sync with gcc 2026-02-05 17:24:38 +00:00
dwarf2.def Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
dwarf2.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
dyn-string.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
environ.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
fibheap.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
filenames.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
floatformat.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
fnmatch.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
fopen-bin.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
fopen-same.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
fopen-vms.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
gcc-c-fe.def Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
gcc-c-interface.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
gcc-cp-fe.def Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
gcc-cp-interface.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
gcc-interface.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
getopt.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
hashtab.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
hp-symtab.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
leb128.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
libcollector.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
libfcollector.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
libiberty.h Port expandargstr from gcc/libiberty 2026-06-15 16:58:38 +01:00
longlong.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
lto-symtab.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
MAINTAINERS Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
md5.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
oasys.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
objalloc.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
obstack.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
os9k.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
partition.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
plugin-api.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
safe-ctype.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
same-inode.h same-inode.h: don't depend on _GL_WINDOWS_STAT_INODES 2026-02-26 10:35:51 +10:30
sframe-api.h libsframe: rename offset in user-facing sframe_frame_row_entry struct 2026-01-23 14:21:15 -08:00
sframe-internal.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
sframe.h include: libsframe: rename SFrame V3 Flexible FDE macros to CTRLWORD 2026-01-29 20:02:57 -08:00
sha1.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
simple-object.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
sort.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
splay-tree.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
symcat.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
timeval-utils.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
vtv-change-permission.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
xregex.h merge from gcc 2011-07-25 17:11:48 +00:00
xregex2.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
xtensa-config.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
xtensa-dynconfig.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
xtensa-isa-internal.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30
xtensa-isa.h Update year range in copyright notice of binutils files 2026-01-01 23:22:14 +10:30