Enable DFG on MIPS
authorguijemont@igalia.com <guijemont@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 8 Apr 2019 12:32:57 +0000 (12:32 +0000)
committerguijemont@igalia.com <guijemont@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 8 Apr 2019 12:32:57 +0000 (12:32 +0000)
https://bugs.webkit.org/show_bug.cgi?id=196689

Reviewed by Žan Doberšek.

Since the bytecode change, we enabled the baseline JIT on mips in
r240432, but DFG is still missing. With this change, all tests are
passing on a ci20 board.

Source/JavaScriptCore:

* jit/RegisterSet.cpp:
(JSC::RegisterSet::calleeSaveRegisters):
Added s0, which is used in llint.

Source/WTF:

* wtf/Platform.h: Enable DFG on MIPS by default.

Tools:

* Scripts/run-jsc-stress-tests: Enable DFG tests on MIPS.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@244000 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/jit/RegisterSet.cpp
Source/WTF/ChangeLog
Source/WTF/wtf/Platform.h
Tools/ChangeLog
Tools/Scripts/run-jsc-stress-tests

index 8a67cc8..2ba9b31 100644 (file)
@@ -1,3 +1,18 @@
+2019-04-08  Guillaume Emont  <guijemont@igalia.com>
+
+        Enable DFG on MIPS
+        https://bugs.webkit.org/show_bug.cgi?id=196689
+
+        Reviewed by Žan Doberšek.
+
+        Since the bytecode change, we enabled the baseline JIT on mips in
+        r240432, but DFG is still missing. With this change, all tests are
+        passing on a ci20 board.
+
+        * jit/RegisterSet.cpp:
+        (JSC::RegisterSet::calleeSaveRegisters):
+        Added s0, which is used in llint.
+
 2019-04-08  Xan Lopez  <xan@igalia.com>
 
         [CMake] Detect SSE2 at compile time
index 79de8c4..ed294cb 100644 (file)
@@ -154,6 +154,7 @@ RegisterSet RegisterSet::calleeSaveRegisters()
         reg = static_cast<ARM64Registers::FPRegisterID>(reg + 1))
         result.set(reg);
 #elif CPU(MIPS)
+    result.set(MIPSRegisters::s0);
 #else
     UNREACHABLE_FOR_PLATFORM();
 #endif
index 02d0b75..d043854 100644 (file)
@@ -1,3 +1,16 @@
+2019-04-08  Guillaume Emont  <guijemont@igalia.com>
+
+        Enable DFG on MIPS
+        https://bugs.webkit.org/show_bug.cgi?id=196689
+
+        Reviewed by Žan Doberšek.
+
+        Since the bytecode change, we enabled the baseline JIT on mips in
+        r240432, but DFG is still missing. With this change, all tests are
+        passing on a ci20 board.
+
+        * wtf/Platform.h: Enable DFG on MIPS by default.
+
 2019-04-06  Ryosuke Niwa  <rniwa@webkit.org>
 
         Added tests for WeakHashSet::computesEmpty and WeakHashSet::computeSize
index 6acb1cb..03431df 100644 (file)
 #endif
 
 #if USE(JSVALUE32_64)
-#if CPU(ARM_THUMB2) && OS(LINUX)
-/* On ARMv7/Linux the JIT is enabled unless explicitly disabled. */
+#if (CPU(ARM_THUMB2) || CPU(MIPS)) && OS(LINUX)
+/* On ARMv7 and MIPS on Linux the JIT is enabled unless explicitly disabled. */
 #if !defined(ENABLE_JIT)
 #define ENABLE_JIT 1
 #endif
-#elif CPU(MIPS) && OS(LINUX)
-/* Same on MIPS/Linux, but DFG is disabled for now. */
-#if !defined(ENABLE_JIT)
-#define ENABLE_JIT 1
-#endif
-#undef ENABLE_DFG_JIT
-#define ENABLE_DFG_JIT 0
 #else
 /* Disable JIT and force C_LOOP on all other 32bit architectures. */
 #undef ENABLE_JIT
index 45ea427..33076e0 100644 (file)
@@ -1,3 +1,16 @@
+2019-04-08  Guillaume Emont  <guijemont@igalia.com>
+
+        Enable DFG on MIPS
+        https://bugs.webkit.org/show_bug.cgi?id=196689
+
+        Reviewed by Žan Doberšek.
+
+        Since the bytecode change, we enabled the baseline JIT on mips in
+        r240432, but DFG is still missing. With this change, all tests are
+        passing on a ci20 board.
+
+        * Scripts/run-jsc-stress-tests: Enable DFG tests on MIPS.
+
 2019-04-08  Philippe Normand  <pnormand@igalia.com>
 
         [Flatpak] Second run update-webkitwpe-flatpak fails
index 8dd05f8..2abbb0b 100755 (executable)
@@ -449,8 +449,8 @@ $hostOS = determineOS unless $hostOS
 $architecture = determineArchitecture unless $architecture
 $isFTLPlatform = !($architecture == "x86" || $architecture == "arm" || $architecture == "mips" || $hostOS == "windows")
 
-if ["mips", "x86"].include?($architecture)
-    # The JIT is temporarily disabled on these platforms since
+if $architecture == "x86"
+    # The JIT is temporarily disabled on this platform since
     # https://trac.webkit.org/changeset/237547
     $jitTests = false
 end