mesa/src/gallium/frontends/d3d10umd/Debug.h
Yonggang Luo 2a0a5a3e3f d3d10umd: Fixes building with mingw/gcc and windows sdk/ddk 10.0.26100.0
Avoid recursive include between DriverIncludes.h and Debug.h

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36844>
2025-08-19 23:22:07 +00:00

78 lines
1.4 KiB
C

#pragma once
#ifdef __MINGW32__
#undef WIN32_LEAN_AND_MEAN /* for DEFINE_GUID macro */
#define _NO_OLDNAMES /* avoid defining ssize_t */
#include <stdio.h> /* for vsnprintf */
#undef fileno /* we redefine this in vm_basic_defs.h */
#endif
#include <windows.h>
#include "util/u_debug.h"
#ifdef __cplusplus
extern "C" {
#endif
#define ST_DEBUG_OLD_TEX_OPS (1 << 0)
#define ST_DEBUG_TGSI (1 << 1)
#if MESA_DEBUG
extern unsigned st_debug;
#else
#define st_debug 0
#endif
#if MESA_DEBUG
void st_debug_parse(void);
#else
#define st_debug_parse() ((void)0)
#endif
void
DebugPrintf(const char *format, ...);
void
CheckHResult(HRESULT hr, const char *function, unsigned line);
#define CHECK_NTSTATUS(status) \
CheckNTStatus(status, __func__, __LINE__)
#define CHECK_HRESULT(hr) \
CheckHResult(hr, __func__, __LINE__)
void
AssertFail(const char *expr, const char *file, unsigned line, const char *function);
#ifndef NDEBUG
#define ASSERT(expr) ((expr) ? (void)0 : AssertFail(#expr, __FILE__, __LINE__, __func__))
#else
#define ASSERT(expr) do { } while (0 && (expr))
#endif
#if 0 && !defined(NDEBUG)
#define LOG_ENTRYPOINT() DebugPrintf("%s\n", __func__)
#else
#define LOG_ENTRYPOINT() (void)0
#endif
#define LOG_UNSUPPORTED_ENTRYPOINT() DebugPrintf("%s XXX\n", __func__)
#define LOG_UNSUPPORTED(expr) \
do { if (expr) DebugPrintf("%s:%d XXX %s\n", __func__, __LINE__, #expr); } while(0)
#ifdef __cplusplus
}
#endif