### _enable -- Enable Interrupts

Format

>     #include <builtin.h>  /* also defined in <stdlib.h> */
>     void _enable( void );

Language Level: Extension
_enable enables interrupts by generating the STI machine instruction. Interrupts are enabled after the instruction following STI has been executed. If interrupts are disabled and you call _enable followed immediately by a call to _disable, interrupts remain disabled.

Because it is a built-in function and has no backing code in the library:

- You cannot take the address of _enable.
- You cannot parenthesize an _enable function call because parentheses specify a call to the backing code for the function in the library.

You can run code containing this function only at ring zero. Otherwise, an invalid instruction exception will be generated.

Return Value
There is no return value.

Example
In this example, _enable enables interrupts by executing an STI instruction.

    #include <builtin.h>

    int main(void)
    {
       /* ------------------------------------------------------ */
       /* The expected assembler instruction looks like this :   */
       /*       STI                                              */
       /* ------------------------------------------------------ */
       _enable();
       return 0;
    }

_disable -- Disable Interrupt
_interrupt -- Call Interrupt Procedure
<builtin.h>