[Bug target/111107] i686-w64-mingw32 does not realign stack when __attribute__((aligned)) or __attribute__((vector_size)) are used
ebotcazou at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Nov 28 22:58:54 GMT 2023
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111107
--- Comment #14 from Eric Botcazou <ebotcazou at gcc dot gnu.org> ---
> I'd say that
>
> config/i386/cygming.h:#define STACK_REALIGN_DEFAULT TARGET_SSE
>
> is a non-working "fix". The appropriate default would be
> -mincoming-stack-boundary=2. MIN_STACK_BOUNDARY should already be 4, so
> that leaves PREFERRED_STACK_BOUNDARY_DEFAULT is the way to go here.
This was a minimal fix to support SSE, but Solaris was indeed more radical:
sol2.h:#undef STACK_REALIGN_DEFAULT
sol2.h:#define STACK_REALIGN_DEFAULT (TARGET_64BIT ? 0 : 1)
so we could just mimic it for Windows.
More information about the Gcc-bugs
mailing list