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

Reply via email to