; FI:
IF the return instruction pointer is not within canonical address space
    THEN #GP(0); FI;
CPL ← ReturnCodeSegmentSelector(RPL);
IF OperandSize = 32
    THEN
         EIP ← Pop();
         CS ← Pop(); (* 32-bit pop, high-order 16 bits discarded, segment descriptor loaded *)
         CS(RPL) ← CPL;
         IF instruction has immediate operand
              THEN (* Release parameters from called procedure’s stack *)
                    IF StackAddressSize = 32
                         THEN
