------- Comment #3 from michael dot meissner at amd dot com 2006-12-04 23:21 ------- I've done some analysis on the test case. The current GCC 4.2 and mainline branches no longer generate the initial push of %r8, but instead do a subq $8,%rsp. I believe in the compiler you used it did the push to allocate 8 bytes of stack instead of the subtract. Note, the epilogue still uses a pop to remove the stack location. The core of the problem is that the compiler is allocating 8 bytes too much stack in this particular case. I think I understand whats going on, but I want to dig a bit more.
-- michael dot meissner at amd dot com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |michael dot meissner at amd | |dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25295