search for: calleefi

Displaying 6 results from an estimated 6 matches for "calleefi".

2010 Nov 24
7
[LLVMdev] LLVM Inliner
...does indirect branch instr correspond to ? variable jump? 5) fudge factor prefers functions with vector instructions -- why is that? 6) There is one heuristc used in inline-cost computation seems wrong: // Calls usually take a long time, so they make the inlining gain smaller. InlineCost += CalleeFI->Metrics.NumCalls * InlineConstants::CallPenalty; Does it try to block inlining of callees with lots of calls? Note inlining such a function only increase static call counts. Thanks, David -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.o...
2010 Nov 24
0
[LLVMdev] LLVM Inliner
...sing that vectorized instructions are an indicator that the function is a hotspot, and should therefore be inlined. > 6) There is one heuristc used in inline-cost computation seems wrong: > >   // Calls usually take a long time, so they make the inlining gain smaller. >   InlineCost += CalleeFI->Metrics.NumCalls * InlineConstants::CallPenalty; > Does it try to block inlining of callees with lots of calls? Note inlining > such a function only increase static call counts. I'm guessing the heuristic is that functions with lots of calls are heavy and spend a lot of time in their...
2010 Nov 24
0
[LLVMdev] LLVM Inliner
...*ptr;". Nick > 5) fudge factor prefers functions with vector instructions -- why is that? > > 6) There is one heuristc used in inline-cost computation seems wrong: > > > // Calls usually take a long time, so they make the inlining gain > smaller. > InlineCost += CalleeFI->Metrics.NumCalls * InlineConstants::CallPenalty; > > Does it try to block inlining of callees with lots of calls? Note > inlining such a function only increase static call counts. > > > Thanks, > > David > > > > _______________________________________________...
2010 Nov 28
0
[LLVMdev] LLVM Inliner
...? variable jump? See: http://blog.llvm.org/2010/01/address-of-label-and-indirect-branches.html for more details. > 6) There is one heuristc used in inline-cost computation seems wrong: > > // Calls usually take a long time, so they make the inlining gain smaller. > InlineCost += CalleeFI->Metrics.NumCalls * InlineConstants::CallPenalty; > > Does it try to block inlining of callees with lots of calls? Note inlining such a function only increase static call counts. I think that this is a heuristic that Jakob came up with, but I think it's a good one, also discussed els...
2010 Nov 24
3
[LLVMdev] LLVM Inliner
...) fudge factor prefers functions with vector instructions -- why is that? >> >> 6) There is one heuristc used in inline-cost computation seems wrong: >> >> >> // Calls usually take a long time, so they make the inlining gain >> smaller. >> InlineCost += CalleeFI->Metrics.NumCalls * InlineConstants::CallPenalty; >> >> Does it try to block inlining of callees with lots of calls? Note >> inlining such a function only increase static call counts. >> >> >> Thanks, >> >> David >> >> >> >>...
2010 Nov 29
3
[LLVMdev] LLVM Inliner
...vm.org/2010/01/address-of-label-and-indirect-branches.html > > for more details. > > > 6) There is one heuristc used in inline-cost computation seems wrong: > > > > // Calls usually take a long time, so they make the inlining gain > smaller. > > InlineCost += CalleeFI->Metrics.NumCalls * > InlineConstants::CallPenalty; > > > > Does it try to block inlining of callees with lots of calls? Note > inlining such a function only increase static call counts. > > I think that this is a heuristic that Jakob came up with, but I think it's &g...