------- Comment #2 from msnkipa at mail dot ru 2008-07-04 21:57 ------- I know it, but such part as movapd -320(%rbp), %xmm0 movapd %xmm0, -128(%rbp) movapd -304(%rbp), %xmm0 movapd %xmm0, -144(%rbp) movapd -144(%rbp), %xmm1 movapd -128(%rbp), %xmm0 is VERY strange, there are 2! local variables and 7 memory operation. If you store all local variables in stack, code mab be such movapd -320(%rbp), %xmm0 movapd -304(%rbp), %xmm1 What code you think to be normal with 3 or 7 memory operations? For what you make store/load ops for one variable twice?
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36733