[PATCH] New pass: inductive range check elimination

hfinkel at anl.gov hfinkel at anl.gov
Tue Dec 23 17:42:03 PST 2014


Generally speaking, I'm fine with you working on this in-tree once we've reviewed this code.

We'll need to decide, at some later point, what kind of heuristics and/or target costs we'd like to use, and whether we want this kind of transformation early or late in the optimization pipeline.

Please run this through clang-format (or at least fix the 80-cols issues) too.


================
Comment at: lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp:12
@@ +11,3 @@
+// the middle range provably does not need range checks.
+//===----------------------------------------------------------------------===//
+
----------------
Please add an example (such as the one from the patch summary) here.

================
Comment at: lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp:487
@@ +486,3 @@
+  BasicBlock *LatchExit = nullptr;
+  {
+    // Currently we only support a latch condition of the form:
----------------
Please break out this function into several smaller ones -- there are a lot of 'scoping blocks' here, and it is difficult to read.

http://reviews.llvm.org/D6693

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list