naev 0.10.4
debug.h
1/*
2 * See Licensing and Copyright notice in naev.h
3 */
4#pragma once
5
6void debug_sigInit (void);
7void debug_sigClose (void);
8void debug_enableFPUExcept (void);
10
11enum {
12 DEBUG_MARK_EMITTER,
13 /* Sentinel. */
14 DEBUG_FLAGS_MAX
15};
16
17#if DEBUGGING
18#define debug_isFlag(f) (debug_flags[f])
19#define debug_setFlag(f) (debug_flags[f] = 1)
20#define debug_rmFlag(f) (debug_flags[f] = 0)
22typedef char DebugFlags[ DEBUG_FLAGS_MAX ];
23
24/* Initialize debugging flags. */
25extern DebugFlags debug_flags;
26
27void debug_logBacktrace (void);
28#else /* DEBUGGING */
29#define debug_isFlag(f) 0
30#define debug_rmFlag(f) do {} while(0)
31#endif /* DEBUGGING */
void debug_sigInit(void)
Sets up the back-tracing signal handler.
Definition: debug.c:192
void debug_enableLeakSanitizer(void)
Does nothing. Calling this tells our debug scripts to stop tracing.
Definition: debug.c:243
void debug_sigClose(void)
Closes the back-tracing signal handler.
Definition: debug.c:230
void debug_enableFPUExcept(void)
Enables FPU exceptions. Artificially limited to Linux until link issues are figured out.
Definition: debug_fpu.c:27