TESTUI - Determine User Interrupt Flag

Opcode/ Instruction

Op/ En

64/32 bit Mode Support

CPUID Feature Flag

Description

F3 0F 01 ED TESTUI

ZO

V/I

UINTR

Copies the current value of UIF into EFLAGS.CF.

Instruction Operand Encoding

Op/En

Tuple

Operand 1

Operand 2

Operand 3

Operand 4

ZO

N/A

N/A

N/A

N/A

N/A

TESTUI copies the current value of the user interrupt flag (UIF) into EFLAGS.CF. This instruction can be executed regardless of CPL.

TESTUI may be executed normally inside a transactional region.

Operation

CF := UIF;
ZF := AF := OF := PF := SF := 0;

Flags Affected

The ZF, OF, AF, PF, SF flags are cleared and the CF flags to the value of the user interrupt flag.

Protected Mode Exceptions

#UD

The TESTUI instruction is not recognized in protected mode.

Real-Address Mode Exceptions

#UD

The TESTUI instruction is not recognized in real-address mode.

Virtual-8086 Mode Exceptions

#UD

The TESTUI instruction is not recognized in virtual-8086 mode.

Compatibility Mode Exceptions

#UD

The TESTUI instruction is not recognized in compatibility mode.

64-Bit Mode Exceptions

#UD

If the LOCK prefix is used. If executed inside an enclave. If CR4.UINTR = 0. If CPUID.07H.0H:EDX.UINTR[bit 5] = 0.