You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[DO NOT MERGE]
Until RISC-V BF16 extensions are frozen/ratified and the final version
number is determined, this patch should not be merged upstream. This
commit uses unratified version 0.8 as in the latest PDF documentation
(instead of possible 1.0 after ratification).
This commit adds support for the 'Zvfbfwma' extension, the vector BF16
multiply then FP32 accumlation extension, consisting of two widening
multiply-accumulate instructions.
This commit is based on the following specification:
<riscv/riscv-bfloat16@5578e34>
bfd/ChangeLog:
* elfxx-riscv.c (riscv_implicit_subsets): Add 'Zvfbfwma'
-> 'Zvfbfmin' implication.
(riscv_supported_std_z_ext): Add 'Zvfbfwma'.
(riscv_multi_subset_supports): Add support to INSN_CLASS_ZVFBFWMA.
(riscv_multi_subset_supports_ext): Likewise.
gas/ChangeLog:
* testsuite/gas/riscv/zvfbfwma.s: New test.
* testsuite/gas/riscv/zvfbfwma.d: Likewise.
include/ChangeLog:
* opcode/riscv-opc.h (MATCH_VFWMACCBF16_VF, MASK_VFWMACCBF16_VF,
MATCH_VFWMACCBF16_VV, MASK_VFWMACCBF16_VV): New.
* opcode/riscv.h (enum riscv_insn_class): Add new instruction class
INSN_CLASS_ZVFBFWMA.
opcodes/ChangeLog:
* riscv-opc.c (riscv_opcodes): Add 'Zvfbfwma' instructions.
0 commit comments