Index: src/compiler/js-operator.cc |
diff --git a/src/compiler/js-operator.cc b/src/compiler/js-operator.cc |
index e7de5ee585332aec3498989692fb6def3fbfcafa..a364dac38e557c2987187ebb69dc9945afe83949 100644 |
--- a/src/compiler/js-operator.cc |
+++ b/src/compiler/js-operator.cc |
@@ -474,9 +474,7 @@ const CreateClosureParameters& CreateClosureParametersOf(const Operator* op) { |
V(StackCheck, Operator::kNoProperties, 0, 0) \ |
V(CreateFunctionContext, Operator::kNoProperties, 1, 1) \ |
V(CreateWithContext, Operator::kNoProperties, 2, 1) \ |
- V(CreateBlockContext, Operator::kNoProperties, 2, 1) \ |
- V(CreateModuleContext, Operator::kNoProperties, 2, 1) \ |
- V(CreateScriptContext, Operator::kNoProperties, 2, 1) |
+ V(CreateModuleContext, Operator::kNoProperties, 2, 1) |
#define CACHED_OP_LIST_WITH_LANGUAGE_MODE(V) \ |
@@ -785,6 +783,28 @@ const Operator* JSOperatorBuilder::CreateCatchContext( |
name); // parameter |
} |
+ |
+const Operator* JSOperatorBuilder::CreateBlockContext( |
+ const Handle<ScopeInfo>& scpope_info) { |
+ return new (zone()) Operator1<Handle<ScopeInfo>, Handle<ScopeInfo>::equal_to, |
+ Handle<ScopeInfo>::hash>( // -- |
+ IrOpcode::kJSCreateBlockContext, Operator::kNoProperties, // opcode |
+ "JSCreateBlockContext", // name |
+ 1, 1, 1, 1, 1, 2, // counts |
+ scpope_info); // parameter |
+} |
+ |
+ |
+const Operator* JSOperatorBuilder::CreateScriptContext( |
+ const Handle<ScopeInfo>& scpope_info) { |
+ return new (zone()) Operator1<Handle<ScopeInfo>, Handle<ScopeInfo>::equal_to, |
+ Handle<ScopeInfo>::hash>( // -- |
+ IrOpcode::kJSCreateScriptContext, Operator::kNoProperties, // opcode |
+ "JSCreateScriptContext", // name |
+ 1, 1, 1, 1, 1, 2, // counts |
+ scpope_info); // parameter |
+} |
+ |
} // namespace compiler |
} // namespace internal |
} // namespace v8 |