llvm-6502/test/Transforms/SLPVectorizer/X86
Hal Finkel 6c15862fd3 [SLPVectorize] Basic ephemeral-value awareness
The SLP vectorizer should not vectorize ephemeral values. These are used to
express information to the optimizer, and vectorizing them does not lead to
faster code (because the ephemeral values are dropped prior to code generation,
vectorized or not), and obscures the information the instructions are
attempting to communicate (the logic that interprets the arguments to
@llvm.assume generically does not understand vectorized conditions).

Also, uses by ephemeral values are free (because they, and the necessary
extractelement instructions, will be dropped prior to code generation).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219816 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-15 17:35:01 +00:00
..
addsub.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
align.ll SLPVectorizer: Use the type of the value loaded/stored to get the ABI alignment 2014-08-07 22:47:27 +00:00
barriercall.ll
call.ll
cast.ll
cmp_sel.ll
compare-reduce.ll
consecutive-access.ll
continue_vectorizing.ll
crash_7zip.ll
crash_binaryop.ll Fix: SLPVectorizer tried to move an instruction which was replaced by a vector instruction. 2014-08-28 07:04:02 +00:00
crash_bullet3.ll
crash_bullet.ll
crash_dequeue.ll
crash_flop7.ll
crash_gep.ll Revert r210342 and r210343, add test case for the crasher. 2014-08-26 19:06:41 +00:00
crash_lencod.ll
crash_mandeltext.ll
crash_netbsd_decompress.ll
crash_scheduling.ll
crash_sim4b1.ll
crash_smallpt.ll
crash_vectorizeTree.ll
cross_block_slp.ll
cse.ll
cycle_dup.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
debug_info.ll Revert "Revert "DI: Fold constant arguments into a single MDString"" 2014-10-03 20:01:09 +00:00
diamond.ll
external_user.ll
extract_in_tree_user.ll Generate extract for in-tree uses if the use is scalar operand in vectorized instruction. radar://18144665 2014-09-02 21:00:39 +00:00
extract.ll
extractcost.ll
flag.ll
gep.ll [SLP] Re-enable vectorization of GEP expressions (re-apply r210342 with a fix). 2014-08-27 15:01:18 +00:00
hoist.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
horizontal.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
implicitfloat.ll
in-tree-user.ll
insert-element-build-vector.ll [SLPVectorize] Basic ephemeral-value awareness 2014-10-15 17:35:01 +00:00
intrinsic.ll
lit.local.cfg
long_chains.ll
loopinvariant.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
metadata.ll
multi_block.ll
multi_user.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
non-vectorizable-intrinsic.ll
odd_store.ll
operandorder.ll
opt.ll
ordering.ll
phi3.ll
phi_landingpad.ll
phi_overalignedtype.ll
phi.ll
powof2div.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
pr16571.ll
pr16628.ll
pr16899.ll
pr18060.ll
pr19657.ll
propagate_ir_flags.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
reduction2.ll
reduction.ll
rgb_phi.ll
saxpy.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
scheduling.ll Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
simple-loop.ll
simplebb.ll
tiny-tree.ll
unreachable.ll fix: SLPVectorizer crashes for unreachable blocks containing not schedulable instructions. 2014-08-22 01:18:39 +00:00
value-bug.ll
vector.ll