From ca1ac7634f00b845ded92b5fabfa0d1c53197b01 Mon Sep 17 00:00:00 2001 From: Peter Varga Date: Tue, 25 Jun 2013 15:53:03 +0200 Subject: [V8] Fix stack alignment corruption for MinGW32 build BUG: https://bugreports.qt-project.org/browse/QTBUG-31396 Change-Id: If9b236f24ed82f4b6b19a2af938b422c68e5eab8 Reviewed-by: Thiago Macieira Reviewed-by: Lars Knoll (cherry picked from commit 91f936a862644c7ca7a1762ad05cc91d263b808e) Reviewed-by: Peter Varga Reviewed-by: Liang Qi --- src/3rdparty/v8/src/platform-win32.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/3rdparty/v8/src/platform-win32.cc b/src/3rdparty/v8/src/platform-win32.cc index 76e35f5..ae9ab2a 100644 --- a/src/3rdparty/v8/src/platform-win32.cc +++ b/src/3rdparty/v8/src/platform-win32.cc @@ -1523,9 +1523,12 @@ double OS::nan_value() { int OS::ActivationFrameAlignment() { #ifdef _WIN64 return 16; // Windows 64-bit ABI requires the stack to be 16-byte aligned. -#else - return 8; // Floating-point math runs faster with 8-byte alignment. +#elif defined(__MINGW32__) + // With gcc 4.4 the tree vectorization optimizer can generate code + // that requires 16 byte alignment such as movdqa on x86. + return 16; #endif + return 8; // Floating-point math runs faster with 8-byte alignment. } -- cgit v1.2.3