Support debugging of the operating system.
More...
|
#define | STRINGIFY(S) #S |
| Converts a macro parameter into a string. More...
|
|
#define | assert_size(TYPE, SIZE) static_assert(sizeof(TYPE) == (SIZE), "Wrong size for " STRINGIFY(TYPE)) |
| Statically ensure (at compile time) that a data type (or variable) has the expected size. More...
|
|
#define | assert(EXP) |
| Ensure (at execution time) an expression evaluates to true , print an error message and stop the CPU otherwise. More...
|
|
#define | kernelpanic(MSG) |
| Print an error message in the debug window and stop the current core. More...
|
|
Support debugging of the operating system.
◆ STRINGIFY
#define STRINGIFY |
( |
|
S | ) |
#S |
Converts a macro parameter into a string.
- Parameters
-
S | Expression to be converted |
- Returns
- stringified version of S
◆ assert_size
#define assert_size |
( |
|
TYPE, |
|
|
|
SIZE |
|
) |
| static_assert(sizeof(TYPE) == (SIZE), "Wrong size for " STRINGIFY(TYPE)) |
Statically ensure (at compile time) that a data type (or variable) has the expected size.
- Parameters
-
TYPE | The type to be checked |
SIZE | Expected size in bytes |
◆ assert
Value: do { \
if (__builtin_expect(!(EXP), 0)) { \
assertion_failed(
STRINGIFY(EXP), __func__, __FILE__, __LINE__); \
} \
} while (false)
#define STRINGIFY(S)
Converts a macro parameter into a string.
Definition: assert.h:18
Ensure (at execution time) an expression evaluates to true
, print an error message and stop the CPU otherwise.
- Parameters
-
EXP | The expression to be checked |
◆ kernelpanic
#define kernelpanic |
( |
|
MSG | ) |
|
Value: do { \
DBG << "PANIC: '" << (MSG) << "' in " << __func__ \
<< " @ " << __FILE__ << ":" << __LINE__ \
} while (0)
void die()
Permanently halts the core.
Definition: core.h:107
OutputStream & flush(OutputStream &os)
Enforces a buffer flush.
Definition: outputstream.cc:144
Print an error message in the debug window and stop the current core.
- Parameters
-