aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis
AgeCommit message (Expand)Author
2012-03-28Revert r153521 as it's causing large regressions on the nightly testers.Chad Rosier
2012-03-27Reapply r153423; the original commit was fine. The failing test, distray, had Chad Rosier
2012-03-26SCEV fix: Handle loop invariant loads.Andrew Trick
2012-03-26Revert r153423 as this is causing failures on our internal nightly testers.Chad Rosier
2012-03-26Use the new range metadata in computeMaskedBits and add a new optimization toRafael Espindola
2012-03-25Teach instsimplify how to simplify comparisons of pointers which areChandler Carruth
2012-03-25Switch the pointer-difference simplification logic to only work withChandler Carruth
2012-03-24Try to harden the recursive simplification still further. This is againChandler Carruth
2012-03-24Don't add the instruction about to be RAUW'ed and erased to theChandler Carruth
2012-03-24Refactor the interface to recursively simplifying instructions to be tadChandler Carruth
2012-03-23Take out the debug info probe stuff. It's making some changes toEric Christopher
2012-03-22Cleanup IVUsers::addUsersIfInteresting.Andrew Trick
2012-03-21Teach instsimplify to gracefully degrade in the presence of instructionsChandler Carruth
2012-03-20LSR: teach isSimplifiedLoopNest to handle PHI IVUsers.Andrew Trick
2012-03-20LSR: fix IVUsers isSimplifiedLoopNest to perform a full domtree walkAndrew Trick
2012-03-18Factor out the multiply analysis code in ComputeMaskedBits and apply it to theNick Lewycky
2012-03-16Start removing the use of an ad-hoc 'never inline' set and insteadChandler Carruth
2012-03-16Pull the implementation of the code metrics out of the inline costChandler Carruth
2012-03-16LSR fix: Add isSimplifiedLoopNest to IVUsers analysis.Andrew Trick
2012-03-16Do the right thing on NULL uint64 fields.Eric Christopher
2012-03-15Type sizes and fields offsets inside structs are unsigned. This is a highlyDuncan Sands
2012-03-15Make the swap code here a bit more obvious what its doing... We'reChandler Carruth
2012-03-15Don't assume that the arguments are processed in some particular order.Chandler Carruth
2012-03-15Remove all remnants of partial specialization in the cost computationChandler Carruth
2012-03-14Extend the inline cost calculation to account for bonuses due toChandler Carruth
2012-03-14Refactor the inline cost bonus calculation for constants to useChandler Carruth
2012-03-13enhance jump threading to preserve TBAA information when PRE'ing loads,Chris Lattner
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-11llvm::SwitchInstStepan Dyatkovskiy
2012-03-10Make helper static, so it can be inlined into its sole caller.Benjamin Kramer
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-03-09Factor out the analysis of addition and subtraction in ComputeMaskedBits. ReuseNick Lewycky
2012-03-09Undo a previous restriction on the inline cost calculation which NickChandler Carruth
2012-03-08Taken into account Duncan's comments for r149481 dated by 2nd Feb 2012:Stepan Dyatkovskiy
2012-03-08Rotate two of the functions used to count bonuses for the inline costChandler Carruth
2012-03-07No functionality change. Type::isSized() can be expensive, so avoid calling itNick Lewycky
2012-03-05A few more cases of missing masking in ComputeMaskedBits; found by inspection.Eli Friedman
2012-03-05Make sure we don't return bits outside the mask in ComputeMaskedBits. PR12189.Eli Friedman
2012-03-02LVI: Recognize the form instcombine canonicalizes range checks into when form...Benjamin Kramer
2012-02-27Duncan pointed out that if the alignment isn't explicitly specified, it defau...Eli Friedman
2012-02-27Teach BasicAA about the LLVM IR rules that allow reading past the end of an o...Eli Friedman
2012-02-27Fix this assert. IP can point to an instruction with strange dominanceRafael Espindola
2012-02-26Don't call dominates on unreachable instructions. Should fix the dragoneggRafael Espindola
2012-02-26And update the comment...Rafael Espindola