https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111107
--- Comment #30 from Gabriel Ivăncescu <gabrielopcode at gmail dot com> --- (In reply to LIU Hao from comment #28) > Created attachment 61236 [details] > proposed patch #2 > > It might not be safe to decrease the preferred stack boundary, so let's keep > it as 16, but initialize `ix86_default_incoming_stack_boundary` to 4 bytes > instead. Why would it not be safe? For MinGW specifically, what's not safe about it? The entire Windows stack assumes only 4-byte alignment for i386, because that's what MSVC provides. So interoperability with MSVC code (including Windows DLLs or 3rd party libraries) means that anything that requires stricter alignment *MUST* realign the stack, or else it would break. Therefore it should be completely safe for Windows i386 target.