1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
llvm-mirror/lib/Transforms/IPO
Hal Finkel f8611de2a6 By default, use Early-CSE instead of GVN for vectorization cleanup.
As has been suggested by Duncan and others, Early-CSE and GVN should
do similar redundancy elimination, but Early-CSE is much less expensive.
Most of my autovectorization benchmarks show a performance regresion, but
all of these are < 0.1%, and so I think that it is still worth using
the less expensive pass.

llvm-svn: 154673
2012-04-13 17:15:33 +00:00
..
ArgumentPromotion.cpp
CMakeLists.txt
ConstantMerge.cpp Re-fix the issue Bill fixed in r147899 in a slightly different way, which doesn't abuse the semantics of linker_private. We don't really want to merge any string constant with a weak_odr global. 2012-01-11 22:06:46 +00:00
DeadArgumentElimination.cpp
ExtractGV.cpp
FunctionAttrs.cpp
GlobalDCE.cpp
GlobalOpt.cpp GlobalOpt: If we have an inbounds GEP from a ConstantAggregateZero global that we just determined to be constant, replace all loads from it with a zero value. 2012-03-28 14:50:09 +00:00
InlineAlways.cpp Fix a pretty scary bug I introduced into the always inliner with 2012-04-01 10:21:05 +00:00
Inliner.cpp Add two statistics to help track how we are computing the inline cost. 2012-04-11 10:15:10 +00:00
InlineSimple.cpp Remove a bunch of empty, dead, and no-op methods from all of these 2012-03-31 12:48:08 +00:00
Internalize.cpp Code-gen may inject code into the IR before it emits the ASM. The linker 2012-04-13 01:06:27 +00:00
IPConstantPropagation.cpp
IPO.cpp
LLVMBuild.txt Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
LoopExtractor.cpp
Makefile
MergeFunctions.cpp
PartialInlining.cpp
PassManagerBuilder.cpp By default, use Early-CSE instead of GVN for vectorization cleanup. 2012-04-13 17:15:33 +00:00
PruneEH.cpp [unwind removal] We no longer have 'unwind' instructions being generated, so 2012-02-06 21:16:41 +00:00
StripDeadPrototypes.cpp
StripSymbols.cpp