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 : #include "src/builtins/builtins.h"
6 : #include "src/globals.h"
7 : #include "src/macro-assembler.h"
8 :
9 : namespace v8 {
10 : namespace internal {
11 :
12 31 : void Builtins::Generate_InterpreterPushArgsThenCall(MacroAssembler* masm) {
13 : return Generate_InterpreterPushArgsThenCallImpl(
14 31 : masm, ConvertReceiverMode::kAny, InterpreterPushArgsMode::kOther);
15 : }
16 :
17 31 : void Builtins::Generate_InterpreterPushArgsThenCallFunction(
18 : MacroAssembler* masm) {
19 : return Generate_InterpreterPushArgsThenCallImpl(
20 31 : masm, ConvertReceiverMode::kAny, InterpreterPushArgsMode::kJSFunction);
21 : }
22 :
23 31 : void Builtins::Generate_InterpreterPushUndefinedAndArgsThenCall(
24 : MacroAssembler* masm) {
25 : return Generate_InterpreterPushArgsThenCallImpl(
26 : masm, ConvertReceiverMode::kNullOrUndefined,
27 31 : InterpreterPushArgsMode::kOther);
28 : }
29 :
30 31 : void Builtins::Generate_InterpreterPushUndefinedAndArgsThenCallFunction(
31 : MacroAssembler* masm) {
32 : return Generate_InterpreterPushArgsThenCallImpl(
33 : masm, ConvertReceiverMode::kNullOrUndefined,
34 31 : InterpreterPushArgsMode::kJSFunction);
35 : }
36 :
37 31 : void Builtins::Generate_InterpreterPushArgsThenCallWithFinalSpread(
38 : MacroAssembler* masm) {
39 : return Generate_InterpreterPushArgsThenCallImpl(
40 : masm, ConvertReceiverMode::kAny,
41 31 : InterpreterPushArgsMode::kWithFinalSpread);
42 : }
43 :
44 31 : void Builtins::Generate_InterpreterPushArgsThenConstruct(MacroAssembler* masm) {
45 : return Generate_InterpreterPushArgsThenConstructImpl(
46 31 : masm, InterpreterPushArgsMode::kOther);
47 : }
48 :
49 31 : void Builtins::Generate_InterpreterPushArgsThenConstructWithFinalSpread(
50 : MacroAssembler* masm) {
51 : return Generate_InterpreterPushArgsThenConstructImpl(
52 31 : masm, InterpreterPushArgsMode::kWithFinalSpread);
53 : }
54 :
55 31 : void Builtins::Generate_InterpreterPushArgsThenConstructFunction(
56 : MacroAssembler* masm) {
57 : return Generate_InterpreterPushArgsThenConstructImpl(
58 31 : masm, InterpreterPushArgsMode::kJSFunction);
59 : }
60 :
61 : } // namespace internal
62 : } // namespace v8
|