27 ASM(
"cli" :: :
"memory");
31 SELF->oldRflags = rflags;
49 ASM(
"sti" :: :
"memory");
58 __attribute__((cleanup(cli_scope_cleanup))) int CONCAT(i, __COUNTER__) = 1;
#define assert(expression)
static void cli_pop(void)
Decrements the CLI depth, re-enabling interrupts if depth reaches zero and interrupts were enabled pr...
static void cli_push(void)
Increments the CLI depth, disabling interrupts if depth was zero.
static void cli_scope_cleanup(int *_)
#define SELF
Macro to access data in the current cpu.
#define ASM(...)
Inline assembly macro.
#define RFLAGS_INTERRUPT_ENABLE
static uint64_t rflags_read(void)