Index: src/bootstrapper.cc |
diff --git a/src/bootstrapper.cc b/src/bootstrapper.cc |
index e20baf0ec8e6975961807fb487cc88df78825f90..95cf9b2e147cf934fd588a22c3f69b4589be6c73 100644 |
--- a/src/bootstrapper.cc |
+++ b/src/bootstrapper.cc |
@@ -1843,6 +1843,34 @@ void Genesis::InitializeGlobal(Handle<JSGlobalObject> global_object, |
to_primitive->shared()->set_length(1); |
} |
+ { |
+ Handle<Code> code = handle( |
+ isolate->builtins()->builtin(Builtins::kPromiseGetCapabilitiesExecutor), |
+ isolate); |
gsathya
2016/12/21 01:02:33
Handle<Code> code = isolate->builtins()->PromiseGe
caitp
2016/12/21 21:01:13
Done.
|
+ Handle<SharedFunctionInfo> info = |
+ factory->NewSharedFunctionInfo(factory->empty_string(), code, true); |
+ info->SetConstructStub(*isolate->builtins()->JSBuiltinsConstructStub()); |
+ info->set_instance_class_name(isolate->heap()->Object_string()); |
+ info->set_internal_formal_parameter_count(2); |
+ info->set_length(2); |
+ native_context()->set_promise_get_capabilities_executor_shared_fun(*info); |
+ |
+ // %new_internal_promise_capability(debugEvent) |
+ Handle<JSFunction> new_internal_promise_capability = |
+ SimpleCreateFunction(isolate, factory->empty_string(), |
+ Builtins::kNewInternalPromiseCapability, 1, false); |
+ InstallWithIntrinsicDefaultProto( |
+ isolate, new_internal_promise_capability, |
+ Context::NEW_INTERNAL_PROMISE_CAPABILITY_INDEX); |
+ |
+ // %new_promise_capability(C, debugEvent) |
+ Handle<JSFunction> new_promise_capability = |
+ SimpleCreateFunction(isolate, factory->empty_string(), |
+ Builtins::kNewPromiseCapability, 2, false); |
+ InstallWithIntrinsicDefaultProto(isolate, new_promise_capability, |
+ Context::NEW_PROMISE_CAPABILITY_INDEX); |
+ } |
+ |
{ // -- P r o m i s e |
// Set catch prediction |
Handle<Code> promise_code = isolate->builtins()->PromiseConstructor(); |