gallium: silence __builtin_frame_address nonzero argument is unsafe warning
authorTimothy Arceri <tarceri@itsqueeze.com>
Fri, 9 Mar 2018 00:00:55 +0000 (11:00 +1100)
committerTimothy Arceri <tarceri@itsqueeze.com>
Mon, 12 Mar 2018 22:38:10 +0000 (09:38 +1100)
Calling __builtin_frame_address with a nonzero argument is unsafe
but is sometimes done for debugging purposes. Since this code is
part of some debug util code I'm assuming that is the case here
and using GCC pragma to silence the warning.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
src/gallium/auxiliary/util/u_debug_stack.c

index 6ddacdb362f3ca65e6e63b8f145609cbfd38e7c8..974e639e89d6f89fa0a0068d66428b3ad7adec46 100644 (file)
@@ -265,7 +265,10 @@ debug_backtrace_capture(struct debug_stack_frame *backtrace,
 #endif
 
 #if defined(PIPE_CC_GCC)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wframe-address"
    frame_pointer = ((const void **)__builtin_frame_address(1));
+#pragma GCC diagnostic pop
 #elif defined(PIPE_CC_MSVC) && defined(PIPE_ARCH_X86)
    __asm {
       mov frame_pointer, ebp