LoopVectorizer: If dependency checks fail try runtime checks
authorArnold Schwaighofer <aschwaighofer@apple.com>
Fri, 1 Nov 2013 03:05:07 +0000 (03:05 +0000)
committerArnold Schwaighofer <aschwaighofer@apple.com>
Fri, 1 Nov 2013 03:05:07 +0000 (03:05 +0000)
commit0097e155025767c11790912dcf780f82dffaffb1
treebd5e660c6fe3dcd9d182c532fe9ff3e506d1851d
parentd272a1223314a69e4678816feeff2cfb3e740f8f
LoopVectorizer: If dependency checks fail try runtime checks

When a dependence check fails we can still try to vectorize loops with runtime
array bounds checks.

This helps linpack to vectorize a loop in dgefa. And we are back to 2x of the
scalar performance on a corei7-avx.

radar://15339680

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193853 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Vectorize/LoopVectorize.cpp
test/Transforms/LoopVectorize/runtime-check.ll