Spec-Zone.ru › GCC 14

6.33.21 Атрибуты функций 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

Предоставьте пользовательскую функцию для обработки исключения теплого сброса.

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

Spec-Zone.ru

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