aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/InstructionSimplify.cpp
AgeCommit message (Expand)Author
2012-03-21Teach instsimplify to gracefully degrade in the presence of instructionsChandler Carruth
2012-03-15Type sizes and fields offsets inside structs are unsigned. This is a highlyDuncan Sands
2012-03-13Generalize the "trunc(ptrtoint(x)) - trunc(ptrtoint(y)) ->Duncan Sands
2012-03-13Uniformize the InstructionSimplify interface by ensuring that all routinesDuncan Sands
2012-03-13Fix regression from r151466: an we can't replace uses of an instruction reach...Eli Friedman
2012-03-13Address some review comments from Duncan. This moves the iterativeChandler Carruth
2012-03-12Teach instsimplify how to constant fold pointer differences.Chandler Carruth
2012-03-10As Duncan pointed out, pointers tend not to be in floating point format...for...Bill Wendling
2012-03-10Make this transformation slightly less agressive and more correct.Bill Wendling
2012-03-10Refactor some methods to look through bitcasts and GEPs on pointers intoChandler Carruth
2012-02-26Reinstate the optimization from r151449 with a fix to not turn 'gep %x' intoNick Lewycky
2012-02-26Don't call dominates on unreachable instructions.Rafael Espindola
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-25Fix five-letter typo in comment.Nick 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-16Revert "InstSimplify: Strip pointer casts early."Benjamin Kramer
2012-02-16InstSimplify: Strip pointer casts early.Benjamin Kramer
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-07Convert assert(0) to llvm_unreachableCraig Topper
2012-01-01PatternMatch: Introduce a matcher for instructions with the "exact" bit. Use ...Benjamin Kramer
2011-12-05Add support for vectors of pointers.Nadav Rotem
2011-12-01Propagate TargetLibraryInfo throughout ConstantFolding.cpp and Chad Rosier
2011-12-01Make use of "getScalarType()". No functionality change.Nick Lewycky
2011-11-08Fix code to match comment. Fixes PR11340, a regression from r143209.Eli Friedman
2011-11-04Teach instsimplify to simplify calls to undef.Dan Gohman
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-26The maximum power of 2 dividing a power of 2 is itself. This occursDuncan Sands
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