Spec-Zone.ru › GCC 11

Следующая: PRU Pragmas, Предыдущая: M32C Pragmas, Вверх: Прагмы, принимаемые GCC [Оглавление][Индекс]

6.62.4 Прагмы MeP ¶

custom io_volatile (on|off)

Переопределяет параметр командной строки -mio-volatile для текущего файла. Обратите внимание, что для совместимости с будущими версиями GCC этот параметр следует использовать только один раз перед любыми io переменными в каждом файле.

GCC coprocessor available registers

Указывает, какие регистры сопроцессора доступны для распределения регистров. registers может быть одним регистром, диапазоном регистров, разделённым эллипсами, или перечислением таких регистров через запятую. Пример:

#pragma GCC coprocessor available $c0...$c10, $c28
GCC coprocessor call_saved registers

Указывает, какие регистры сопроцессора должны сохраняться и восстанавливаться любой функцией, использующей их. registers может быть одним регистром, диапазоном регистров, разделённым эллипсами, или перечислением таких регистров через запятую. Пример:

#pragma GCC coprocessor call_saved $c4...$c6, $c31
GCC coprocessor subclass '(A|B|C|D)' = registers

Создаёт и определяет класс регистров. Эти классы регистров могут использоваться встроенными asm конструкциями. registers может быть одним регистром, диапазоном регистров, разделённым эллипсами, или перечислением таких регистров через запятую. Пример:

#pragma GCC coprocessor subclass 'B' = $c2, $c4, $c6

asm ("cpfoo %0" : "=B" (x));
GCC disinterrupt name , name …

Для указанных функций компилятор добавляет код для отключения прерываний на время выполнения этих функций. Если какие-либо функции с таким именем не встречаются в исходном коде, выводится предупреждение, что прагма не используется. Примеры:

#pragma disinterrupt foo
#pragma disinterrupt bar, grill
int foo () { … }
GCC call name , name …

Для указанных функций компилятор всегда использует модель вызова с регистровым косвенным адресом при вызове указанных функций. Примеры:

extern int foo ();
#pragma call foo

Следующая: Прагмы PRU, Предыдущая: Прагмы M32C, Вверх: Прагмы, принимаемые GCC [Оглавление][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-11.4.0/gcc/MeP-Pragmas.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API