[PATCH] D81345: [LV] Vectorize without versioning-for-unit-stride under -Os/-Oz

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 9 04:54:04 PDT 2020


fhahn added inline comments.


================
Comment at: llvm/lib/Analysis/LoopAccessAnalysis.cpp:1821
 
+  const bool EnableMemAccessVersioningOfLoop =
+      EnableMemAccessVersioning &&
----------------
I think it might be slightly preferable to let LV drive the decision whether to version or not based on cost estimates (and LAA is used by other passes as well, which might have different requirements).

Did you consider disabling generating the codes for  (I think it should happen `emitSCEVChecks`) conditionally on optsize? IIUC we should only need to generate code for predicates, if either we need runtime checks or have symbolic strides. And runtime checks are already rejected in `runtimeChecksRequired`.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D81345





More information about the llvm-commits mailing list