Revert "LoopVectorizer: Only allow vectorization of intrinsics."
authorArnold Schwaighofer <aschwaighofer@apple.com>
Mon, 23 Sep 2013 14:54:39 +0000 (14:54 +0000)
committerArnold Schwaighofer <aschwaighofer@apple.com>
Mon, 23 Sep 2013 14:54:39 +0000 (14:54 +0000)
commit4e7b015a4a724782bf37284c3c74f2540cf8f3e1
treeed7396669c87d8a20a7739484e28d11420faaaaf
parent2bbb2d4576ec821c5a5a1648d4ccffc920ed2449
Revert "LoopVectorizer: Only allow vectorization of intrinsics."

Revert 191122 - with extra checks we are allowed to vectorize math library
function calls.

Standard library indentifiers are reserved names so functions with external
linkage must not overrided them. However, functions with internal linkage can.

Therefore, we can vectorize calls to math library functions with a check for
external linkage and matching signature. This matches what we do during
SelectionDAG building.

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