llvm-6502/lib/Transforms/Vectorize
Renato Golin e18bce5317 Allow GlobalValues to vectorize with AliasAnalysis
Storing the load/store instructions with the values
and inspect them using Alias Analysis to make sure
they don't alias, since the GEP pointer operand doesn't
take the offset into account.

Trying hard to not add any extra cost to loads and stores
that don't overlap on global values, AA is *only* calculated
if all of the previous attempts failed.

Using biggest vector register size as the stride for the
vectorization access, as we're being conservative and
the cost model (which calculates the real vectorization
factor) is only run after the legalization phase.

We might re-think this relationship in the future, but
for now, I'd rather be safe than sorry.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175818 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-21 22:39:03 +00:00
..
BBVectorize.cpp BBVectorize: Fix an invalid reference bug 2013-02-17 15:59:26 +00:00
CMakeLists.txt Add a loop vectorizer. 2012-10-17 18:25:06 +00:00
LLVMBuild.txt
LoopVectorize.cpp Allow GlobalValues to vectorize with AliasAnalysis 2013-02-21 22:39:03 +00:00
Makefile
Vectorize.cpp LoopVectorizer: Use the "optsize" attribute to decide if we are allowed to increase the function size. 2012-12-12 19:29:45 +00:00