OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_INTERPRETER_INTERPRETER_H_ | 5 #ifndef V8_INTERPRETER_INTERPRETER_H_ |
6 #define V8_INTERPRETER_INTERPRETER_H_ | 6 #define V8_INTERPRETER_INTERPRETER_H_ |
7 | 7 |
8 // Clients of this interface shouldn't depend on lots of interpreter internals. | 8 // Clients of this interface shouldn't depend on lots of interpreter internals. |
9 // Do not include anything from src/interpreter other than | 9 // Do not include anything from src/interpreter other than |
10 // src/interpreter/bytecodes.h here! | 10 // src/interpreter/bytecodes.h here! |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 | 84 |
85 // Generates code to perform a namedproperty store via |ic|. | 85 // Generates code to perform a namedproperty store via |ic|. |
86 void DoStoreIC(Callable ic, InterpreterAssembler* assembler); | 86 void DoStoreIC(Callable ic, InterpreterAssembler* assembler); |
87 | 87 |
88 // Generates code to perform a keyed property store via |ic|. | 88 // Generates code to perform a keyed property store via |ic|. |
89 void DoKeyedStoreIC(Callable ic, InterpreterAssembler* assembler); | 89 void DoKeyedStoreIC(Callable ic, InterpreterAssembler* assembler); |
90 | 90 |
91 // Generates code to perform a JS call. | 91 // Generates code to perform a JS call. |
92 void DoJSCall(InterpreterAssembler* assembler, TailCallMode tail_call_mode); | 92 void DoJSCall(InterpreterAssembler* assembler, TailCallMode tail_call_mode); |
93 | 93 |
94 // Generates code to perform a JS call with feedback. | |
95 void DoJSCallWithFeedback(InterpreterAssembler* assembler, | |
96 TailCallMode tail_call_mode); | |
97 | |
98 // Generates code to perform a runtime call. | 94 // Generates code to perform a runtime call. |
99 void DoCallRuntimeCommon(InterpreterAssembler* assembler); | 95 void DoCallRuntimeCommon(InterpreterAssembler* assembler); |
100 | 96 |
101 // Generates code to perform a runtime call returning a pair. | 97 // Generates code to perform a runtime call returning a pair. |
102 void DoCallRuntimeForPairCommon(InterpreterAssembler* assembler); | 98 void DoCallRuntimeForPairCommon(InterpreterAssembler* assembler); |
103 | 99 |
104 // Generates code to perform a JS runtime call. | 100 // Generates code to perform a JS runtime call. |
105 void DoCallJSRuntimeCommon(InterpreterAssembler* assembler); | 101 void DoCallJSRuntimeCommon(InterpreterAssembler* assembler); |
106 | 102 |
107 // Generates code to perform a constructor call.. | 103 // Generates code to perform a constructor call.. |
(...skipping 23 matching lines...) Expand all Loading... |
131 Object* dispatch_table_[kDispatchTableSize]; | 127 Object* dispatch_table_[kDispatchTableSize]; |
132 | 128 |
133 DISALLOW_COPY_AND_ASSIGN(Interpreter); | 129 DISALLOW_COPY_AND_ASSIGN(Interpreter); |
134 }; | 130 }; |
135 | 131 |
136 } // namespace interpreter | 132 } // namespace interpreter |
137 } // namespace internal | 133 } // namespace internal |
138 } // namespace v8 | 134 } // namespace v8 |
139 | 135 |
140 #endif // V8_INTERPRETER_INTERPRETER_H_ | 136 #endif // V8_INTERPRETER_INTERPRETER_H_ |
OLD | NEW |