/Qspectre-jmp
コンパイラが無条件の直接分岐の後に int3
命令 (ソフトウェア割り込み) を生成します。 このオプションは、 /Qspectre
フラグを拡張し、無条件の直接ブランチに対する投機的実行サイドチャネル攻撃を軽減します。
構文
/Qspectre-jmp
解説
/Qspectre-jmp
は、無条件の直接分岐に続く実行可能命令をコンパイラが検出します。 無条件の直接分岐の後に int3
が挿入され、分岐を超えて命令が投機的に実行されないようにします。 たとえば、コンパイラは、次に示すように、jmp
命令の後にint3
命令を追加することで、jmp addr
を軽減します。
jmp addr
int3
/Qspectre-jmp
は既定でオフになっています。 すべての最適化レベルでサポートされています。
このコンパイラ オプションをプログラムで設定する
このオプションをプログラムで設定するには、 VCCLCompilerTool.AdditionalOptions プロパティを参照してください。
関連項目
/Qspectre
/Qspectre-jmp
/Qspectre-load
/Qspectre-load-cf
/Q オプション (低水準の操作)
MSVC コンパイラ オプション
MSVC コンパイラのコマンド ライン構文