llvm-6502/include/llvm/Analysis
Jakob Stoklund Olesen f7477470d3 Try to keep the cached inliner costs around for a bit longer for big functions.
The Caller cost info would be reset everytime a callee was inlined. If the
caller has lots of calls and there is some mutual recursion going on, the
caller cost info could be calculated many times.

This patch reduces inliner runtime from 240s to 0.5s for a function with 20000
small function calls.

This is a more conservative version of r98089 that doesn't break the clang
test CodeGenCXX/temp-order.cpp. That test relies on rather extreme inlining
for constant folding.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98099 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-09 23:02:17 +00:00
..
AliasAnalysis.h Partially address a README by having functionattrs consider calls to 2010-01-06 08:45:52 +00:00
AliasSetTracker.h Remove isPod() from DenseMapInfo, splitting it out to its own 2009-12-15 07:26:43 +00:00
CallGraph.h
CaptureTracking.h
CFGPrinter.h Remove ShortNames from getNodeLabel in DOTGraphTraits 2009-11-30 12:38:47 +00:00
ConstantFolding.h Add const qualifiers. 2010-02-08 22:00:06 +00:00
ConstantsScanner.h
DebugInfo.h Start using DIFile. See updated SourceLevelDebugging.html for more information. 2010-03-09 00:44:10 +00:00
DominatorInternals.h Fix PR6047 2010-01-16 13:38:07 +00:00
Dominators.h Whitespace cleanups. 2010-03-01 17:47:21 +00:00
DomPrinter.h
DOTGraphTraitsPass.h Create Generic DOTGraphTraits Printer/Viewer 2010-01-16 10:56:41 +00:00
FindUsedTypes.h
InlineCost.h Try to keep the cached inliner costs around for a bit longer for big functions. 2010-03-09 23:02:17 +00:00
InstructionSimplify.h factor some logic out of instcombine into a new SimplifyAddInst method. 2009-11-27 17:42:22 +00:00
Interval.h
IntervalIterator.h
IntervalPartition.h
IVUsers.h Spelling fixes. 2010-03-01 17:49:51 +00:00
LazyValueInfo.h
LibCallAliasAnalysis.h
LibCallSemantics.h
LiveValues.h
LoopDependenceAnalysis.h fixed some typos in method comments, reworded some comments for clarity 2009-12-07 09:06:37 +00:00
LoopInfo.h Rename a variable to avoid a -Wshadow warning. 2010-02-22 04:04:24 +00:00
LoopPass.h elimiante the dynamic_cast's from opt. 2010-01-22 06:03:06 +00:00
MemoryBuiltins.h Fix "the the" and similar typos. 2010-02-10 16:03:48 +00:00
MemoryDependenceAnalysis.h Split critical edges as needed for load PRE. 2010-02-16 19:51:59 +00:00
Passes.h remove anders-aa from mainline, it isn't maintained and is 2010-03-01 19:24:17 +00:00
PHITransAddr.h Reapply r97010, the speculative revert failed. 2010-02-24 08:48:04 +00:00
PointerTracking.h
PostDominators.h Add findNearestCommonDominator() for PostDominators. 2010-03-07 11:15:04 +00:00
ProfileInfo.h Convert debug messages to use dbgs(). Generally this means 2009-12-23 17:55:11 +00:00
ProfileInfoLoader.h
ProfileInfoTypes.h
ScalarEvolution.h Spelling fixes. 2010-03-01 17:49:51 +00:00
ScalarEvolutionExpander.h When restoring a saved insert location, check to see if the saved 2010-02-15 00:21:43 +00:00
ScalarEvolutionExpressions.h Override dominates and properlyDominates for SCEVAddRecExpr, as a 2010-02-13 00:19:39 +00:00
SparsePropagation.h Eliminate unnecessary LLVMContexts. 2009-12-18 23:42:08 +00:00
Trace.h
ValueTracking.h Move GetStringLength and helper from SimplifyLibCalls to ValueTracking. 2010-03-05 06:58:57 +00:00
Verifier.h