diff --git a/server/TracyWorker.cpp b/server/TracyWorker.cpp index ac311c90..1c7461be 100644 --- a/server/TracyWorker.cpp +++ b/server/TracyWorker.cpp @@ -2378,6 +2378,13 @@ uint64_t Worker::GetSymbolForAddress( uint64_t address, uint32_t& offset ) const return it->addr; } +uint64_t Worker::GetInlineSymbolForAddress( uint64_t address ) const +{ + auto it = m_data.codeSymbolMap.find( address ); + if( it == m_data.codeSymbolMap.end() ) return 0; + return it->second; +} + StringIdx Worker::GetLocationForAddress( uint64_t address, uint32_t& line ) const { auto it = m_data.codeAddressToLocation.find( address ); diff --git a/server/TracyWorker.hpp b/server/TracyWorker.hpp index 2bded5b0..39f96277 100644 --- a/server/TracyWorker.hpp +++ b/server/TracyWorker.hpp @@ -502,6 +502,8 @@ public: const char* GetSymbolCode( uint64_t sym, uint32_t& len ) const; uint64_t GetSymbolForAddress( uint64_t address ) const; uint64_t GetSymbolForAddress( uint64_t address, uint32_t& offset ) const; + uint64_t GetInlineSymbolForAddress( uint64_t address ) const; + bool HasInlineSymbolAddresses() const { return !m_data.codeSymbolMap.empty(); } StringIdx GetLocationForAddress( uint64_t address, uint32_t& line ) const; const Vector* GetAddressesForLocation( uint32_t fileStringIdx, uint32_t line ) const; const uint64_t* GetInlineSymbolList( uint64_t sym, uint32_t len ) const;