[Bug target/40667] [4.4/4.5 Regression] stack frames are generated even with -fomit-frame-pointer

mikulas at artax dot karlin dot mff dot cuni dot cz gcc-bugzilla@gcc.gnu.org
Mon Feb 15 10:34:00 GMT 2010



------- Comment #26 from mikulas at artax dot karlin dot mff dot cuni dot cz  2010-02-15 10:34 -------
Comment #25: I don't understand your logic, what does attribute((noreturn))
have to do with a stack frame?

The only valid reasons for generating a stack frame are alloca() or needed
stack realignment. Other functions calls, either returning or noreturn don't
need a frame.

Note that attribute((noreturn)) functions normally don't trigger a stack frame.
That example function was actually carefully minimized from a larger real-world
function. If you change the content of the loop, the stack frame won't be
generated. It looks like there is something rotten in gcc.


-- 

mikulas at artax dot karlin dot mff dot cuni dot cz changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |


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



More information about the Gcc-bugs mailing list