Spec-Zone.ru › GCC 7

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

Далее: Директивы RS/6000 и PowerPC, Предыдущее: Директивы M32C, Вверх: Директивы [Оглавление][Индекс]

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

Spec-Zone.ru

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