[PATCH] D156109: [AArch64][SME] Create new interface for isFullSVEAvailable.

David Sherwood via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 31 01:38:11 PDT 2023


david-arm added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64Subtarget.cpp:488
+  // as we don't yet support the feature in LLVM.
+  return hasSVEorSME() && !StreamingSVEMode && !StreamingCompatibleSVEMode &&
+         !ForceStreamingCompatibleSVE;
----------------
Perhaps it's worth being consistent with `isNeonAvailable`and using the `isStreaming` and `isStreamingCompatible` interfaces?


================
Comment at: llvm/lib/Target/AArch64/AArch64Subtarget.h:229
+    // By returning '0' here, we disable vectorization.
+    if (!isFullSVEAvailable() && !isNeonAvailable())
       return 0;
----------------
Do we need to also check the same get-out clause that we do in AArch64TargetTransformInfo.cpp, i.e. `EnableScalableAutovecInStreamingMode`?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D156109



More information about the llvm-commits mailing list