6.33.22 Атрибуты функций NDS32
Эти атрибуты функций поддерживаются бэкэндом NDS32:
exception-
Используйте этот атрибут на целевом устройстве NDS32 для указания того, что указанная функция является обработчиком исключений. Компилятор сгенерирует соответствующие секции для использования в обработчике исключений.
interrupt-
На целевом устройстве NDS32 этот атрибут указывает, что указанная функция является обработчиком прерывания. Компилятор генерирует соответствующие секции для использования в обработчике прерывания. Вы можете использовать следующие атрибуты для изменения поведения:
nested-
Эта подпрограмма обработки прерываний может быть прервана.
not_nested-
Эта подпрограмма обработки прерываний не может быть прервана.
nested_ready-
Эта подпрограмма обработки прерываний может быть прервана после того, как будет установлен
PSW.GIE(глобальное разрешение прерываний). Это позволяет обработчику прерываний завершить некоторые короткие критические участки кода, прежде чем разрешить прерывания. save_all-
Система поможет сохранить все регистры в стеке перед входом в обработчик прерывания.
partial_save-
Система поможет сохранить регистры вызывающей функции в стеке перед входом в обработчик прерывания.
naked-
Этот атрибут позволяет компилятору создать необходимую декларацию функции, позволяя при этом телу функции быть кодом ассемблера. Указанная функция не будет иметь пролога/эпилога, сгенерированных компилятором. Только базовые
asmинструкции могут безопасно включаться в функции naked (см. Базовый ассемблер). Хотя использование расширенных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-9.5.0/gcc/NDS32-Function-Attributes.html