--- webkitgtk-2.4.11/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h.orig 2016-11-10 19:20:32 +0300 +++ webkitgtk-2.4.11/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h 2016-11-10 19:33:29 +0300 @@ -1542,7 +1542,8 @@ #if OS(MAC_OS_X) // All X86 Macs are guaranteed to support at least SSE2, - static bool isSSE2Present() + //static + bool isSSE2Present() { return true; } @@ -1555,7 +1556,8 @@ NoSSE2 }; - static bool isSSE2Present() + //static + bool isSSE2Present() { if (s_sse2CheckState == NotCheckedSSE2) { // Default the flags value to zero; if the compiler is @@ -1595,7 +1597,8 @@ // On x86-64 we should never be checking for SSE2 in a non-debug build, // but non debug add this method to keep the asserts above happy. - static bool isSSE2Present() + //static + bool isSSE2Present() { return true; } --- webkitgtk-2.4.11/Source/JavaScriptCore/runtime/VM.cpp.orig 2016-11-10 16:39:54 +0300 +++ webkitgtk-2.4.11/Source/JavaScriptCore/runtime/VM.cpp 2016-11-10 19:37:54 +0300 @@ -123,6 +123,9 @@ // just checks for ENABLE(JIT) or ENABLE(YARR_JIT) with this premise in mind. #if ENABLE(ASSEMBLER) + +extern bool isSSE2Present(); //FIXME: now made non-static in Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h + static bool enableAssembler(ExecutableAllocator& executableAllocator) { if (!Options::useJIT() && !Options::useRegExpJIT()) @@ -134,6 +137,9 @@ return false; } + if (!isSSE2Present()) + return false; + #if USE(CF) #if COMPILER(GCC) && !COMPILER(CLANG) // FIXME: remove this once the EWS have been upgraded to LLVM.