13.1 Register Variables
Register variables use one or more working registers, as shown in the following table.
| Variable | Register (Note 1) |
|---|---|
char, signed char, unsigned
char | W0-W14 |
short, signed short, unsigned
short | W0-W14 |
int, signed int, unsigned
int | W0-W14 |
void * (or any
pointer) | W0-W14 |
long, signed long, unsigned long | W0-W14 |
long long, signed long long, unsigned long long | An even pair of contiguous W registers such as W1:W0 |
float | Any register from F0-F31 |
double(Note 2) | Any register from F0-F31 |
long double | An even pair of registers F registers such as F1:F0 |
struct | 1 contiguous register per 4 bytes in the structure |
_Fract
| W0-W14 |
long _Fract
| A pair of contiguous registers, the first of which is a register from the set {W0, W2, W4, W6, W8, W10, W12} |
|
Note:
| |
