aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/InstructionSimplify.cpp
AgeCommit message (Expand)Author
2011-09-05InstSimplify: Don't try to replace an extractvalue/insertvalue pair with the ...Benjamin Kramer
2011-09-05Add some simple insertvalue simplifications, for the purpose of cleaningDuncan Sands
2011-08-17Revert r137781; I agree with Duncan's comment that the situation in question ...Eli Friedman
2011-08-16Extend the undef ^ undef idiom once more. No testcase: I can't figure out ho...Eli Friedman
2011-08-04Fix what seems an obvious typo. Patch by Ivan Krasin. ProblemDuncan Sands
2011-07-26Add helper function for getting true/false constants in a uniformDuncan Sands
2011-07-25Convert GetElementPtrInst to use ArrayRef.Jay Foad
2011-07-21Convert ConstantExpr::getGetElementPtr andJay Foad
2011-07-19Convert SimplifyGEPInst to use ArrayRef.Jay Foad
2011-07-19Use ArrayRef in ConstantFoldInstOperands and ConstantFoldCall.Jay Foad
2011-07-18land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner
2011-07-01Improve constant folding of undef for cmp and select operators.Dan Gohman
2011-05-07The comparision "max(x,y)==x" is equivalent to "x>=y". Since the max isDuncan Sands
2011-05-05PR9838: Fix transform introduced in r127064 to not trigger when only one side...Eli Friedman
2011-05-04Add variations on: max(x,y) >= min(x,z) folds to true. This isn't that common,Duncan Sands
2011-05-03Implement some basic simplifications involving min/max, for exampleDuncan Sands
2011-05-02Fix PR9579: when simplifying a compare to "true" or "false", and it wasDuncan Sands
2011-05-02Move some rem transforms out of instcombine and into instsimplify.Duncan Sands
2011-04-11Don't include Operator.h from InstrTypes.h.Jay Foad
2011-03-09Fix two cases I forgot to update when doing a mental "getSwappedPredicate".Nick Lewycky
2011-03-09Add another micro-optimization. Apologies for the lack of refactoring, but INick Lewycky
2011-03-05Thread comparisons over udiv/sdiv/ashr/lshr exact and lshr nuw/nsw wheneverNick Lewycky
2011-03-04Revert broken srem logic from r126991.Nick Lewycky
2011-03-04Fold "icmp pred (srem X, Y), Y" like we do for urem. Handle signed comparisonsNick Lewycky
2011-03-04Teach instruction simplify to use constant ranges to solve problems of the formNick Lewycky
2011-03-01Optimize "icmp pred (urem X, Y), Y" --> true/false depending on pred. There'sNick Lewycky
2011-02-20Move "A | ~(A & ?) -> -1" from InstCombine to InstructionSimplify.Benjamin Kramer
2011-02-13Remove pointless blank line.Duncan Sands
2011-02-13Teach instsimplify that X+Y>=X+Z is the same as Y>=Z if neither side overflows,Duncan Sands
2011-02-09Formatting and comment tweaks.Duncan Sands
2011-02-09Teach instsimplify some tricks about exact/nuw/nsw shifts.Chris Lattner
2011-02-09Rework InstrTypes.h so to reduce the repetition around the NSW/NUW/ExactChris Lattner
2011-02-07Add an m_Div pattern for matching either a udiv or an sdiv and use itDuncan Sands
2011-02-06teach instsimplify to transform (X / Y) * Y to XChris Lattner
2011-02-05Fix another warning.Anders Carlsson
2011-02-03Improve threading of comparisons over select instructions (spotted by myDuncan Sands
2011-02-02Reenable the transform "(X*Y)/Y->X" when the multiplication is known not toDuncan Sands
2011-02-01Add a m_Undef pattern for convenience. This is so that code that usesDuncan Sands
2011-02-01Have m_One also match constant vectors for which every element is 1.Duncan Sands
2011-01-30Commit 124487 broke 254.gap. See if disabling the part that might be triggeredDuncan Sands
2011-01-30Transform (X/Y)*Y into X if the division is exact. Instcombine already knows...Duncan Sands
2011-01-29Fix comment.Nick Lewycky
2011-01-29Move InstCombine's knowledge of fdiv to SimplifyInstruction().Frits van Bommel
2011-01-28This dyn_cast should be a cast. Pointed out by Frits van Bommel.Duncan Sands
2011-01-28Thread divisions over selects and phis. This doesn't fire much and has basic...Duncan Sands
2011-01-28My auto-simplifier noticed that ((X/Y)*Y)/Y occurs several times in SPECDuncan Sands
2011-01-25According to my auto-simplifier the most common missed simplifications inDuncan Sands
2011-01-20At -O123 the early-cse pass is run before instcombine has run. According to myDuncan Sands
2011-01-18For completeness, generalize the (X + Y) - Y -> X transform and add X - (X + ...Duncan Sands
2011-01-18Simplify (X<<1)-X into X. According to my auto-simplier this is the most com...Duncan Sands