Title: [226616] trunk/Source/_javascript_Core
Revision
226616
Author
[email protected]
Date
2018-01-08 23:17:06 -0800 (Mon, 08 Jan 2018)

Log Message

REGRESSION(r225913): about 30 JSC test failures on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=181162
<rdar://problem/36261349>

Unreviewed follow-up to r226298. Enable the fast case in
DFG::SpeculativeJIT::compileArraySlice() for any 64-bit platform,
assuming in good faith that enough GP registers are available on any
such configuration. The accompanying comment is adjusted to describe
this assumption.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileArraySlice):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (226615 => 226616)


--- trunk/Source/_javascript_Core/ChangeLog	2018-01-09 07:10:36 UTC (rev 226615)
+++ trunk/Source/_javascript_Core/ChangeLog	2018-01-09 07:17:06 UTC (rev 226616)
@@ -1,3 +1,18 @@
+2018-01-08  Zan Dobersek  <[email protected]>
+
+        REGRESSION(r225913): about 30 JSC test failures on ARMv7
+        https://bugs.webkit.org/show_bug.cgi?id=181162
+        <rdar://problem/36261349>
+
+        Unreviewed follow-up to r226298. Enable the fast case in
+        DFG::SpeculativeJIT::compileArraySlice() for any 64-bit platform,
+        assuming in good faith that enough GP registers are available on any
+        such configuration. The accompanying comment is adjusted to describe
+        this assumption.
+
+        * dfg/DFGSpeculativeJIT.cpp:
+        (JSC::DFG::SpeculativeJIT::compileArraySlice):
+
 2018-01-08  JF Bastien  <[email protected]>
 
         WebAssembly: mask indexed accesses to Table

Modified: trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp (226615 => 226616)


--- trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp	2018-01-09 07:10:36 UTC (rev 226615)
+++ trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp	2018-01-09 07:17:06 UTC (rev 226616)
@@ -7639,8 +7639,9 @@
 
         MacroAssembler::JumpList slowCases;
         m_jit.move(TrustedImmPtr(0), storageResultGPR);
-        // X86 only has 6 GP registers, which is not enough for the fast case here. At least without custom code, which is not currently worth the extra code maintenance.
-        if (isARM64() || isX86_64()) {
+        // Enable the fast case on 64-bit platforms, where a sufficient amount of GP registers should be available.
+        // Other platforms could support the same approach with custom code, but that is not currently worth the extra code maintenance.
+        if (is64Bit()) {
             GPRTemporary scratch(this);
             GPRTemporary scratch2(this);
             GPRTemporary indexingMask(this);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to