[PATCH] D20230: [WIP] Minimal SCEV interval analysis

Michael Kruse via llvm-commits llvm-commits at lists.llvm.org
Fri May 13 08:33:52 PDT 2016


Meinersbur added a comment.

Looks like this is trying to exploit information on llvm::Value's from instructions outside the SCoP. Nice idea and straightforward implementation.

As far as I can see this gets its range information from surrounding non-scop loops (AddRecExpr) and shared common instructions (SCEVUnknown). One could get more information from the LazyValueInfo pass.

Please add comments, it would make it easier to review the diff.


================
Comment at: lib/Support/SCEVValidator.cpp:699
@@ +698,3 @@
+    SCEVInterval Step = visit(StepSCEV);
+    bool IsKnowPos = SE.isKnownPositive(StepSCEV);
+    bool IsKnowNeg = !IsKnowPos && SE.isKnownNegative(StepSCEV);
----------------
Know -> Known

================
Comment at: lib/Support/SCEVValidator.cpp:755
@@ -634,1 +754,2 @@
+}
 }
----------------
`visitCouldNotCompute` missing?


http://reviews.llvm.org/D20230





More information about the llvm-commits mailing list