[PATCH] D141068: [AArch64][SME]: Make 'Expand' the default action for all Ops.

Sander de Smalen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 6 03:51:30 PST 2023


sdesmalen added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:1442
+                     MVT::v4i32, MVT::v1i64, MVT::v2i64}) {
+        for (unsigned Op = 0; Op < ISD::BUILTIN_OP_END; ++Op)
+          setOperationAction(Op, VT, Expand);
----------------
Please move this loop where it marks all the operations as `Expand` into `addTypeForStreamingSVE`.


================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:1670-1672
+  setOperationAction(ISD::STORE, VT, Legal);
+  setOperationAction(ISD::LOAD, VT, Legal);
+  setOperationAction(ISD::SCALAR_TO_VECTOR, VT, Legal);
----------------
Can you add a comment for these operations that we mark them as Legal because we can use streaming-compatible NEON instructions for these?


================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:4329
 
-  if (useSVEForFixedLengthVectorVT(OpVT))
+  if (useSVEForFixedLengthVectorVT(OpVT,
+                                   Subtarget->forceStreamingCompatibleSVE()))
----------------
Can you split out this change, along with marking BITCAST as custom, into a separate patch?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D141068



More information about the llvm-commits mailing list