summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/InstructionSimplify.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* move some generally useful functions out of jump threadingChris Lattner2009-11-101-0/+35
| | | | | | into libanalysis and transformutils. llvm-svn: 86735
* I misread the parens, not so redundant after all.Chris Lattner2009-11-101-4/+4
| | | | llvm-svn: 86648
* remove some redundant parens.Chris Lattner2009-11-101-4/+4
| | | | llvm-svn: 86645
* add a new SimplifyInstruction API, which is like ConstantFoldInstruction, Chris Lattner2009-11-101-0/+20
| | | | | | | | 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. llvm-svn: 86637
* factor simplification logic for AND and OR out to InstSimplify from instcombine.Chris Lattner2009-11-101-24/+149
| | | | llvm-svn: 86635
* pull a bunch of logic out of instcombine into instsimplify for compare Chris Lattner2009-11-091-5/+93
| | | | | | simplification, this handles the foldable fcmp x,x cases among many others. llvm-svn: 86627
* rename SimplifyCompare -> SimplifyCmpInst and split it into Chris Lattner2009-11-091-10/+35
| | | | | | | Simplify[IF]Cmp pieces. Add some predicates to CmpInst to determine whether a predicate is fp or int. llvm-svn: 86624
* fix ConstantFoldCompareInstOperands to take the LHS/RHS asChris Lattner2009-11-091-4/+2
| | | | | | individual operands instead of taking a temporary array llvm-svn: 86619
* stub out a new libanalysis "instruction simplify" interface thatChris Lattner2009-11-091-0/+57
takes decimated instructions and applies identities to them. This is pretty minimal at this point, but I plan to pull some instcombine logic out into these and similar routines. llvm-svn: 86613
OpenPOWER on IntegriCloud