6.62.15 Функциональные специфические прагмы опций
-
#pragma GCC target (string, …) -
Эта прагма позволяет задавать опции, специфичные для целевой платформы, для функций, определённых позже в файле исходного кода. Можно указать одну или несколько строк. Каждая функция, определённая после этой точки, обрабатывается так, как если бы она была объявлена с одним
target(строкой)атрибутом для каждого аргумента строка. Скобки вокруг строк в прагме являются необязательными. Подробнее об атрибутеtargetи синтаксисе атрибута см. в разделе Объявление атрибутов функций.Прагма
#pragma GCC targetв настоящее время реализована только для платформ x86, ARM, AArch64, PowerPC, S/390 и Nios II. -
#pragma GCC optimize (string, …) -
Эта прагма позволяет задавать глобальные опции оптимизации для функций, определённых позже в файле исходного кода. Можно указать одну или несколько строк. Каждая функция, определённая после этой точки, обрабатывается так, как если бы она была объявлена с одним
optimize(строкой)атрибутом для каждого аргумента строка. Скобки вокруг строк в прагме являются необязательными. Подробнее об атрибуте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-13.3.0/gcc/Function-Specific-Option-Pragmas.html