llvm/lib/Transforms/IPO
Chris Lattner 670c889ac9 Implement SRA for global variables. This allows the other global variable
optimizations to trigger much more often.  This allows the elimination of
several dozen more global variables in Programs/External.  Note that we only
do this for non-constant globals: constant globals will already be optimized
out if the accesses to them permit it.

This implements Transforms/GlobalOpt/globalsra.llx


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16842 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-08 17:32:09 +00:00
..
ArgumentPromotion.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
ConstantMerge.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
DeadArgumentElimination.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
DeadTypeElimination.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
ExtractFunction.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
FunctionResolution.cpp Disable the 'WARNING: Found global types that are not compatible' warning 2004-09-30 00:12:29 +00:00
GlobalDCE.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
GlobalOpt.cpp Implement SRA for global variables. This allows the other global variable 2004-10-08 17:32:09 +00:00
Inliner.cpp Fix the inliner to always delete any edges from the external call node to 2004-09-18 21:37:03 +00:00
Inliner.h Simplify the interface and remove an unneeded #include 2004-05-23 21:21:35 +00:00
InlineSimple.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
Internalize.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
IPConstantPropagation.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
LoopExtractor.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
LowerSetJmp.cpp Comment cleanups 2004-10-07 06:00:24 +00:00
Makefile Added LLVM copyright notice to Makefiles. 2003-10-20 22:26:57 +00:00
PruneEH.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
RaiseAllocations.cpp 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00