llvm-6502/lib/Transforms/IPO
Owen Anderson ca399021d4 Add an early implementation of a partial inlining pass. The idea behind this
is that, for functions whose bodies are entirely guarded by an if-statement, it
can be profitable to pull the test out of the callee and into the caller.

This code has had some cursory testing, but still has a number of known issues
on the LLVM test suite.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73338 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-14 08:26:32 +00:00
..
ArgumentPromotion.cpp Implement and use new method Function::hasAddressTaken(). 2009-06-10 08:41:11 +00:00
CMakeLists.txt
ConstantMerge.cpp
DeadArgumentElimination.cpp Implement and use new method Function::hasAddressTaken(). 2009-06-10 08:41:11 +00:00
DeadTypeElimination.cpp
ExtractGV.cpp
FunctionAttrs.cpp Fix PR3754: don't mark functions that wrap MallocInst with 2009-05-06 08:42:00 +00:00
GlobalDCE.cpp Remove an unused function SafeToDestroyConstant(). Rename an almost 2009-06-09 21:37:11 +00:00
GlobalOpt.cpp Implement and use new method Function::hasAddressTaken(). 2009-06-10 08:41:11 +00:00
IndMemRemoval.cpp
InlineAlways.cpp
Inliner.cpp available_externall linkage is not local, this was confusing the codegenerator, 2009-05-23 14:06:57 +00:00
InlineSimple.cpp
Internalize.cpp
IPConstantPropagation.cpp Use cast<> instead of dyn_cast<> for things that are known to be 2009-06-06 17:49:35 +00:00
IPO.cpp
LoopExtractor.cpp
LowerSetJmp.cpp
Makefile
MergeFunctions.cpp Unlike the other instructions, GEP really does need to look at the type of a 2009-06-13 19:09:52 +00:00
PartialInlining.cpp Add an early implementation of a partial inlining pass. The idea behind this 2009-06-14 08:26:32 +00:00
PartialSpecialization.cpp
PruneEH.cpp
RaiseAllocations.cpp
StripDeadPrototypes.cpp
StripSymbols.cpp The second argument to RecursivelyDeleteTriviallyDeadInstructions has 2009-05-02 20:22:10 +00:00
StructRetPromotion.cpp