[PATCH] D83542: [SVE] Don't consider scalable vector types in SLPVectorizerPass::vectorizeChainsInBlock

David Sherwood via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 13 23:58:14 PDT 2020


david-arm marked an inline comment as done.
david-arm added inline comments.


================
Comment at: llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp:7396
+        TypeSize EltTS = DL->getTypeSizeInBits(EltTy);
+        if (EltTS.isScalable()) {
+          // For now, just ignore vectorizing scalable types.
----------------
sdesmalen wrote:
> Should the check for scalable (+ corresponding code to bail out) be hoisted out of the `if (EltTy->isSized())` condition/block?
I'm not sure really. This change fixes the case I was interested, but not sure what it means if a type is not sized *and* scalable? I assumed that if a type wasn't sized then you couldn't call getTypeSizeInBits and hope to get a sensible answer. We only know if the type is scalable or not by asking for the TypeSize.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D83542





More information about the llvm-commits mailing list