From 845da53434fe75cd61dcb4980a8ef0821f4738fa Mon Sep 17 00:00:00 2001 From: Doug Evans Date: Mon, 24 Mar 1997 20:53:34 +0000 Subject: [PATCH] Formerly extend.texi.~113~ From-SVN: r13782 --- gcc/extend.texi | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gcc/extend.texi b/gcc/extend.texi index 90b0394e3b5..6942629bfcd 100644 --- a/gcc/extend.texi +++ b/gcc/extend.texi @@ -1605,6 +1605,34 @@ variable should be placed into the tiny data section. The compiler will generate more efficient code for loads and stores on data in the tiny data section. Note the tiny data area is limited to slightly under 32kbytes of data. + +@item interrupt +@cindex interrupt handlers on the M32R/D +Use this option on the M32R/D to indicate that the specified +function is an interrupt handler. The compiler will generate function +entry and exit sequences suitable for use in an interrupt handler when this +attribute is present. + +@item model (@var{model-name}) +@cindex function addressability on the M32R/D +Use this attribute on the M32R/D to set the addressability of an object, +and the code generated for a function. +The identifier @var{model-name} is one of @code{small}, @code{medium}, +or @code{large}, representing each of the code models. + +Small model objects live in the lower 16MB of memory (so that their +addresses can be loaded with the @code{ld24} instruction), and are +callable with the @code{bl} instruction. + +Medium model objects may live anywhere in the 32 bit address space (the +compiler will generate @code{seth/add3} instructions to load their addresses), +and are callable with the @code{bl} instruction. + +Large model objects may live anywhere in the 32 bit address space (the +compiler will generate @code{seth/add3} instructions to load their addresses), +and may not be reachable with the @code{bl} instruction (the compiler will +generate the much slower @code{seth/add3/jl} instruction sequence). + @end table You can specify multiple attributes in a declaration by separating them @@ -1941,6 +1969,20 @@ variable. @item weak The @code{weak} attribute is described in @xref{Function Attributes}. + +@item model (@var{model-name}) +@cindex variable addressability on the M32R/D +Use this attribute on the M32R/D to set the addressability of an object. +The identifier @var{model-name} is one of @code{small}, @code{medium}, +or @code{large}, representing each of the code models. + +Small model objects live in the lower 16MB of memory (so that their +addresses can be loaded with the @code{ld24} instruction). + +Medium and large model objects may live anywhere in the 32 bit address space +(the compiler will generate @code{seth/add3} instructions to load their +addresses). + @end table To specify multiple attributes, separate them by commas within the -- 2.30.2