Title: [158970] branches/safari-537.73-branch/Source/_javascript_Core
Revision
158970
Author
[email protected]
Date
2013-11-08 16:18:33 -0800 (Fri, 08 Nov 2013)

Log Message

Rollout r158882.  <rdar://problem/15426318>

Modified Paths

Diff

Modified: branches/safari-537.73-branch/Source/_javascript_Core/ChangeLog (158969 => 158970)


--- branches/safari-537.73-branch/Source/_javascript_Core/ChangeLog	2013-11-09 00:09:04 UTC (rev 158969)
+++ branches/safari-537.73-branch/Source/_javascript_Core/ChangeLog	2013-11-09 00:18:33 UTC (rev 158970)
@@ -1,3 +1,17 @@
+2013-11-08  Lucas Forschler  <[email protected]>
+
+        Merge r158882
+
+    2013-11-07  Roger Fong  <[email protected]>
+
+            Rollout part of r146669 which caused a performance regression.
+            <rdar://problem/15265457>.
+
+            Rubberstamped by Filip Pizlo.
+
+            * jit/JITStubs.cpp:
+            (JSC::DEFINE_STUB_FUNCTION):
+
 2013-10-28  Lucas Forschler  <[email protected]>
 
         Merge r157830

Modified: branches/safari-537.73-branch/Source/_javascript_Core/jit/JITStubs.cpp (158969 => 158970)


--- branches/safari-537.73-branch/Source/_javascript_Core/jit/JITStubs.cpp	2013-11-09 00:09:04 UTC (rev 158969)
+++ branches/safari-537.73-branch/Source/_javascript_Core/jit/JITStubs.cpp	2013-11-09 00:18:33 UTC (rev 158970)
@@ -1522,8 +1522,10 @@
     stackFrame.args[0].jsValue().put(callFrame, ident, stackFrame.args[2].jsValue(), slot);
     
     if (accessType == static_cast<AccessType>(stubInfo->accessType)) {
-        stubInfo->setSeen();
-        tryCachePutByID(callFrame, codeBlock, STUB_RETURN_ADDRESS, stackFrame.args[0].jsValue(), slot, stubInfo, false);
+        if (!stubInfo->seenOnce()) 
+            stubInfo->setSeen();
+        else
+            tryCachePutByID(callFrame, codeBlock, STUB_RETURN_ADDRESS, stackFrame.args[0].jsValue(), slot, stubInfo, false);
     }
     
     CHECK_FOR_EXCEPTION_AT_END();
@@ -1546,8 +1548,10 @@
     asObject(baseValue)->putDirect(callFrame->vm(), ident, stackFrame.args[2].jsValue(), slot);
     
     if (accessType == static_cast<AccessType>(stubInfo->accessType)) {
-        stubInfo->setSeen();
-        tryCachePutByID(callFrame, codeBlock, STUB_RETURN_ADDRESS, stackFrame.args[0].jsValue(), slot, stubInfo, true);
+        if (!stubInfo->seenOnce()) 
+            stubInfo->setSeen();
+        else
+            tryCachePutByID(callFrame, codeBlock, STUB_RETURN_ADDRESS, stackFrame.args[0].jsValue(), slot, stubInfo, true);
     }
     
     CHECK_FOR_EXCEPTION_AT_END();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to