From 6dd765c1010f4e1b1af92a1760db8a866e1c46fd Mon Sep 17 00:00:00 2001 From: Bartosz Taudul Date: Thu, 9 Apr 2020 01:45:38 +0200 Subject: [PATCH] Tighten mnemonic display. --- server/TracySourceView.cpp | 8 ++++++-- server/TracySourceView.hpp | 2 ++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/server/TracySourceView.cpp b/server/TracySourceView.cpp index 2dd70a7a..e98cf640 100644 --- a/server/TracySourceView.cpp +++ b/server/TracySourceView.cpp @@ -172,6 +172,7 @@ bool SourceView::Disassemble( uint64_t symAddr, const Worker& worker ) size_t cnt = cs_disasm( handle, (const uint8_t*)code, len, symAddr, 0, &insn ); if( cnt > 0 ) { + int mLenMax = 0; m_asm.reserve( cnt ); for( size_t i=0; i mLenMax ) mLenMax = mLen; uint32_t srcline; const auto srcidx = worker.GetLocationForAddress( op.address, srcline ); @@ -250,6 +253,7 @@ bool SourceView::Disassemble( uint64_t symAddr, const Worker& worker ) } } cs_free( insn, cnt ); + m_maxMnemonicLen = mLenMax + 2; if( !m_jumpTable.empty() ) { struct JumpRange @@ -1032,8 +1036,8 @@ void SourceView::RenderAsmLine( const AsmLine& line, uint32_t ipcnt, uint32_t ip const auto msz = line.mnemonic.size(); memcpy( buf, line.mnemonic.c_str(), msz ); - memset( buf+msz, ' ', 16-msz ); - memcpy( buf+16, line.operands.c_str(), line.operands.size() + 1 ); + memset( buf+msz, ' ', m_maxMnemonicLen-msz ); + memcpy( buf+m_maxMnemonicLen, line.operands.c_str(), line.operands.size() + 1 ); ImGui::TextUnformatted( buf ); if( line.jumpAddr != 0 ) diff --git a/server/TracySourceView.hpp b/server/TracySourceView.hpp index 0624c56f..92c03d24 100644 --- a/server/TracySourceView.hpp +++ b/server/TracySourceView.hpp @@ -95,6 +95,8 @@ private: unordered_flat_map m_sourceFiles; unordered_flat_set m_selectedAddresses; + + int m_maxMnemonicLen; }; }