Dokumentation
Support debugging of the operating system. More...
| Files | |
| file | state.h | 
| GDB_Stub State of the current core | |
| file | stub.h | 
| GDB_Stub contains the necessary functionality for remote debugging | |
| Macros | |
| #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... | |
Detailed Description
Support debugging of the operating system.
Macro Definition Documentation
| #define STRINGIFY | ( | S | ) | #S | 
Converts a macro parameter into a string.
- Parameters
- 
  S Expression to be converted 
- Returns
- stringified version of S
| #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 
| #define assert | ( | EXP | ) | 
Value:
    do { \
        if (__builtin_expect(!(EXP), 0)) { \
            assertion_failed(STRINGIFY(EXP), __func__, __FILE__, __LINE__); \
        } \
    } while (false)
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 
| #define kernelpanic | ( | MSG | ) | 
Value:
    do { \
            DBG << "PANIC: '" << (MSG) << "' in " << __func__ \
                << " @ " << __FILE__ << ":" << __LINE__ \
		Core::die(); \
    } while (0)
Print an error message in the debug window and stop the current core.
- Parameters
- 
  MSG error message