The arguments to the built-in functions can be divided into three groups: register numbers, compile-time constants and run-time values. In order to make this classification clear at a glance, the arguments and return values are given the following pseudo types:
| Pseudo type | Real C type | Constant? | Description | 
|---|---|---|---|
| uh | unsigned short | No | an unsigned halfword | 
| uw1 | unsigned int | No | an unsigned word | 
| sw1 | int | No | a signed word | 
| uw2 | unsigned long long | No | an unsigned doubleword | 
| sw2 | long long | No | a signed doubleword | 
| const | int | Yes | an integer constant | 
| acc | int | Yes | an ACC register number | 
| iacc | int | Yes | an IACC register number | 
These pseudo types are not defined by GCC, they are simply a notational convenience used in this manual.
Arguments of type uh, uw1, sw1, uw2 and sw2 are evaluated at run time. They correspond to register operands in the underlying FR-V instructions. 
const arguments represent immediate operands in the underlying FR-V instructions. They must be compile-time constants. 
acc arguments are evaluated at compile time and specify the number of an accumulator register. For example, an acc argument of 2 selects the ACC2 register. 
iacc arguments are similar to acc arguments but specify the number of an IACC register. See see Other Built-in Functions for more details. 
    © Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
    https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/Argument-Types.html