|
|||||||||||
Technical Support Support Resources
Product Information |
C166: Packing Bytes in Unions and StructuresInformation in this article applies to:
SYMPTOMSWhen structures or unions are defined where chars and ints are intermixed, the compiler pads the declaration with blank bytes to word align the char in memory. Why? CAUSEThe compiler does this to optimize memory accesses for the C166 family of processors. RESOLUTIONThe compiler directive PACK() instructs the compiler to declare memory for the union or structure without the pad bytes. Just insert the line:
in the file where the union or structure is declared and memory will be accessed accordingly. MORE INFORMATION
Note: By not having the pad bytes added to the char elements code generated to access them will be much larger and slower than code written for word aligned accesses. Last Reviewed: Thursday, February 25, 2021 | ||||||||||
|
Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.