AME-PRIVILEGE-LEVEL:
IF the return instruction pointer is not within the return code segment limit
    THEN #GP(0); FI;
IF the return instruction pointer is not within canonical address space
    THEN #GP(0); FI;
IF OperandSize = 32
    THEN
         EIP ← Pop();
         CS ← Pop(); (* 32-bit pop, high-order 16 bits discarded *)
    ELSE
         IF OperandSize = 16
              THEN
                    EIP ← Pop();
                    EIP ← EIP AND 0000FFFFH;
                    CS ← Pop(); (* 