[PATCH] D127146: [LoopFlatten] Check for null result after dyn_cast.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 6 13:25:25 PDT 2022


craig.topper created this revision.
craig.topper added reviewers: SjoerdMeijer, RosieSumpter, fhahn, dmgreen.
Herald added subscribers: StephenFan, hiraditya.
Herald added a project: All.
craig.topper requested review of this revision.
Herald added a project: LLVM.

Spotted while reading through the code.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D127146

Files:
  llvm/lib/Transforms/Scalar/LoopFlatten.cpp


Index: llvm/lib/Transforms/Scalar/LoopFlatten.cpp
===================================================================
--- llvm/lib/Transforms/Scalar/LoopFlatten.cpp
+++ llvm/lib/Transforms/Scalar/LoopFlatten.cpp
@@ -412,7 +412,7 @@
   // increment variable.
   Increment =
       dyn_cast<BinaryOperator>(InductionPHI->getIncomingValueForBlock(Latch));
-  if (Increment->hasNUsesOrMore(3)) {
+  if (!Increment || Increment->hasNUsesOrMore(3)) {
     LLVM_DEBUG(dbgs() << "Could not find valid increment\n");
     return false;
   }


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D127146.434581.patch
Type: text/x-patch
Size: 532 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220606/fbf71719/attachment.bin>


More information about the llvm-commits mailing list