aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Transforms/InstCombine
Commit message (Expand)AuthorAgeFilesLines
* Null initialize a few variables flagged byTed Kremenek2011-01-231-1/+1
* Just because we have determined that an (fcmp | fcmp) is true for A < B,Owen Anderson2011-01-211-1/+3
* fix PR9013, an infinite loop in instcombine.Chris Lattner2011-01-211-2/+10
* update obsolete comment.Chris Lattner2011-01-211-4/+3
* Don't try to pull vector bitcasts that change the number of elements throughNick Lewycky2011-01-211-3/+17
* At -O123 the early-cse pass is run before instcombine has run. According to myDuncan Sands2011-01-201-32/+11
* remove a dead check, this was needed before we had an explicit veto on uses o...Chris Lattner2011-01-161-5/+0
* enhance FoldOpIntoPhi in instcombine to try harder when a phi hasChris Lattner2011-01-161-3/+19
* remove the AllowAggressive argument to FoldOpIntoPhi. It is forced to false ...Chris Lattner2011-01-163-14/+6
* more cleanups: use the IR builder.Chris Lattner2011-01-161-38/+39
* tidy up code.Chris Lattner2011-01-161-16/+20
* implement an instcombine xform that canonicalizes casts outside of and-with-c...Chris Lattner2011-01-151-2/+12
* one more instcombine variant that is needed to work with future changes,Chris Lattner2011-01-151-0/+9
* fix typoChris Lattner2011-01-151-1/+1
* Catch ~x < cst just like ~x < ~y, we currently handle this throughChris Lattner2011-01-151-4/+8
* reduce indentationChris Lattner2011-01-151-29/+29
* Move some shift transforms out of instcombine and into InstructionSimplify.Duncan Sands2011-01-141-26/+10
* Remove dead variable, const-ref-ize an APInt.Owen Anderson2011-01-111-4/+1
* Fix a random missed optimization by making InstCombine more aggressive when d...Owen Anderson2011-01-111-2/+40
* Teach instcombine about the rest of the SSE and SSE2 conversionChandler Carruth2011-01-101-4/+11
* Instcombine: Fix pattern where the sext did not dominate the icmp using itTobias Grosser2011-01-091-2/+7
* Fix a bug in r123034 (trying to sext/zext non-integers) and clean up a little.Frits van Bommel2011-01-081-5/+8
* InstCombine: Match min/max hidden by sext/zextTobias Grosser2011-01-071-35/+70
* Some whitespace fixesTobias Grosser2011-01-071-24/+24
* Revert 122959, it needs more thought. Add it back to README.txt with addition...Benjamin Kramer2011-01-071-4/+0
* InstCombine: Turn _chk functions into the "unsafe" variant if length and max ...Benjamin Kramer2011-01-061-0/+2
* InstCombine: If we call llvm.objectsize on a malloc call we can replace it wi...Benjamin Kramer2011-01-061-1/+5
* InstCombine: Teach llvm.objectsize folding to look through GEPs.Benjamin Kramer2011-01-061-50/+41
* don't lose TD infoChris Lattner2010-12-251-2/+2
* Move getOrEnforceKnownAlignment out of instcombine into Transforms/Utils.Chris Lattner2010-12-253-103/+11
* When determining if we can fold (x >> C1) << C2, the bits that we need to ver...Owen Anderson2010-12-231-1/+2
* InstCombine: creating selects from -1 and 0 is fine, they combine into a sext...Benjamin Kramer2010-12-221-3/+6
* Add a generic expansion transform: A op (B op' C) -> (A op B) op' (A op C)Duncan Sands2010-12-225-71/+140
* Add some statistics, good for understanding how much more powerfulDuncan Sands2010-12-221-2/+12
* Pull a few more simplifications out of instcombine (there are stillDuncan Sands2010-12-211-6/+3
* Add a check missing from my last commit and avoid a potential overflow situat...Benjamin Kramer2010-12-201-3/+3
* Reduce indentation.Benjamin Kramer2010-12-201-7/+5
* Teach InstCombine to merge (icmp ult (X + CA), C1) | (icmp eq X, C2) into (ic...Benjamin Kramer2010-12-201-1/+10
* fix PR8807 by making transformConstExprCastCall aware of byval arguments.Chris Lattner2010-12-201-2/+15
* various cleanups for transformConstExprCastCallChris Lattner2010-12-201-13/+10
* Avoid dropping the address space when InstCombine optimizes memsetMon P Wang2010-12-201-1/+3
* fix an oversight caught by Frits!Chris Lattner2010-12-191-3/+4
* move a transformation to a more logical place, simplifying it.Chris Lattner2010-12-192-16/+7
* recognize an unsigned add with overflow idiom into uadd.Chris Lattner2010-12-191-5/+50
* optimize uadd(x, cst) into a comparison when the normal Chris Lattner2010-12-191-0/+16
* use IC.ReplaceInstUsesWith instead of a raw RAUW so that uses ofChris Lattner2010-12-191-3/+5
* generalize the sadd creation code to not require that theChris Lattner2010-12-191-39/+16
* fix another miscompile in the llvm.sadd formation logic: it wasn't Chris Lattner2010-12-191-4/+39
* fix a bug (possibly 8816) in the sadd forming xform: it isn'tChris Lattner2010-12-191-0/+10
* rework the code added in r122072 to pull it out to its ownChris Lattner2010-12-191-61/+64