aboutsummaryrefslogtreecommitdiff
path: root/test/Transforms/InstSimplify/compare.ll
AgeCommit message (Expand)Author
2013-03-18Check whether a pointer is non-null (isKnownNonNull) in isKnownNonZero.Manman Ren
2013-02-01Rewrite instsimplify's handling if icmp on pointer values to remove theDan Gohman
2013-01-31An alloca can be equal to an argument. It can't *alias* an alloca, but it couldDan Gohman
2012-12-07Add support to ValueTracking for determining that a pointer is non-nullChandler Carruth
2012-11-16InstructionSimplify should be able to simplify A+B==B+A to 'true'Duncan Sands
2012-03-25Teach instsimplify how to simplify comparisons of pointers which areChandler Carruth
2012-02-26Reinstate the optimization from r151449 with a fix to not turn 'gep %x' intoNick Lewycky
2012-02-25Roll these back to r151448 until I figure out how they're breakingNick Lewycky
2012-02-25An argument and a local identified object (eg. a noalias call) could turn outNick Lewycky
2012-02-25Teach instsimplify to be more aggressive when analyzing comparisons of pointersNick Lewycky
2012-02-24fix PR12075, a regression in a recent transform I added. In unreachable code...Chris Lattner
2012-02-20fold comparisons of gep'd alloca points with null to false,Chris Lattner
2012-02-18Fix a rather nasty regression from r150690: LHS != RHS does not imply LHS->st...Eli Friedman
2012-02-16InstSimplify: Ignore pointer casts when constant folding compares between poi...Benjamin Kramer
2012-02-10Fix PR11948: the result type of an icmp may be a vector of boolean -Duncan Sands
2012-02-10Revert commit 149912 (lattner) and add a testcase that shows the problem (whichDuncan Sands
2011-11-08Fix code to match comment. Fixes PR11340, a regression from r143209.Eli Friedman
2011-10-30Reapply commit 143214 with a fix: m_ICmp doesn't match conditionsDuncan Sands
2011-10-29Revert r143214; it's breaking a bunch of stuff.Eli Friedman
2011-10-28The expression icmp eq (select (icmp eq x, 0), 1, x), 0 folds to false.Duncan Sands
2011-10-28Fold icmp ugt (udiv X, Y), X to false. Spotted by my super-optimizerDuncan Sands
2011-10-27Reapply commit 143028 with a fix: the problem was casting a ConstantExpr MulDuncan Sands
2011-10-27Revert Duncan's r143028 expression folding which appears to be the culpritBob Wilson
2011-10-26My super-optimizer noticed that we weren't folding this expression toDuncan Sands
2011-07-19Remove bogus test: for all possible inputs of %X, the 'sub nsw' is guaranteedNick Lewycky
2011-03-12Teach ComputeMaskedBits about sub nsw.Benjamin Kramer
2011-03-11Teach ComputeMaskedBits about nsw on add. I don't think there's anything we canNick Lewycky
2011-03-09Fix mistyped CHECK lines.Benjamin Kramer
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-13Teach instsimplify that X+Y>=X+Z is the same as Y>=Z if neither side overflows,Duncan Sands