| Index: src/builtins/builtins-promise.h
|
| diff --git a/src/builtins/builtins-promise.h b/src/builtins/builtins-promise.h
|
| deleted file mode 100644
|
| index a03132d6a6ecfd4108abbd5deee810dcfa4b3034..0000000000000000000000000000000000000000
|
| --- a/src/builtins/builtins-promise.h
|
| +++ /dev/null
|
| @@ -1,145 +0,0 @@
|
| -// Copyright 2016 the V8 project authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef V8_BUILTINS_BUILTINS_PROMISE_H_
|
| -#define V8_BUILTINS_BUILTINS_PROMISE_H_
|
| -
|
| -#include "src/code-stub-assembler.h"
|
| -#include "src/contexts.h"
|
| -
|
| -namespace v8 {
|
| -namespace internal {
|
| -
|
| -typedef compiler::CodeAssemblerState CodeAssemblerState;
|
| -
|
| -class PromiseBuiltinsAssembler : public CodeStubAssembler {
|
| - public:
|
| - enum PromiseResolvingFunctionContextSlot {
|
| - // Whether the resolve/reject callback was already called.
|
| - kAlreadyVisitedSlot = Context::MIN_CONTEXT_SLOTS,
|
| -
|
| - // The promise which resolve/reject callbacks fulfill.
|
| - kPromiseSlot,
|
| -
|
| - // Whether to trigger a debug event or not. Used in catch
|
| - // prediction.
|
| - kDebugEventSlot,
|
| - kPromiseContextLength,
|
| - };
|
| -
|
| - enum FunctionContextSlot {
|
| - kCapabilitySlot = Context::MIN_CONTEXT_SLOTS,
|
| -
|
| - kCapabilitiesContextLength,
|
| - };
|
| -
|
| - // This is used by the PromiseThenFinally and PromiseCatchFinally
|
| - // builtins to store the onFinally in the onFinallySlot.
|
| - //
|
| - // This is also used by the PromiseValueThunkFinally to store the
|
| - // value in the onFinallySlot and PromiseThrowerFinally to store the
|
| - // reason in the onFinallySlot.
|
| - enum PromiseFinallyContextSlot {
|
| - kOnFinallySlot = Context::MIN_CONTEXT_SLOTS,
|
| -
|
| - kOnFinallyContextLength,
|
| - };
|
| -
|
| - explicit PromiseBuiltinsAssembler(compiler::CodeAssemblerState* state)
|
| - : CodeStubAssembler(state) {}
|
| - // These allocate and initialize a promise with pending state and
|
| - // undefined fields.
|
| - //
|
| - // This uses undefined as the parent promise for the promise init
|
| - // hook.
|
| - Node* AllocateAndInitJSPromise(Node* context);
|
| - // This uses the given parent as the parent promise for the promise
|
| - // init hook.
|
| - Node* AllocateAndInitJSPromise(Node* context, Node* parent);
|
| -
|
| - // This allocates and initializes a promise with the given state and
|
| - // fields.
|
| - Node* AllocateAndSetJSPromise(Node* context, Node* status, Node* result);
|
| -
|
| - Node* AllocatePromiseResolveThenableJobInfo(Node* result, Node* then,
|
| - Node* resolve, Node* reject,
|
| - Node* context);
|
| -
|
| - std::pair<Node*, Node*> CreatePromiseResolvingFunctions(
|
| - Node* promise, Node* native_context, Node* promise_context);
|
| -
|
| - Node* PromiseHasHandler(Node* promise);
|
| -
|
| - Node* CreatePromiseResolvingFunctionsContext(Node* promise, Node* debug_event,
|
| - Node* native_context);
|
| -
|
| - Node* CreatePromiseGetCapabilitiesExecutorContext(Node* native_context,
|
| - Node* promise_capability);
|
| -
|
| - Node* NewPromiseCapability(Node* context, Node* constructor,
|
| - Node* debug_event = nullptr);
|
| -
|
| - protected:
|
| - void PromiseInit(Node* promise);
|
| -
|
| - Node* ThrowIfNotJSReceiver(Node* context, Node* value,
|
| - MessageTemplate::Template msg_template,
|
| - const char* method_name = nullptr);
|
| -
|
| - Node* SpeciesConstructor(Node* context, Node* object,
|
| - Node* default_constructor);
|
| -
|
| - void PromiseSetHasHandler(Node* promise);
|
| - void PromiseSetHandledHint(Node* promise);
|
| -
|
| - void AppendPromiseCallback(int offset, compiler::Node* promise,
|
| - compiler::Node* value);
|
| -
|
| - Node* InternalPromiseThen(Node* context, Node* promise, Node* on_resolve,
|
| - Node* on_reject);
|
| -
|
| - Node* InternalPerformPromiseThen(Node* context, Node* promise,
|
| - Node* on_resolve, Node* on_reject,
|
| - Node* deferred_promise,
|
| - Node* deferred_on_resolve,
|
| - Node* deferred_on_reject);
|
| -
|
| - void InternalResolvePromise(Node* context, Node* promise, Node* result);
|
| -
|
| - void BranchIfFastPath(Node* context, Node* promise, Label* if_isunmodified,
|
| - Label* if_ismodified);
|
| -
|
| - void BranchIfFastPath(Node* native_context, Node* promise_fun, Node* promise,
|
| - Label* if_isunmodified, Label* if_ismodified);
|
| -
|
| - Node* CreatePromiseContext(Node* native_context, int slots);
|
| - void PromiseFulfill(Node* context, Node* promise, Node* result,
|
| - v8::Promise::PromiseState status);
|
| -
|
| - void BranchIfAccessCheckFailed(Node* context, Node* native_context,
|
| - Node* promise_constructor, Node* executor,
|
| - Label* if_noaccess);
|
| -
|
| - void InternalPromiseReject(Node* context, Node* promise, Node* value,
|
| - bool debug_event);
|
| - void InternalPromiseReject(Node* context, Node* promise, Node* value,
|
| - Node* debug_event);
|
| - std::pair<Node*, Node*> CreatePromiseFinallyFunctions(Node* on_finally,
|
| - Node* native_context);
|
| - Node* CreatePromiseFinallyContext(Node* on_finally, Node* native_context);
|
| -
|
| - Node* CreateValueThunkFunction(Node* value, Node* native_context);
|
| - Node* CreateValueThunkFunctionContext(Node* value, Node* native_context);
|
| -
|
| - Node* CreateThrowerFunctionContext(Node* reason, Node* native_context);
|
| - Node* CreateThrowerFunction(Node* reason, Node* native_context);
|
| -
|
| - private:
|
| - Node* AllocateJSPromise(Node* context);
|
| -};
|
| -
|
| -} // namespace internal
|
| -} // namespace v8
|
| -
|
| -#endif // V8_BUILTINS_BUILTINS_PROMISE_H_
|
|
|