Справочник Пользователя для AMD 250

Скачать
Страница из 384
Chapter 5
Cache and Memory Optimizations
119
Software Optimization Guide for AMD64 Processors
25112
Rev. 3.06
September 2005
5.12
Sorting Local Variables
Optimization
Sort local variables according to their type sizes, allocating those with larger type sizes ahead of those 
with smaller type sizes.
Application
This optimization applies to:
32-bit software
64-bit software
Rationale
If the first variable is allocated for natural alignment, all other variables are allocated contiguously in 
the order they are declared and are naturally aligned without any padding.
Example
Consider the following declarations in a C function:
short ga, gu, gi;
long foo, bar;
double x, y, z[3];
char a, b;
float baz;
Instead of allocating the variables in the order in which they are declared, allocate them from lower to 
higher addresses in the following order:
x, y, z[2], z[1], z[0], foo, bar, baz, ga, gu, gi, a, b
Related Information
For information on sorting local variables at the C-source level, see “Sorting Local Variables” on 
page 41.