Index: src/ast.cc |
diff --git a/src/ast.cc b/src/ast.cc |
index ab9050daa0eee24e0e78d021e7e46c9b6b062b7f..66d02e561b30851d3a401803724b5ce56f0d3699 100644 |
--- a/src/ast.cc |
+++ b/src/ast.cc |
@@ -997,45 +997,52 @@ CaseClause::CaseClause(Zone* zone, Expression* label, |
entry_id_(id_gen->GetNextId()) {} |
-#define REGULAR_NODE(NodeType) \ |
+#define REGULAR_NODE(NodeType) \ |
void AstConstructionVisitor::Visit##NodeType(NodeType* node) { \ |
- increase_node_count(); \ |
+ increase_node_count(); \ |
} |
-#define REGULAR_NODE_WITH_FEEDBACK_SLOTS(NodeType) \ |
+#define REGULAR_NODE_WITH_FEEDBACK_SLOTS(NodeType) \ |
void AstConstructionVisitor::Visit##NodeType(NodeType* node) { \ |
- increase_node_count(); \ |
- add_slot_node(node); \ |
+ increase_node_count(); \ |
+ add_slot_node(node); \ |
} |
-#define DONT_OPTIMIZE_NODE(NodeType) \ |
+#define DONT_OPTIMIZE_NODE(NodeType) \ |
void AstConstructionVisitor::Visit##NodeType(NodeType* node) { \ |
- increase_node_count(); \ |
- set_dont_optimize_reason(k##NodeType); \ |
- add_flag(kDontSelfOptimize); \ |
+ increase_node_count(); \ |
+ set_dont_crankshaft_reason(k##NodeType); \ |
+ add_flag(kDontSelfOptimize); \ |
} |
-#define DONT_OPTIMIZE_NODE_WITH_FEEDBACK_SLOTS(NodeType) \ |
+#define DONT_OPTIMIZE_NODE_WITH_FEEDBACK_SLOTS(NodeType) \ |
void AstConstructionVisitor::Visit##NodeType(NodeType* node) { \ |
- increase_node_count(); \ |
- add_slot_node(node); \ |
- set_dont_optimize_reason(k##NodeType); \ |
- add_flag(kDontSelfOptimize); \ |
+ increase_node_count(); \ |
+ add_slot_node(node); \ |
+ set_dont_crankshaft_reason(k##NodeType); \ |
+ add_flag(kDontSelfOptimize); \ |
+ } |
+#define DONT_TURBOFAN_NODE(NodeType) \ |
+ void AstConstructionVisitor::Visit##NodeType(NodeType* node) { \ |
+ increase_node_count(); \ |
+ set_dont_crankshaft_reason(k##NodeType); \ |
+ set_dont_turbofan_reason(k##NodeType); \ |
+ add_flag(kDontSelfOptimize); \ |
} |
#define DONT_SELFOPTIMIZE_NODE(NodeType) \ |
void AstConstructionVisitor::Visit##NodeType(NodeType* node) { \ |
- increase_node_count(); \ |
- add_flag(kDontSelfOptimize); \ |
+ increase_node_count(); \ |
+ add_flag(kDontSelfOptimize); \ |
} |
-#define DONT_SELFOPTIMIZE_NODE_WITH_FEEDBACK_SLOTS(NodeType) \ |
+#define DONT_SELFOPTIMIZE_NODE_WITH_FEEDBACK_SLOTS(NodeType) \ |
void AstConstructionVisitor::Visit##NodeType(NodeType* node) { \ |
- increase_node_count(); \ |
- add_slot_node(node); \ |
- add_flag(kDontSelfOptimize); \ |
+ increase_node_count(); \ |
+ add_slot_node(node); \ |
+ add_flag(kDontSelfOptimize); \ |
} |
-#define DONT_CACHE_NODE(NodeType) \ |
+#define DONT_CACHE_NODE(NodeType) \ |
void AstConstructionVisitor::Visit##NodeType(NodeType* node) { \ |
- increase_node_count(); \ |
- set_dont_optimize_reason(k##NodeType); \ |
- add_flag(kDontSelfOptimize); \ |
- add_flag(kDontCache); \ |
+ increase_node_count(); \ |
+ set_dont_crankshaft_reason(k##NodeType); \ |
+ add_flag(kDontSelfOptimize); \ |
+ add_flag(kDontCache); \ |
} |
REGULAR_NODE(VariableDeclaration) |
@@ -1082,15 +1089,17 @@ DONT_OPTIMIZE_NODE(ModulePath) |
DONT_OPTIMIZE_NODE(ModuleUrl) |
DONT_OPTIMIZE_NODE(ModuleStatement) |
DONT_OPTIMIZE_NODE(WithStatement) |
-DONT_OPTIMIZE_NODE(ForOfStatement) |
-DONT_OPTIMIZE_NODE(TryCatchStatement) |
-DONT_OPTIMIZE_NODE(TryFinallyStatement) |
DONT_OPTIMIZE_NODE(DebuggerStatement) |
DONT_OPTIMIZE_NODE(NativeFunctionLiteral) |
DONT_OPTIMIZE_NODE(SuperReference) |
DONT_OPTIMIZE_NODE_WITH_FEEDBACK_SLOTS(Yield) |
+// TODO(turbofan): Remove the dont_turbofan_reason once this list is empty. |
+DONT_TURBOFAN_NODE(ForOfStatement) |
+DONT_TURBOFAN_NODE(TryCatchStatement) |
+DONT_TURBOFAN_NODE(TryFinallyStatement) |
+ |
DONT_SELFOPTIMIZE_NODE(DoWhileStatement) |
DONT_SELFOPTIMIZE_NODE(WhileStatement) |
DONT_SELFOPTIMIZE_NODE(ForStatement) |
@@ -1105,7 +1114,7 @@ void AstConstructionVisitor::VisitCallRuntime(CallRuntime* node) { |
add_slot_node(node); |
if (node->is_jsruntime()) { |
// Don't try to optimize JS runtime calls because we bailout on them. |
- set_dont_optimize_reason(kCallToAJavaScriptRuntimeFunction); |
+ set_dont_crankshaft_reason(kCallToAJavaScriptRuntimeFunction); |
} |
} |