summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/InstructionCombining.cpp
Commit message (Expand)AuthorAgeFilesLines
* move instcombine to its own library, it's past time.Chris Lattner2010-01-041-14087/+0
* implement an instcombine xform needed by clang's codegenChris Lattner2010-01-041-1/+19
* pull my debug hooks out, I'm done with this xform for now.Chris Lattner2010-01-031-20/+2
* generalize the previous transformation to handle indexing intoChris Lattner2010-01-031-19/+55
* Cleanup.Nick Lewycky2010-01-031-3/+2
* teach instcombine to optimize idioms like A[i]&42 == 0. ThisChris Lattner2010-01-021-7/+31
* Teach the table lookup optimization to generate range comparesChris Lattner2010-01-021-22/+86
* use enums for the over/underdefined markers for clarity. SwitchChris Lattner2010-01-021-21/+23
* remove the random sampling framework, which is not maintained anymore.Chris Lattner2010-01-021-0/+6
* Fix logic error in previous commit. The != case needs to become an or, not anNick Lewycky2010-01-021-3/+7
* Optimize pointer comparison into the typesafe form, now that the backends willNick Lewycky2010-01-021-2/+20
* Generalize the previous xform to handle cases where exactlyChris Lattner2010-01-021-26/+58
* fix a miscompilation I introduced of cdecl with a late change.Chris Lattner2010-01-021-1/+1
* enhance the compare/load/index optimization to work on *any* loadChris Lattner2010-01-021-11/+28
* enhance the previous optimization to work with fcmp in additionChris Lattner2010-01-021-4/+21
* Teach instcombine to fold compares of loads from constantChris Lattner2010-01-021-1/+120
* remove the instcombine transformations that are inserting nastyChris Lattner2010-01-021-30/+0
* add a simple instcombine xform, simplify another one to use hasAllZeroIndices()Chris Lattner2010-01-011-13/+12
* generalize the pointer difference optimization to handleChris Lattner2010-01-011-11/+47
* teach instcombine to optimize pointer difference idioms involving constantChris Lattner2010-01-011-10/+6
* use 'match' to simplify some code.Chris Lattner2010-01-011-6/+5
* implement the transform requested in PR5284Chris Lattner2010-01-011-0/+13
* add missing line.Chris Lattner2010-01-011-2/+3
* add a few trivial instcombines for llvm.powi.Chris Lattner2010-01-011-0/+14
* Add suggested parentheses.Daniel Dunbar2009-12-211-4/+4
* give instcombine some helper functions for matching MIN and MAX, andChris Lattner2009-12-211-10/+118
* enhance x-(-A) -> x+A to preserve NUW/NSW.Chris Lattner2009-12-211-11/+47
* Optimize all cases of "icmp (X+Cst), X" to something simpler. This triggersChris Lattner2009-12-211-3/+74
* fix PR5827 by disabling the phi slicing transformation in a caseChris Lattner2009-12-191-1/+20
* Optimize icmp of null and select of two constants even if the select hasEli Friedman2009-12-181-15/+17
* Allow instcombine to combine "sext(a) >u const" to "a >u trunc(const)".Eli Friedman2009-12-171-12/+10
* Make the ptrtoint comparison simplification work if one side is a global.Eli Friedman2009-12-171-1/+1
* Slightly generalize transformation of memmove(a,a,n) so that it also appliesEli Friedman2009-12-171-1/+3
* Remove isPod() from DenseMapInfo, splitting it out to its ownChris Lattner2009-12-151-1/+2
* Generalize this optimization to work on equality comparisons between any twoNick Lewycky2009-12-051-16/+27
* add testcases for the foo_with_overflow op xforms added recently andChris Lattner2009-11-291-12/+15
* Implement PR5634.Chris Lattner2009-11-291-10/+54
* factor some logic out of instcombine into a new SimplifyAddInst method.Chris Lattner2009-11-271-11/+7
* factor some instcombine simplifications for getelementptr out to a new Chris Lattner2009-11-271-10/+9
* fix crash on Transforms/InstCombine/intrinsics.ll introduced by r89970 Chris Lattner2009-11-261-1/+4
* Fix PR5471 by removing an instcombine xform. Some pieces of the codeChris Lattner2009-11-261-6/+0
* implement a bunch of xforms for overflow intrinsics, based on a patchChris Lattner2009-11-261-0/+114
* Reapply r88830 with a bugfix: this transform only applies to icmp eq/ne. ThisNick Lewycky2009-11-231-0/+30
* Fix PR5563, an expensive checks failure when running onDuncan Sands2009-11-201-1/+1
* Fix an expensive-checks error.David Greene2009-11-161-20/+24
* Revert r88830 and r88831 which appear to have caused a selfhost buildbot someNick Lewycky2009-11-151-28/+0
* Teach instcombine to look for booleans in wider integers when it encounters aNick Lewycky2009-11-151-0/+28
* clarify logic.Chris Lattner2009-11-101-4/+4
* Add brackets to make gcc-4.4 happy.Duncan Sands2009-11-101-3/+3
* unify the code that determines whether it is a good idea to change the typeChris Lattner2009-11-101-27/+36
OpenPOWER on IntegriCloud