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();