6.62.15 Функционально-специфичные прагмы опций
#pragma GCC target ("string"...)-
Данная прагма позволяет устанавливать опции, специфичные для целевой архитектуры, для функций, определённых позднее в исходном файле. Можно указать одну или несколько строк. Каждая функция, определённая после этой точки, будет как будто
attribute((target("STRING")))было указано для этой функции. Скобки вокруг опций необязательны. См. Атрибуты функций, чтобы узнать больше об атрибутеtargetи синтаксисе атрибутов.Прагма
#pragma GCC targetв настоящее время реализована только для архитектур x86, PowerPC и Nios II.
#pragma GCC optimize ("string"...)-
Данная прагма позволяет устанавливать глобальные опции оптимизации для функций, определённых позднее в исходном файле. Можно указать одну или несколько строк. Каждая функция, определённая после этой точки, будет как будто
attribute((optimize("STRING")))было указано для этой функции. Скобки вокруг опций необязательны. См. Атрибуты функций, чтобы узнать больше об атрибутеoptimizeи синтаксисе атрибутов.
#pragma GCC push_options#pragma GCC pop_options-
Эти прагмы поддерживают стек текущих опций целевой архитектуры и оптимизации. Они предназначены для файлов включения, где вы временно хотите переключиться на использование другого ‘#pragma GCC target’ или ‘#pragma GCC optimize’, а затем вернуться к предыдущим опциям.
#pragma GCC reset_options-
Данная прагма очищает текущие
#pragma GCC targetи#pragma GCC optimize, чтобы использовать значения по умолчанию, указанные в командной строке.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-7.5.0/gcc/Function-Specific-Option-Pragmas.html