gcc: MicroBlaze Function Attributes
1
1 6.31.16 MicroBlaze Function Attributes
1 --------------------------------------
1
1 These function attributes are supported on MicroBlaze targets:
1
1 'save_volatiles'
1 Use this attribute to indicate that the function is an interrupt
1 handler. All volatile registers (in addition to non-volatile
1 registers) are saved in the function prologue. If the function is
1 a leaf function, only volatiles used by the function are saved. A
1 normal function return is generated instead of a return from
1 interrupt.
1
1 'break_handler'
1 Use this attribute to indicate that the specified function is a
1 break handler. The compiler generates function entry and exit
1 sequences suitable for use in an break handler when this attribute
1 is present. The return from 'break_handler' is done through the
1 'rtbd' instead of 'rtsd'.
1
1 void f () __attribute__ ((break_handler));
1
1 'interrupt_handler'
1 'fast_interrupt'
1 These attributes indicate that the specified function is an
1 interrupt handler. Use the 'fast_interrupt' attribute to indicate
1 handlers used in low-latency interrupt mode, and
1 'interrupt_handler' for interrupts that do not use low-latency
1 handlers. In both cases, GCC emits appropriate prologue code and
1 generates a return from the handler using 'rtid' instead of 'rtsd'.
1