1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/test/Transforms/LoopVectorize
Diego Caballero 6f85fab6b9 [LV][VPlan] Detect outer loops for explicit vectorization.
Patch #2 from VPlan Outer Loop Vectorization Patch Series #1
(RFC: http://lists.llvm.org/pipermail/llvm-dev/2017-December/119523.html).

This patch introduces the basic infrastructure to detect, legality check
and process outer loops annotated with hints for explicit vectorization.
All these changes are protected under the feature flag
-enable-vplan-native-path. This should make this patch NFC for the existing
inner loop vectorizer.

Reviewers: hfinkel, mkuper, rengolin, fhahn, aemerson, mssimpso.

Differential Revision: https://reviews.llvm.org/D42447

llvm-svn: 330739
2018-04-24 17:04:17 +00:00
..
AArch64 Make test agnostic to cost model 2018-02-27 05:41:16 +00:00
AMDGPU
ARM [ARM] add loop vectorizer test based on 482.sphinx3 from SPEC2006; NFC 2018-02-27 18:33:24 +00:00
Hexagon [LV] Introduce TTI::getMinimumVF 2018-04-13 20:16:32 +00:00
PowerPC
SystemZ
X86 Revert r325687 (workaround for PR36032). 2018-03-22 22:04:39 +00:00
XCore
12-12-11-if-conv.ll
2012-10-20-infloop.ll
2012-10-22-isconsec.ll
2016-07-27-loop-vec.ll
align.ll
bsd_regex.ll
bzip_reverse_loops.ll
calloc.ll
cast-induction.ll
conditional-assignment.ll [LV] Move isLegalMasked* functions from Legality to CostModel 2018-02-26 11:06:36 +00:00
consec_no_gep.ll
consecutive-ptr-uniforms.ll [InstCombine] reassociate loop invariant GEP chains to enable LICM 2018-03-26 16:19:31 +00:00
control-flow.ll
cpp-new-array.ll
dbg.value.ll
dead_instructions.ll
debugloc.ll
diag-missing-instr-debug-loc.ll
diag-with-hotness-info-2.ll
diag-with-hotness-info.ll
discriminator.ll
duplicated-metadata.ll
ee-crash.ll
exact.ll
explicit_outer_detection.ll [LV][VPlan] Detect outer loops for explicit vectorization. 2018-04-24 17:04:17 +00:00
explicit_outer_nonuniform_inner.ll [LV][VPlan] Detect outer loops for explicit vectorization. 2018-04-24 17:04:17 +00:00
explicit_outer_uniform_diverg_branch.ll [LV][VPlan] Detect outer loops for explicit vectorization. 2018-04-24 17:04:17 +00:00
fcmp-vectorize.ll
first-order-recurrence.ll
flags.ll
float-induction.ll
float-reduction.ll
funcall.ll
gcc-examples.ll
gep_with_bitcast.ll
global_alias.ll
hints-trans.ll
hoist-loads.ll [LV] Move isLegalMasked* functions from Legality to CostModel 2018-02-26 11:06:36 +00:00
i8-induction.ll
icmp-uniforms.ll
if-conv-crash.ll
if-conversion-edgemasks.ll
if-conversion-nest.ll
if-conversion-reduction.ll
if-conversion.ll
if-pred-non-void.ll
if-pred-not-when-safe.ll
if-pred-stores.ll
incorrect-dom-info.ll
increment.ll
induction_plus.ll
induction-step.ll
induction.ll
infiniteloop.ll
int_sideeffect.ll
interleaved-accesses-1.ll
interleaved-accesses-2.ll
interleaved-accesses-3.ll
interleaved-accesses-alias.ll
interleaved-accesses-pred-stores.ll
interleaved-accesses.ll
interleaved-acess-with-remarks.ll [LV] Fix analyzeInterleaving when -pass-remarks enabled 2018-02-10 00:07:45 +00:00
intrinsic.ll
iv_outside_user.ll
lcssa-crash.ll
legal_preheader_check.ll [LV] Remove unnecessary DoExtraAnalysis guard (silent bug) 2017-12-20 13:28:38 +00:00
lifetime.ll
loop-form.ll
loop-scalars.ll
loop-vect-memdep.ll
memdep.ll
metadata-unroll.ll
metadata-width.ll
metadata.ll
miniters.ll
minmax_reduction.ll
multi-use-reduction-bug.ll
multiple-address-spaces.ll
multiple-strides-vectorization.ll
no_array_bounds.ll
no_idiv_reduction.ll
no_int_induction.ll
no_outside_user.ll
no_switch.ll
noalias-md-licm.ll
noalias-md.ll
nofloat.ll
non-const-n.ll
nontemporal.ll
nsw-crash.ll
opt.ll
optsize.ll
partial-lcssa.ll
phi-cost.ll
phi-hang.ll
pr25281.ll
pr28541.ll
pr30654-phiscev-sext-trunc.ll Revert r325687 (workaround for PR36032). 2018-03-22 22:04:39 +00:00
pr31098.ll
pr31190.ll
pr32859.ll
pr33706.ll
pr34681.ll
pr35743.ll [NFC] Add tests for PR35743 2018-02-05 08:09:49 +00:00
pr35773.ll Revert r325687 (workaround for PR36032). 2018-03-22 22:04:39 +00:00
pr36311.ll [LV] Adding test for r327109 2018-03-09 18:02:36 +00:00
ptr_loops.ll
ptr-induction.ll
read-only.ll
reduction-small-size.ll [LV] Use Demanded Bits and ValueTracking for reduction type-shrinking 2018-02-04 15:42:24 +00:00
reduction.ll
reverse_induction.ll
reverse_iter.ll
runtime-check-address-space.ll
runtime-check-readonly-address-space.ll
runtime-check-readonly.ll
runtime-check.ll
runtime-limit.ll
safegep.ll
same-base-access.ll
scalar_after_vectorization.ll
scalar-select.ll
scev-exitlim-crash.ll
simple-unroll.ll
small-loop.ll
start-non-zero.ll
store-shuffle-bug.ll
struct_access.ll
tbaa-nodep.ll
tripcount.ll Verify profile data confirms large loop trip counts. 2018-02-07 23:29:52 +00:00
undef-inst-bug.ll
unroll_novec.ll
unroll-novec-memcheck-metadata.ll
unroll.ll
unsafe-dep-remark.ll
unsized-pointee-crash.ll
value-ptr-bug.ll
vect-phiscev-sext-trunc.ll Revert r325687 (workaround for PR36032). 2018-03-22 22:04:39 +00:00
vect.omp.persistence.ll
vect.stats.ll
vector-geps.ll
vectorize-once.ll
version-mem-access.ll
write-only.ll
zero-sized-pointee-crash.ll