[PATCH] D93317: [LV] Vectorize (some) early and multiple exit loops

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 1 06:02:04 PST 2021


fhahn added inline comments.


================
Comment at: llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp:1120
+  // the exit block.  (TODO: implement general case)
+  if (!empty(ExitBB->phis()) && !ExitBB->getSinglePredecessor()) {
+    reportVectorizationFailure("The loop must have no live-out values if "
----------------
aeubanks wrote:
> This doesn't compile on Windows: http://45.33.8.238/win/30472/step_4.txt and http://lab.llvm.org:8011/#/builders/83/builds/2078/steps/5/logs/stdio, I've reverted this change.
I missed this during the initial review, but we might derefence a nullptr here, because when `DoExtraAnalysis` is true, `ExitBB` may be null. I pushed d9f306aa52fe to only execute the checks in the `else` branch of the `!ExitBB` check 


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D93317



More information about the llvm-commits mailing list