Diff
Modified: trunk/ChangeLog (232718 => 232719)
--- trunk/ChangeLog 2018-06-11 16:32:21 UTC (rev 232718)
+++ trunk/ChangeLog 2018-06-11 16:39:49 UTC (rev 232719)
@@ -1,3 +1,12 @@
+2018-06-11 Michael Saboff <msab...@apple.com>
+
+ _javascript_Core: Disable 32-bit JIT on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=185989
+
+ Reviewed by Mark Lam.
+
+ * Source/cmake/OptionsWin.cmake:
+
2018-06-10 Carlos Garcia Campos <cgar...@igalia.com>
[WPE] Add a MiniBrowser and use it to run WebDriver tests
Modified: trunk/LayoutTests/js/script-tests/regexp-zero-length-alternatives.js (232718 => 232719)
--- trunk/LayoutTests/js/script-tests/regexp-zero-length-alternatives.js 2018-06-11 16:32:21 UTC (rev 232718)
+++ trunk/LayoutTests/js/script-tests/regexp-zero-length-alternatives.js 2018-06-11 16:39:49 UTC (rev 232719)
@@ -229,6 +229,7 @@
shouldBe('s4.match(re31)', '["abab"]');
// Non-capturing two possibly empty non-greedy alternatives non-greedy '*'
+//var re32 = new RegExp(/(?:a*?|b*?)*/);
var re32 = new RegExp(/(?:a*?|b*?)*/);
shouldBe('emptyStr.match(re32)', '[""]');
shouldBe('s1.match(re32)', '[""]');
Modified: trunk/Source/_javascript_Core/ChangeLog (232718 => 232719)
--- trunk/Source/_javascript_Core/ChangeLog 2018-06-11 16:32:21 UTC (rev 232718)
+++ trunk/Source/_javascript_Core/ChangeLog 2018-06-11 16:39:49 UTC (rev 232719)
@@ -1,5 +1,22 @@
2018-06-11 Michael Saboff <msab...@apple.com>
+ _javascript_Core: Disable 32-bit JIT on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=185989
+
+ Reviewed by Mark Lam.
+
+ Fixed the CLOOP so it can work when COMPUTED_GOTOs are not supported.
+
+ * llint/LLIntData.h:
+ (JSC::LLInt::getCodePtr): Used a reinterpret_cast since Opcode could be an int.
+ * llint/LowLevelInterpreter.cpp: Changed the definition of OFFLINE_ASM_GLOBAL_LABEL to not
+ have a case label because these aren't opcodes.
+ * runtime/Options.cpp: Made assembler related Windows conditional code also conditional
+ on the JIT being enabled.
+ (JSC::recomputeDependentOptions):
+
+2018-06-11 Michael Saboff <msab...@apple.com>
+
Test js/regexp-zero-length-alternatives.html fails when RegExpJIT is disabled
https://bugs.webkit.org/show_bug.cgi?id=186477
Modified: trunk/Source/_javascript_Core/llint/LLIntData.h (232718 => 232719)
--- trunk/Source/_javascript_Core/llint/LLIntData.h 2018-06-11 16:32:21 UTC (rev 232718)
+++ trunk/Source/_javascript_Core/llint/LLIntData.h 2018-06-11 16:39:49 UTC (rev 232719)
@@ -83,7 +83,7 @@
template<PtrTag tag>
ALWAYS_INLINE MacroAssemblerCodePtr<tag> getCodePtr(OpcodeID opcodeID)
{
- void* address = getOpcode(opcodeID);
+ void* address = reinterpret_cast<void*>(getOpcode(opcodeID));
address = retagCodePtr<BytecodePtrTag, tag>(address);
return MacroAssemblerCodePtr<tag>::createFromExecutableAddress(address);
}
Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter.cpp (232718 => 232719)
--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter.cpp 2018-06-11 16:32:21 UTC (rev 232718)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter.cpp 2018-06-11 16:39:49 UTC (rev 232719)
@@ -106,7 +106,7 @@
#define OFFLINE_ASM_OPCODE_LABEL(opcode) DEFINE_OPCODE(opcode) USE_LABEL(opcode); TRACE_OPCODE(opcode);
-#define OFFLINE_ASM_GLOBAL_LABEL(label) OFFLINE_ASM_GLUE_LABEL(label)
+#define OFFLINE_ASM_GLOBAL_LABEL(label) label: USE_LABEL(label);
#if ENABLE(COMPUTED_GOTO_OPCODES)
#define OFFLINE_ASM_GLUE_LABEL(label) label: USE_LABEL(label);
Modified: trunk/Source/_javascript_Core/runtime/Options.cpp (232718 => 232719)
--- trunk/Source/_javascript_Core/runtime/Options.cpp 2018-06-11 16:32:21 UTC (rev 232718)
+++ trunk/Source/_javascript_Core/runtime/Options.cpp 2018-06-11 16:39:49 UTC (rev 232719)
@@ -48,7 +48,7 @@
#include <crt_externs.h>
#endif
-#if OS(WINDOWS)
+#if OS(WINDOWS) && ENABLE(JIT)
#include "MacroAssembler.h"
#endif
@@ -392,7 +392,7 @@
Options::useConcurrentGC() = false;
#endif
-#if OS(WINDOWS) && CPU(X86)
+#if OS(WINDOWS) && ENABLE(JIT) && CPU(X86)
// Disable JIT on Windows if SSE2 is not present
if (!MacroAssemblerX86::supportsFloatingPoint())
Options::useJIT() = false;
Modified: trunk/Source/WTF/ChangeLog (232718 => 232719)
--- trunk/Source/WTF/ChangeLog 2018-06-11 16:32:21 UTC (rev 232718)
+++ trunk/Source/WTF/ChangeLog 2018-06-11 16:39:49 UTC (rev 232719)
@@ -1,3 +1,14 @@
+2018-06-11 Michael Saboff <msab...@apple.com>
+
+ _javascript_Core: Disable 32-bit JIT on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=185989
+
+ Reviewed by Mark Lam.
+
+ Fixed the CLOOP so it can work when COMPUTED_GOTOs are not supported.
+
+ * wtf/Platform.h:
+
2018-06-09 Dan Bernstein <m...@apple.com>
[Xcode] Clean up and modernize some build setting definitions
Modified: trunk/Source/WTF/wtf/Platform.h (232718 => 232719)
--- trunk/Source/WTF/wtf/Platform.h 2018-06-11 16:32:21 UTC (rev 232718)
+++ trunk/Source/WTF/wtf/Platform.h 2018-06-11 16:39:49 UTC (rev 232719)
@@ -732,6 +732,12 @@
#define ENABLE_JIT 0
#endif
+/* Disable the JIT for 32-bit Windows builds. */
+#if USE(JSVALUE32_64) && OS(WINDOWS)
+#undef ENABLE_JIT
+#define ENABLE_JIT 0
+#endif
+
/* The FTL *does not* work on 32-bit platforms. Disable it even if someone asked us to enable it. */
#if USE(JSVALUE32_64)
#undef ENABLE_FTL_JIT
Modified: trunk/Source/cmake/OptionsWin.cmake (232718 => 232719)
--- trunk/Source/cmake/OptionsWin.cmake 2018-06-11 16:32:21 UTC (rev 232718)
+++ trunk/Source/cmake/OptionsWin.cmake 2018-06-11 16:39:49 UTC (rev 232719)
@@ -45,6 +45,9 @@
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_INPUT_TYPE_MONTH PUBLIC OFF)
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_INPUT_TYPE_TIME PUBLIC OFF)
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_INPUT_TYPE_WEEK PUBLIC OFF)
+if (${WTF_CPU_X86})
+ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_JIT PUBLIC OFF)
+endif ()
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LEGACY_CSS_VENDOR_PREFIXES PUBLIC ON)
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MATHML PUBLIC ON)
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MEDIA_CONTROLS_SCRIPT PUBLIC ON)