llvm-6502/lib
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
..
Analysis Try to keep the cached inliner costs around for a bit longer for big functions. 2010-03-09 23:02:17 +00:00
Archive From PR6228: 2010-02-04 06:19:43 +00:00
AsmParser Introduce isOpaqueTy and use it rather than isa<OpaqueType>. Also, move some 2010-02-16 14:50:09 +00:00
Bitcode Add a LLVMWriteBitcodeToFD that exposes the raw_fd_ostream options. 2010-03-06 00:30:06 +00:00
CodeGen Change the Value argument to eliminateFrameIndex to a type-tagged value. This 2010-03-09 21:45:49 +00:00
CompilerDriver Use FindExecutable as a fall-back search method. 2010-03-05 04:46:28 +00:00
ExecutionEngine strength reduce MMI::MappedLabel to MMI::isLabelDeleted, 2010-03-09 01:51:43 +00:00
Linker Introduce isOpaqueTy and use it rather than isa<OpaqueType>. Also, move some 2010-02-16 14:50:09 +00:00
MC MC/Mach-O: For PCrel relocations, we need to compensate for the PCrel adjustment when determining if we need a scattered relocation. 2010-03-09 21:27:58 +00:00
Support make APFloat::toString be const. 2010-03-06 19:20:13 +00:00
System follow-on to PR6280 2010-02-14 18:20:09 +00:00
Target MC/X86: Rename alternate spellings of ADD{8,16,32} and mark as "code gen only" so they don't get selected by the asm matcher. 2010-03-09 22:50:46 +00:00
Transforms Try to keep the cached inliner costs around for a bit longer for big functions. 2010-03-09 23:02:17 +00:00
VMCore Roll back r97918 again. Just configuring against llvm-gcc wasn't enough to run 2010-03-07 19:26:40 +00:00
Makefile