llvm-project/llvm/test/Transforms/LoopVectorize/X86
Craig Topper 0d797a34d8 [X86] Add support for passing 'prefer-vector-width' function attribute into X86Subtarget and exposing via X86's getRegisterWidth TTI interface.
This will cause the vectorizers to do some limiting of the vector widths they create. This is not a strict limit. There are reasons I know of that the loop vectorizer will generate larger vectors for.

I've written this in such a way that the interface will only return a properly supported width(0/128/256/512) even if the attribute says something funny like 384 or 10.

This has been split from D41895 with the remainder in a follow up commit.

llvm-svn: 323015
2018-01-20 00:26:08 +00:00
..
already-vectorized.ll [Loop Vectorize] Added a separate metadata 2017-08-20 10:32:41 +00:00
assume.ll
avx1.ll
avx512.ll [X86] Add support for passing 'prefer-vector-width' function attribute into X86Subtarget and exposing via X86's getRegisterWidth TTI interface. 2018-01-20 00:26:08 +00:00
consecutive-ptr-cg-bug.ll Move Transforms/LoopVectorize/consecutive-ptr-cg-bug.ll into the X86 subdirectory 2017-12-16 05:10:20 +00:00
consecutive-ptr-uniforms.ll Support arbitrary address space pointers in masked gather/scatter intrinsics. 2017-05-03 12:28:54 +00:00
constant-vector-operand.ll
conversion-cost.ll
cost-model.ll
float-induction-x86.ll [SimplifyCFG] use pass options and remove the latesimplifycfg pass 2017-10-28 18:43:07 +00:00
force-ifcvt.ll
fp32_to_uint32-cost-model.ll
fp64_to_uint32-cost-model.ll Revert "r306473 - re-commit r306336: Enable vectorizer-maximize-bandwidth by default." 2017-07-01 03:24:09 +00:00
fp_to_sint8-cost-model.ll
funclet.ll
gather-cost.ll
gather-vs-interleave.ll [Loop Vectorizer] Cost-based decision for vectorization form of memory instruction. 2017-02-08 19:25:23 +00:00
gather_scatter.ll Support arbitrary address space pointers in masked gather/scatter intrinsics. 2017-05-03 12:28:54 +00:00
gcc-examples.ll Revert "r306473 - re-commit r306336: Enable vectorizer-maximize-bandwidth by default." 2017-07-01 03:24:09 +00:00
illegal-parallel-loop-uniform-write.ll
imprecise-through-phis.ll
int128_no_gather.ll [X86] Remove PCOMMIT instruction support since Intel has deprecated this instruction with no plans to release products with it. 2017-02-08 05:45:39 +00:00
interleaving.ll [X86] enable memory interleaving for X86\SLM arch. 2017-01-25 09:14:48 +00:00
lit.local.cfg
masked_load_store.ll Revert "r306473 - re-commit r306336: Enable vectorizer-maximize-bandwidth by default." 2017-07-01 03:24:09 +00:00
max-mstore.ll
metadata-enable.ll Changed basic cost of store operation on X86 2017-08-20 12:34:29 +00:00
min-trip-count-switch.ll
mul_slm_16bit.ll [X86] fixing failed test in commit: r291657 2017-01-11 09:03:11 +00:00
no-vector.ll
no_fpmath.ll Revert "r306473 - re-commit r306336: Enable vectorizer-maximize-bandwidth by default." 2017-07-01 03:24:09 +00:00
no_fpmath_with_hotness.ll Revert "r306473 - re-commit r306336: Enable vectorizer-maximize-bandwidth by default." 2017-07-01 03:24:09 +00:00
parallel-loops-after-reg2mem.ll
parallel-loops.ll
powof2div.ll
pr34438.ll LoopVectorize: MaxVF should not be larger than the loop trip count 2017-09-04 08:35:13 +00:00
propagate-metadata.ll
ptr-indvar-crash.ll
rauw-bug.ll
reduction-crash.ll Revert "r306473 - re-commit r306336: Enable vectorizer-maximize-bandwidth by default." 2017-07-01 03:24:09 +00:00
reduction-small-size.ll [LV] Ignore the cost of values that will not appear in the vectorized loop 2017-12-12 08:57:43 +00:00
reg-usage-debug.ll
reg-usage.ll [LV] Avoid computing the register usage for default VF. NFC 2017-09-13 19:35:45 +00:00
register-assumption.ll
scatter_crash.ll Support arbitrary address space pointers in masked gather/scatter intrinsics. 2017-05-03 12:28:54 +00:00
slm-no-vectorize.ll llvm/test/Transforms/LoopVectorize/X86/slm-no-vectorize.ll: -debug is available in +Asserts. 2017-07-02 14:25:27 +00:00
small-size.ll Improve profile-guided heuristics to use estimated trip count. 2017-06-19 18:48:58 +00:00
strided_load_cost.ll
struct-store.ll
svml-calls-finite.ll [TLI] Add mapping for various '__<func>_finite' forms of the math routines to SVML routines 2017-05-12 22:11:26 +00:00
svml-calls.ll
tripcount.ll
uint64_to_fp64-cost-model.ll
uniform-phi.ll
uniform_load.ll
uniformshift.ll
unroll-pm.ll
unroll-small-loops.ll
unroll_selection.ll
veclib-calls.ll
vect.omp.force.ll
vect.omp.force.small-tc.ll [LV] Optimize for size when vectorizing loops with tiny trip count 2017-06-30 08:02:35 +00:00
vector-scalar-select-cost.ll
vector_max_bandwidth.ll [LV] Clamp the VF to the trip count 2017-09-12 16:32:45 +00:00
vector_ptr_load_store.ll
vectorization-remarks-loopid-dbg.ll [Loop Vectorize] Added a separate metadata 2017-08-20 10:32:41 +00:00
vectorization-remarks-missed.ll [Loop Vectorize] Added a separate metadata 2017-08-20 10:32:41 +00:00
vectorization-remarks-profitable.ll [LV] These remark should have been missed remarks 2017-03-01 04:31:15 +00:00
vectorization-remarks.ll [Loop Vectorize] Added a separate metadata 2017-08-20 10:32:41 +00:00
vectorize-only-for-real.ll
x86-predication.ll [LV] Introduce VPBlendRecipe, VPWidenMemoryInstructionRecipe 2017-11-14 12:09:30 +00:00
x86_fp80-vector-store.ll