mirror of
https://github.com/wolfpld/tracy
synced 2025-04-29 12:23:53 +00:00
Fixed compiler warnings.
This commit is contained in:
parent
77abc3bffd
commit
29140afe0c
@ -49,7 +49,8 @@ CallstackEntryData DecodeCallstackPtr( uint64_t ptr )
|
|||||||
const auto proc = GetCurrentProcess();
|
const auto proc = GetCurrentProcess();
|
||||||
#ifndef __CYGWIN__
|
#ifndef __CYGWIN__
|
||||||
const auto inlineNum = std::min<DWORD>( MaxCbTrace - 1, SymAddrIncludeInlineTrace( proc, ptr ) );
|
const auto inlineNum = std::min<DWORD>( MaxCbTrace - 1, SymAddrIncludeInlineTrace( proc, ptr ) );
|
||||||
DWORD ctx, idx;
|
DWORD ctx = 0;
|
||||||
|
DWORD idx;
|
||||||
BOOL doInline = FALSE;
|
BOOL doInline = FALSE;
|
||||||
if( inlineNum != 0 ) doInline = SymQueryInlineTrace( proc, ptr, 0, ptr, ptr, &ctx, &idx );
|
if( inlineNum != 0 ) doInline = SymQueryInlineTrace( proc, ptr, 0, ptr, ptr, &ctx, &idx );
|
||||||
if( doInline )
|
if( doInline )
|
||||||
@ -75,17 +76,19 @@ CallstackEntryData DecodeCallstackPtr( uint64_t ptr )
|
|||||||
si->NameLen = 9;
|
si->NameLen = 9;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto name = (char*)tracy_malloc( si->NameLen + 1 );
|
IMAGEHLP_LINE64 line;
|
||||||
memcpy( name, si->Name, si->NameLen );
|
DWORD displacement = 0;
|
||||||
|
line.SizeOfStruct = sizeof(IMAGEHLP_LINE64);
|
||||||
|
|
||||||
|
{
|
||||||
|
auto name = (char*)tracy_malloc(si->NameLen + 1);
|
||||||
|
memcpy(name, si->Name, si->NameLen);
|
||||||
name[si->NameLen] = '\0';
|
name[si->NameLen] = '\0';
|
||||||
|
|
||||||
cb_data[write].name = name;
|
cb_data[write].name = name;
|
||||||
|
|
||||||
const char* filename;
|
const char* filename;
|
||||||
IMAGEHLP_LINE64 line;
|
if (SymGetLineFromAddr64(proc, ptr, &displacement, &line) == 0)
|
||||||
DWORD displacement = 0;
|
|
||||||
line.SizeOfStruct = sizeof( IMAGEHLP_LINE64 );
|
|
||||||
if( SymGetLineFromAddr64( proc, ptr, &displacement, &line ) == 0 )
|
|
||||||
{
|
{
|
||||||
filename = "[unknown]";
|
filename = "[unknown]";
|
||||||
cb_data[write].line = 0;
|
cb_data[write].line = 0;
|
||||||
@ -96,12 +99,13 @@ CallstackEntryData DecodeCallstackPtr( uint64_t ptr )
|
|||||||
cb_data[write].line = line.LineNumber;
|
cb_data[write].line = line.LineNumber;
|
||||||
}
|
}
|
||||||
|
|
||||||
const auto fsz = strlen( filename );
|
const auto fsz = strlen(filename);
|
||||||
auto file = (char*)tracy_malloc( fsz + 1 );
|
auto file = (char*)tracy_malloc(fsz + 1);
|
||||||
memcpy( file, filename, fsz );
|
memcpy(file, filename, fsz);
|
||||||
file[fsz] = '\0';
|
file[fsz] = '\0';
|
||||||
|
|
||||||
cb_data[write].file = file;
|
cb_data[write].file = file;
|
||||||
|
}
|
||||||
|
|
||||||
#ifndef __CYGWIN__
|
#ifndef __CYGWIN__
|
||||||
if( doInline )
|
if( doInline )
|
||||||
@ -121,6 +125,7 @@ CallstackEntryData DecodeCallstackPtr( uint64_t ptr )
|
|||||||
name[si->NameLen] = '\0';
|
name[si->NameLen] = '\0';
|
||||||
cb.name = name;
|
cb.name = name;
|
||||||
|
|
||||||
|
const char* filename;
|
||||||
if( SymGetLineFromInlineContext( proc, ptr, ctx, 0, &displacement, &line ) == 0 )
|
if( SymGetLineFromInlineContext( proc, ptr, ctx, 0, &displacement, &line ) == 0 )
|
||||||
{
|
{
|
||||||
filename = "[unknown]";
|
filename = "[unknown]";
|
||||||
@ -168,7 +173,7 @@ static inline char* CopyString( const char* src )
|
|||||||
return dst;
|
return dst;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int CallstackDataCb( void* data, uintptr_t pc, const char* fn, int lineno, const char* function )
|
static int CallstackDataCb( void* /*data*/, uintptr_t pc, const char* fn, int lineno, const char* function )
|
||||||
{
|
{
|
||||||
enum { DemangleBufLen = 64*1024 };
|
enum { DemangleBufLen = 64*1024 };
|
||||||
char demangled[DemangleBufLen];
|
char demangled[DemangleBufLen];
|
||||||
@ -265,7 +270,7 @@ static int CallstackDataCb( void* data, uintptr_t pc, const char* fn, int lineno
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void CallstackErrorCb( void* data, const char* msg, int errnum )
|
static void CallstackErrorCb( void* /*data*/, const char* /*msg*/, int /*errnum*/ )
|
||||||
{
|
{
|
||||||
for( int i=0; i<cb_num; i++ )
|
for( int i=0; i<cb_num; i++ )
|
||||||
{
|
{
|
||||||
|
@ -88,9 +88,9 @@ namespace tracy
|
|||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
BOOL CALLBACK InitOnceCallback(
|
BOOL CALLBACK InitOnceCallback(
|
||||||
PINIT_ONCE initOnce,
|
PINIT_ONCE /*initOnce*/,
|
||||||
PVOID Parameter,
|
PVOID /*Parameter*/,
|
||||||
PVOID *Context)
|
PVOID* /*Context*/)
|
||||||
{
|
{
|
||||||
rpmalloc_initialize();
|
rpmalloc_initialize();
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@ -396,13 +396,13 @@ LONG WINAPI CrashFilter( PEXCEPTION_POINTERS pExp )
|
|||||||
switch( pExp->ExceptionRecord->ExceptionInformation[0] )
|
switch( pExp->ExceptionRecord->ExceptionInformation[0] )
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
msgPtr += sprintf( msgPtr, "Read violation at address 0x%" PRIxMAX ".", pExp->ExceptionRecord->ExceptionInformation[1] );
|
msgPtr += sprintf( msgPtr, "Read violation at address 0x%" PRIxPTR ".", pExp->ExceptionRecord->ExceptionInformation[1] );
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
msgPtr += sprintf( msgPtr, "Write violation at address 0x%" PRIxMAX ".", pExp->ExceptionRecord->ExceptionInformation[1] );
|
msgPtr += sprintf( msgPtr, "Write violation at address 0x%" PRIxPTR ".", pExp->ExceptionRecord->ExceptionInformation[1] );
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
msgPtr += sprintf( msgPtr, "DEP violation at address 0x%" PRIxMAX ".", pExp->ExceptionRecord->ExceptionInformation[1] );
|
msgPtr += sprintf( msgPtr, "DEP violation at address 0x%" PRIxPTR ".", pExp->ExceptionRecord->ExceptionInformation[1] );
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@ -503,7 +503,7 @@ static long s_profilerTid = 0;
|
|||||||
static char s_crashText[1024];
|
static char s_crashText[1024];
|
||||||
static std::atomic<bool> s_alreadyCrashed( false );
|
static std::atomic<bool> s_alreadyCrashed( false );
|
||||||
|
|
||||||
static void ThreadFreezer( int signal )
|
static void ThreadFreezer( int /*signal*/ )
|
||||||
{
|
{
|
||||||
for(;;) sleep( 1000 );
|
for(;;) sleep( 1000 );
|
||||||
}
|
}
|
||||||
@ -534,7 +534,7 @@ static inline void HexPrint( char*& ptr, uint64_t val )
|
|||||||
while( bptr != buf );
|
while( bptr != buf );
|
||||||
}
|
}
|
||||||
|
|
||||||
static void CrashHandler( int signal, siginfo_t* info, void* ucontext )
|
static void CrashHandler( int signal, siginfo_t* info, void* /*ucontext*/ )
|
||||||
{
|
{
|
||||||
bool expected = false;
|
bool expected = false;
|
||||||
if( !s_alreadyCrashed.compare_exchange_strong( expected, true ) ) ThreadFreezer( signal );
|
if( !s_alreadyCrashed.compare_exchange_strong( expected, true ) ) ThreadFreezer( signal );
|
||||||
|
@ -850,10 +850,10 @@ read_attribute (enum dwarf_form form, struct dwarf_buf *buf,
|
|||||||
return 1;
|
return 1;
|
||||||
case DW_FORM_indirect:
|
case DW_FORM_indirect:
|
||||||
{
|
{
|
||||||
uint64_t form;
|
uint64_t form2;
|
||||||
|
|
||||||
form = read_uleb128 (buf);
|
form2 = read_uleb128 (buf);
|
||||||
return read_attribute ((enum dwarf_form) form, buf, is_dwarf64,
|
return read_attribute ((enum dwarf_form) form2, buf, is_dwarf64,
|
||||||
version, addrsize, dwarf_str, dwarf_str_size,
|
version, addrsize, dwarf_str, dwarf_str_size,
|
||||||
val);
|
val);
|
||||||
}
|
}
|
||||||
@ -2855,22 +2855,22 @@ dwarf_lookup_pc (struct backtrace_state *state, struct dwarf_data *ddata,
|
|||||||
|
|
||||||
if (entry->u->abs_filename == NULL)
|
if (entry->u->abs_filename == NULL)
|
||||||
{
|
{
|
||||||
const char *filename;
|
const char *filename2;
|
||||||
|
|
||||||
filename = entry->u->filename;
|
filename2 = entry->u->filename;
|
||||||
if (filename != NULL
|
if (filename2 != NULL
|
||||||
&& !IS_ABSOLUTE_PATH (filename)
|
&& !IS_ABSOLUTE_PATH (filename2)
|
||||||
&& entry->u->comp_dir != NULL)
|
&& entry->u->comp_dir != NULL)
|
||||||
{
|
{
|
||||||
size_t filename_len;
|
size_t filename2_len;
|
||||||
const char *dir;
|
const char *dir;
|
||||||
size_t dir_len;
|
size_t dir_len;
|
||||||
char *s;
|
char *s;
|
||||||
|
|
||||||
filename_len = strlen (filename);
|
filename2_len = strlen (filename2);
|
||||||
dir = entry->u->comp_dir;
|
dir = entry->u->comp_dir;
|
||||||
dir_len = strlen (dir);
|
dir_len = strlen (dir);
|
||||||
s = (char *) backtrace_alloc (state, dir_len + filename_len + 2,
|
s = (char *) backtrace_alloc (state, dir_len + filename2_len + 2,
|
||||||
error_callback, data);
|
error_callback, data);
|
||||||
if (s == NULL)
|
if (s == NULL)
|
||||||
{
|
{
|
||||||
@ -2880,10 +2880,10 @@ dwarf_lookup_pc (struct backtrace_state *state, struct dwarf_data *ddata,
|
|||||||
memcpy (s, dir, dir_len);
|
memcpy (s, dir, dir_len);
|
||||||
/* FIXME: Should use backslash if DOS file system. */
|
/* FIXME: Should use backslash if DOS file system. */
|
||||||
s[dir_len] = '/';
|
s[dir_len] = '/';
|
||||||
memcpy (s + dir_len + 1, filename, filename_len + 1);
|
memcpy (s + dir_len + 1, filename2, filename2_len + 1);
|
||||||
filename = s;
|
filename2 = s;
|
||||||
}
|
}
|
||||||
entry->u->abs_filename = filename;
|
entry->u->abs_filename = filename2;
|
||||||
}
|
}
|
||||||
|
|
||||||
return callback (data, pc, entry->u->abs_filename, 0, NULL);
|
return callback (data, pc, entry->u->abs_filename, 0, NULL);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user