EFI Byte Code Virtual Machine
Version 1.10 12/01/02 19-29
JMP
SYNTAX:
JMP32{cs|cc} {@}R
1
{Immed32|Index32}
JMP64{cs|cc} Immed64
DESCRIPTION:
The JMP instruction is used to conditionally or unconditionally jump to a relative or absolute
address and continue executing EBC instructions. The condition test is done using the condition bit
in the VM Flags register. The JMP64 form only supports an immediate value that can be used for
either a relative or absolute jump. The JMP32 form adds support for indirect addressing of the JMP
offset or address. The JMP is implemented as:
if (ConditionMet) {
if (Operand.RelativeJump) {
IP += Operand1 + SizeOfThisInstruction;
} else {
IP = Operand1;
}
}
OPERATION:
IP <= Operand 1 (absolute address)
IP <= IP + SizeOfThisInstruction + Operand 1 (relative address)