Title: [120500] trunk/Source/_javascript_Core
Revision
120500
Author
[email protected]
Date
2012-06-15 15:21:44 -0700 (Fri, 15 Jun 2012)

Log Message

DFG should be able to set watchpoints on structure transitions in the
method check prototype chain
https://bugs.webkit.org/show_bug.cgi?id=89058

Adding the same assertion to 32-bit that I added to 64-bit. This change
does not affect correctness but it's a good thing for assertion coverage.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (120499 => 120500)


--- trunk/Source/_javascript_Core/ChangeLog	2012-06-15 22:14:53 UTC (rev 120499)
+++ trunk/Source/_javascript_Core/ChangeLog	2012-06-15 22:21:44 UTC (rev 120500)
@@ -1,3 +1,15 @@
+2012-06-15  Filip Pizlo  <[email protected]>
+
+        DFG should be able to set watchpoints on structure transitions in the
+        method check prototype chain
+        https://bugs.webkit.org/show_bug.cgi?id=89058
+
+        Adding the same assertion to 32-bit that I added to 64-bit. This change
+        does not affect correctness but it's a good thing for assertion coverage.
+
+        * dfg/DFGSpeculativeJIT32_64.cpp:
+        (JSC::DFG::SpeculativeJIT::compile):
+
 2012-06-13  Filip Pizlo  <[email protected]>
 
         DFG should be able to set watchpoints on structure transitions in the

Modified: trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT32_64.cpp (120499 => 120500)


--- trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT32_64.cpp	2012-06-15 22:14:53 UTC (rev 120499)
+++ trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT32_64.cpp	2012-06-15 22:21:44 UTC (rev 120500)
@@ -3441,6 +3441,13 @@
         m_jit.addWeakReference(node.structure());
         node.structure()->addTransitionWatchpoint(speculationWatchpoint());
         
+#if !ASSERT_DISABLED
+        SpeculateCellOperand op1(this, node.child1());
+        JITCompiler::Jump isOK = m_jit.branchPtr(JITCompiler::Equal, JITCompiler::Address(op1.gpr(), JSCell::structureOffset()), TrustedImmPtr(node.structure()));
+        m_jit.breakpoint();
+        isOK.link(&m_jit);
+#endif
+
         noResult(m_compileIndex);
         break;
     }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to