Merge remote-tracking branch 'origin/master' into hw

This commit is contained in:
Bartosz Taudul 2021-06-14 23:54:34 +02:00
commit 004681b02b
No known key found for this signature in database
GPG Key ID: B7FE2008B7575DF3
4 changed files with 14 additions and 10 deletions

1
NEWS
View File

@ -12,6 +12,7 @@ v0.x.x (xxxx-xx-xx)
- Improved function matching algorithm in compare traces view.
- Added minimal CMake integration layer.
- Reworked rpmalloc initialization.
- Fixed display of messages with newlines on messages list.
- Excluded some uninteresting wrapper functions from call stacks (for
example SIMD pass-through intrinsics to the compiler built-ins).
- Adjusted coloring of instruction hotness in symbol view.

View File

@ -3,15 +3,17 @@
#include <atomic>
#include "../common/TracyAlloc.hpp"
#include "../common/TracyForceInline.hpp"
#include "../common/TracyYield.hpp"
namespace tracy
{
extern thread_local bool RpThreadInitDone;
extern std::atomic<int> RpInitDone;
extern std::atomic<int> RpInitLock;
TRACY_API void InitRpmallocPlumbing()
tracy_no_inline static void InitRpmallocPlumbing()
{
const auto done = RpInitDone.load( std::memory_order_acquire );
if( !done )
@ -30,6 +32,11 @@ TRACY_API void InitRpmallocPlumbing()
RpThreadInitDone = true;
}
TRACY_API void InitRpmalloc()
{
if( !RpThreadInitDone ) InitRpmallocPlumbing();
}
}
#endif

View File

@ -13,13 +13,7 @@ namespace tracy
{
#ifdef TRACY_ENABLE
extern thread_local bool RpThreadInitDone;
TRACY_API void InitRpmallocPlumbing();
static tracy_force_inline void InitRpmalloc()
{
if( !RpThreadInitDone ) InitRpmallocPlumbing();
}
TRACY_API void InitRpmalloc();
#endif
static inline void* tracy_malloc( size_t size )

View File

@ -9476,10 +9476,12 @@ void View::DrawMessageLine( const MessageData& msg, bool hasCallstack, int& idx
ImGui::SameLine();
ImGui::TextDisabled( "(%s)", RealToString( tid ) );
ImGui::TableNextColumn();
auto tend = text;
while( *tend != '\0' && *tend != '\n' ) tend++;
ImGui::PushStyleColor( ImGuiCol_Text, msg.color );
const auto cw = ImGui::GetContentRegionAvail().x;
const auto tw = ImGui::CalcTextSize( text ).x;
ImGui::TextUnformatted( text );
const auto tw = ImGui::CalcTextSize( text, tend ).x;
ImGui::TextUnformatted( text, tend );
if( tw > cw && ImGui::IsItemHovered() )
{
ImGui::SetNextWindowSize( ImVec2( 1000, 0 ) );