6.31.16 Атрибуты функций MicroBlaze
Эти атрибуты функций поддерживаются на целевых платформах MicroBlaze:
save_volatiles-
Используйте этот атрибут, чтобы указать, что функция является обработчиком прерывания. Все регистры с изменяемым значением (в дополнение к неизменяемым регистрам) сохраняются в прологе функции. Если функция является лиственной, сохраняются только регистры с изменяемым значением, используемые функцией. Вместо возврата из прерывания генерируется обычное возвращение из функции.
break_handler-
Используйте этот атрибут, чтобы указать, что указанная функция является обработчиком прерывания типа break. Компилятор генерирует последовательности входа и выхода из функции, подходящие для использования в обработчике break, когда этот атрибут присутствует. Возврат из
break_handlerвыполняется черезrtbdвместоrtsd.void f () __attribute__ ((break_handler));
interrupt_handlerfast_interrupt-
Эти атрибуты указывают, что указанная функция является обработчиком прерывания. Используйте атрибут
fast_interruptдля обозначения обработчиков, используемых в режиме прерывания с низкой задержкой, иinterrupt_handlerдля прерываний, которые не используют обработчики с низкой задержкой. В обоих случаях GCC генерирует соответствующий код пролога и генерирует возврат из обработчика с использованиемrtidвместоrtsd.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-6.5.0/gcc/MicroBlaze-Function-Attributes.html