The armode | noarmode type attribute (C only) (IBM extension)

For use with the METAL compiler option, the armode type attribute allows you to define a typedef of function or function pointer type as operating in access-register (AR) mode. AR mode allows a C function to access multiple additional data spaces, and manipulate more data in memory.

armode function attribute syntax

Read syntax diagramSkip visual syntax diagram__attribute__(( armodenoarmode ))

Functions in AR mode can call functions not in AR mode, and vice versa.

The following example declares a typedef of function pointer foo that is in AR mode, and then declares bar as a function that passes function pointer foo as a parameter:
typedef void (*foo) (int) __attribute__((armode));
void bar (foo); 

The attribute overrides the default setting of the ARMODE compiler option for the specified type. Note that this attribute is only supported when the METAL compiler option is in effect.

Related information