[PATCH] Vectorizer: Refactor code for runtime checks generation.
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",
> 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.
> loops -> loop's
Thanks, I'll fix that.
More information about the llvm-commits