[Bug target/38609] [4.4 Regression]: gcc.c-torture/execute/built-in-setjmp.c execute -O2 and above

hjl dot tools at gmail dot com gcc-bugzilla@gcc.gnu.org
Wed Mar 18 02:47:00 GMT 2009



------- Comment #11 from hjl dot tools at gmail dot com  2009-03-18 02:46 -------
(In reply to comment #10)
> Looks like I should punt and force "#define FRAME_POINTER_REQUIRED
> cfun->calls_alloca" or "#define FRAME_POINTER_REQUIRED
> cfun->has_nonlocal_label".
> Apparently this is *not* one of the cases where "The compiler recognizes those
> cases and automatically gives the function a frame pointer regardless of what
> @code{FRAME_POINTER_REQUIRED} says.  You don't need to worry about
> them."
> 

I think you may need a frame pointer for

  if (cfun->calls_alloca
      || cfun->has_nonlocal_label
      || crtl->has_nonlocal_goto)

See expand_stack_alignment in cfgexpand.c. Joey and Xuepeng may know
more about this.


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |Joey dot ye at intel dot
                   |                            |com, xuepeng dot guo at
                   |                            |intel dot com


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



More information about the Gcc-bugs mailing list