llvm-project/llvm/test/Transforms/SLPVectorizer/X86
Nadav Rotem 2041b742d4 SLPVectorizer: Implement DCE as part of vectorization.
This is a complete re-write if the bottom-up vectorization class.
Before this commit we scanned the instruction tree 3 times. First in search of merge points for the trees. Second, for estimating the cost. And finally for vectorization.
There was a lot of code duplication and adding the DCE exposed bugs. The new design is simpler and DCE was a part of the design.
In this implementation we build the tree once. After that we estimate the cost by scanning the different entries in the constructed tree (in any order). The vectorization phase also works on the built tree.

llvm-svn: 185774
2013-07-07 06:57:07 +00:00
..
barriercall.ll Remove unused function attributes. 2013-04-14 05:47:04 +00:00
cast.ll SLPVectorize: Add support for vectorization of casts. 2013-04-21 08:05:59 +00:00
cmp_sel.ll SLPVectorizer: vectorize compares and selects. 2013-06-19 05:49:52 +00:00
compare-reduce.ll SLPVectorizer: Add support for vectorizing trees that start at compare instructions. 2013-04-15 04:25:27 +00:00
crash_7zip.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_bullet.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_bullet2.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_dequeue.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_flop7.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_lame.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_lencod.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_lencod2.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_mandeltext.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_povray.ll SLPVectorizer: Change the order in which new instructions are added to the function. 2013-05-22 19:47:32 +00:00
crash_rc4.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_sim4b1.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_smallpt.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
crash_smallpt2.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
cross_block_slp.ll SLPVectorization: Add a basic support for cross-basic block slp vectorization. 2013-06-20 17:41:45 +00:00
cse.ll SLP Vectorizer: Add support for trees with external users. 2013-06-28 22:07:09 +00:00
diamond.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
external_user.ll SLP Vectorizer: Add support for trees with external users. 2013-06-28 22:07:09 +00:00
extract.ll SLPVectorizer: handle scalars that are extracted from vectors (using ExtractElementInst). 2013-06-19 17:33:16 +00:00
flag.ll Remove unused function attributes. 2013-04-14 05:47:04 +00:00
hoist.ll SLPVectorizer: Make it a function pass and add code for hoisting the vector-gather sequence out of loops. 2013-04-15 22:00:26 +00:00
in-tree-user.ll SLPVectorizer: Change the order in which new instructions are added to the function. 2013-05-22 19:47:32 +00:00
lit.local.cfg
long_chains.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
loopinvariant.ll TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
multi_block.ll SLP Vectorizer: Implement multi-block slp-vectorization. 2013-06-22 21:34:10 +00:00
multi_user.ll SLP Vectorizer: Implement multi-block slp-vectorization. 2013-06-22 21:34:10 +00:00
odd_store.ll SLPVectorizer: start constructing chains at stores that are not power of two. 2013-06-19 15:57:29 +00:00
ordering.ll SLPVectorizer: Change the order in which new instructions are added to the function. 2013-05-22 19:47:32 +00:00
phi.ll SLP Vectorizer: Add support for trees with external users. 2013-06-28 22:07:09 +00:00
reduction.ll Revert "Recommit r179497 after fixing uninitialized variable." until 2013-04-15 07:31:37 +00:00
reduction2.ll Revert "Recommit r179497 after fixing uninitialized variable." until 2013-04-15 07:31:37 +00:00
saxpy.ll SLPVectorizer: Implement DCE as part of vectorization. 2013-07-07 06:57:07 +00:00
simple-loop.ll Remove unused function attributes. 2013-04-14 05:47:04 +00:00
simplebb.ll Remove unused function attributes. 2013-04-14 05:47:04 +00:00
vector.ll Fix PR15800. Do not try to vectorize vectors and structs. 2013-04-20 22:29:43 +00:00