| REIT(特権命令) S関連命令 <<L1R>>,<<L1>>,<<L2>> |
【ニモニックとオペランド】
REIT
【機能】
Return from EIT handler
EIT処理ハンドラからのリターン
【オプション】
なし
【命令フォーマットと表記法】
【解説】
この命令はEIT処理ハンドラからのリターンを行います。すなわち、指定スタックに退避された情報を読み出し、PSWを復帰させ、元のプログラムを再開します(参照)。
【命令動作】
- @SP+ → PSW
@SP+ → EITINF (FORMAT/VECTOR)
@SP+ → PCEIT処理の際追加情報がスタックに退避されていた場合、その情報をポップしてEIT発生前の状態に戻します。スタックに情報が退避されているかどうかは、EITINFのFORMAT及びVECTORフィールドによって判定します(参照)。
EITINFのFORMATが、サポートされていないスタックフォーマットを指定した場合、予約スタックフォーマット例外 (RSFE)が発生します。この場合、フォーマットが不当であったスタックフレームは追加情報の有無が判定できませんので無効スタックフレームとして残り、そのスタックフレームに追加される形でRSFEのスタックフレームが形成されます。
スタックフレームは以下のように作成します。
この命令はSMビットの変化についてチェックしません。
【フラグ変化】
【発生EIT】
RSFE スタックに退避されていたEITINFのFORMATが不正 OAJE/OAJT スタックに退避されていたPC = 奇数 RFE スタックに退避されていたPSWの予約ビット = "1" RFE スタックに退避されていたPSWのSM, RNGの組合せがreservedのパターン PIVE RNG ≠ 00 DCT SMRNG値の変更によるDCT条件成立 DI IMASK値の変更によるDI条件成立
【使用例】
EIT処理から復帰します。