47#define DEBUG_PRINT(...) \
49 if ((thread_get_active() == NULL) || \
50 (thread_get_active()->stack_size >= \
51 THREAD_EXTRA_STACKSIZE_PRINTF)) { \
52 printf(__VA_ARGS__); \
55 puts("Cannot debug, stack too small. Consider using DEBUG_PUTS()."); \
59#define DEBUG_PRINT(...) printf(__VA_ARGS__)
78#define DEBUG_BREAKPOINT(val) ARCHITECTURE_BREAKPOINT(val)
80#define DEBUG_BREAKPOINT(val) (void)0
91#if !defined(ENABLE_DEBUG) || defined(DOXYGEN)
101# if defined(__cplusplus) && defined(__GNUC__)
102# define DEBUG_FUNC __PRETTY_FUNCTION__
103# elif __STDC_VERSION__ >= 199901L
104# define DEBUG_FUNC __func__
106# define DEBUG_FUNC __FUNCTION__
108# define DEBUG_FUNC ""
118#define DEBUG(...) do { if (ENABLE_DEBUG) { DEBUG_PRINT(__VA_ARGS__); } } while (0)
126#define DEBUG_PUTS(str) do { if (ENABLE_DEBUG) { puts(str); } } while (0)
135#define DEBUG_EXTRA_STACKSIZE THREAD_EXTRA_STACKSIZE_PRINTF
137#define DEBUG_EXTRA_STACKSIZE (0)
Platform-independent access to architecture details.
Scheduler API definition.
stdio wrapper to extend the C libs stdio