llvm-6502/test/Transforms/LoopVectorize
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
..
ARM Adding simple cast cost to ARM 2013-01-29 23:31:38 +00:00
X86 Forgot to 'svn add' the LoopVectorizer tests for the new parallel loop metadata, sorry. 2013-02-15 21:50:19 +00:00
12-12-11-if-conv.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
2012-10-20-infloop.ll Force a fixed unroll count on the target independent tests. 2013-01-05 00:58:48 +00:00
2012-10-22-isconsec.ll Force a fixed unroll count on the target independent tests. 2013-01-05 00:58:48 +00:00
bzip_reverse_loops.ll Add support for reverse pointer induction variables. These are loops that contain pointers that count backwards. 2013-01-23 01:35:00 +00:00
calloc.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
cast-induction.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
cpp-new-array.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
flags.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
float-reduction.ll LoopVectorizer: Add support for floating point reductions 2013-01-07 23:13:00 +00:00
gcc-examples.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
global_alias.ll Allow GlobalValues to vectorize with AliasAnalysis 2013-02-21 22:39:03 +00:00
i8-induction.ll Fix PR14547. Handle induction variables of small sizes smaller than i32 (i8 and i16). 2013-01-13 07:56:29 +00:00
if-conv-crash.ll Force a fixed unroll count on the target independent tests. 2013-01-05 00:58:48 +00:00
if-conversion-reduction.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
if-conversion.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
increment.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
induction_plus.ll Force a fixed unroll count on the target independent tests. 2013-01-05 00:58:48 +00:00
intrinsic.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
lcssa-crash.ll Force a fixed unroll count on the target independent tests. 2013-01-05 00:58:48 +00:00
lit.local.cfg
no_int_induction.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
nofloat.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
non-const-n.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
nsw-crash.ll LoopVectorizer: Fix a bug in the vectorization of BinaryOperators. The BinaryOperator can be folded to an Undef, and we don't want to set NSW flags to undef vals. 2013-01-10 17:34:39 +00:00
ptr_loops.ll Add support for reverse pointer induction variables. These are loops that contain pointers that count backwards. 2013-01-23 01:35:00 +00:00
read-only.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
reduction.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
runtime-check.ll LoopVectorizer: Emit memory checks into their own basic block. 2013-01-19 13:57:58 +00:00
same-base-access.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
scalar-select.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
simple-unroll.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
small-loop.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00
start-non-zero.ll Force a fixed unroll count on the target independent tests. 2013-01-05 00:58:48 +00:00
struct_access.ll Add support for reverse pointer induction variables. These are loops that contain pointers that count backwards. 2013-01-23 01:35:00 +00:00
write-only.ll Remove the -licm pass from the loop vectorizer test because the loop vectorizer does it now. 2013-01-09 01:20:59 +00:00