The compiler changes data order, for optimal usage. The data reordering follows these guidelines:
- Reordering is mandatory if local variables are allocated on the stack.
- The compiler does not reorder data for parameter values passed in memory (instead of being passed in registers).
- The compiler does not reorder data when locating fields within a structure.