| Commit message (Expand) | Author | Age | Files | Lines |
* | Fix comment. | Benjamin Kramer | 2011-04-01 | 1 | -2/+2 |
* | Tweaks to the icmp+sext-to-shifts optimization to address Frits' comments: | Benjamin Kramer | 2011-04-01 | 1 | -6/+6 |
* | Fix build. | Benjamin Kramer | 2011-04-01 | 1 | -1/+2 |
* | InstCombine: Turn icmp + sext into bitwise/integer ops when the input has onl... | Benjamin Kramer | 2011-04-01 | 1 | -0/+50 |
* | InstCombine: Move (sext icmp) transforms into their own method. No intended f... | Benjamin Kramer | 2011-04-01 | 2 | -37/+43 |
* | Instcombile optimization: extractelement(cast) -> cast(extractelement) | Nadav Rotem | 2011-03-31 | 1 | -1/+9 |
* | 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 |
* | * The DSE code that tested for overlapping needed to take into account the fact | Bill Wendling | 2011-03-30 | 1 | -1/+3 |
* | 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 | 25 | -62/+44 |
* | (Almost) always call reserveOperandSpace() on newly created PHINodes. | Jay Foad | 2011-03-30 | 19 | -15/+38 |
* | InstCombine: Add a few missing combines for ANDs and ORs of sign bit tests. | Benjamin Kramer | 2011-03-29 | 1 | -0/+24 |
* | DSE: Remove an early exit optimization that depended on the ordering of a Sma... | Benjamin Kramer | 2011-03-29 | 1 | -13/+0 |
* | Do some simple copy propagation through integer loads and stores when promoting | Cameron Zwarich | 2011-03-29 | 1 | -9/+14 |
* | 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 |
* | Simplification noticed by Frits. | Bill Wendling | 2011-03-26 | 1 | -3/+2 |
* | Rework the logic that determines if a store completely overlaps an ealier store. | Bill Wendling | 2011-03-26 | 1 | -15/+23 |
* | Fix a typo and add a test. | Cameron Zwarich | 2011-03-26 | 1 | -1/+1 |
* | PR9561: A store with a negative offset (via GEP) could erroniously say that it | Bill Wendling | 2011-03-26 | 1 | -0/+2 |
* | No functionality change, just adjust some whitespace for coding style complia... | Nick Lewycky | 2011-03-25 | 1 | -2/+2 |
* | Debug intrinsics must be skipped at the beginning and ends of blocks, lest they | Cameron Zwarich | 2011-03-24 | 1 | -2/+6 |
* | It is enough for the CallInst to have no uses to be made a tail call with a ret | Cameron Zwarich | 2011-03-24 | 1 | -1/+1 |
* | s/UpdateDT/ModifiedDT/g | Devang Patel | 2011-03-24 | 1 | -8/+8 |
* | Do early taildup of ret in CodeGenPrepare for potential tail calls that have a | Cameron Zwarich | 2011-03-24 | 1 | -17/+37 |
* | Use an early return instead of a long if block. | Cameron Zwarich | 2011-03-24 | 1 | -51/+51 |
* | When UpdateDT is set, DT is invalid, which could cause problems when trying to | Cameron Zwarich | 2011-03-24 | 1 | -2/+3 |
* | Check for TLI so that -codegenprepare can be used from opt. | Cameron Zwarich | 2011-03-24 | 1 | -0/+3 |
* | Fix PR9464 by correcting some math that just happened to be right in most cases | Cameron Zwarich | 2011-03-23 | 1 | -11/+10 |
* | Handle another case that Frits suggested. | Anders Carlsson | 2011-03-22 | 1 | -2/+4 |
* | Simplify. | Devang Patel | 2011-03-21 | 1 | -5/+4 |
* | More cleanups to the OptimizeEmptyGlobalCXXDtors GlobalOpt function. | Anders Carlsson | 2011-03-21 | 1 | -15/+9 |
* | As suggested by Nick Lewycky, ignore debugging intrinsics when trying to deci... | Anders Carlsson | 2011-03-21 | 1 | -0/+7 |
* | Fix comments | Nick Lewycky | 2011-03-21 | 1 | -2/+2 |
* | Re-apply r127953 with fixes: eliminate empty return block if it has no predec... | Evan Cheng | 2011-03-21 | 1 | -10/+122 |
* | Don't try to eliminate invokes to __cxa_atexit. | Anders Carlsson | 2011-03-20 | 1 | -0/+6 |
* | Don't segfault on mutual recursion, as pointed out by Frits. | Anders Carlsson | 2011-03-20 | 1 | -4/+6 |
* | Address comments from Frits van Bommel. | Anders Carlsson | 2011-03-20 | 1 | -7/+16 |
* | Add an optimization to GlobalOpt that eliminates calls to __cxa_atexit, if th... | Anders Carlsson | 2011-03-20 | 1 | -0/+101 |
* | Revert r127953, "SimplifyCFG has stopped duplicating returns into predecessors | Daniel Dunbar | 2011-03-19 | 1 | -99/+4 |
* | SimplifyCFG has stopped duplicating returns into predecessors to canonicalize IR | Evan Cheng | 2011-03-19 | 1 | -4/+99 |