llvm-6502/lib/Transforms/Scalar
Andrew Trick c7b0b7dc8f Add support to indvars for optimizing sadd.with.overflow.
Split sadd.with.overflow into add + sadd.with.overflow to allow
analysis and optimization. This should ideally be done after
InstCombine, which can perform code motion (eventually indvars should
run after all canonical instcombines). We want ISEL to recombine the
add and the check, at least on x86.

This is currently under an option for reducing live induction
variables: -liv-reduce. The next step is reducing liveness of IVs that
are live out of the overflow check paths. Once the related
optimizations are fully developed, reviewed and tested, I do expect
this to become default.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197926 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-23 23:31:49 +00:00
..
ADCE.cpp
CMakeLists.txt Add a Scalarizer pass. 2013-11-22 16:58:05 +00:00
CodeGenPrepare.cpp
ConstantProp.cpp
CorrelatedValuePropagation.cpp
DCE.cpp
DeadStoreElimination.cpp
EarlyCSE.cpp Change std::deque => std::vector. No functionality change. 2013-12-05 18:42:12 +00:00
FlattenCFGPass.cpp
GlobalMerge.cpp
GVN.cpp Correct word hyphenations 2013-12-05 05:44:44 +00:00
IndVarSimplify.cpp Add support to indvars for optimizing sadd.with.overflow. 2013-12-23 23:31:49 +00:00
JumpThreading.cpp Don't eliminate a partially redundant load if it's in a landing pad. 2013-10-21 04:09:17 +00:00
LICM.cpp
LLVMBuild.txt Add proper dependencies to LLVMBuild.txt in llvm/lib. 2013-12-10 05:39:34 +00:00
LoopDeletion.cpp
LoopIdiomRecognize.cpp Don't #include heavy Dominators.h file in LoopInfo.h. This change reduces 2013-12-07 21:20:17 +00:00
LoopInstSimplify.cpp
LoopRerollPass.cpp Don't #include heavy Dominators.h file in LoopInfo.h. This change reduces 2013-12-07 21:20:17 +00:00
LoopRotation.cpp Don't #include heavy Dominators.h file in LoopInfo.h. This change reduces 2013-12-07 21:20:17 +00:00
LoopStrengthReduce.cpp Fix SCEVExpander: don't try to expand quadratic recurrences outside a loop. 2013-10-25 21:35:56 +00:00
LoopUnrollPass.cpp Don't #include heavy Dominators.h file in LoopInfo.h. This change reduces 2013-12-07 21:20:17 +00:00
LoopUnswitch.cpp Remove dead code from LoopUnswitch 2013-11-08 19:58:21 +00:00
LowerAtomic.cpp
Makefile
MemCpyOptimizer.cpp
PartiallyInlineLibCalls.cpp
Reassociate.cpp
Reg2Mem.cpp
SampleProfile.cpp Refactor some code in SampleProfile.cpp 2013-11-26 20:37:33 +00:00
Scalar.cpp Add a Scalarizer pass. 2013-11-22 16:58:05 +00:00
Scalarizer.cpp Fix Scalarizer insertion point when replacing PHIs with insertelements 2013-12-23 14:51:56 +00:00
ScalarReplAggregates.cpp Correct word hyphenations 2013-12-05 05:44:44 +00:00
SCCP.cpp
SimplifyCFGPass.cpp
Sink.cpp
SROA.cpp Fix an issue where SROA computed different results based on the relative 2013-11-19 09:03:18 +00:00
StructurizeCFG.cpp StructurizeCFG: Fix verification failure with some loops. 2013-11-22 19:24:39 +00:00
TailRecursionElimination.cpp