English
Language : 

CC78K4 Datasheet, PDF (314/523 Pages) NEC – CC78K4 Ver.2.30 or Later, C Compiler Language
CHAPTER 11 EXTENDED FUNCTIONS
noauto Function
noauto
• Automatic variables can be used only when all the automatic variables can be allocated to the registers
remaining after the argument allocation and to the saddr2 area (_@KREGXX) for register variables.
However, automatic variables are allocated to the saddr2 area for register variables only when the -QR option
is specified during compilation. If the -QRO option is specified during compilation, a warning message is
output and automatic variables are not allocated to saddr2 area.
• Automatic variables are allocated in the same order as arguments are allocated. The automatic variables
allocated to saddr2 area (_@KREGXX) are allocated in the order of declaration (if they are not allocated, a
compilation error occurs).
• The save and restore of _@KREGXX, the register to which automatic variables are allocated, are performed
on the function definition side.
EFFECT
• The object code can be shortened and execution speed can be improved.
USAGE
Declare a function with the noauto attribute in the function declaration, as follows.
noauto type-name function-name
RESTRICTIONS
• When the -ZO option is specified, automatic variables cannot be used inside the noauto function, and neither
can the register variables.
• When the -ZA option is specified, the noauto function is disabled.
• The arguments and automatic variables of the noauto function (only when the -ZO option is specified) have
restrictions on their types and numbers. The following shows the types of arguments that can be used inside
a noauto function.
• Pointer
• char / signed char/ unsigned char
• int / signed int / unsigned int
• short / signed short / unsigned short
• enum
• long / signed long / unsigned long
• float / double / long double
314
User’s Manual U15556EJ1V0UM