[all-commits] [llvm/llvm-project] a4e849: [AArch64]SME2 Multi-vector ternary indexed DOT and...
CarolineConcatto via All-commits
all-commits at lists.llvm.org
Tue Oct 25 01:22:46 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a4e8492ba2688cab5698ef45efdb7172afee0530
https://github.com/llvm/llvm-project/commit/a4e8492ba2688cab5698ef45efdb7172afee0530
Author: Caroline Concatto <caroline.concatto at arm.com>
Date: 2022-10-25 (Tue, 25 Oct 2022)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/lib/Target/AArch64/SMEInstrFormats.td
A llvm/test/MC/AArch64/SME2/bfdot-diagnostics.s
A llvm/test/MC/AArch64/SME2/bfdot.s
A llvm/test/MC/AArch64/SME2/bfvdot-diagnostics.s
A llvm/test/MC/AArch64/SME2/bfvdot.s
A llvm/test/MC/AArch64/SME2/fdot-diagnostics.s
A llvm/test/MC/AArch64/SME2/fdot.s
M llvm/test/MC/AArch64/SME2/fmla.s
M llvm/test/MC/AArch64/SME2/fmls.s
A llvm/test/MC/AArch64/SME2/fvdot-diagnostics.s
A llvm/test/MC/AArch64/SME2/fvdot.s
A llvm/test/MC/AArch64/SME2/sdot-diagnostics.s
A llvm/test/MC/AArch64/SME2/sdot.s
A llvm/test/MC/AArch64/SME2/sudot-diagnostics.s
A llvm/test/MC/AArch64/SME2/sudot.s
A llvm/test/MC/AArch64/SME2/suvdot-diagnostics.s
A llvm/test/MC/AArch64/SME2/suvdot.s
A llvm/test/MC/AArch64/SME2/svdot-diagnostics.s
A llvm/test/MC/AArch64/SME2/svdot.s
A llvm/test/MC/AArch64/SME2/udot-diagnostics.s
A llvm/test/MC/AArch64/SME2/udot.s
A llvm/test/MC/AArch64/SME2/usdot-diagnostics.s
A llvm/test/MC/AArch64/SME2/usdot.s
A llvm/test/MC/AArch64/SME2/uvdot-diagnostics.s
A llvm/test/MC/AArch64/SME2/uvdot.s
Log Message:
-----------
[AArch64]SME2 Multi-vector ternary indexed DOT and FMLA instructions
This patch adds the assembly/disassembly for the following instruction:
FP:
FMLA (multiple and indexed vector): Multi-vector floating-point fused multiply-add by indexed element.
FMLS(multiple and indexed vector): Multi-vector floating-point fused multiply-subtract by indexed element.
BFDOT (multiple and indexed vector): Multi-vector BFloat16 floating-point dot-product by indexed element.
FDOT (multiple and indexed vector): Multi-vector half-precision floating-point dot-product by indexed element.
BFVDOT: Multi-vector BFloat16 floating-point vertical dot-product by indexed element.
FVDOT: Multi-vector half-precision floating-point vertical dot-product by indexed element.
INT:
SDOT (2-way, multiple and indexed vector): Multi-vector signed integer dot-product by indexed element.
(4-way, multiple and indexed vector): Multi-vector signed integer dot-product by indexed element.
SUDOT (multiple and indexed vector): Multi-vector signed by unsigned integer dot-product by indexed elements.
SUVDOT: Multi-vector signed by unsigned integer vertical dot-product by indexed element.
UDOT (2-way, multiple and indexed vector): Multi-vector unsigned integer dot-product by indexed element.
(4-way, multiple and indexed vector): Multi-vector unsigned integer dot-product by indexed element.
USDOT (multiple and indexed vector): Multi-vector unsigned by signed integer dot-product by indexed element.
USVDOT: Multi-vector unsigned by signed integer vertical dot-product by indexed element.
For the multi-vec ternary indexed with 2 and 4 ZA single-vectors for
32 and 64 bits according to the instruction
The reference can be found here:
https://developer.arm.com/documentation/ddi0602/2022-09
Depends on:D135563
Differential Revision: https://reviews.llvm.org/D135676
More information about the All-commits
mailing list