Index: src/compiler/ast-graph-builder.cc |
diff --git a/src/compiler/ast-graph-builder.cc b/src/compiler/ast-graph-builder.cc |
index d19b54c4004735af574a18059ef63be01f6d814f..d0880329cba9066e84f09874d31317105f702d50 100644 |
--- a/src/compiler/ast-graph-builder.cc |
+++ b/src/compiler/ast-graph-builder.cc |
@@ -576,6 +576,11 @@ void AstGraphBuilder::CreateGraphBody(bool stack_check) { |
// Build the arguments object if it is used. |
BuildArgumentsObject(scope->arguments()); |
+ // Build rest arguments array if it is used. |
+ int rest_index; |
+ Variable* rest_parameter = scope->rest_parameter(&rest_index); |
+ BuildRestArgumentsArray(rest_parameter, rest_index); |
+ |
// Build assignment to {.this_function} variable if it is used. |
BuildThisFunctionVariable(scope->this_function_var()); |
@@ -3221,6 +3226,15 @@ Node* AstGraphBuilder::BuildArgumentsObject(Variable* arguments) { |
} |
+Node* AstGraphBuilder::BuildRestArgumentsArray(Variable* rest, int index) { |
+ if (rest == NULL) return NULL; |
+ |
+ // TODO(mvstanton): Handle rest arguments. |
+ SetStackOverflow(); |
+ return jsgraph()->UndefinedConstant(); |
+} |
+ |
+ |
Node* AstGraphBuilder::BuildThisFunctionVariable(Variable* this_function_var) { |
if (this_function_var == nullptr) return nullptr; |