SPNU151W January 1998 – March 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
Table 6-2 lists register and memory storage for various data types:
| Data Type | Register Storage | Memory Storage |
|---|---|---|
| char, signed char | Bits 0-7 of register(1) | 8 bits aligned to 8-bit boundary |
| unsigned char, bool | Bits 0-7 of register | 8 bits aligned to 8-bit boundary |
| short, signed short | Bits 0-15 of register(1) | 16 bits aligned to 16-bit (halfword) boundary |
| unsigned short, wchar_t | Bits 0-15 of register | 16 bits aligned to 16-bit (halfword) boundary |
| int, signed int | Bits 0-31 of register | 32 bits aligned to 32-bit (word) boundary |
| unsigned int | Bits 0-31 of register | 32 bits aligned to 32-bit (word) boundary |
| long, signed long | Bits 0-31 of register | 32 bits aligned to 32-bit (word) boundary |
| unsigned long | Bits 0-31 of register | 32 bits aligned to 32-bit (word) boundary |
| long long | Even/odd register pair | 64 bits aligned to 32-bit (word) boundary(2) |
| unsigned long long | Even/odd register pair | 64 bits aligned to 32-bit (word) boundary(2) |
| float | Bits 0-31 of register | 32 bits aligned to 32-bit (word) boundary |
| double | Register pair | 64 bits aligned to 32-bit (word) boundary(2) |
| long double | Register pair | 64 bits aligned to 32-bit (word) boundary(2) |
| struct | Members stored as individual types require. | Members are stored as their individual types require; aligned according to the member with the most restrictive alignment requirement. |
| array | Members stored as individual types require. | Members are stored as their individual types require; aligned to 32-bit (word) boundary. All arrays inside a structure are aligned according to the type of each element in the array. |
| pointer to data member | Bits 0-31 of register | 32 bits aligned to 32-bit (word) boundary |
| pointer to member function | Components stored as individual types require | 64 bits aligned to 32-bit (word) boundary |
For details about the size of an enum type, see Table 5-2.