llvm-project/llvm/test/Transforms/LoopVectorize/X86
Hal Finkel 6532c20faa Move late partial-unrolling thresholds into the processor definitions
The old method used by X86TTI to determine partial-unrolling thresholds was
messy (because it worked by testing target features), and also would not
correctly identify the target CPU if certain target features were disabled.
After some discussions on IRC with Chandler et al., it was decided that the
processor scheduling models were the right containers for this information
(because it is often tied to special uop dispatch-buffer sizes).

This does represent a small functionality change:
 - For generic x86-64 (which uses the SB model and, thus, will get some
   unrolling).
 - For AMD cores (because they still currently use the SB scheduling model)
 - For Haswell (based on benchmarking by Louis Gerbarg, it was decided to bump
   the default threshold to 50; we're working on a test case for this).
Otherwise, nothing has changed for any other targets. The logic, however, has
been moved into BasicTTI, so other targets may now also opt-in to this
functionality simply by setting LoopMicroOpBufferSize in their processor
model definitions.

llvm-svn: 208289
2014-05-08 09:14:44 +00:00
..
already-vectorized.ll Move partial/runtime unrolling late in the pipeline 2014-03-31 23:23:51 +00:00
avx1.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
constant-vector-operand.ll LoopVectorizer: Bail out if we don't have datalayout we need it 2013-04-24 16:15:58 +00:00
conversion-cost.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
cost-model.ll Fix missing CHECK-LABELs 2013-10-02 20:29:00 +00:00
fp32_to_uint32-cost-model.ll [X86] Adjust cost of FP_TO_UINT v8f32->v8i32 2014-03-30 18:07:13 +00:00
fp64_to_uint32-cost-model.ll [X86] Adjust cost of FP_TO_UINT v4f64->v4i32 as well 2014-03-31 21:54:48 +00:00
fp_to_sint8-cost-model.ll add 'requires asserts' to test that needs it 2014-03-27 00:20:42 +00:00
gather-cost.ll X86 cost model: Add cost for vectorized gather/scather 2013-07-12 19:16:07 +00:00
gcc-examples.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
illegal-parallel-loop-uniform-write.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
lit.local.cfg [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
metadata-enable.ll Move late partial-unrolling thresholds into the processor definitions 2014-05-08 09:14:44 +00:00
min-trip-count-switch.ll TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
no-vector.ll
parallel-loops-after-reg2mem.ll Add support for llvm.vectorizer metadata 2013-05-28 20:00:34 +00:00
parallel-loops.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
rauw-bug.ll SLPVectorizer: Fix stale for Value pointer array 2013-11-19 22:20:20 +00:00
reduction-crash.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
small-size.ll [vectorizer] Completely disable the block frequency guidance of the loop 2014-01-28 09:10:41 +00:00
struct-store.ll
tripcount.ll LoopVectorizer: Truncate i64 trip counts of i32 phis if necessary 2013-11-26 22:11:23 +00:00
uint64_to_fp64-cost-model.ll [X86][Vectorizer Cost Model] Correct vectorization cost model for v2i64->v2f64 2014-03-27 00:52:16 +00:00
unroll-pm.ll Disable unrolling in the loop vectorizer when disabled in the pass manager 2013-08-28 18:33:10 +00:00
unroll-small-loops.ll [vectorizer] Tweak the way we do small loop runtime unrolling in the 2014-01-31 10:51:08 +00:00
unroll_selection.ll LoopVectorizer: Implement a new heuristics for selecting the unroll factor. 2013-01-20 05:24:29 +00:00
vect.omp.force.ll [OPENMP][LV][D3423] Respect Hints.Force meta-data for loops in LoopVectorizer 2014-04-29 08:55:11 +00:00
vect.omp.force.small-tc.ll [OPENMP][LV][D3423] Respect Hints.Force meta-data for loops in LoopVectorizer 2014-04-29 08:55:11 +00:00
vector-scalar-select-cost.ll LoopVectorizer: Insert some white space to make test case more readable 2013-03-14 21:31:09 +00:00
vector_ptr_load_store.ll Formatting. 2013-02-05 15:32:16 +00:00
vectorization-remarks.ll Fix vectorization remarks. 2014-04-29 20:06:10 +00:00
x86_fp80-vector-store.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00