/Qspectre-jmp
Компилятор создает int3
инструкцию (прерывание программного обеспечения) после безусловных прямых ветвей. Этот параметр расширяет /Qspectre
флаг и устраняет спекулятивные атаки на побочные каналы выполнения безусловных прямых ветвей.
Синтаксис
/Qspectre-jmp
Замечания
/Qspectre-jmp
вызывает компилятор обнаруживать исполняемые инструкции после безусловных прямых ветвей. Вставляется int3
после безусловных прямых ветвей, чтобы гарантировать, что инструкции не выполняются спекулятивно за пределами ветви. Например, компилятор уменьшается jmp addr
путем добавления инструкции, приведенной int3
ниже инструкции jmp
, как показано ниже.
jmp addr
int3
/Qspectre-jmp
по умолчанию отключен. Она поддерживается для всех уровней оптимизации.
Установка этого параметра компилятора программным способом
Чтобы задать этот параметр программным способом, см . свойство VCCLCompilerTool.AdditionalOptions.
См. также
/Qspectre
/Qspectre-jmp
/Qspectre-load
/Qspectre-load-cf
/Q (низкоуровневые операции)
Параметры компилятора MSVC
Синтаксис командной строки компилятора MSVC
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по