[PATCH] D136689: [AArch64][SVE2] Add the SVE2.1 extract-and-narrow instructions

Paul Walker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 25 10:51:16 PDT 2022


paulwalker-arm added inline comments.


================
Comment at: llvm/lib/Target/AArch64/SVEInstrFormats.td:8701
+// SME2 multi-vec extract narrow
+class sve2p1_multi_vec_extract_narrow<string mnemonic, bits<2> opc>
+    : I<(outs ZPR16:$Zd), (ins ZZ_s_mul_r:$Zn),
----------------
Do you mind exposing `tsz8_64` at this level to match `sve2_int_sat_extract_narrow...`?  I know we only need one size right now but structurally this will make it easier to update in the future.  You can still have `multiclass sve2p1_multi_vec_extract_narrow` that uses this minimalist interface, again much like how `sve2_int_sat_extract_narrow_bottom` works.  We'll need the multiclass anyway once we start enabling code generation.


================
Comment at: llvm/test/MC/AArch64/SVE2p1/sqcvtn-diagnostics.s:7
+sqcvtn z0.h, {z0.s-z2.s}
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: sqcvtn z0.h, {z0.s-z2.s}
----------------
Just an observation but it seems preferable to get the same nice error message as we do for the `{z1.s-z2.s}` case.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136689/new/

https://reviews.llvm.org/D136689



More information about the llvm-commits mailing list