Title: [283344] trunk/Source/_javascript_Core
Revision
283344
Author
sbar...@apple.com
Date
2021-09-30 16:06:22 -0700 (Thu, 30 Sep 2021)

Log Message

Regressions (r283288): [ macOS Debug ] webgl/2.0.0/conformance/state/gl-object-get-calls.html is timing out
https://bugs.webkit.org/show_bug.cgi?id=231024
<rdar://problem/83723856>

Reviewed by Mark Lam.

Speed up our debug assert by not using a probe.

* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (283343 => 283344)


--- trunk/Source/_javascript_Core/ChangeLog	2021-09-30 22:58:54 UTC (rev 283343)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-09-30 23:06:22 UTC (rev 283344)
@@ -1,5 +1,18 @@
 2021-09-30  Saam Barati  <sbar...@apple.com>
 
+        Regressions (r283288): [ macOS Debug ] webgl/2.0.0/conformance/state/gl-object-get-calls.html is timing out
+        https://bugs.webkit.org/show_bug.cgi?id=231024
+        <rdar://problem/83723856>
+
+        Reviewed by Mark Lam.
+
+        Speed up our debug assert by not using a probe.
+
+        * jit/JIT.cpp:
+        (JSC::JIT::privateCompileMainPass):
+
+2021-09-30  Saam Barati  <sbar...@apple.com>
+
         The DFG/FTL need to be aware that Proxy's can produce "function" for typeof and might be callable
         https://bugs.webkit.org/show_bug.cgi?id=230804
         <rdar://problem/83543951>

Modified: trunk/Source/_javascript_Core/jit/JIT.cpp (283343 => 283344)


--- trunk/Source/_javascript_Core/jit/JIT.cpp	2021-09-30 22:58:54 UTC (rev 283343)
+++ trunk/Source/_javascript_Core/jit/JIT.cpp	2021-09-30 23:06:22 UTC (rev 283344)
@@ -272,13 +272,18 @@
 
 #if ASSERT_ENABLED
         if (opcodeID != op_catch) {
-            probeDebug([=] (Probe::Context& ctx) {
-                CodeBlock* codeBlock = ctx.fp<CallFrame*>()->codeBlock();
-                auto* constantPool = ctx.gpr<void*>(s_constantsGPR);
-                RELEASE_ASSERT(codeBlock->baselineJITConstantPool() == constantPool);
-                auto* metadata = ctx.gpr<void*>(s_metadataGPR);
-                RELEASE_ASSERT(codeBlock->metadataTable() == metadata);
-            });
+            loadPtr(addressFor(CallFrameSlot::codeBlock), regT0);
+            loadPtr(Address(regT0, CodeBlock::offsetOfMetadataTable()), regT1);
+            loadPtr(Address(regT0, CodeBlock::offsetOfJITData()), regT0);
+            loadPtr(Address(regT0, CodeBlock::JITData::offsetOfJITConstantPool()), regT2);
+
+            auto metadataOK = branchPtr(Equal, regT1, s_metadataGPR);
+            breakpoint();
+            metadataOK.link(this);
+
+            auto constantsOK = branchPtr(Equal, regT2, s_constantsGPR);
+            breakpoint();
+            constantsOK.link(this);
         }
 #endif
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to