[PATCH] D137571: [AArch64] Add all SME2.1 instructions Assembly/Disassembly
David Sherwood via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 9 07:52:40 PST 2022
david-arm added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64.td:483
+def FeatureSMEF16F16 : SubtargetFeature<"sme-f16f16", "HasSMEF16F16", "true",
+ "Enable SME2.1 non-widening Float16 instructions (FEAT_SME-F16F16)", []>;
+
----------------
I think this should be FEAT_SME_F16F16, instead of FEAT_SME-F16F16
================
Comment at: llvm/lib/Target/AArch64/SMEInstrFormats.td:3428
string mnemonic>
- : I<(outs vector_ty:$Zd),
+ : I<!if(op{3}, (outs vector_ty:$Zd, tile_ty:$_ZAn), (outs vector_ty:$Zd)),
(ins tile_ty:$ZAn, MatrixIndexGPR32Op12_15:$Rs, index_ty:$imm),
----------------
I couldn't seem to find any case where `op{3}` is known to be 0b1 unless I've misunderstood something?
================
Comment at: llvm/test/MC/AArch64/SME2/fmla-diagnostics.s:48
fmla za.h[w8, #0], {z0.h-z3.h}, z4.h
-// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid matrix operand, expected suffix .d
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction requires: sme2p1 sme-f16f16
// CHECK-NEXT: fmla za.h[w8, #0], {z0.h-z3.h}, z4.h
----------------
It looks like these were dodgy tests before. Is it possible to change the instruction to still get the same error as before?
================
Comment at: llvm/test/MC/AArch64/SME2/fmls-diagnostics.s:33
fmls za.h[w8, #0], {z0.h-z3.h}, z4.h
-// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid matrix operand, expected suffix .d
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction requires: sme2p1 sme-f16f16
// CHECK-NEXT: fmls za.h[w8, #0], {z0.h-z3.h}, z4.h
----------------
Same comment as above.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D137571/new/
https://reviews.llvm.org/D137571
More information about the llvm-commits
mailing list