| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
several things that were neither in an anonymous namespace nor static
but not intended to be global.
llvm-svn: 51017
|
|
|
|
| |
llvm-svn: 50696
|
|
|
|
|
|
|
| |
2. Do not use # of basic blocks as part of the cost computation since it doesn't really figure into function size.
3. More aggressively inline function with vector code.
llvm-svn: 49061
|
|
|
|
|
|
|
|
| |
each BB costs 20 and each instruction costs 5, 200 means a 4 BB function + 24 instructions (actually less because caller's size also contributes to it).
Furthermore, double the limit when more than 10% of the callee instructions are vector instructions. Multimedia kernels tend to love inlining.
llvm-svn: 48725
|
|
|
|
|
|
| |
itself sometimes negative.
llvm-svn: 47786
|
|
|
|
|
|
| |
the inliner pass. Patch by Robert Zeh.
llvm-svn: 45903
|
|
|
|
| |
llvm-svn: 45418
|
|
|
|
|
|
| |
of comparing begin() and end().
llvm-svn: 42585
|
|
|
|
| |
llvm-svn: 37665
|
|
|
|
| |
llvm-svn: 36894
|
|
|
|
| |
llvm-svn: 36662
|
|
|
|
|
|
|
| |
Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.
llvm-svn: 36652
|
|
|
|
| |
llvm-svn: 36632
|
|
|
|
| |
llvm-svn: 33677
|
|
|
|
|
|
| |
confusion with external linkage types.
llvm-svn: 33663
|
|
|
|
| |
llvm-svn: 32693
|
|
|
|
|
|
| |
is 'unsigned'.
llvm-svn: 32279
|
|
|
|
| |
llvm-svn: 31924
|
|
|
|
| |
llvm-svn: 31610
|
|
|
|
| |
llvm-svn: 31608
|
|
|
|
|
|
|
|
|
|
| |
Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting
fall out by removing unused variables. Remaining warnings have to do with
unused functions (I didn't want to delete code without review) and unused
variables in generated code. Maintainers should clean up the remaining
issues when they see them. All changes pass DejaGnu tests and Olden.
llvm-svn: 31380
|
|
|
|
|
|
|
|
|
|
|
| |
target CG node. This allows the inliner to properly update the callgraph
when using the pruning inliner. The pruning inliner may not copy over all
call sites from a callee to a caller, so the edges corresponding to those
call sites should not be copied over either.
This fixes PR827 and Transforms/Inline/2006-07-12-InlinePruneCGUpdate.ll
llvm-svn: 29120
|
|
|
|
|
|
| |
Fix a nasty bug in the memcmp optimizer where we used the wrong variable!
llvm-svn: 28269
|
|
|
|
| |
llvm-svn: 25514
|
|
|
|
|
|
| |
of doing it ourselves. This fixes Transforms/Inline/2006-01-14-CallGraphUpdate.ll
llvm-svn: 25321
|
|
|
|
| |
llvm-svn: 25279
|
|
|
|
| |
llvm-svn: 21427
|
|
|
|
|
|
|
|
|
|
| |
a function being deleted. Due to optimizations done while inlining, there
can be edges from the external call node to a function node that were not
apparent any longer.
This fixes the compiler crash while compiling 175.vpr
llvm-svn: 16399
|
|
|
|
|
|
|
|
| |
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137
|
|
|
|
|
|
|
|
|
|
| |
dangling constant users were removed from a function, causing it to be dead,
we never removed the call graph edge from the external node to the function.
In most cases, this didn't cause a problem (by luck). This should definitely
go into 1.3
llvm-svn: 15570
|
|
|
|
| |
llvm-svn: 15334
|
|
|
|
| |
llvm-svn: 14974
|
|
|
|
| |
llvm-svn: 14957
|
|
|
|
|
|
| |
- Replace ConstantPointerRef usage with GlobalValue usage
llvm-svn: 14953
|
|
|
|
|
|
| |
relative location of Function objects in memory.
llvm-svn: 14260
|
|
|
|
| |
llvm-svn: 13717
|
|
|
|
|
|
| |
caller was in an SCC.
llvm-svn: 13693
|
|
|
|
|
|
|
|
|
| |
ilists :)
Eventually it would be nice if CallGraph maintained an ilist of CallGraphNode's instead
of a vector of pointers to them, but today is not that day.
llvm-svn: 13100
|
|
|
|
| |
llvm-svn: 13089
|
|
|
|
|
|
| |
is done, which avoids invalidating iterators in the SCC traversal routines
llvm-svn: 13088
|
|
|
|
| |
llvm-svn: 13080
|
|
|
|
|
|
| |
execute other CallGraphSCCPasses after the inliner without crashing.
llvm-svn: 12861
|
|
|
|
| |
llvm-svn: 12857
|
|
|
|
|
|
|
|
| |
Now we collect all of the call sites we are interested in inlining, then inline
them. This entirely avoids issues with trying to inline a call site we got by
inlining another call site. This also eliminates iterator invalidation issues.
llvm-svn: 12770
|
|
|
|
|
|
| |
Print out the costs for functions that AREN'T inlined as well
llvm-svn: 10135
|
|
|
|
| |
llvm-svn: 9903
|
|
|
|
|
|
|
| |
pool allocator no end of trouble, and doesn't make a lot of sense anyway. This
does not solve the problem with mutually recursive functions, but they are much less common.
llvm-svn: 9828
|
|
|
|
|
|
| |
functions. GRR
llvm-svn: 9641
|
|
|
|
|
|
| |
Header files will be on the way.
llvm-svn: 9298
|
|
* Separate the policy decisions into a derived class [InlineSimple]
* Move the inlining mechanics into a base class [Inliner]
* Change the inliner to be an SCCPass, making it more structured and
eventually pipelinable with other SCC passes
llvm-svn: 8257
|