I've checked in this patch to add some minimal documentation for the
MicroBlaze interrupt handler attributes. I was able to figure this out
by inspection of the code and reading the processor documentation, which
has a more extensive discussion of how to use these features.
-Sandra
2016-01-05 Sandra Loosemore <san...@codesourcery.com>
PR 1078
gcc/
* doc/extend.texi (MicroBlaze Function Attributes): Document
interrupt_handler and fast_interrupt attributes.
Index: gcc/doc/extend.texi
===================================================================
--- gcc/doc/extend.texi (revision 232077)
+++ gcc/doc/extend.texi (working copy)
@@ -4205,6 +4205,17 @@ the @code{rtbd} instead of @code{rtsd}.
@smallexample
void f () __attribute__ ((break_handler));
@end smallexample
+
+@item interrupt_handler
+@itemx fast_interrupt
+@cindex @code{interrupt_handler} function attribute, MicroBlaze
+@cindex @code{fast_interrupt} function attribute, MicroBlaze
+These attributes indicate that the specified function is an interrupt
+handler. Use the @code{fast_interrupt} attribute to indicate handlers
+used in low-latency interrupt mode, and @code{interrupt_handler} for
+interrupts that do not use low-latency handlers. In both cases, GCC
+emits appropriate prologue code and generates a return from the handler
+using @code{rtid} instead of @code{rtsd}.
@end table
@node Microsoft Windows Function Attributes