summaryrefslogtreecommitdiff
path: root/lib/Analysis/InstructionSimplify.cpp
Commit message (Expand)AuthorAge
* Fix code to match comment. Fixes PR11340, a regression from r143209.Eli Friedman2011-11-08
* Teach instsimplify to simplify calls to undef.Dan Gohman2011-11-04
* Reapply commit 143214 with a fix: m_ICmp doesn't match conditionsDuncan Sands2011-10-30
* Revert r143214; it's breaking a bunch of stuff.Eli Friedman2011-10-29
* The expression icmp eq (select (icmp eq x, 0), 1, x), 0 folds to false.Duncan Sands2011-10-28
* Fold icmp ugt (udiv X, Y), X to false. Spotted by my super-optimizerDuncan Sands2011-10-28
* Reapply commit 143028 with a fix: the problem was casting a ConstantExpr MulDuncan Sands2011-10-27
* The maximum power of 2 dividing a power of 2 is itself. This occursDuncan Sands2011-10-26
* InstSimplify: Don't try to replace an extractvalue/insertvalue pair with the ...Benjamin Kramer2011-09-05
* Add some simple insertvalue simplifications, for the purpose of cleaningDuncan Sands2011-09-05
* Revert r137781; I agree with Duncan's comment that the situation in question ...Eli Friedman2011-08-17
* Extend the undef ^ undef idiom once more. No testcase: I can't figure out ho...Eli Friedman2011-08-16
* Fix what seems an obvious typo. Patch by Ivan Krasin. ProblemDuncan Sands2011-08-04
* Add helper function for getting true/false constants in a uniformDuncan Sands2011-07-26
* Convert GetElementPtrInst to use ArrayRef.Jay Foad2011-07-25
* Convert ConstantExpr::getGetElementPtr andJay Foad2011-07-21
* Convert SimplifyGEPInst to use ArrayRef.Jay Foad2011-07-19
* Use ArrayRef in ConstantFoldInstOperands and ConstantFoldCall.Jay Foad2011-07-19
* land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner2011-07-18
* Improve constant folding of undef for cmp and select operators.Dan Gohman2011-07-01
* The comparision "max(x,y)==x" is equivalent to "x>=y". Since the max isDuncan Sands2011-05-07
* PR9838: Fix transform introduced in r127064 to not trigger when only one side...Eli Friedman2011-05-05
* Add variations on: max(x,y) >= min(x,z) folds to true. This isn't that common,Duncan Sands2011-05-04
* Implement some basic simplifications involving min/max, for exampleDuncan Sands2011-05-03
* Fix PR9579: when simplifying a compare to "true" or "false", and it wasDuncan Sands2011-05-02
* Move some rem transforms out of instcombine and into instsimplify.Duncan Sands2011-05-02
* Don't include Operator.h from InstrTypes.h.Jay Foad2011-04-11
* Fix two cases I forgot to update when doing a mental "getSwappedPredicate".Nick Lewycky2011-03-09
* Add another micro-optimization. Apologies for the lack of refactoring, but INick Lewycky2011-03-09
* Thread comparisons over udiv/sdiv/ashr/lshr exact and lshr nuw/nsw wheneverNick Lewycky2011-03-05
* Revert broken srem logic from r126991.Nick Lewycky2011-03-04
* Fold "icmp pred (srem X, Y), Y" like we do for urem. Handle signed comparisonsNick Lewycky2011-03-04
* Teach instruction simplify to use constant ranges to solve problems of the formNick Lewycky2011-03-04
* Optimize "icmp pred (urem X, Y), Y" --> true/false depending on pred. There'sNick Lewycky2011-03-01
* Move "A | ~(A & ?) -> -1" from InstCombine to InstructionSimplify.Benjamin Kramer2011-02-20
* Remove pointless blank line.Duncan Sands2011-02-13
* Teach instsimplify that X+Y>=X+Z is the same as Y>=Z if neither side overflows,Duncan Sands2011-02-13
* Formatting and comment tweaks.Duncan Sands2011-02-09
* Teach instsimplify some tricks about exact/nuw/nsw shifts.Chris Lattner2011-02-09
* Rework InstrTypes.h so to reduce the repetition around the NSW/NUW/ExactChris Lattner2011-02-09
* Add an m_Div pattern for matching either a udiv or an sdiv and use itDuncan Sands2011-02-07
* teach instsimplify to transform (X / Y) * Y to XChris Lattner2011-02-06
* Fix another warning.Anders Carlsson2011-02-05
* Improve threading of comparisons over select instructions (spotted by myDuncan Sands2011-02-03
* Reenable the transform "(X*Y)/Y->X" when the multiplication is known not toDuncan Sands2011-02-02
* Add a m_Undef pattern for convenience. This is so that code that usesDuncan Sands2011-02-01
* Have m_One also match constant vectors for which every element is 1.Duncan Sands2011-02-01
* Commit 124487 broke 254.gap. See if disabling the part that might be triggeredDuncan Sands2011-01-30
* Transform (X/Y)*Y into X if the division is exact. Instcombine already knows...Duncan Sands2011-01-30
* Fix comment.Nick Lewycky2011-01-29