llvm/lib/Transforms/IPO
Chris Lattner b1ab458047 Factor this code out into a few methods.
Implement the start of global ctor optimization.  It is currently smart
enough to remove the global ctor for cases like this:

struct foo {
  foo() {}
} x;

... saving a bit of startup time for the program.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23433 91177308-0d34-0410-b5e6-96231b3b80d8
2005-09-26 01:43:45 +00:00
..
ArgumentPromotion.cpp Preserve calling conventions when doing IPO 2005-05-09 01:05:50 +00:00
ConstantMerge.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
DeadArgumentElimination.cpp add a debug type 2005-06-24 16:00:46 +00:00
DeadTypeElimination.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
ExtractFunction.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
FunctionResolution.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
GlobalDCE.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
GlobalOpt.cpp Factor this code out into a few methods. 2005-09-26 01:43:45 +00:00
Inliner.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
Inliner.h Remove trailing whitespace 2005-04-21 23:48:37 +00:00
InlineSimple.cpp teach the inliner about coldcc and noreturn functions 2005-05-18 04:30:33 +00:00
Internalize.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
IPConstantPropagation.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
LoopExtractor.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
LowerSetJmp.cpp Fix PR575, patch provided by John Mellor-Crummey. Thanks! 2005-06-15 22:49:30 +00:00
Makefile Change Library Names Not To Conflict With Others When Installed 2004-10-27 23:18:45 +00:00
PruneEH.cpp Eliminate all remaining tabs and trailing spaces. 2005-07-27 06:12:32 +00:00
RaiseAllocations.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
SimplifyLibCalls.cpp Fix some logic I broke that caused a regression on 2005-09-25 07:06:48 +00:00
StripSymbols.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00