This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Qemu-devel] gcc auto-omit-frame-pointer vs msvc longjmp
- From: Richard Henderson <rth at twiddle dot net>
- To: Kai Tietz <ktietz70 at googlemail dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Mon, 24 Oct 2011 13:07:52 -0700
- Subject: Re: [Qemu-devel] gcc auto-omit-frame-pointer vs msvc longjmp
- References: <4E9BB180.6080506@mc.net> <4E9C0497.2000605@siriusit.co.uk> <4E9C3703.3040109@mc.net> <4E9C645A.5060200@twiddle.net> <4E9C9C08.20001@mc.net> <CAEwic4Yw0nc9yij+SGMdXMy2R11FyXVWQ4TChczQsNGuVFqkAQ@mail.gmail.com> <4E9CAACE.4070804@mc.net> <CAEwic4aADQUtZOmjAYVVrS1cBU=uRNjwAV49f+GtPtro664JDw@mail.gmail.com> <4E9F3BB4.3050604@mc.net> <CA+BR0wxgvJ8=u5YtZRj7wSq=y6tafSFCHWV6-Zv3hsNbq3q6ZA@mail.gmail.com> <CAEwic4ZJfwJBUgA2=Vwh3GBzCfqkTavYvXrZO7aicy=snVkQzg@mail.gmail.com> <CAEwic4Zey2f6fzSOAiGtyxuBnN2zSPwQCcDdTDdL8-DOiqC2GQ@mail.gmail.com> <4EA57A26.1050806@mc.net> <CAEwic4bUxi6io6wRWvSGwqs98STh0vrMPDWb9Ay97i-ME+XeyA@mail.gmail.com>
On 10/24/2011 09:18 AM, Kai Tietz wrote:
> A possible patch for 4.6 gcc versions I attached to this mail.
...
> +/* For 32-bit Windows we need valid frame-pointer for function using
> + setjmp. */
> +#define SUBTARGET_SETJMP_NEED_FRAME_POINTER \
> + (!TARGET_64BIT && cfun->calls_setjmp)
> +
> Index: i386.c
> ===================================================================
> --- i386.c (revision 180393)
> +++ i386.c (working copy)
> @@ -8741,6 +8741,12 @@
> if (SUBTARGET_FRAME_POINTER_REQUIRED)
> return true;
>
> +#ifdef SUBTARGET_SETJMP_NEED_FRAME_POINTER
> + /* For older 32-bit runtimes setjmp requires valid frame-pointer. */
> + if (SUBTARGET_SETJMP_NEED_FRAME_POINTER)
> + return true;
> +#endif
Why not just use SUBTARGET_FRAME_POINTER_REQUIRED here?
r~