These function attributes are supported by the M32R/D back end:
interrupt
¶Use this attribute to indicate that the specified function is an interrupt handler. The compiler generates function entry and exit sequences suitable for use in an interrupt handler when this attribute is present.
model (model-name)
¶On the M32R/D, use this attribute to set the addressability of an
object, and of the code generated for a function. The identifier
model-name is one of small
, medium
, or
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 ld24
instruction), and are
callable with the bl
instruction.
Medium model objects may live anywhere in the 32-bit address space (the
compiler generates seth/add3
instructions to load their addresses),
and are callable with the bl
instruction.
Large model objects may live anywhere in the 32-bit address space (the
compiler generates seth/add3
instructions to load their addresses),
and may not be reachable with the bl
instruction (the compiler
generates the much slower seth/add3/jl
instruction sequence).