[PATCH] Vectorizer: Refactor code for runtime checks generation.

Michael Zolotukhin mzolotukhin at apple.com
Tue Jun 23 20:14:30 PDT 2015

Comment at: lib/Transforms/Vectorize/LoopVectorize.cpp:2077
@@ -2076,3 @@
-  // contain a definition of the start index.
-  Instruction *OverflowCheckAnchor = BinaryOperator::CreateAdd(
-      StartIdx, ConstantInt::get(IdxTy, 0), "overflow.check.anchor",
hfinkel wrote:
> Are you eliminating the need for this anchor instruction because you're splitting the block later?
Yes, exactly. When we split the basic block at the moment when we're going to populate it with instructions, we no longer need any anchors.

Comment at: lib/Transforms/Vectorize/LoopVectorize.cpp:2117
@@ +2116,3 @@
+  // Generate code to check that the loops trip count that we computed by adding
+  // one to the backedge-taken count will not overflow.
hfinkel wrote:
> loops -> loop's
Thanks, I'll fix that.



More information about the llvm-commits mailing list