This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch i386]: Disable red zone for w64
- From: Kai Tietz <Kai dot Tietz at onevision dot com>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Wed, 11 Jun 2008 11:56:01 +0200
- Subject: Re: [patch i386]: Disable red zone for w64
Hakub,
Jakub Jelinek <jakub@redhat.com> wrote on 11.06.2008 11:50:27:
> On Wed, Jun 11, 2008 at 11:35:03AM +0200, Kai Tietz wrote:
> > 2008-06-11 Kai Tietz <kai.tietz@onevision.com>
> >
> > * config/i386/i386.c (ix86_compute_frame_layout): Disable
> red zone for
> > w64 abi.
> > (ix86_expand_prologue): Likewise.
> > (ix86_force_to_memory): Likewise.
> > (ix86_free_from_memory): Likewise.
> >
> > Tested on x86_64-pc-mingw32 without seeing any regressions.
> > Ok for apply to trunk?
>
> This is wrong, you are compile time punishing all i?86 targets.
> IMHO you should just target_flags |= MASK_NO_RED_ZONE; in
> override_options for the M$ ABI.
Where do you see this? I can't follow that this patch forces all i?86
targets?
First we have to support the x86_64->w64 calling convention switch.
Therefore your suggested approach won't work at all. Second the macro
TARGET_64BIT_MS_ABI checks for TARGET_64BIT and for the used calling
convention. Please read the code.
Kai
| (\_/) This is Bunny. Copy and paste Bunny
| (='.'=) into your signature to help him gain
| (")_(") world domination.