| Index: src/compiler/bytecode-graph-builder.cc
|
| diff --git a/src/compiler/bytecode-graph-builder.cc b/src/compiler/bytecode-graph-builder.cc
|
| index 3e8007c5e70e7db5ea9afadaca531ac60b6346d8..47a22df239854b4ef2568736d4c8bcaa87a2a32a 100644
|
| --- a/src/compiler/bytecode-graph-builder.cc
|
| +++ b/src/compiler/bytecode-graph-builder.cc
|
| @@ -643,7 +643,20 @@ void BytecodeGraphBuilder::VisitPopContext(
|
|
|
| void BytecodeGraphBuilder::VisitCreateClosure(
|
| const interpreter::BytecodeArrayIterator& iterator) {
|
| - UNIMPLEMENTED();
|
| + Handle<SharedFunctionInfo> shared_info =
|
| + Handle<SharedFunctionInfo>::cast(iterator.GetConstantForIndexOperand(0));
|
| + PretenureFlag tenured =
|
| + iterator.GetImmediateOperand(1) ? TENURED : NOT_TENURED;
|
| + const Operator* op = javascript()->CreateClosure(shared_info, tenured);
|
| + Node* closure = NewNode(op);
|
| + AddEmptyFrameStateInputs(closure);
|
| + environment()->BindAccumulator(closure);
|
| +}
|
| +
|
| +
|
| +void BytecodeGraphBuilder::VisitCreateClosureWide(
|
| + const interpreter::BytecodeArrayIterator& iterator) {
|
| + VisitCreateClosure(iterator);
|
| }
|
|
|
|
|
|
|