LJMP
Operation
Atomically transfers control to a new CS:PC pair.
Assembler Syntax
LJMP Rn(r), <ea>(e)
LJMP Rn(s), Rn(d)
Privilege
Unprivileged
Long Jump is a segment-changing control transfer. It commits the new CS and PC as a single architectural control-transfer step. The two-operand encoding takes the new CS image from an Rn register. Its target EA has Q interpretation width: a memory operand reads a 64-bit offset and a register or immediate operand supplies its value directly.
-
Evaluate the target operand completely in the old architectural context.
-
Validate the complete new CS image.
-
Validate the target offset against the new CS and probe executable translation at the resulting linear address.
-
Commit new CS and new PC as one successful control-transfer operation.
Fault atomicity. CS and PC remain unchanged when operand evaluation or target validation faults.
An invalid new CS image raises INVALID_CONTROL_IMAGE; target translation failure raises the applicable ADDRESS_TRANSLATION family event.
2.75in
Encodings
LJMP Rn(r), <ea>(e)
Format: Instruction format for LJMP Rn(r), <ea>(e)
2.75in LJMP Rn(s), Rn(d)
Format: Instruction format for LJMP Rn(s), Rn(d)