This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c/36733] Wery interesting compilation way (if no -Ox option)



------- 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]