In gcc 4.5 lo stack deve essere allineato a un limite di 16 byte quando si chiama una funzione (le versioni precedenti richiedevano solo un allineamento di 4 byte).Qual è il trade off per il limite dello stack più piccolo?
4 byte è ragionevole per la macchina a 32 bit. 16 byte è facile da allineare solo con "e 0xfffffff0,% esp".
Ma potrebbe costare molto più memoria del limite di 4 byte, non è vero? In breve, la mia domanda è: perché gcc 4.5 considera 16 byte come predefinito? È prezioso?
Grazie mille!