CLI — Clear Interrupt FlagInstruction Operand EncodingDescriptionIn most cases, CLI clears the IF flag in the EFLAGS register and 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 effect on the generation of exceptions and NMI interrupts.Operation is different in two modes defined as follows:•PVI mode (protected-mode virtual interrupts): CR0.PE= 1, EFLAGS.VM= 0, CPL= 3, and CR4.PVI= 1;•VME mode (virtual-8086 mode extensions): CR0.PE= 1, EFLAGS.VM= 1, and CR4.VME= 1.If IOPL< 3 and either VME mode or PVI mode is active, CLI clears the VIF flag in the EFLAGS register, leaving IF unaffected.Table 3-7 indicates the action of the CLI instruction depending on the processor operating mode, IOPL, and CPL. OpcodeInstructionOp/ En64-bit ModeCompat/Leg ModeDescriptionFACLIZOValidValidClear interrupt flag; interrupts disabled when interrupt flag cleared.Op/EnOperand 1Operand 2Operand 3Operand 4ZONANANANATable 3-7. Decision Table for CLI ResultsModeIOPLCLI ResultReal-addressX1NOTES:1. X = This setting has no effect on instruction operation.IF=0Protected, not PVI22. For this table, “protected mode” applies whenever CR0.PE= 1 and EFLAGS.VM= 0; it includes compatibility mode and 64-bit mode.≥CPLIF = 0< CPL#GP faultProtected, PVI33. PVI mode and virtual-8086 mode each imply CPL= 3.3IF = 00–2VIF=0Virtual-8086, not VME33IF = 00–2#GP faultVirtual-8086, VME33IF = 00–2VIF=0
This UNOFFICIAL reference was generated from the official Intel® 64 and IA-32 Architectures Software Developer’s Manual by a dumb script. There is no guarantee that some parts aren't mangled or broken and is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.