RFA: Pass -mno-omit-leaf-frame-pointer to sse-10.c
Jan Hubicka
hubicka@ucw.cz
Mon May 7 18:56:00 GMT 2007
>
> This test passes -fno-omit-frame-pointer. On most systems, that
> implies -mno-omit-leaf-frame-pointer -- but not on Solaris 10. And,
> it turns out that both are required for the test to pass.
The -fno-omit-frame-pointer is specified because of warning:
/* ??? Unwind info is not correct around the CFG unless either a frame
pointer is present or M_A_O_A is set. Fixing this requires rewriting
unwind info generation to be aware of the CFG and propagating states
around edges. */
if ((flag_unwind_tables || flag_asynchronous_unwind_tables
|| flag_exceptions || flag_non_call_exceptions)
&& flag_omit_frame_pointer
&& !(target_flags & MASK_ACCUMULATE_OUTGOING_ARGS))
However since this thing is testing only flag_omit_frame_pointer. This
probably won't first with -fno-omit-frame-pointer. Moreover I think it
is safe, since we are basically accumulate_ougoing_args case then.
What makes the test fail on solaris?
Honza
>
> OK?
>
> --
> Mark Mitchell
> CodeSourcery
> mark@codesourcery.com
> (650) 331-3385 x713
>
> 2007-05-07 Mark Mitchell <mark@codesourcery.com>
>
> * gcc.target/i386/sse-10.c: Pass -mno-omit-leaf-frame-pointer.
>
> Index: gcc.target/i386/sse-10.c
> ===================================================================
> --- gcc.target/i386/sse-10.c (revision 124476)
> +++ gcc.target/i386/sse-10.c (working copy)
> @@ -1,6 +1,6 @@
> /* PR 17930 */
> /* { dg-do run { target i?86-*-* x86_64-*-* } } */
> -/* { dg-options "-O1 -msse2 -mfpmath=sse -mno-accumulate-outgoing-args -fno-omit-frame-pointer" } */
> +/* { dg-options "-O1 -msse2 -mfpmath=sse -mno-accumulate-outgoing-args -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" } */
>
> #include "../../gcc.dg/i386-cpuid.h"
>
More information about the Gcc-patches
mailing list