mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-15 04:30:12 +00:00
75277b9f70
A few minor changes to prevent @llvm.assume from interfering with loop vectorization. First, treat @llvm.assume like the lifetime intrinsics, which are scalarized (but don't otherwise interfere with the legality checking). Second, ignore the cost of ephemeral instructions in the loop (these will go away anyway during CodeGen). Alignment assumptions and other uses of @llvm.assume can often end up inside of loops that should be vectorized (this is not uncommon for assumptions generated by __attribute__((align_value(n))), for example). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219741 91177308-0d34-0410-b5e6-96231b3b80d8 |
||
---|---|---|
.. | ||
already-vectorized.ll | ||
assume.ll | ||
avx1.ll | ||
avx512.ll | ||
constant-vector-operand.ll | ||
conversion-cost.ll | ||
cost-model.ll | ||
fp32_to_uint32-cost-model.ll | ||
fp64_to_uint32-cost-model.ll | ||
fp_to_sint8-cost-model.ll | ||
gather-cost.ll | ||
gcc-examples.ll | ||
illegal-parallel-loop-uniform-write.ll | ||
lit.local.cfg | ||
metadata-enable.ll | ||
min-trip-count-switch.ll | ||
no-vector.ll | ||
parallel-loops-after-reg2mem.ll | ||
parallel-loops.ll | ||
powof2div.ll | ||
rauw-bug.ll | ||
reduction-crash.ll | ||
small-size.ll | ||
struct-store.ll | ||
tripcount.ll | ||
uint64_to_fp64-cost-model.ll | ||
unroll_selection.ll | ||
unroll-pm.ll | ||
unroll-small-loops.ll | ||
vect.omp.force.ll | ||
vect.omp.force.small-tc.ll | ||
vector_ptr_load_store.ll | ||
vector-scalar-select-cost.ll | ||
vectorization-remarks-missed.ll | ||
vectorization-remarks.ll | ||
x86_fp80-vector-store.ll |