- 32ab850 Fix code to match comment. Fixes PR11340, a regression from r143209. by Eli Friedman · 13 years ago
- 6a79cfa Teach instsimplify to simplify calls to undef. by Dan Gohman · 13 years ago
- 62324aa Reapply commit 143214 with a fix: m_ICmp doesn't match conditions by Duncan Sands · 13 years ago
- 63ae327 Revert r143214; it's breaking a bunch of stuff. by Eli Friedman · 13 years ago
- 16cdfd8 The expression icmp eq (select (icmp eq x, 0), 1, x), 0 folds to false. by Duncan Sands · 13 years ago
- 8cc1e2b Fold icmp ugt (udiv X, Y), X to false. Spotted by my super-optimizer by Duncan Sands · 13 years ago
- f1e0983 Reapply commit 143028 with a fix: the problem was casting a ConstantExpr Mul by Duncan Sands · 13 years ago
- 198790b The maximum power of 2 dividing a power of 2 is itself. This occurs by Duncan Sands · 13 years ago
- ae707bd InstSimplify: Don't try to replace an extractvalue/insertvalue pair with the original value if types don't match. by Benjamin Kramer · 13 years ago
- dabc280 Add some simple insertvalue simplifications, for the purpose of cleaning by Duncan Sands · 13 years ago
- f23d4ad Revert r137781; I agree with Duncan's comment that the situation in question is clearly impossible given the current structure of the code. by Eli Friedman · 13 years ago
- 2076342 Extend the undef ^ undef idiom once more. No testcase: I can't figure out how to actually trigger the codepath in question at the moment, but it might get exposed in the future. by Eli Friedman · 13 years ago
- c9d904e Fix what seems an obvious typo. Patch by Ivan Krasin. Problem by Duncan Sands · 13 years ago
- f56138d Add helper function for getting true/false constants in a uniform by Duncan Sands · 13 years ago
- a920310 Convert GetElementPtrInst to use ArrayRef. by Jay Foad · 13 years ago
- dab3d29 Convert ConstantExpr::getGetElementPtr and by Jay Foad · 13 years ago
- b9b54eb Convert SimplifyGEPInst to use ArrayRef. by Jay Foad · 13 years ago
- 1d2f569 Use ArrayRef in ConstantFoldInstOperands and ConstantFoldCall. by Jay Foad · 13 years ago
- db125cf land David Blaikie's patch to de-constify Type, with a few tweaks. by Chris Lattner · 13 years ago
- 68c0dbc Improve constant folding of undef for cmp and select operators. by Dan Gohman · 13 years ago
- e864b5b The comparision "max(x,y)==x" is equivalent to "x>=y". Since the max is by Duncan Sands · 13 years ago
- b6e7cd6 PR9838: Fix transform introduced in r127064 to not trigger when only one side of the icmp is an exact shift. by Eli Friedman · 13 years ago
- 8140ad3 Add variations on: max(x,y) >= min(x,z) folds to true. This isn't that common, by Duncan Sands · 13 years ago
- ad20681 Implement some basic simplifications involving min/max, for example by Duncan Sands · 13 years ago
- 448a6d3 Fix PR9579: when simplifying a compare to "true" or "false", and it was by Duncan Sands · 13 years ago
- f24ed77 Move some rem transforms out of instcombine and into instsimplify. by Duncan Sands · 13 years ago
- 562b84b Don't include Operator.h from InstrTypes.h. by Jay Foad · 13 years ago
- a0e2f38 Fix two cases I forgot to update when doing a mental "getSwappedPredicate". by Nick Lewycky · 14 years ago
- 84dd4fa Add another micro-optimization. Apologies for the lack of refactoring, but I by Nick Lewycky · 14 years ago
- 58bfcdb Thread comparisons over udiv/sdiv/ashr/lshr exact and lshr nuw/nsw whenever by Nick Lewycky · 14 years ago
- e2ee753 Revert broken srem logic from r126991. by Nick Lewycky · 14 years ago
- 7867927 Fold "icmp pred (srem X, Y), Y" like we do for urem. Handle signed comparisons by Nick Lewycky · 14 years ago
- 3a73e34 Teach instruction simplify to use constant ranges to solve problems of the form by Nick Lewycky · 14 years ago
- 88cd0aa Optimize "icmp pred (urem X, Y), Y" --> true/false depending on pred. There's by Nick Lewycky · 14 years ago
- 38f7f66 Move "A | ~(A & ?) -> -1" from InstCombine to InstructionSimplify. by Benjamin Kramer · 14 years ago
- 5380d28 Remove pointless blank line. by Duncan Sands · 14 years ago
- 52fb846 Teach instsimplify that X+Y>=X+Z is the same as Y>=Z if neither side overflows, by Duncan Sands · 14 years ago
- ffeb98a Formatting and comment tweaks. by Duncan Sands · 14 years ago
- 81a0dc9 Teach instsimplify some tricks about exact/nuw/nsw shifts. by Chris Lattner · 14 years ago
- aeaf3d4 Rework InstrTypes.h so to reduce the repetition around the NSW/NUW/Exact by Chris Lattner · 14 years ago
- 163a84b Add an m_Div pattern for matching either a udiv or an sdiv and use it by Duncan Sands · 14 years ago
- c6ee918 teach instsimplify to transform (X / Y) * Y to X when the div is an exact udiv. by Chris Lattner · 14 years ago
- 479b4b9 Fix another warning. by Anders Carlsson · 14 years ago
- 50ca4d3 Improve threading of comparisons over select instructions (spotted by my by Duncan Sands · 14 years ago
- 4b72071 Reenable the transform "(X*Y)/Y->X" when the multiplication is known not to by Duncan Sands · 14 years ago
- f9e4a98 Add a m_Undef pattern for convenience. This is so that code that uses by Duncan Sands · 14 years ago
- 7681c6d Have m_One also match constant vectors for which every element is 1. by Duncan Sands · 14 years ago
- 7af00c0 Commit 124487 broke 254.gap. See if disabling the part that might be triggered by Duncan Sands · 14 years ago
- 1895e98 Transform (X/Y)*Y into X if the division is exact. Instcombine already knows how by Duncan Sands · 14 years ago
- 5413880 Fix comment. by Nick Lewycky · 14 years ago
- 1fca2c3 Move InstCombine's knowledge of fdiv to SimplifyInstruction(). by Frits van Bommel · 14 years ago
- 79f4eea This dyn_cast should be a cast. Pointed out by Frits van Bommel. by Duncan Sands · 14 years ago
- a3e292c Thread divisions over selects and phis. This doesn't fire much and has basically by Duncan Sands · 14 years ago
- 593faa5 My auto-simplifier noticed that ((X/Y)*Y)/Y occurs several times in SPEC by Duncan Sands · 14 years ago
- d70d1a5 According to my auto-simplifier the most common missed simplifications in by Duncan Sands · 14 years ago
- 9d32f60 At -O123 the early-cse pass is run before instcombine has run. According to my by Duncan Sands · 14 years ago
- b2f3c38 For completeness, generalize the (X + Y) - Y -> X transform and add X - (X + 1) -> -1. by Duncan Sands · 14 years ago
- fe02c69 Simplify (X<<1)-X into X. According to my auto-simplier this is the most common missed by Duncan Sands · 14 years ago
- c087e20 Turn X-(X-Y) into Y. According to my auto-simplifier this is the most common by Duncan Sands · 14 years ago
- cf80bc1 Factorize common code out of the InstructionSimplify shift logic. Add in by Duncan Sands · 14 years ago
- c43cee3 Move some shift transforms out of instcombine and into InstructionSimplify. by Duncan Sands · 14 years ago
- 53ad861 Remove some wrong code which fortunately was never executed (as explained in by Duncan Sands · 14 years ago
- 6dc9125 The most common simplification missed by instsimplify in unoptimized bitcode by Duncan Sands · 14 years ago
- 124708d Revert commit 122654 at the request of Chris, who reckons that instsimplify by Duncan Sands · 14 years ago
- 7cf85e7 Fix a README item by having InstructionSimplify do a mild form of value by Duncan Sands · 14 years ago
- e21083a Cast away "comparison between signed and unsigned integer" warnings. by Benjamin Kramer · 14 years ago
- 1cd05bb When determining whether the new instruction was already present in by Duncan Sands · 14 years ago
- a3c44a5 Add some statistics, good for understanding how much more powerful by Duncan Sands · 14 years ago
- 07f30fb While I don't think any later transforms can fire, it seems cleaner to by Duncan Sands · 14 years ago
- 75d289e Fix inverted condition noticed by Frits van Bommel. by Duncan Sands · 14 years ago
- 82fdab3 Pull a few more simplifications out of instcombine (there are still by Duncan Sands · 14 years ago
- 3421d90 Teach InstructionSimplify about distributive laws. These transforms fire by Duncan Sands · 14 years ago
- 0312a93 Move checking of the recursion limit into the various Thread methods. by Duncan Sands · 14 years ago
- 566edb0 Add generic simplification of associative operations, generalizing by Duncan Sands · 14 years ago
- ee9a2e3 Have SimplifyBinOp dispatch Xor, Add and Sub to the corresponding methods by Duncan Sands · 14 years ago
- fea3b21 Move Sub simplifications and additional Add simplifications out of by Duncan Sands · 14 years ago
- f8b1a5e If we detect that the instruction we are simplifying is unreachable, arrange for by Duncan Sands · 14 years ago
- e89ada9 Add some dead stores to pacify my least favorite GCC warning: may be by Chandler Carruth · 14 years ago
- 4cd2ad1 Expand a little on the description of what InstructionSimplify does. by Duncan Sands · 14 years ago
- a63395a If a GEP index simply advances by multiples of a type of zero size, by Duncan Sands · 14 years ago
- 85bbff6 Move the "gep undef" -> "undef" transform from instcombine to by Duncan Sands · 14 years ago
- e60d79f Add a rather pointless InstructionSimplify transform, inspired by recent constant by Duncan Sands · 14 years ago
- 87689cf Remove threading of Xor over selects and phis, with an explanation by Duncan Sands · 14 years ago
- 2b74987 Move some those Xor simplifications which don't require creating new by Duncan Sands · 14 years ago
- d261dc6 Previously SimplifyInstruction could report that an instruction by Duncan Sands · 14 years ago
- ff10341 Fix a layering violation: hasConstantValue, which is part of the PHINode by Duncan Sands · 14 years ago
- 1845009 In which I discover the existence of loops. Threading an operation by Duncan Sands · 14 years ago
- 5520089 Teach InstructionSimplify the trick of skipping incoming phi by Duncan Sands · 14 years ago
- eff0581 If dom tree information is available, make it possible to pass by Duncan Sands · 14 years ago
- cd6636c Teach InstructionSimplify about phi nodes. I chose to have it simply by Duncan Sands · 14 years ago
- 12a86f5 Strip trailing whitespace. by Duncan Sands · 14 years ago
- bc68d71 Reduce the maximum recursion depth, 5 seems pointlessly too much. by Duncan Sands · 14 years ago
- a74a58c Teach InstructionSimplify how to look through PHI nodes. Since PHI by Duncan Sands · 14 years ago
- b2cbdc3 Simplify binary operations where one operand is a select instruction. by Duncan Sands · 14 years ago
- 3bbb0cc Factorize code, no functionality change. by Duncan Sands · 14 years ago
- 92826de Add simplification of floating point comparisons with the result by Duncan Sands · 14 years ago
- 1ac7c99 Fix a README item: when doing a comparison with the result by Duncan Sands · 14 years ago
- 4e282de Revert r114097, adding back in the assertion against replacing an Instruction by itself. Now that CorrelatedValuePropagation is by Owen Anderson · 14 years ago
- 4b91c3a Fix PR8161, in which an unreachable loop causes recursive instruction simplification to try by Owen Anderson · 14 years ago
- 6844c8e Teach InstructionSimplify to fold (A & B) & A -> A & B and (A | B) | A -> A | B. by Benjamin Kramer · 14 years ago