llvm-project/llvm/test/Transforms/SLPVectorizer/X86
Florian Hahn 3fd1cc2574
[SLP] Add Preheader to CSE blocks after hoisting CSE-able instrs.
Adding the pre-header to CSEBlocks ensures instructions are CSE'd even
after hoisting.

This was original discovered by @atrick a while ago.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D133649
2022-09-12 15:53:31 +01:00
..
PR31847.ll
PR32086.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
PR34635.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
PR35628_1.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
PR35628_2.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
PR35777.ll
PR35865-inseltpoison.ll
PR35865.ll
PR36280.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
PR39774.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
PR40310.ll [SLP]Improve reductions analysis and emission, part 1. 2022-05-02 12:03:58 -07:00
addsub.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
aggregate.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
align.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
alternate-calls-inseltpoison.ll [instcombine] Canonicalize constant index type to i64 for extractelement/insertelement 2021-12-13 16:56:22 -08:00
alternate-calls.ll [instcombine] Canonicalize constant index type to i64 for extractelement/insertelement 2021-12-13 16:56:22 -08:00
alternate-cast-inseltpoison.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
alternate-cast.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
alternate-cmp-swapped-pred.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
alternate-fp-inseltpoison.ll [instcombine] Canonicalize constant index type to i64 for extractelement/insertelement 2021-12-13 16:56:22 -08:00
alternate-fp.ll [instcombine] Canonicalize constant index type to i64 for extractelement/insertelement 2021-12-13 16:56:22 -08:00
alternate-int-inseltpoison.ll [SLP]Improve shuffles cost estimation where possible. 2022-06-24 09:28:01 -07:00
alternate-int.ll [SLP]Improve shuffles cost estimation where possible. 2022-06-24 09:28:01 -07:00
arith-abs.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-add-load.ll [SLP][X86] Add 32-bit vector stores to help vectorization opportunities 2022-06-30 20:25:50 +01:00
arith-add-saddo.ll
arith-add-ssat.ll [CostModel][X86] Adjust 256-bit select costs to account for slow BLENDV op 2022-05-06 11:27:37 +01:00
arith-add-uaddo.ll
arith-add-usat.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-add.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-and-const-load.ll [SLP][X86] Add 32-bit vector stores to help vectorization opportunities 2022-06-30 20:25:50 +01:00
arith-div-undef.ll [SLP][NFC]Add a test that reveals the problem in the emission of 2021-11-22 07:41:07 -08:00
arith-div.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-fix.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-fp-inseltpoison.ll [SLP]Do not emit extra shuffle for insertelements vectorization. 2021-08-05 08:41:24 -07:00
arith-fp.ll [SLP]Do not emit extra shuffle for insertelements vectorization. 2021-08-05 08:41:24 -07:00
arith-max-cost.ll [SLP] Fix for the min/max intrinsic cost. 2022-02-24 18:08:40 -08:00
arith-mul-load.ll [SLP][X86] Add 32-bit vector stores to help vectorization opportunities 2022-06-30 20:25:50 +01:00
arith-mul-smulo.ll
arith-mul-umulo.ll
arith-mul.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-smax.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-smin.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-sub-ssat.ll [CostModel][X86] Adjust 256-bit select costs to account for slow BLENDV op 2022-05-06 11:27:37 +01:00
arith-sub-ssubo.ll
arith-sub-usat.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-sub-usubo.ll
arith-sub.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
arith-umax.ll [CostModel][X86] Adjust SLM select costs to match poor throughput of pblendvb/blendvpd/blendvps 2022-08-18 17:05:38 +01:00
arith-umin.ll [CostModel][X86] Adjust SLM select costs to match poor throughput of pblendvb/blendvpd/blendvps 2022-08-18 17:05:38 +01:00
atomics.ll
bad-reduction.ll [SLP]Improve splats vectorization. 2021-07-30 10:17:45 -07:00
bad_types.ll
barriercall.ll Revert "[SLP]Do not schedule instructions with constants/argument/phi operands and external users." 2022-03-16 13:54:59 -07:00
bitreverse.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
blending-shuffle-inseltpoison.ll [NFC] Add 3 more -inseltpoison.ll test variations 2022-06-10 14:06:32 +01:00
blending-shuffle.ll [SLP]Improve reductions analysis and emission, part 1. 2022-05-02 12:03:58 -07:00
bool-mask.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
bottom-to-top-reorder.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
broadcast.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
broadcast_long.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
bswap.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
buildvector-same-lane-insert.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
buildvector-shuffle.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
c-ray.ll [SLP][X86] Add ray_sphere intersection methods from c-ray benchmark 2022-04-12 19:51:27 +01:00
call.ll [slp][tests] Add missing function attributes 2022-03-18 15:51:42 -07:00
cast.ll
catchswitch.ll Don't vectorize PHIs in catchswitch blocks 2022-07-19 06:10:17 -07:00
cmp-as-alternate-ops.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
cmp_commute-inseltpoison.ll [SLP]Alternate vectorization for cmp instructions. 2022-02-03 06:24:10 -08:00
cmp_commute.ll [SLP]Alternate vectorization for cmp instructions. 2022-02-03 06:24:10 -08:00
cmp_sel.ll
combined-stores-chains.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
commutativity.ll [SLP]Improve multinode analysis. 2021-12-14 06:01:52 -08:00
compare-reduce.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
consecutive-access.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
continue_vectorizing.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
control-dependence.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
crash_7zip.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
crash_binaryop.ll
crash_bullet.ll [SLP]Cost for a constant buildvector. 2022-08-19 08:02:42 -07:00
crash_bullet3.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
crash_cmpop.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
crash_dequeue.ll
crash_exceed_scheduling.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
crash_flop7.ll
crash_gep.ll
crash_lencod-inseltpoison.ll [NFC] Add 3 more -inseltpoison.ll test variations 2022-06-10 14:06:32 +01:00
crash_lencod.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
crash_mandeltext.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
crash_netbsd_decompress.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
crash_reordering_undefs.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
crash_scheduling-inseltpoison.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
crash_scheduling.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
crash_sim4b1.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
crash_smallpt.ll Revert "[SLP]Do not emit extract elements for insertelements users, replace with shuffles directly." 2022-05-21 21:00:01 +01:00
crash_undef_mask_elem.ll [SLP]Fix PR52090: clang crashes: Assertion `Index < Length && "Invalid index!"' failed. 2021-10-14 14:26:29 -07:00
crash_vectorizeTree.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
cross_block_slp.ll Revert "[SLP]Do not schedule instructions with constants/argument/phi operands and external users." 2022-03-16 13:54:59 -07:00
cse.ll [SLP] Add Preheader to CSE blocks after hoisting CSE-able instrs. 2022-09-12 15:53:31 +01:00
ctlz.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
ctpop.ll [CostModel][X86] Update CTPOP costs 2022-09-10 17:57:20 +01:00
cttz.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
cycle_dup.ll Revert "[SLP]Do not schedule instructions with constants/argument/phi operands and external users." 2022-03-16 13:54:59 -07:00
debug_info.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
diamond.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
diamond_broadcast.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
diamond_broadcast_extra_shuffle.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
different-vec-widths.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
dot-product.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
external_user.ll Revert "[SLP]Do not schedule instructions with constants/argument/phi operands and external users." 2022-03-16 13:54:59 -07:00
external_user_jumbled_load-inseltpoison.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
external_user_jumbled_load.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
extract-scalar-from-undef.ll [SLP][NFC]Add a test for extracting scalar from undef result vector, 2022-05-23 06:43:37 -07:00
extract-shuffle-inseltpoison.ll Revert "[SLP] Remove cap on schedule window size" 2022-02-23 13:12:07 -08:00
extract-shuffle.ll Revert "[SLP] Remove cap on schedule window size" 2022-02-23 13:12:07 -08:00
extract.ll [SLP]Improve graph reordering. 2021-09-20 08:42:19 -07:00
extract_in_tree_user.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
extract_with_non_const_index.ll [SLPVectorizer][Test] Add test for extractelements with (non)const indices (NFC) 2021-08-31 16:14:26 +03:00
extractcost.ll [SLP]Improve splats vectorization. 2021-07-30 10:17:45 -07:00
extractelement-multiple-uses.ll [SLP][X86] extractelement tests - use -mattr=avx2 instead of a -march flag 2022-04-30 19:51:24 +01:00
extractelement.ll [SLP]Fix PR51320: Try to vectorize single store operands. 2022-08-16 07:25:21 -07:00
extracts-with-undefs.ll [SLP]Further improvement of the cost model for scalars used in buildvectors. 2022-05-11 06:08:55 -07:00
fabs-cost-softfp.ll [NFC] Correct typo `interger` to `integer` 2022-02-17 21:17:47 +08:00
fabs.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
fcopysign.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
flag.ll
float-min-max.ll
fma.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
fmaxnum.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
fminnum.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
fmuladd.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
fptosi-inseltpoison.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
fptosi.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
fptoui.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
fround.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
funclet.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
gather-extractelements-different-bbs.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
gather-move-out-of-loop.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
gep.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
gep_mismatch.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
geps-non-pow-2.ll Revert "[SLP]Do not schedule instructions with constants/argument/phi operands and external users." 2022-03-16 13:54:59 -07:00
hadd-inseltpoison.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
hadd.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
hoist.ll
horizontal-list.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
horizontal-minmax.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
horizontal-smax.ll [CostModel][X86] getCmpSelInstrCost - treat BAD_PREDICATEs the same as the worst case cost predicates for ICMP/FCMP instructions 2021-10-06 10:14:56 +01:00
horizontal.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
hsub-inseltpoison.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
hsub.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
implicitfloat.ll
in-tree-user.ll
insert-after-bundle.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
insert-crash-index.ll [SLP] Simplify indices processing for insertelements 2022-02-14 14:50:44 +03:00
insert-element-build-vector-const-undef.ll [SLP]Introduce isUndefVector function to check for undef vectors. 2021-12-01 07:46:10 -08:00
insert-element-build-vector-inseltpoison.ll [SLP]Delay vectorization of postponable values for instructions with no users. 2022-08-19 08:39:16 -07:00
insert-element-build-vector.ll [SLP]Delay vectorization of postponable values for instructions with no users. 2022-08-19 08:39:16 -07:00
insert-element-multiple-uses.ll
insert-shuffle.ll [SLP]Improve reordering of clustered reused scalars. 2022-09-12 06:52:25 -07:00
insertelement-postpone.ll [SLP]Delay vectorization of postponable values for instructions with no users. 2022-08-19 08:39:16 -07:00
insertvalue.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
inst_size_bug.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
intrinsic.ll Revert @llvm.isnan intrinsic patchset. 2021-09-02 13:53:56 +03:00
intrinsic_with_scalar_param.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
jumbled-load-multiuse.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
jumbled-load-shuffle-placement.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
jumbled-load-used-in-phi.ll [SLP]Fix PR55653: emit undefs where required, not poison. 2022-05-26 08:38:50 -07:00
jumbled-load.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
jumbled_store_crash.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
landing_pad.ll [SLP] "Normal" instructions should not go between PHI and Lading pad 2022-02-26 11:44:26 +07:00
limit.ll [NewPM][test] Avoid using -enable-new-pm=1 since -passes implies new PM 2021-10-20 15:16:17 +02:00
lit.local.cfg
load-bitcast-vec.ll
load-merge-inseltpoison.ll [SLP]Improve shuffles cost estimation where possible. 2022-06-24 09:28:01 -07:00
load-merge.ll [SLP]Improve shuffles cost estimation where possible. 2022-06-24 09:28:01 -07:00
load-partial-vector-shuffle.ll [SLP] add test for load combining + shuffling; NFC 2022-07-04 10:55:07 -04:00
long_chains.ll
lookahead.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
loopinvariant.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
malformed_phis.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
matched-shuffled-entries.ll [SLP]Improve reductions analysis and emission, part 1. 2022-05-02 12:03:58 -07:00
memory-runtime-checks.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
metadata.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
minimum-sizes.ll [instcombine] Canonicalize constant index type to i64 for extractelement/insertelement 2021-12-13 16:56:22 -08:00
multi_block.ll Revert "[SLP]Do not schedule instructions with constants/argument/phi operands and external users." 2022-03-16 13:54:59 -07:00
multi_user.ll [SLP]Improve splats vectorization. 2021-07-30 10:17:45 -07:00
no_alternate_divrem.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
odd_store.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
opaque-ptr-2.ll [SLPVectorizer][OpaquePtrs] Check GEP source element type 2022-02-16 14:47:20 -08:00
opaque-ptr.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
operandorder.ll Recommit "[SLP] Fix lookahead operand reordering for splat loads." attempt 3, fixed assertion crash. 2022-03-23 18:32:17 -07:00
opt.ll
ordering-bug.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
ordering.ll
partail.ll [SLP]Fix PR55653: emit undefs where required, not poison. 2022-05-26 08:38:50 -07:00
phi-undef-input.ll [SLP][NFC] Precommit test for followup patch that fixes vector phi poison input. 2022-06-06 10:00:27 -07:00
phi.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
phi3.ll
phi_landingpad.ll
phi_overalignedtype.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
powi-regression.ll [SLP] Add cost model for `llvm.powi.*` intrinsics (REAPPLIED) 2022-06-24 10:23:19 +00:00
powi.ll [SLP] Add cost model for `llvm.powi.*` intrinsics (REAPPLIED) 2022-06-24 10:23:19 +00:00
powof2div.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
powof2mul.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
pr16571.ll
pr16628.ll
pr16899.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
pr18060.ll
pr19657.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
pr23510.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
pr27163.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
pr31599-inseltpoison.ll
pr31599.ll
pr35497.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
pr40522.ll [instcombine] Canonicalize constant index type to i64 for extractelement/insertelement 2021-12-13 16:56:22 -08:00
pr42022-inseltpoison.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
pr42022.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
pr44067-inseltpoison.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
pr44067.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
pr46983.ll [InstCombine] Canonicalize SPF to min/max intrinsics 2022-02-24 09:01:20 +01:00
pr47623.ll [SLP]Do not try to generate ScatterVectorize if it will be scalarized. 2022-05-25 14:25:07 -07:00
pr47629-inseltpoison.ll [SLP]Extend vectorization for scatter vectorize nodes. 2022-06-16 06:05:48 -07:00
pr47629.ll [SLP]Extend vectorization for scatter vectorize nodes. 2022-06-16 06:05:48 -07:00
pr47642.ll Revert "[SLP]Do not schedule instructions with constants/argument/phi operands and external users." 2022-03-16 13:54:59 -07:00
pr48879-sroa.ll [SLP]Delay vectorization of postponable values for instructions with no users. 2022-08-19 08:39:16 -07:00
pr49081.ll [instcombine] Canonicalize constant index type to i64 for extractelement/insertelement 2021-12-13 16:56:22 -08:00
pr49933.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
pr52275.ll [SLP] Don't try to vectorize pair with insertelement 2022-02-15 16:12:59 +03:00
pr54465.ll [test] Add regression test from pr54465 2022-03-21 10:49:27 -07:00
propagate_ir_flags.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
reassociated-loads.ll
reduction-logical.ll [SLP]Improve reordering of clustered reused scalars. 2022-09-12 06:52:25 -07:00
reduction-min-select.ll [SLP]Add an extra check for select minmax reduction to avoid crash. 2022-05-17 06:05:52 -07:00
reduction-same-vals.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
reduction-transpose.ll [SLP][X86] Add test coverage for Issue #51088 2022-05-06 14:49:47 +01:00
reduction.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
reduction2.ll
reduction_loads.ll [SLP]Improve reductions analysis and emission, part 1. 2022-05-02 12:03:58 -07:00
reduction_unrolled.ll [SLP]Improve reductions analysis and emission, part 1. 2022-05-02 12:03:58 -07:00
redux-feed-buildvector.ll [SLP] Try to match reductions before trying to vectorize a vector build sequence. 2022-08-29 13:32:14 -07:00
redux-feed-insertelement.ll [SLP][NFC] Add a coverage test for horizontal reductions. 2022-08-25 16:02:22 -07:00
remark_alternate.ll [SLP]Improve analysis/emission of vector operands for alternate nodes. 2021-11-26 06:38:02 -08:00
remark_extract_broadcast.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
remark_horcost.ll [SLP]Fix PR55688: Miscompile due to incorrect nuw/nsw handling. 2022-05-25 13:59:06 -07:00
remark_listcost.ll [tests] Refresh autogen tests for SLP 2022-01-24 17:05:58 -08:00
remark_not_all_parts.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
remark_unsupported.ll
reorder-phi-operand.ll [SLP]Fix PR56251: Do not remove the reordering from the root node, being used as an operand. 2022-06-28 13:42:05 -07:00
reorder-reused-masked-gather.ll [SLP]Fix a crash when reorder masked gather nodes with reused scalars. 2022-06-23 11:32:30 -07:00
reorder-reused-masked-gather2.ll Additional regression test for a crash during reorder masked gather nodes 2022-07-19 19:03:53 +07:00
reorder_diamond_match.ll [SLP] Improve reordering in presence of constant only nodes. 2022-06-15 06:17:34 -07:00
reorder_phi.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
reorder_repeated_ops.ll [SLP]Improve reductions analysis and emission, part 1. 2022-05-02 12:03:58 -07:00
reorder_with_external_users.ll Recommit "[SLP][X86] Improve reordering to consider alternate instruction bundles" 2022-06-21 18:35:29 -07:00
reorder_with_reordered_users.ll [SLP] Fix crash caused by reorderBottomToTop(). 2022-05-24 12:24:19 -07:00
reordered-top-scalars.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
resched.ll [SLP]Improve shuffles cost estimation where possible. 2022-06-24 09:28:01 -07:00
return.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
reuse-extracts-in-wider-vect.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
reused-undefs.ll [SLP]Fix PR52756: SLPVectorizer crashes with assertion VecTy == FinalVecTy. 2021-12-20 07:21:20 -08:00
revectorized_rdx_crash.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
reverse_extract_elements.ll
rgb_phi.ll Revert "[SLP]Do not schedule instructions with constants/argument/phi operands and external users." 2022-03-16 13:54:59 -07:00
root-trunc-extract-reuse.ll [SLP]Use original vector if need to shuffle truncated root. 2022-06-16 10:41:18 -07:00
saxpy.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
scatter-vectorize-reorder.ll [SLP] Improve reordering in presence of constant only nodes. 2022-06-15 06:17:34 -07:00
scatter-vectorize-reused-pointer.ll [SLP]Fix PR57447: Assertion `!getTreeEntry(V) && "Scalar already in tree!"' failed. 2022-08-30 12:30:14 -07:00
schedule-bundle.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
schedule_budget.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
scheduling.ll [SLP]Fix PR55688: Miscompile due to incorrect nuw/nsw handling. 2022-05-25 13:59:06 -07:00
several_store_chains.ll
sext-inseltpoison.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
sext.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
shift-ashr.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
shift-lshr.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
shift-shl.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
shrink_after_reorder.ll [SLP]Fix PR55653: emit undefs where required, not poison. 2022-05-26 08:38:50 -07:00
shrink_after_reorder2.ll [SLP]Fix PR55653: emit undefs where required, not poison. 2022-05-26 08:38:50 -07:00
shuffled-gathers-diff-size.ll [SLP][NFC]Add a test for shuffled entries with different vector sizes, 2021-12-27 07:35:35 -08:00
sign-extend-inseltpoison.ll
sign-extend.ll
simple-loop.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
simplebb.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
sitofp-inseltpoison.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
sitofp.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
slp-fma-loss.ll [SLP][NFC] Pre-commit test showing vectorization preventing FMA 2022-05-19 06:57:24 -07:00
slp-throttle.ll [SLP]Do not vectorize non-profitable alternate nodes. 2022-05-13 14:28:54 -07:00
split-load8_2-unord.ll [SLP] Cluster ordering for loads 2022-05-07 14:38:11 +01:00
split-load8_2_unord_geps.ll [SLP]Extend vectorization for scatter vectorize nodes. 2022-06-16 06:05:48 -07:00
sqrt.ll Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" (try 3) 2022-03-25 10:39:23 -07:00
stacksave-dependence.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
store-jumbled.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
stores-non-ordered.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
stores_constant_float.ll [SLP]Fix PR57322: vectorize constant float stores. 2022-08-29 11:02:53 -07:00
stores_vectorize.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
supernode.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
tiny-tree.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
uitofp.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
undef_vect.ll [SLP]Fix PR55734: SLP vectorizer's reduce_and formation introduces poison. 2022-09-01 05:34:45 -07:00
unreachable.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
used-reduced-op.ll [SLP]Improve reductions vectorization. 2022-05-18 13:22:18 -07:00
value-bug-inseltpoison.ll [SLP]Do not emit extra shuffle for insertelements vectorization. 2021-08-05 08:41:24 -07:00
value-bug.ll
vec_list_bias-inseltpoison.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
vec_list_bias.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
vec_list_bias_external_insert_shuffled.ll [SLP]Improve lookup of the buildvector top insertelement instruction. 2022-08-29 08:19:52 -07:00
vect_copyable_in_binops.ll [SLP]Try partial store vectorization if supported by target. 2022-05-09 09:48:15 -07:00
vector.ll
vector_gep.ll
vectorize-cmps.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
vectorize-pair-path.ll [SLP] Steer for the best chance in tryToVectorize() when rooting with binary ops. 2022-04-25 12:25:33 -07:00
vectorize-reorder-alt-shuffle.ll [SLP]Fix PR55653: emit undefs where required, not poison. 2022-05-26 08:38:50 -07:00
vectorize-reorder-reuse.ll [SLP]Improve reductions analysis and emission, part 1. 2022-05-02 12:03:58 -07:00
vectorize-reordered-list.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
vectorize-widest-phis.ll [SLP]Do not emit extract elements for insertelements users, replace with shuffles directly. 2022-05-23 07:06:45 -07:00
zext-inseltpoison.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00
zext.ll [slp] Delete dead scalar instructions feeding vectorized instructions 2022-03-28 20:10:13 -07:00