aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Transforms
Commit message (Expand)AuthorAgeFilesLines
* Replace two for loops with while(!X->use_empty()) loops. This preventsMatthijs Kooijman2008-08-141-10/+8
* Fix a bogus srem rule - a negative value srem'd by a power-of-2Dan Gohman2008-08-131-3/+0
* Fix SCCP's handling of struct value loads and stores. SCCP doesn'tDan Gohman2008-08-131-2/+0
* Rename. s/FindIVForUser/FindIVUserForCond/gDevang Patel2008-08-131-4/+4
* Check sign to detect overflow before changing compare stride.Devang Patel2008-08-131-1/+8
* Remove tabs.Bill Wendling2008-08-121-2/+2
* Implement support for simplifying vector comparisons by 0.0 and 1.0 like weChris Lattner2008-08-111-4/+12
* Have IRBuilder take a template argument on whether or not to preserveEric Christopher2008-08-081-45/+46
* Let SRETPromotion properly preserve the function name instead of (implicitly)Matthijs Kooijman2008-08-071-1/+2
* Fix SRETPromotion, it was generating functions without returns statements sinceMatthijs Kooijman2008-08-071-1/+1
* Add some debug output to SRETPromotion.Matthijs Kooijman2008-08-071-0/+4
* Fix a shufflevector instcombine that was emitting invalid masks indicesDan Gohman2008-08-061-3/+5
* Fix PR2355: bug in ChangeCompareStride. When the loop termination compare is ...Evan Cheng2008-08-061-2/+2
* optimize a common idiom generated by clang for bitfield access, PR2638.Chris Lattner2008-08-061-1/+31
* Zap sitofp/fptoui pairs. In all cases when the sign difference Chris Lattner2008-08-061-16/+30
* Reinstate this optimization, but without the miscompile. Thanks to Bill forNick Lewycky2008-08-061-0/+15
* Pass the computed iteration count value to RewriteLoopExitValuesDan Gohman2008-08-051-4/+4
* Revert r53282. This was causing a miscompile on Linux. Also, the transformationBill Wendling2008-08-051-16/+0
* Trim #includes.Dan Gohman2008-08-051-1/+0
* Fix comment typos.Duncan Sands2008-08-011-1/+1
* Add vector shifts to the IR, patch by Eli Friedman.Nate Begeman2008-07-291-1/+2
* Add -unroll-allow-partial command line option that enabled the loop unroller toMatthijs Kooijman2008-07-291-4/+26
* Restructure ArgumentPromotion a bit. Instead of just having a single booleanMatthijs Kooijman2008-07-291-99/+235
* Don't remove volatile loads. Thanks to Duncan for noticing this one.Owen Anderson2008-07-281-1/+1
* Add support for eliminating stores that store the same value that was just lo...Owen Anderson2008-07-281-2/+35
* Rename SDOperand to SDValue.Dan Gohman2008-07-271-1/+1
* Put the LICM of constant GlobalVariables, introduced in r53945, under aDan Gohman2008-07-241-1/+11
* "Allow LICM to sink or lift loads from constant memory. Also add a testChris Lattner2008-07-231-0/+5
* Enable first-class aggregates support.Dan Gohman2008-07-2310-261/+68
* Fix a bug in LSR's dead-PHI cleanup. If a PHI has a def-use chain thatDan Gohman2008-07-211-0/+5
* Supress a gcc-4.3 warning.Duncan Sands2008-07-181-1/+1
* Make PRE actually handle critical edges (by splitting them). Confirmed that ...Owen Anderson2008-07-181-3/+6
* Reapply r53735. My last patch fixed the failures Dan observed.Owen Anderson2008-07-181-52/+9
* Add some checks that got lost in the shuffle. This fixes 464.h264ref.Owen Anderson2008-07-181-0/+4
* Revert r53735. It broke SPEC 464.h264ref.Dan Gohman2008-07-181-9/+52
* Use MergeBlockIntoPredecessor to simplify some code.Owen Anderson2008-07-171-52/+9
* Make MergeBlockIntoPredecessor more aggressive when the same successor appearsOwen Anderson2008-07-171-5/+24
* Enable PRE. My last batch of changes fixed the miscompile.Owen Anderson2008-07-171-1/+1
* Make GlobalOpt preserve address spaces when scalar replacing aggregate globals.Matthijs Kooijman2008-07-171-2/+4
* Fix PR2553Chris Lattner2008-07-171-1/+2
* Inliner tweak. Function calls should cost more than one instruction!Evan Cheng2008-07-171-0/+5
* Factor MergeBlockIntoPredecessor out into BasicBlockUtils.Owen Anderson2008-07-172-51/+56
* There's no need to iterate block merging and PRE. In fact, iterating the latterOwen Anderson2008-07-161-14/+12
* Redo InstCombiner::visitExtractValueInst. Instead of using the (complicate)Matthijs Kooijman2008-07-161-5/+80
* Fix PR2296. Do not transform x86_sse2_storel_dq into a full-width store.Evan Cheng2008-07-161-1/+0
* Revert this, as it seems to still be broken.Owen Anderson2008-07-151-1/+1
* Enable local PRE by default.Owen Anderson2008-07-151-1/+1
* Have GVN do a pre-pass over the CFG that folds away unconditional branches wh...Owen Anderson2008-07-151-2/+63
* Allow deadargelim to change return types even though now values were dead. ThisMatthijs Kooijman2008-07-151-11/+1
* Revert r53606. It turns out that explicitely tracking the liveness of theMatthijs Kooijman2008-07-151-97/+103