3-110 Vol. 2A CLI — Clear Interrupt Flag
INSTRUCTION SET REFERENCE, A-M
CLI — Clear Interrupt Flag
Description
If protected-mode virtual interrupts are not enabled, CLI clears the IF flag in the
EFLAGS register. No other flags are affected. Clearing the IF flag causes the
processor to ignore maskable external interrupts. The IF flag and the CLI and STI
instruction have no affect on the generation of exceptions and NMI interrupts.
When protected-mode virtual interrupts are enabled, CPL is 3, and IOPL is less than
3; CLI clears the VIF flag in the EFLAGS register, leaving IF unaffected. Table 3-6 indi-
cates the action of the CLI instruction depending on the processor operating mode
and the CPL/IOPL of the running program or procedure.
CLI operation is the same in non-64-bit modes and 64-bit mode.
Operation
IF PE = 0
THEN
IF
← 0; (* Reset Interrupt Flag *)
ELSE
IF VM
= 0;
Opcode Instruction 64-Bit
Mode
Compat/
Leg Mode
Description
FA CLI Valid Valid Clear interrupt flag; interrupts disabled
when interrupt flag cleared.
Table 3-6. Decision Table for CLI Results
PE VM IOPL CPL PVI VIP VME CLI Result
0XXXXXXIF
= 0
10
≥ CPL X X X X IF = 0
10
< CPL 3 1 X X VIF = 0
10
< CPL < 3X X XGP Fault
10
< CPL X 0 X X GP Fault
113XXXXIF
= 0
11
< 3X X X 1VIF = 0
11
< 3X X X 0GP Fault
NOTES:
* X = This setting has no impact.