インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
Restricted Transactional Memory (RTM) コード領域の終了を指定します。対応するインテル® AVX2 命令は XEND です。
void _xend(void); |
なし。
Restricted Transactional Memory (RTM) コード領域の終了を指定します。最外トランザクションの場合 (この xend 命令を含めて、xbegin 命令の数と xend 命令の数が一致する場合)、プロセッサーは自動的にプロセッサー・ステートをコミットしようとします。
コミットに失敗すると、プロセッサーは RTM 実行中に更新されたすべてのレジスターとメモリーをロールバックします。
論理プロセッサーは、xbegin 命令から計算されたフォールバック・アドレスから実行を再開します。EAX レジスターは、RTM アボート情報で更新されます。トランザクションの外側で xend が実行されると、一般的な保護違反 (#GP) が発生します。
xend の命令シーケンスモデルを以下に示します。
__inline void _xend() { __asm { xend } }
問い合わせの結果。