diff options
author | Bartosz Taudul <wolf@nereid.pl> | 2022-10-12 01:45:05 +0300 |
---|---|---|
committer | Bartosz Taudul <wolf@nereid.pl> | 2022-10-12 01:45:05 +0300 |
commit | 70dd37bbea133a97211a34ee9386c840c3a1deca (patch) | |
tree | 67e62d5168a67c222c31f927bdffa32e1e08beaa /server | |
parent | c041b962c07a10fe1576a1e45e01716e03ae61a7 (diff) |
Display local call stack for assembly lines.
Diffstat (limited to 'server')
-rw-r--r-- | server/TracySourceView.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/server/TracySourceView.cpp b/server/TracySourceView.cpp index dde7ce04..e63b980d 100644 --- a/server/TracySourceView.cpp +++ b/server/TracySourceView.cpp @@ -3769,6 +3769,20 @@ void SourceView::RenderAsmLine( AsmLine& line, const AddrStat& ipcnt, const Addr UnsetFont(); } } + const auto frame = worker.GetCallstackFrame( worker.PackPointer( line.addr ) ); + if( frame && frame->size > 1 ) + { + ImGui::Separator(); + TextDisabledUnformatted( "Local call stack:" ); + for( uint8_t i=0; i<frame->size; i++ ) + { + ImGui::TextDisabled( "%i.", i+1 ); + ImGui::SameLine(); + ImGui::Text( "%s", worker.GetString( frame->data[i].name ) ); + ImGui::SameLine(); + ImGui::TextDisabled( "%s:%i", worker.GetString( frame->data[i].file ), frame->data[i].line ); + } + } ImGui::EndTooltip(); SetFont(); if( ImGui::IsItemClicked( 0 ) || ImGui::IsItemClicked( 1 ) ) |