EFI Byte Code Virtual Machine
Version 1.10 12/01/02 19-23
Table 19-15. CMPI Instruction Encoding
BYTE DESCRIPTION
Bit Description
7 0 = 16-bit immediate data
1 = 32-bit immediate data
6 0 = 32-bit comparison
1 = 64-bit comparison
Opcode
0
0..5
0x2D = CMPIeq compare equal
0x2E = CMPIlte compare signed less then/equal
0x2F = CMPIgte compare signed greater than/equal
0x30 = CMPIulte compare unsigned less than/equal
0x31 = CMPIugte compare unsigned greater than/equal
Bit Description
5..7 Reserved = 0
4 0 = Operand 1 index absent
1 = Operand 1 index present
3 0 = Operand 1 direct
1 = Operand 1 indirect
1
0..2 Operand 1
2..3 Optional 16-bit Operand 1 index
2..3/4..5 16-bit immediate data
2..5/4..7 32-bit immediate data
BEHAVIORS AND RESTRICTIONS:
• The immediate data is fetched as a signed value.
• If the immediate data is smaller than the comparison size, then the immediate data is sign-
extended appropriately.
• If Operand 1 is direct, and an Operand 1 index is specified, then an instruction encoding
exception is generated.