Skip to content

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.

  1. Evaluate the target operand completely in the old architectural context.

  2. Validate the complete new CS image.

  3. Validate the target offset against the new CS and probe executable translation at the resulting linear address.

  4. 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)

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)

Format: Instruction format for LJMP Rn(s), Rn(d)