llvm-mirror/lib/Transforms/IPO
Matthijs Kooijman b7e2818227 Rewrite the DeadArgumentElimination pass, to use a more explicit tracking of
dependencies between return values and/or arguments. Also make the handling of
arguments and return values the same.

The pass now looks properly inside returned structs, but only at the first                                                                                     
level (ie, not inside nested structs).

Also add a testcase for testing various variations of (multiple) dead rerturn
values.

llvm-svn: 52459
2008-06-18 11:12:53 +00:00
..
ArgumentPromotion.cpp convert more operand loops to iterator formulation 2008-05-29 01:59:18 +00:00
ConstantMerge.cpp
DeadArgumentElimination.cpp Rewrite the DeadArgumentElimination pass, to use a more explicit tracking of 2008-06-18 11:12:53 +00:00
DeadTypeElimination.cpp
ExtractGV.cpp
GlobalDCE.cpp
GlobalOpt.cpp convert more operand loops to iterator formulation 2008-05-29 01:59:18 +00:00
IndMemRemoval.cpp
Inliner.cpp
InlineSimple.cpp
Internalize.cpp
IPConstantPropagation.cpp Reapply r52397 (make IPConstProp promote returned arguments), but fixed this 2008-06-18 08:30:37 +00:00
LoopExtractor.cpp
LowerSetJmp.cpp
Makefile
PruneEH.cpp
RaiseAllocations.cpp
StripDeadPrototypes.cpp
StripSymbols.cpp
StructRetPromotion.cpp Let StructRetPromotion check if all if its users are really calls or invokesn, 2008-06-05 08:57:20 +00:00