6.33.7 Атрибуты функций Blackfin
Эти атрибуты функций поддерживаются бэкендом Blackfin:
exception_handler-
Используйте этот атрибут на Blackfin для указания того, что указанная функция является обработчиком исключений. Компилятор генерирует последовательности входа и выхода из функции, подходящие для использования в обработчике исключений, когда этот атрибут присутствует.
interrupt_handler-
Используйте этот атрибут для указания того, что указанная функция является обработчиком прерывания. Компилятор генерирует последовательности входа и выхода из функции, подходящие для использования в обработчике прерываний, когда этот атрибут присутствует.
kspisusp-
При совместном использовании с
interrupt_handler,exception_handlerилиnmi_handler, код генерируется для загрузки указателя стека из регистра USP в прологе функции. l1_text-
Этот атрибут указывает, что функция должна быть размещена в SRAM L1 Instruction. Функция помещается в специальный раздел, названный
.l1.text. С -mfdpic, вызовы функций, с такой функцией как вызываемой или вызывающей, используют встроенный PLT. l2-
Этот атрибут указывает, что функция должна быть размещена в SRAM L2. Функция помещается в специальный раздел, названный
.l2.text. С -mfdpic, вызывающие такие функции используют встроенный PLT. longcallshortcall-
Атрибут
longcallуказывает, что функция может находиться далеко от места вызова и требует другой (более дорогой) последовательности вызова. Атрибутshortcallуказывает, что функция всегда достаточно близка для использования более короткой последовательности вызова. Эти атрибуты переопределяют переключатель -mlongcall. nesting-
Используйте этот атрибут вместе с
interrupt_handler,exception_handlerилиnmi_handlerдля указания, что код входа в функцию должен разрешать вложенные прерывания или исключения. nmi_handler-
Используйте этот атрибут на Blackfin для указания того, что указанная функция является обработчиком NMI. Компилятор генерирует последовательности входа и выхода из функции, подходящие для использования в обработчике NMI, когда этот атрибут присутствует.
saveall-
Используйте этот атрибут для указания того, что все регистры, кроме указателя стека, должны быть сохранены в прологе независимо от того, используются они или нет.
Далее: Атрибуты функций CR16, Предыдущее: Атрибуты функций AVR, Вверх: Атрибуты функций [Содержание][Индекс]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-9.5.0/gcc/Blackfin-Function-Attributes.html