diff --git a/src/util/u_debug_stack.c b/src/util/u_debug_stack.c index 01f69e14442..86bfb2fb64b 100644 --- a/src/util/u_debug_stack.c +++ b/src/util/u_debug_stack.c @@ -199,7 +199,6 @@ debug_backtrace_capture(struct debug_stack_frame *backtrace, unsigned start_frame, unsigned nr_frames) { - const void **frame_pointer = NULL; unsigned i = 0; if (!nr_frames) { @@ -250,21 +249,21 @@ debug_backtrace_capture(struct debug_stack_frame *backtrace, } #endif +#ifdef PIPE_ARCH_X86 #if defined(PIPE_CC_GCC) && (PIPE_CC_GCC_VERSION > 404) || defined(__clang__) #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wframe-address" - frame_pointer = ((const void **)__builtin_frame_address(1)); + const void **frame_pointer = ((const void **)__builtin_frame_address(1)); #pragma GCC diagnostic pop -#elif defined(PIPE_CC_MSVC) && defined(PIPE_ARCH_X86) +#elif defined(PIPE_CC_MSVC) __asm { mov frame_pointer, ebp } - frame_pointer = (const void **)frame_pointer[0]; + const void **frame_pointer = (const void **)frame_pointer[0]; #else - frame_pointer = NULL; + const void **frame_pointer = NULL; #endif -#ifdef PIPE_ARCH_X86 while (nr_frames) { const void **next_frame_pointer; @@ -287,8 +286,6 @@ debug_backtrace_capture(struct debug_stack_frame *backtrace, frame_pointer = next_frame_pointer; } -#else - (void) frame_pointer; #endif while (nr_frames) {