mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-10-07 05:55:44 +00:00
935645b765
In the loop vectorizer cost model, we used to ignore stores/loads of a pointer type when computing the widest type within a loop. This meant that if we had only stores/loads of pointers in a loop we would return a widest type of 8bits (instead of 32 or 64 bit) and therefore a vector factor that was too big. Now, if we see a consecutive store/load of pointers we use the size of a pointer (from data layout). This problem occured in SingleSource/Benchmarks/Shootout-C++/hash.cpp (reduced test case is the first test in vector_ptr_load_store.ll). radar://13139343 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174377 91177308-0d34-0410-b5e6-96231b3b80d8 |
||
---|---|---|
.. | ||
ARM | ||
X86 | ||
12-12-11-if-conv.ll | ||
2012-10-20-infloop.ll | ||
2012-10-22-isconsec.ll | ||
bzip_reverse_loops.ll | ||
calloc.ll | ||
cast-induction.ll | ||
cpp-new-array.ll | ||
flags.ll | ||
float-reduction.ll | ||
gcc-examples.ll | ||
i8-induction.ll | ||
if-conv-crash.ll | ||
if-conversion-reduction.ll | ||
if-conversion.ll | ||
increment.ll | ||
induction_plus.ll | ||
intrinsic.ll | ||
lcssa-crash.ll | ||
lit.local.cfg | ||
no_int_induction.ll | ||
nofloat.ll | ||
non-const-n.ll | ||
nsw-crash.ll | ||
ptr_loops.ll | ||
read-only.ll | ||
reduction.ll | ||
runtime-check.ll | ||
same-base-access.ll | ||
scalar-select.ll | ||
simple-unroll.ll | ||
small-loop.ll | ||
start-non-zero.ll | ||
struct_access.ll | ||
write-only.ll |