6.33.19 Атрибуты функций 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-12.2.0/gcc/MicroBlaze-Function-Attributes.html