Line data Source code
1 : // Copyright 2017 the V8 project authors. All rights reserved.
2 : // Use of this source code is governed by a BSD-style license that can be
3 : // found in the LICENSE file.
4 :
5 : #ifndef V8_BUILTINS_BUILTINS_CALL_GEN_H_
6 : #define V8_BUILTINS_BUILTINS_CALL_GEN_H_
7 :
8 : #include "src/code-stub-assembler.h"
9 :
10 : namespace v8 {
11 : namespace internal {
12 :
13 : class CallOrConstructBuiltinsAssembler : public CodeStubAssembler {
14 : public:
15 : explicit CallOrConstructBuiltinsAssembler(compiler::CodeAssemblerState* state)
16 224 : : CodeStubAssembler(state) {}
17 :
18 : void CallOrConstructWithArrayLike(TNode<Object> target,
19 : SloppyTNode<Object> new_target,
20 : TNode<Object> arguments_list,
21 : TNode<Context> context);
22 : void CallOrConstructDoubleVarargs(TNode<Object> target,
23 : SloppyTNode<Object> new_target,
24 : TNode<FixedDoubleArray> elements,
25 : TNode<Int32T> length,
26 : TNode<Int32T> args_count,
27 : TNode<Context> context, TNode<Int32T> kind);
28 : void CallOrConstructWithSpread(TNode<Object> target, TNode<Object> new_target,
29 : TNode<Object> spread, TNode<Int32T> args_count,
30 : TNode<Context> context);
31 : };
32 :
33 : } // namespace internal
34 : } // namespace v8
35 :
36 : #endif // V8_BUILTINS_BUILTINS_CALL_GEN_H_
|