summaryrefslogtreecommitdiffstats
path: root/lib/Transforms/InstCombine/InstCombineShifts.cpp
Commit message (Expand)AuthorAgeFilesLines
* PR12967: Don't crash when trying to fold a shift that's larger than the type'...Benjamin Kramer2012-05-271-1/+1
* Reapply r155136 after fixing PR12599.Jakob Stoklund Olesen2012-04-231-39/+35
* Revert r155136 "Defer some shl transforms to DAGCombine."Jakob Stoklund Olesen2012-04-201-35/+39
* Defer some shl transforms to DAGCombine.Jakob Stoklund Olesen2012-04-191-39/+35
* Convert assert(0) to llvm_unreachableCraig Topper2012-02-071-1/+1
* Remove pointless asserts.Nick Lewycky2012-01-041-2/+0
* Teach instcombine all sorts of great stuff about shifts that have exact, nuw orNick Lewycky2012-01-041-6/+56
* Make use of the exact bit when optimizing '(X >>exact 3) << 1' to eliminate theNick Lewycky2011-12-311-5/+11
* Fix a few more places where TargetData/TargetLibraryInfo is not being passed.Chad Rosier2011-12-021-1/+2
* Make sure to correctly clear the exact/nuw/nsw flags off of shifts when they ...Eli Friedman2011-07-291-19/+27
* Clean up includes of llvm/Analysis/ConstantFolding.h so it's included where i...Eli Friedman2011-07-201-0/+1
* land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner2011-07-181-1/+1
* Balance parentheses.Benjamin Kramer2011-04-291-1/+1
* InstCombine: turn (C1 << A) << C2) into (C1 << C2) << A)Benjamin Kramer2011-04-291-1/+8
* Enhance a bunch of transformations in instcombine to start generatingChris Lattner2011-02-101-17/+60
* Teach instsimplify some tricks about exact/nuw/nsw shifts.Chris Lattner2011-02-091-3/+7
* Null initialize a few variables flagged byTed Kremenek2011-01-231-1/+1
* Move some shift transforms out of instcombine and into InstructionSimplify.Duncan Sands2011-01-141-26/+10
* When determining if we can fold (x >> C1) << C2, the bits that we need to ver...Owen Anderson2010-12-231-1/+2
* Really check that the bits that will become zero are actually already zeroDan Gohman2010-12-091-2/+1
* The srem -> urem transform is not safe for any divisor that's not a power of ...Benjamin Kramer2010-11-231-11/+9
* InstCombine: Reduce "X shift (A srem B)" to "X shift (A urem B)" iff B is pos...Benjamin Kramer2010-11-231-0/+15
* When checking that the necessary bits are zero inDale Johannesen2010-11-101-2/+2
* When folding away a (shl (shr)) pair, we need to check that the bits that wil...Owen Anderson2010-11-011-1/+1
* optimize bitcasts from large integers to vector into vectorChris Lattner2010-08-281-2/+2
* Enhance the shift propagator to handle the case when you have:Chris Lattner2010-08-271-22/+56
* Implement a pretty general logical shift propagationChris Lattner2010-08-271-0/+226
* remove some special shift cases that have been subsumed into theChris Lattner2010-08-271-34/+13
* use ArgOperand APIGabor Greif2010-06-241-1/+1
* Revert 101465, it broke internal OpenGL testing.Eric Christopher2010-04-161-1/+1
* reapply r101434Gabor Greif2010-04-161-1/+1
* back out r101423 and r101397, they break llvm-gcc self-host on darwin10Gabor Greif2010-04-161-1/+1
* reapply r101364, which has been backed out in r101368Gabor Greif2010-04-151-1/+1
* back out r101364, as it trips the linux nightlybot on some clang C++ testsGabor Greif2010-04-151-1/+1
* rotate CallInst operands, i.e. move callee to the backGabor Greif2010-04-151-1/+1
* fix a potential overflow issue Eli pointed out.Chris Lattner2010-01-231-3/+3
* implement a simple instcombine xform that has been in theChris Lattner2010-01-231-5/+27
* my instcombine transformations to make extension elimination moreChris Lattner2010-01-181-5/+19
* change the preferred canonical form for a sign extension to beChris Lattner2010-01-101-20/+0
* fix indentation of switch statements, no functionality change.Chris Lattner2010-01-101-79/+79
* teach instcombine to delete sign extending shift pairs (sra(shl X, C), C) whenChris Lattner2010-01-081-4/+15
* split instcombine of shifts out to its own file.Chris Lattner2010-01-051-0/+436