Index: src/factory.cc |
diff --git a/src/factory.cc b/src/factory.cc |
index 564f821c42875dd1e14e68d0344678b1fe9f8dc0..6abb43a2d6de102125942535877fc74eb59b34b8 100644 |
--- a/src/factory.cc |
+++ b/src/factory.cc |
@@ -962,6 +962,14 @@ Handle<Context> Factory::NewBlockContext(Handle<JSFunction> function, |
return context; |
} |
+Handle<Context> Factory::NewPromiseResolvingFunctionContext(int length) { |
+ DCHECK_GE(length, Context::MIN_CONTEXT_SLOTS); |
+ Handle<FixedArray> array = NewFixedArray(length); |
+ array->set_map_no_write_barrier(*function_context_map()); |
+ Handle<Context> context = Handle<Context>::cast(array); |
+ context->set_extension(*the_hole_value()); |
+ return context; |
+} |
Handle<Struct> Factory::NewStruct(InstanceType type) { |
CALL_HEAP_FUNCTION( |