Restrict hardware samples to inline function context.

This commit is contained in:
Bartosz Taudul 2021-06-19 20:50:06 +02:00
parent 6cc844abee
commit 2e3241ba54
No known key found for this signature in database
GPG Key ID: B7FE2008B7575DF3

View File

@ -2566,6 +2566,8 @@ void SourceView::RenderLine( const Tokenizer::Line& line, int lineNum, const Add
for( auto& addr : *addresses ) for( auto& addr : *addresses )
{ {
if( addr >= m_baseAddr && addr < m_baseAddr + m_codeLen ) if( addr >= m_baseAddr && addr < m_baseAddr + m_codeLen )
{
if( !m_calcInlineStats || worker->GetInlineSymbolForAddress( addr ) == m_symAddr )
{ {
match++; match++;
const auto hw = worker->GetHwSampleData( addr ); const auto hw = worker->GetHwSampleData( addr );
@ -2597,6 +2599,7 @@ void SourceView::RenderLine( const Tokenizer::Line& line, int lineNum, const Add
} }
} }
} }
}
bool mouseHandled = false; bool mouseHandled = false;
if( iptotal.local + iptotal.ext != 0 ) if( iptotal.local + iptotal.ext != 0 )
@ -2830,7 +2833,7 @@ void SourceView::RenderAsmLine( AsmLine& line, const AddrStat& ipcnt, const Addr
const auto hw = worker.GetHwSampleData( line.addr ); const auto hw = worker.GetHwSampleData( line.addr );
size_t cycles = 0, retired = 0, cacheRef = 0, cacheMiss = 0, branchRetired = 0, branchMiss = 0; size_t cycles = 0, retired = 0, cacheRef = 0, cacheMiss = 0, branchRetired = 0, branchMiss = 0;
if( hw ) if( hw && ( !m_calcInlineStats || worker.GetInlineSymbolForAddress( line.addr ) == m_symAddr ) )
{ {
if( view.m_statRange.active ) if( view.m_statRange.active )
{ {