llvm/lib/Transforms/Scalar
Chris Lattner e34537856a add a new SimplifyInstruction API, which is like ConstantFoldInstruction,
except that the result may not be a constant.  Switch jump threading to 
use it so that it gets things like (X & 0) -> 0, which occur when phi preds
are deleted and the remaining phi pred was a zero.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86637 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-10 01:08:51 +00:00
..
ABCD.cpp Fix DenseMap iterator constness. 2009-11-10 01:02:17 +00:00
ADCE.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
BasicBlockPlacement.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
CMakeLists.txt Update CMakeLists for recent renames. 2009-10-31 14:38:25 +00:00
CodeGenPrepare.cpp llvm::SplitEdge should refuse to split an edge from an indirectbr. 2009-10-31 22:04:43 +00:00
CondPropagate.cpp strengthen an assumption: RevectorBlockTo knows that PredBB 2009-11-01 04:23:20 +00:00
ConstantProp.cpp remove a bunch of extraneous LLVMContext arguments 2009-11-06 04:27:31 +00:00
DCE.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
DeadStoreElimination.cpp Revert r86359, it is breaking the self host on the 2009-11-07 17:59:32 +00:00
GEPSplitter.cpp Check in the experimental GEP splitter pass. This pass splits complex 2009-10-26 19:12:14 +00:00
GVN.cpp Fix DenseMap iterator constness. 2009-11-10 01:02:17 +00:00
IndVarSimplify.cpp Update various Loop optimization passes to cope with the possibility that 2009-11-05 21:11:53 +00:00
InstructionCombining.cpp factor simplification logic for AND and OR out to InstSimplify from instcombine. 2009-11-10 00:55:12 +00:00
JumpThreading.cpp add a new SimplifyInstruction API, which is like ConstantFoldInstruction, 2009-11-10 01:08:51 +00:00
LICM.cpp Update various Loop optimization passes to cope with the possibility that 2009-11-05 21:11:53 +00:00
LoopDeletion.cpp LoopDeletion depends on loops having dedicated exits. 2009-11-05 21:47:04 +00:00
LoopIndexSplit.cpp Update various Loop optimization passes to cope with the possibility that 2009-11-05 21:11:53 +00:00
LoopRotation.cpp Update various Loop optimization passes to cope with the possibility that 2009-11-05 21:11:53 +00:00
LoopStrengthReduce.cpp Teach LSR to avoid calling SplitCriticalEdge on edges with indirectbr. 2009-11-05 23:34:59 +00:00
LoopUnrollPass.cpp Replace LoopUnrollPass.cpp's custom code-size estimation code using 2009-10-31 14:54:17 +00:00
LoopUnswitch.cpp remove a bunch of extraneous LLVMContext arguments 2009-11-06 04:27:31 +00:00
Makefile Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
MemCpyOptimizer.cpp Introduce and use convenience methods for getting pointer types 2009-10-06 15:40:36 +00:00
Reassociate.cpp Make changes to rev 84292 as requested by Chris Lattner. 2009-10-21 19:11:40 +00:00
Reg2Mem.cpp clean up this code a bit. 2009-09-02 06:15:37 +00:00
Scalar.cpp add a bunch more passes to the C bindings (PR3734), patch by 2009-03-06 16:52:18 +00:00
ScalarReplAggregates.cpp Remove AllocationInst. Since MallocInst went away, AllocaInst is the only subclass of AllocationInst, so it no longer is necessary. 2009-10-23 21:09:37 +00:00
SCCP.cpp Do map insert+find in one step. TODO -= 2. 2009-11-05 14:33:27 +00:00
SCCVN.cpp Fix DenseMap iterator constness. 2009-11-10 01:02:17 +00:00
SimplifyCFGPass.cpp remove a bunch of locking from LLVMContextImpl. Since only one thread 2009-11-01 18:42:03 +00:00
SimplifyHalfPowrLibCalls.cpp eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 2009-09-02 06:11:42 +00:00
SimplifyLibCalls.cpp fix PR5104: when printing a single character, return the result of 2009-11-09 04:57:04 +00:00
TailDuplication.cpp remove a bunch of extraneous LLVMContext arguments 2009-11-06 04:27:31 +00:00
TailRecursionElimination.cpp Improve tail call elimination to handle the switch statement. 2009-11-07 21:10:15 +00:00