[Bug target/39337] x86 use of VLA disables -fomit-frame-pointer

astrange at ithinksw dot com gcc-bugzilla@gcc.gnu.org
Mon Mar 2 02:39:00 GMT 2009



------- Comment #3 from astrange at ithinksw dot com  2009-03-02 02:39 -------
> This is correct, vla and alloca always uses a frame pointer because there is no way to get back to the original offsets so the compiler needs a frame pointer.

It's not restoring from the frame pointer here, it's restoring from ecx. 'addl
$8, %esp' would work just as well in the function epilogue, like it would if
this function had no VLA.

Disabling inlining does fix that problem, though.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39337



More information about the Gcc-bugs mailing list