summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/LoopVectorize/induction-step.ll
Commit message (Collapse)AuthorAgeFilesLines
* [LV] Remove constant restriction for vector phi creationMatthew Simpson2017-02-171-12/+89
| | | | | | | | | | | | We previously only created a vector phi node for an induction variable if its step had a constant integer type. However, the step actually only needs to be loop-invariant. We only handle inductions having loop-invariant steps, so this patch should enable vector phi node creation for all integer induction variables that will be vectorized. Differential Revision: https://reviews.llvm.org/D29956 llvm-svn: 295456
* [LoopVectorize] Handling induction variable with non-constant step.Elena Demikhovsky2016-05-101-0/+124
Allow vectorization when the step is a loop-invariant variable. This is the loop example that is getting vectorized after the patch: int int_inc; int bar(int init, int *restrict A, int N) { int x = init; for (int i=0;i<N;i++){ A[i] = x; x += int_inc; } return x; } "x" is an induction variable with *loop-invariant* step. But it is not a primary induction. Primary induction variable with non-constant step is not handled yet. Differential Revision: http://reviews.llvm.org/D19258 llvm-svn: 269023
OpenPOWER on IntegriCloud