6.31.20 Атрибуты функций NDS32
Эти атрибуты функций поддерживаются бэкендом NDS32:
exception-
Используйте этот атрибут для NDS32-цели, чтобы указать, что указанная функция является обработчиком исключений. Компилятор сгенерирует соответствующие секции для использования в обработчике исключений.
interrupt-
На NDS32-целевом процессоре этот атрибут указывает, что указанная функция является обработчиком прерываний. Компилятор генерирует соответствующие секции для использования в обработчике прерываний. Вы можете использовать следующие атрибуты для изменения поведения:
nested-
Эта процедура обработки прерываний может быть прервана.
not_nested-
Эта процедура обработки прерываний не может быть прервана.
nested_ready-
Эта процедура обработки прерываний может быть прервана после того, как установлен
PSW.GIE(глобальное разрешение прерываний). Это позволяет процедуре обработки прерываний завершить некоторые короткие критические участки кода перед включением прерываний. save_all-
Система поможет сохранить все регистры в стеке перед входом в обработчик прерываний.
partial_save-
Система поможет сохранить регистры вызывающей функции в стеке перед входом в обработчик прерываний.
naked-
Этот атрибут позволяет компилятору создать необходимое объявление функции, при этом позволяя телу функции быть кодом ассемблера. Указанная функция не будет иметь пролога/эпилога, сгенерированных компилятором. В голых функциях безопасно включать только базовые
asmинструкции (см. Базовый ассемблер). Использование расширенныхasmинструкций или сочетание базовыхasmинструкций и кода C может показаться работающим, но их нельзя гарантированно использовать надёжно и они не поддерживаются. reset-
Используйте этот атрибут для NDS32-цели, чтобы указать, что указанная функция является обработчиком сброса. Компилятор сгенерирует соответствующие секции для использования в обработчике сброса. Вы можете использовать следующие атрибуты для предоставления дополнительной обработки исключений:
nmi-
Предоставьте пользовательскую функцию для обработки исключения NMI.
warm-
Предоставьте пользовательскую функцию для обработки исключения теплого сброса.
Далее: Атрибуты функций Nios II, Предыдущее: Атрибуты функций MSP430, Вверх: Атрибуты функций [Содержание][Индекс]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-6.5.0/gcc/NDS32-Function-Attributes.html