Title: [159074] trunk/Source/_javascript_Core
- Revision
- 159074
- Author
- fpi...@apple.com
- Date
- 2013-11-11 15:01:53 -0800 (Mon, 11 Nov 2013)
Log Message
Remove ConstantFoldingPhase's weirdo compile-time optimization
https://bugs.webkit.org/show_bug.cgi?id=124169
Reviewed by Mark Hahnenberg.
It turns out that this compile-time optimization doesn't optimize compile times
anymore. Kill it with fire.
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (159073 => 159074)
--- trunk/Source/_javascript_Core/ChangeLog 2013-11-11 22:47:29 UTC (rev 159073)
+++ trunk/Source/_javascript_Core/ChangeLog 2013-11-11 23:01:53 UTC (rev 159074)
@@ -1,5 +1,18 @@
2013-11-11 Filip Pizlo <fpi...@apple.com>
+ Remove ConstantFoldingPhase's weirdo compile-time optimization
+ https://bugs.webkit.org/show_bug.cgi?id=124169
+
+ Reviewed by Mark Hahnenberg.
+
+ It turns out that this compile-time optimization doesn't optimize compile times
+ anymore. Kill it with fire.
+
+ * dfg/DFGConstantFoldingPhase.cpp:
+ (JSC::DFG::ConstantFoldingPhase::foldConstants):
+
+2013-11-11 Filip Pizlo <fpi...@apple.com>
+
Make bytecode dumping use the right opcode names for inc/dec.
Rubber stamped by Mark Hahnenberg.
Modified: trunk/Source/_javascript_Core/dfg/DFGConstantFoldingPhase.cpp (159073 => 159074)
--- trunk/Source/_javascript_Core/dfg/DFGConstantFoldingPhase.cpp 2013-11-11 22:47:29 UTC (rev 159073)
+++ trunk/Source/_javascript_Core/dfg/DFGConstantFoldingPhase.cpp 2013-11-11 23:01:53 UTC (rev 159074)
@@ -349,37 +349,9 @@
CodeOrigin codeOrigin = node->codeOrigin;
AdjacencyList children = node->children;
- if (node->op() == GetLocal) {
- // GetLocals without a Phi child are guaranteed dead. We don't have to
- // do anything about them.
- if (!node->child1())
- continue;
-
- if (m_graph.m_form != LoadStore) {
- VariableAccessData* variable = node->variableAccessData();
- Node* phi = node->child1().node();
- if (phi->op() == Phi
- && block->variablesAtHead.operand(variable->local()) == phi
- && block->variablesAtTail.operand(variable->local()) == node) {
-
- // Keep the graph threaded for easy cases. This is improves compile
- // times. It would be correct to just dethread here.
-
- m_graph.convertToConstant(node, value);
- Node* phantom = m_insertionSet.insertNode(
- indexInBlock, SpecNone, PhantomLocal, codeOrigin,
- OpInfo(variable), Edge(phi));
- block->variablesAtHead.operand(variable->local()) = phantom;
- block->variablesAtTail.operand(variable->local()) = phantom;
-
- changed = true;
-
- continue;
- }
-
- m_graph.dethread();
- }
- } else
+ if (node->op() == GetLocal)
+ m_graph.dethread();
+ else
ASSERT(!node->hasVariableAccessData(m_graph));
m_graph.convertToConstant(node, value);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes