EFI Byte Code Virtual Machine
Version 1.10 12/01/02 19-43
MOVREL
SYNTAX:
MOVREL[w|d|q] {@}R
1
{Index16}, Immed16|32|64
DESCRIPTION:
This instruction fetches data at an IP-relative immediate offset (Operand 2) and stores the result to
Operand 1. The offset is a signed offset relative to the following instruction. The fetched data is
unsigned and may be 16 (w), 32 (d), or 64 (q) bits in size.
OPERATION:
Operand 1 <= [IP + SizeOfThisInstruction + Immed]
Table 19-30. MOVREL Instruction Encoding
BYTE DESCRIPTION
Bit Description
6..7 0 = Reserved
1 = Immediate data is 16 bits (w)
2 = Immediate data is 32 bits (d)
3 = Immediate data is 64 bits (q)
0
0..5 Opcode = 0x39
Bit Description
7 Reserved = 0
6 0 = Operand 1 index absent
1 = Operand 1 index present
4..5 Reserved = 0
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 offset
2..5/4..7 32-bit immediate offset
2..9/4..11 64-bit immediate offset
BEHAVIORS AND RESTRICTIONS:
• If an Operand 1 index is specified and Operand 1 is direct, then an instruction encoding
exception is generated.