LoopVectorize: Handle loops with multiple forward inductions
authorArnold Schwaighofer <aschwaighofer@apple.com>
Tue, 14 May 2013 00:21:18 +0000 (00:21 +0000)
committerArnold Schwaighofer <aschwaighofer@apple.com>
Tue, 14 May 2013 00:21:18 +0000 (00:21 +0000)
commit123f18bcb9baeb6dc177cb642126a3a4d9ca8b43
tree9b5dc23fc175739d0f3880d4f1327936d33a9c27
parentdba53a8c9d4ece0bf44acbf5fce871f2e754d97d
LoopVectorize: Handle loops with multiple forward inductions

We used to give up if we saw two integer inductions. After this patch, we base
further induction variables on the chosen one like we do in the reverse
induction and pointer induction case.

Fixes PR15720.

radar://13851975

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181746 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Vectorize/LoopVectorize.cpp
test/Transforms/LoopVectorize/induction.ll [new file with mode: 0644]