Spec-Zone.ru › GCC 15

6.4.1.7 Атрибуты функций Blackfin

В бэкенде Blackfin поддерживаются следующие атрибуты функций:

exception_handler

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

interrupt_handler

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

kspisusp

При использовании вместе с interrupt_handler, exception_handler или nmi_handler генерируется код для загрузки указателя стека из регистра USP в прологе функции.

l1_text

Этот атрибут указывает, что функцию следует разместить в SRAM инструкций L1. Функция помещается в специальную секцию с именем .l1.text. С -mfdpic вызовы функций, в которых такая функция выступает в роли вызываемой или вызывающей, используют встроенную PLT.

l2

Этот атрибут указывает, что функцию следует разместить в SRAM L2. Функция помещается в специальную секцию с именем .l2.text. С -mfdpic вызывающие стороны таких функций используют встроенную PLT.

longcall
shortcall

Атрибут longcall указывает, что функция может находиться далеко от места вызова и для неё может потребоваться другая (более затратная) последовательность вызова. Атрибут shortcall указывает, что функция всегда находится достаточно близко, чтобы использовать более короткую последовательность вызова. Эти атрибуты переопределяют параметр -mlongcall.

nesting

Используйте этот атрибут вместе с interrupt_handler, exception_handler или nmi_handler, чтобы указать, что код входа в функцию должен разрешать вложенные прерывания или исключения.

nmi_handler

Используйте этот атрибут для функции Blackfin, чтобы указать, что она является обработчиком NMI. Если присутствует этот атрибут, компилятор генерирует последовательности входа в функцию и выхода из неё, подходящие для обработчика NMI.

saveall

Используйте этот атрибут, чтобы указать, что в прологе необходимо сохранять все регистры, кроме указателя стека, независимо от того, используются они или нет.

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-15.3.0/gcc/Blackfin-Function-Attributes.html

Spec-Zone.ru

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