9.10.14 reverse
(alignment)
The reverse
attribute specifies a minimum alignment for
the ending address of a variable, plus one. The alignment is specified in bytes and must
be a power of two. Reverse-aligned variables can be used for decrementing modulo buffers
in PIC32A MCU assembly language. This attribute could be
useful if an application defines variables in C that will be accessed from assembly
language.
int buf1[128] __attribute__ ((reverse(256)));
The reverse
attribute conflicts with the
aligned
and section
attributes. An attempt to name
a section for a reverse-aligned variable will be ignored with a warning. It is an error
condition to specify both reverse
and aligned
for the
same variable.