Title: [157964] branches/safari-537.73-branch/Source/_javascript_Core/dfg
- Revision
- 157964
- Author
- [email protected]
- Date
- 2013-10-24 17:06:57 -0700 (Thu, 24 Oct 2013)
Log Message
Merge fix for <rdar://problem/15109401>
Modified Paths
Diff
Modified: branches/safari-537.73-branch/Source/_javascript_Core/dfg/DFGCSEPhase.cpp (157963 => 157964)
--- branches/safari-537.73-branch/Source/_javascript_Core/dfg/DFGCSEPhase.cpp 2013-10-25 00:02:58 UTC (rev 157963)
+++ branches/safari-537.73-branch/Source/_javascript_Core/dfg/DFGCSEPhase.cpp 2013-10-25 00:06:57 UTC (rev 157964)
@@ -254,9 +254,11 @@
break;
}
case PutScopedVar: {
- if (node->child2() == registers && node->varNumber() == varNumber)
+ if (node->varNumber() != varNumber)
+ break;
+ if (node->child2() == registers)
return node->child3().node();
- break;
+ return 0;
}
case SetLocal: {
VariableAccessData* variableAccessData = node->variableAccessData();
@@ -327,9 +329,11 @@
Node* node = m_currentBlock->at(i);
switch (node->op()) {
case PutScopedVar: {
- if (node->child1() == scope && node->child2() == registers && node->varNumber() == varNumber)
+ if (node->varNumber() != varNumber)
+ break;
+ if (node->child1() == scope && node->child2() == registers)
return node;
- break;
+ return 0;
}
case GetScopedVar: {
Modified: branches/safari-537.73-branch/Source/_javascript_Core/dfg/DFGFixupPhase.cpp (157963 => 157964)
--- branches/safari-537.73-branch/Source/_javascript_Core/dfg/DFGFixupPhase.cpp 2013-10-25 00:02:58 UTC (rev 157963)
+++ branches/safari-537.73-branch/Source/_javascript_Core/dfg/DFGFixupPhase.cpp 2013-10-25 00:06:57 UTC (rev 157964)
@@ -120,6 +120,7 @@
case ValueToInt32: {
if (node->child1()->shouldSpeculateInteger()) {
setUseKindAndUnboxIfProfitable<Int32Use>(node->child1());
+ node->setOpAndDefaultFlags(Identity);
break;
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes