Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Задает расширение архитектуры Arm A-Profile для создания кода в ARM64. Эти коммутаторы применяются к целевой версии ARM64 компилятора. Дополнительные сведения о других целевых архитектурах см. в /arch статьях /arch и /arch (ARM).
Синтаксис
/arch:<armv8.0|armv8.1|armv8.2|armv8.3|armv8.4|armv8.5|armv8.6|armv8.7|armv8.8|armv8.9>[+функция]
/arch:<armv9.0|armv9.1|armv9.2|armv9.3|armv9.4>[+функция]
Аргументы
/arch:armv8.x
Задает архитектуру Armv8-A, где x требуется значение расширения от091. По умолчанию компилятор использует /arch:armv8.0 поведение, если архитектура не указана.
/arch:armv9.x
2
Указывает архитектуру Armv9-A, где x является обязательным значением расширения из 04. По умолчанию компилятор использует /arch:armv8.0 поведение, если архитектура не указана.
Замечания
Расширение ARM64 можно указать из Armv8.0-A через Armv8.9-A и Armv9.0-A через Armv9.4-A. При необходимости включите одну или несколько функций архитектуры, добавив аргумент функции к варианту3. Например, для целевого объекта Armv8.0-A и включения функции FEAT_LSEдобавьте аргумент lse функции, чтобы этот параметр стал /arch:armv8.0+lse. Дополнительные сведения о доступных функциях и их требованиях см. в статье /feature3.
Примечание.
В зависимости от версии Visual Studio компилятор может еще не создавать инструкции из всех наборов компонентов, необходимых для указанного уровня расширения. Например, /arch:armv8.1 встроенные Interlocked функции могут использовать соответствующую атомарную инструкцию, представленную функцией расширения FEAT_LSEArmv8.1-A, но для поддержки компилятора требуется Visual Studio 2022 версии 17.2 или более поздней.
Макрос _M_ARM64 определяется по умолчанию при компиляции для целевого объекта ARM64. Дополнительные сведения см. в разделе "Предопределенные макросы".
Макрос __ARM_ARCH определен для /arch:ARMv8.0 и выше. Он указывает уровень расширения архитектуры ARM, на который предназначен компилятор. Дополнительные сведения см. в разделе "Предопределенные макросы".
#if __ARM_ARCH >= 802
// code that requires ARMv8.2...
#endif
/arch влияет только на создание кода для собственных функций.
/clr При компиляции /arch не влияет на создание кода для управляемых функций.
Установка параметра компилятора /arch в Visual Studio
Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойств сборки в Visual Studio.
Перейдите на страницу свойств Свойства конфигурации>C/C++>Командная строка.
В поле "Дополнительные параметры" добавьте
/arch:armv8.0или заменитеarmv8.0другое расширение ARM64. Нажмите ОК, чтобы сохранить внесенные изменения.
Установка данного параметра компилятора программным способом
- См. раздел AdditionalOptions.
Расширение armv8.9 архитектуры Armv8-A доступно начиная с Visual Studio 2022 версии 17.10.
Расширения архитектуры Armv9-A доступны начиная с Visual Studio 2022 версии 17.10.
Включение функций архитектуры 3 доступно начиная с Visual Studio 2022 версии 17.10.
См. также
/arch (Минимальная архитектура ЦП)
Предустановленные макросы
Параметры компилятора MSVC
Синтаксис командной строки компилятора MSVC