| Commit message (Expand) | Author | Age | Files | Lines |
* | This testcase passed even without the fix. Added the target info to make the | Nadav Rotem | 2011-04-06 | 1 | -0/+3 |
* | InstCombine optimizes gep(bitcast(x)) even when the bitcasts casts away address | Nadav Rotem | 2011-04-05 | 1 | -0/+16 |
* | InstCombine: Turn icmp + sext into bitwise/integer ops when the input has onl... | Benjamin Kramer | 2011-04-01 | 1 | -0/+48 |
* | Instcombile optimization: extractelement(cast) -> cast(extractelement) | Nadav Rotem | 2011-03-31 | 1 | -0/+27 |
* | InstCombine: APFloat can't perform arithmetic on PPC double doubles, don't ev... | Benjamin Kramer | 2011-03-31 | 1 | -0/+9 |
* | InstCombine: Fix transform to use the swapped predicate. | Benjamin Kramer | 2011-03-31 | 1 | -1/+1 |
* | InstCombine: fold fcmp (fneg x), (fneg y) -> fcmp x, y | Benjamin Kramer | 2011-03-31 | 1 | -0/+9 |
* | 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/+23 |
* | InstCombine: fold fcmp (fpext x), (fpext y) -> fcmp x, y. | Benjamin Kramer | 2011-03-31 | 1 | -0/+11 |
* | Avoid turning a floating point division with a constant power of two into a d... | Benjamin Kramer | 2011-03-30 | 1 | -1/+1 |
* | InstCombine: If the divisor of an fdiv has an exact inverse, turn it into an ... | Benjamin Kramer | 2011-03-30 | 1 | -0/+25 |
* | InstCombine: Add a few missing combines for ANDs and ORs of sign bit tests. | Benjamin Kramer | 2011-03-29 | 1 | -0/+79 |
* | Teach the transformation that moves binary operators around selects to preserve | Nick Lewycky | 2011-03-27 | 1 | -0/+12 |
* | Add a small missed optimization: turn X == C ? X : Y into X == C ? C : Y. This | Nick Lewycky | 2011-03-27 | 1 | -0/+13 |
* | FileCheck-ize and update test. | Eli Friedman | 2011-03-18 | 1 | -6/+9 |
* | Try to not lose variable's debug info during instcombine. | Devang Patel | 2011-03-17 | 1 | -0/+57 |
* | If we don't know how long a string is we can't fold an _chk version to the | Eric Christopher | 2011-03-15 | 1 | -0/+18 |
* | ComputeMaskedBits: sub falls through to add, and sub doesn't have the same ov... | Benjamin Kramer | 2011-03-11 | 1 | -0/+10 |
* | InstCombine: Fix a thinko where transform an icmp under the assumption that i... | Benjamin Kramer | 2011-03-11 | 1 | -0/+10 |
* | InstCombine: Turn umul_with_overflow into mul nuw if we can prove that it can... | Benjamin Kramer | 2011-03-10 | 1 | -0/+27 |
* | Fix mistyped CHECK lines. | Benjamin Kramer | 2011-03-09 | 1 | -1/+1 |
* | PR9346: Prevent SimplifyDemandedBits from incorrectly introducing | Eli Friedman | 2011-03-09 | 1 | -0/+12 |
* | Tweak this test. We can analyze what happens and show that we still do the | Nick Lewycky | 2011-03-07 | 1 | -2/+2 |
* | Add more analysis of the sign bit of an srem instruction. If the LHS is negative | Nick Lewycky | 2011-03-07 | 1 | -0/+19 |
* | ConstantInt has some getters which return ConstantInt's or ConstantVector's of | Nick Lewycky | 2011-03-06 | 1 | -0/+10 |
* | Thread comparisons over udiv/sdiv/ashr/lshr exact and lshr nuw/nsw whenever | Nick Lewycky | 2011-03-05 | 1 | -0/+46 |
* | Try once again to optimize "icmp (srem X, Y), Y" by turning the comparison into | Nick Lewycky | 2011-03-05 | 1 | -0/+16 |
* | Fold "icmp pred (srem X, Y), Y" like we do for urem. Handle signed comparisons | Nick Lewycky | 2011-03-04 | 1 | -2/+11 |
* | Make InstCombiner::FoldAndOfICmps create a ConstantRange that's the | Anders Carlsson | 2011-03-01 | 1 | -0/+9 |
* | srem doesn't actually have the same resulting sign as its numerator, you could | Nick Lewycky | 2011-02-28 | 1 | -15/+5 |
* | Teach InstCombine to fold "(shr exact X, Y) == 0" --> X == 0, fixing #1 from | Nick Lewycky | 2011-02-28 | 1 | -0/+17 |
* | The sign of an srem instruction is the sign of its dividend (the first | Nick Lewycky | 2011-02-28 | 1 | -0/+10 |
* | change instcombine to not turn a call to non-varargs bitcast of | Chris Lattner | 2011-02-24 | 2 | -13/+15 |
* | InstCombine: Add a bunch of combines of the form x | (y ^ z). | Benjamin Kramer | 2011-02-20 | 1 | -0/+94 |
* | PR9218: SimplifyDemandedVectorElts can return a non-null value that is not | Eli Friedman | 2011-02-19 | 1 | -0/+11 |
* | Add some transforms of the kind X-Y>X -> 0>Y which are valid when there is no | Duncan Sands | 2011-02-18 | 2 | -2/+126 |
* | have instcombine preserve nsw/nuw/exact when sinking | Chris Lattner | 2011-02-17 | 1 | -0/+18 |
* | fix instcombine merging GEPs through a PHI to only make the | Chris Lattner | 2011-02-17 | 1 | -2/+3 |
* | Enhance constant folding of bitcast operations on vectors of floats. | Nadav Rotem | 2011-02-17 | 1 | -1/+41 |
* | Transform "A + B >= A + C" into "B >= C" if the adds do not wrap. Likewise f... | Duncan Sands | 2011-02-17 | 1 | -0/+19 |
* | preserve NUW/NSW when transforming add x,x | Chris Lattner | 2011-02-17 | 1 | -0/+8 |
* | filecheckize | Chris Lattner | 2011-02-17 | 1 | -3/+14 |
* | Teach PatternMatch that splat vectors could be floating point as well as | Nick Lewycky | 2011-02-15 | 1 | -0/+28 |
* | Fix 9216 - Endless loop in InstCombine pass. | Nadav Rotem | 2011-02-15 | 1 | -0/+19 |
* | Fix test | Nadav Rotem | 2011-02-13 | 1 | -1/+1 |
* | Fix a regression from r125393; | Nadav Rotem | 2011-02-13 | 1 | -1/+17 |
* | add PR# | Chris Lattner | 2011-02-13 | 1 | -0/+1 |
* | implement instcombine folding for things like (x >> c) < 42. | Chris Lattner | 2011-02-13 | 1 | -2/+11 |
* | Also fold (A+B) == A -> B == 0 when the add is commuted. | Benjamin Kramer | 2011-02-11 | 1 | -10/+18 |