| Commit message (Expand) | Author | Age | Files | Lines |
* | start using the new helper methods a bit. | Chris Lattner | 2011-07-15 | 1 | -19/+17 |
* | Change Intrinsic::getDeclaration and friends to take an ArrayRef. | Benjamin Kramer | 2011-07-14 | 1 | -2/+2 |
* | Convert InsertValueInst and ExtractValueInst APIs to use ArrayRef. | Jay Foad | 2011-07-13 | 1 | -2/+1 |
* | Second attempt at de-constifying LLVM Types in FunctionType::get(), | Jay Foad | 2011-07-12 | 1 | -2/+2 |
* | Revert r134893 and r134888 (and related patches in other trees). It was causing | Bill Wendling | 2011-07-12 | 1 | -2/+2 |
* | De-constify Types in FunctionType::get(). | Jay Foad | 2011-07-11 | 1 | -2/+2 |
* | PR10267: Don't combine an equality compare with an AND into an inequality com... | Benjamin Kramer | 2011-07-04 | 1 | -1/+5 |
* | InstCombine: Fold A-b == C --> b == A-C if A and C are constants. | Benjamin Kramer | 2011-06-13 | 1 | -7/+16 |
* | InstCombine: Shrink ((zext X) & C1) == C2 to fold away the cast if the "zext"... | Benjamin Kramer | 2011-06-12 | 1 | -1/+17 |
* | Simplify code. No functionality changes, name changes aside. | Benjamin Kramer | 2011-06-12 | 1 | -11/+6 |
* | PR9998: ashr exact %x, 31 is not equivalent to sdiv exact %x, -2147483648. | Eli Friedman | 2011-05-25 | 1 | -4/+4 |
* | More instcombine simplifications towards better debug locations. | Eli Friedman | 2011-05-18 | 1 | -11/+9 |
* | Avoid combining GEPs that might overflow at runtime. | Stuart Hastings | 2011-05-14 | 1 | -1/+3 |
* | PR9838: Fix transform introduced in r127064 to not trigger when only one side... | Eli Friedman | 2011-05-05 | 1 | -1/+1 |
* | Transform: "icmp eq (trunc (lshr(X, cst1)), cst" to "icmp (and X, mask), cst" | Chris Lattner | 2011-04-26 | 1 | -0/+25 |
* | some random cleanups, no functionality change. | Chris Lattner | 2011-04-26 | 1 | -5/+5 |
* | Fix a ton of comment typos found by codespell. Patch by | Chris Lattner | 2011-04-15 | 1 | -1/+1 |
* | InstCombine: APFloat can't perform arithmetic on PPC double doubles, don't ev... | Benjamin Kramer | 2011-03-31 | 1 | -2/+4 |
* | InstCombine: Fix transform to use the swapped predicate. | Benjamin Kramer | 2011-03-31 | 1 | -2/+2 |
* | InstCombine: fold fcmp (fneg x), (fneg y) -> fcmp x, y | Benjamin Kramer | 2011-03-31 | 1 | -0/+5 |
* | InstCombine: fold fcmp pred (fneg x), C -> fcmp swap(pred) x, -C | Benjamin Kramer | 2011-03-31 | 1 | -0/+8 |
* | InstCombine: Shrink "fcmp (fpext x), C" to "fcmp x, C" if C can be losslessly... | Benjamin Kramer | 2011-03-31 | 1 | -0/+34 |
* | InstCombine: fold fcmp (fpext x), (fpext y) -> fcmp x, y. | Benjamin Kramer | 2011-03-31 | 1 | -0/+7 |
* | Reorder comments to put them the right way around. | Nick Lewycky | 2011-03-08 | 1 | -2/+2 |
* | ConstantInt has some getters which return ConstantInt's or ConstantVector's of | Nick Lewycky | 2011-03-06 | 1 | -22/+22 |
* | Thread comparisons over udiv/sdiv/ashr/lshr exact and lshr nuw/nsw whenever | Nick Lewycky | 2011-03-05 | 1 | -0/+21 |
* | Try once again to optimize "icmp (srem X, Y), Y" by turning the comparison into | Nick Lewycky | 2011-03-05 | 1 | -0/+29 |
* | srem doesn't actually have the same resulting sign as its numerator, you could | Nick Lewycky | 2011-02-28 | 1 | -10/+0 |
* | Teach InstCombine to fold "(shr exact X, Y) == 0" --> X == 0, fixing #1 from | Nick Lewycky | 2011-02-28 | 1 | -5/+13 |
* | The sign of an srem instruction is the sign of its dividend (the first | Nick Lewycky | 2011-02-28 | 1 | -3/+13 |
* | Add some transforms of the kind X-Y>X -> 0>Y which are valid when there is no | Duncan Sands | 2011-02-18 | 1 | -18/+17 |
* | Transform "A + B >= A + C" into "B >= C" if the adds do not wrap. Likewise f... | Duncan Sands | 2011-02-17 | 1 | -93/+106 |
* | remove a now-unneccesary cast. | Chris Lattner | 2011-02-13 | 1 | -1/+1 |
* | implement instcombine folding for things like (x >> c) < 42. | Chris Lattner | 2011-02-13 | 1 | -8/+50 |
* | refactor some code out into a helper method. | Chris Lattner | 2011-02-13 | 1 | -46/+54 |
* | Also fold (A+B) == A -> B == 0 when the add is commuted. | Benjamin Kramer | 2011-02-11 | 1 | -2/+4 |
* | Enhance the "compare with shift" and "compare with div" | Chris Lattner | 2011-02-10 | 1 | -44/+52 |
* | Recognize and simplify | Anders Carlsson | 2011-01-30 | 1 | -1/+11 |
* | At -O123 the early-cse pass is run before instcombine has run. According to my | Duncan Sands | 2011-01-20 | 1 | -32/+11 |
* | remove the AllowAggressive argument to FoldOpIntoPhi. It is forced to false ... | Chris Lattner | 2011-01-16 | 1 | -2/+2 |
* | fix typo | Chris Lattner | 2011-01-15 | 1 | -1/+1 |
* | Catch ~x < cst just like ~x < ~y, we currently handle this through | Chris Lattner | 2011-01-15 | 1 | -4/+8 |
* | Remove dead variable, const-ref-ize an APInt. | Owen Anderson | 2011-01-11 | 1 | -4/+1 |
* | Fix a random missed optimization by making InstCombine more aggressive when d... | Owen Anderson | 2011-01-11 | 1 | -2/+40 |
* | recognize an unsigned add with overflow idiom into uadd. | Chris Lattner | 2010-12-19 | 1 | -5/+50 |
* | use IC.ReplaceInstUsesWith instead of a raw RAUW so that uses of | Chris Lattner | 2010-12-19 | 1 | -3/+5 |
* | generalize the sadd creation code to not require that the | Chris Lattner | 2010-12-19 | 1 | -39/+16 |
* | fix another miscompile in the llvm.sadd formation logic: it wasn't | Chris Lattner | 2010-12-19 | 1 | -4/+39 |
* | fix a bug (possibly 8816) in the sadd forming xform: it isn't | Chris Lattner | 2010-12-19 | 1 | -0/+10 |
* | rework the code added in r122072 to pull it out to its own | Chris Lattner | 2010-12-19 | 1 | -61/+64 |