aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Transforms/IPO
Commit message (Expand)AuthorAgeFilesLines
* Check noinline note and ignore other notes.Devang Patel2008-09-031-1/+1
* Handle "noinline" note inside the simple inliner.Devang Patel2008-09-032-4/+7
* s/FP_AlwaysInline/FN_NOTE_AlwaysInline/gDevang Patel2008-09-021-2/+2
* respect inline=never and inline=always notes.Devang Patel2008-09-021-1/+8
* Use empty() instead of begin() == end().Dan Gohman2008-08-141-1/+1
* Replace two for loops with while(!X->use_empty()) loops. This preventsMatthijs Kooijman2008-08-141-10/+8
* Remove tabs.Bill Wendling2008-08-121-2/+2
* 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
* Restructure ArgumentPromotion a bit. Instead of just having a single booleanMatthijs Kooijman2008-07-291-99/+235
* Enable first-class aggregates support.Dan Gohman2008-07-232-22/+6
* Make GlobalOpt preserve address spaces when scalar replacing aggregate globals.Matthijs Kooijman2008-07-171-2/+4
* 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
* Make deadargelim a bit less smart, so it doesn't choke on nested structs asMatthijs Kooijman2008-07-151-38/+21
* Don't use isa when we can reuse a previous dyn_cast.Matthijs Kooijman2008-07-151-3/+2
* Make DeadArgElim keep liveness of the return value as a whole in addition toMatthijs Kooijman2008-07-151-126/+124
* Let DAE keep a list of live functions, instead of simply marking all argumentsMatthijs Kooijman2008-07-151-6/+14
* Split DAE::MarkLive into MarkLive and PropagateLiveness.Matthijs Kooijman2008-07-151-0/+6
* Pass around const RetOrArg references instead of copying values. Also, markMatthijs Kooijman2008-07-151-3/+3
* Simplify debug code by using RetOrArg::getDescription().Matthijs Kooijman2008-07-151-6/+1
* Fix indentation (intentionally left out of the previous commit).Matthijs Kooijman2008-07-151-51/+51
* Move the deadargelim code for intrinsically alive functions into its ownMatthijs Kooijman2008-07-151-23/+25
* Use find instead of lower_bound.Dan Gohman2008-07-111-2/+2
* Restructure dead argument elimination, try #3 :-)Matthijs Kooijman2008-07-101-381/+551
* Restore DeadArgElim back to 52570. It's breaking 447.dealII.Evan Cheng2008-06-251-527/+374
* Pacify gcc-4.3.Duncan Sands2008-06-251-1/+1
* Fix a (false) warning on darwin.Matthijs Kooijman2008-06-251-1/+3
* Fix some cosmetics in comments.Matthijs Kooijman2008-06-251-6/+6
* Commit the new DeadArgElim pass again, this time with the gcc bootstrap failu...Matthijs Kooijman2008-06-241-374/+525
* Rename a few variables to be more consistent.Matthijs Kooijman2008-06-241-3/+3
* Use Instruction::eraseFromParent().Dan Gohman2008-06-212-4/+4
* Back out Matthijs' DAE patches. It's miscompiling gcc driver.Evan Cheng2008-06-211-518/+367
* 80 column and trailing whitespace fixes.Matthijs Kooijman2008-06-201-49/+72
* Don't let DeadArgumentElimination attempt to update callers when the returnMatthijs Kooijman2008-06-201-9/+12
* Don't let DeadArgElimination change the return type ({} into void and {T}Matthijs Kooijman2008-06-201-7/+13
* Explicitely track if any arguments or return values were removed inMatthijs Kooijman2008-06-201-1/+10
* Remove debug output.Matthijs Kooijman2008-06-201-4/+0
* Recommit r52459, rewriting of the dead argument elimination pass.Matthijs Kooijman2008-06-201-369/+483
* Use the common API for adding instructions to basic blocks instead ofDan Gohman2008-06-191-11/+6
* Use a CallSite to find the nth argument of a call/invoke instruction instead ofMatthijs Kooijman2008-06-191-11/+11
* Revert r52459, which was causing an infinite loop or massive slowdown on Mult...Owen Anderson2008-06-181-469/+369
* Rewrite the DeadArgumentElimination pass, to use a more explicit tracking ofMatthijs Kooijman2008-06-181-369/+469
* Reapply r52397 (make IPConstProp promote returned arguments), but fixed thisMatthijs Kooijman2008-06-181-3/+18
* Reapply r52396, it was unrelated to the breakage (that was caused by r52397, myMatthijs Kooijman2008-06-181-53/+76
* revert recent patch which is causing widespread breakage.Chris Lattner2008-06-171-85/+53
* Learn IPConstProp to propagate arguments that are directly returned. StrictlyMatthijs Kooijman2008-06-171-2/+11
* Learn IPConstProp to look at individual return values and propagate themMatthijs Kooijman2008-06-171-53/+76
* Fix PR2411, where ip constant prop would propagate theChris Lattner2008-06-091-0/+5