| Commit message (Expand) | Author | Age | Files | Lines |
* | 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 |
* | InstCombine: If the divisor of an fdiv has an exact inverse, turn it into an ... | Benjamin Kramer | 2011-03-30 | 1 | -0/+12 |
* | Remove PHINode::reserveOperandSpace(). Instead, add a parameter to | Jay Foad | 2011-03-30 | 4 | -16/+10 |
* | (Almost) always call reserveOperandSpace() on newly created PHINodes. | Jay Foad | 2011-03-30 | 2 | -0/+2 |
* | InstCombine: Add a few missing combines for ANDs and ORs of sign bit tests. | Benjamin Kramer | 2011-03-29 | 1 | -0/+24 |
* | Remove tabs I accidentally added. | Nick Lewycky | 2011-03-28 | 1 | -15/+15 |
* | Make more use of PHINode::getNumIncomingValues(). | Jay Foad | 2011-03-28 | 2 | -5/+5 |
* | Add some debug output when -instcombine uses RAUW. This can make debug output... | Frits van Bommel | 2011-03-27 | 1 | -1/+4 |
* | Teach the transformation that moves binary operators around selects to preserve | Nick Lewycky | 2011-03-27 | 1 | -8/+22 |
* | Use APInt's umul_ov instead of rolling our own overflow detection. | Benjamin Kramer | 2011-03-27 | 1 | -5/+6 |
* | Add a small missed optimization: turn X == C ? X : Y into X == C ? C : Y. This | Nick Lewycky | 2011-03-27 | 1 | -0/+13 |
* | Try to not lose variable's debug info during instcombine. | Devang Patel | 2011-03-17 | 1 | -0/+4 |
* | 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 | -3/+7 |
* | This case is solved by Scalar Replacement of Aggregates (DT) and | Jin-Gu Kang | 2011-03-14 | 1 | -25/+3 |
* | Add comment as following: | Jin-Gu Kang | 2011-03-13 | 1 | -0/+12 |
* | This patch removes some of useless instructions generated by bitfield access. | Jin-Gu Kang | 2011-03-12 | 1 | -3/+13 |
* | InstCombine: Fix a thinko where transform an icmp under the assumption that i... | Benjamin Kramer | 2011-03-11 | 1 | -3/+2 |
* | InstCombine: Turn umul_with_overflow into mul nuw if we can prove that it can... | Benjamin Kramer | 2011-03-10 | 1 | -1/+29 |
* | PR9346: Prevent SimplifyDemandedBits from incorrectly introducing | Eli Friedman | 2011-03-09 | 1 | -0/+4 |
* | llvm.dbg.declare intrinsic does not use any llvm::Values. It's magic! | Devang Patel | 2011-03-08 | 3 | -41/+3 |
* | Reorder comments to put them the right way around. | Nick Lewycky | 2011-03-08 | 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/+12 |
* | ConstantInt has some getters which return ConstantInt's or ConstantVector's of | Nick Lewycky | 2011-03-06 | 1 | -22/+22 |
* | InstCombine: We know the number of items initially added to the worklist map,... | Benjamin Kramer | 2011-03-05 | 1 | -0/+1 |
* | 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 |
* | Make InstCombiner::FoldAndOfICmps create a ConstantRange that's the | Anders Carlsson | 2011-03-01 | 1 | -8/+12 |
* | 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 |
* | change instcombine to not turn a call to non-varargs bitcast of | Chris Lattner | 2011-02-24 | 1 | -5/+15 |
* | Move "A | ~(A & ?) -> -1" from InstCombine to InstructionSimplify. | Benjamin Kramer | 2011-02-20 | 1 | -16/+8 |
* | InstCombine: Add a bunch of combines of the form x | (y ^ z). | Benjamin Kramer | 2011-02-20 | 1 | -0/+41 |
* | PR9218: SimplifyDemandedVectorElts can return a non-null value that is not | Eli Friedman | 2011-02-19 | 1 | -2/+7 |
* | 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 |
* | have instcombine preserve nsw/nuw/exact when sinking | Chris Lattner | 2011-02-17 | 1 | -11/+53 |
* | fix typo | Chris Lattner | 2011-02-17 | 1 | -1/+1 |
* | fix instcombine merging GEPs through a PHI to only make the | Chris Lattner | 2011-02-17 | 1 | -3/+7 |
* | add is always integer, thanks to Frits for noticing this. | Chris Lattner | 2011-02-17 | 1 | -1/+1 |
* | Transform "A + B >= A + C" into "B >= C" if the adds do not wrap. Likewise f... | Duncan Sands | 2011-02-17 | 1 | -93/+106 |
* | preserve NUW/NSW when transforming add x,x | Chris Lattner | 2011-02-17 | 1 | -2/+7 |
* | Spelling fix: consequtive -> consecutive. | Duncan Sands | 2011-02-15 | 1 | -1/+1 |
* | Fix 9216 - Endless loop in InstCombine pass. | Nadav Rotem | 2011-02-15 | 1 | -1/+5 |
* | Do not forget DebugLoc! | Devang Patel | 2011-02-15 | 1 | -0/+1 |
* | tidy up a bit. | Chris Lattner | 2011-02-15 | 1 | -7/+9 |
* | convert ConstantVector::get to use ArrayRef. | Chris Lattner | 2011-02-15 | 1 | -7/+3 |