Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/wolfpld/tracy.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
authorBartosz Taudul <wolf@nereid.pl>2022-10-12 01:45:05 +0300
committerBartosz Taudul <wolf@nereid.pl>2022-10-12 01:45:05 +0300
commit70dd37bbea133a97211a34ee9386c840c3a1deca (patch)
tree67e62d5168a67c222c31f927bdffa32e1e08beaa /server
parentc041b962c07a10fe1576a1e45e01716e03ae61a7 (diff)
Display local call stack for assembly lines.
Diffstat (limited to 'server')
-rw-r--r--server/TracySourceView.cpp14
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 ) )