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 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
92 | 92 |
93 // Generates code to perform a global store via |ic|. | 93 // Generates code to perform a global store via |ic|. |
94 void DoStaGlobal(Callable ic, InterpreterAssembler* assembler); | 94 void DoStaGlobal(Callable ic, InterpreterAssembler* assembler); |
95 | 95 |
96 // Generates code to perform a named property store via |ic|. | 96 // Generates code to perform a named property store via |ic|. |
97 void DoStoreIC(Callable ic, InterpreterAssembler* assembler); | 97 void DoStoreIC(Callable ic, InterpreterAssembler* assembler); |
98 | 98 |
99 // Generates code to perform a keyed property store via |ic|. | 99 // Generates code to perform a keyed property store via |ic|. |
100 void DoKeyedStoreIC(Callable ic, InterpreterAssembler* assembler); | 100 void DoKeyedStoreIC(Callable ic, InterpreterAssembler* assembler); |
101 | 101 |
102 // Generates code to perform a JS call. | 102 // Generates code to perform a JS call that collects type feedback. |
103 void DoJSCall(InterpreterAssembler* assembler, TailCallMode tail_call_mode); | 103 void DoJSCall(InterpreterAssembler* assembler, TailCallMode tail_call_mode); |
104 | 104 |
105 // Generates code to perform a runtime call. | 105 // Generates code to perform a runtime call. |
106 void DoCallRuntimeCommon(InterpreterAssembler* assembler); | 106 void DoCallRuntimeCommon(InterpreterAssembler* assembler); |
107 | 107 |
108 // Generates code to perform a runtime call returning a pair. | 108 // Generates code to perform a runtime call returning a pair. |
109 void DoCallRuntimeForPairCommon(InterpreterAssembler* assembler); | 109 void DoCallRuntimeForPairCommon(InterpreterAssembler* assembler); |
110 | 110 |
111 // Generates code to perform a JS runtime call. | 111 // Generates code to perform a JS runtime call. |
112 void DoCallJSRuntimeCommon(InterpreterAssembler* assembler); | 112 void DoCallJSRuntimeCommon(InterpreterAssembler* assembler); |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
170 v8::base::SmartArrayPointer<uintptr_t> bytecode_dispatch_counters_table_; | 170 v8::base::SmartArrayPointer<uintptr_t> bytecode_dispatch_counters_table_; |
171 | 171 |
172 DISALLOW_COPY_AND_ASSIGN(Interpreter); | 172 DISALLOW_COPY_AND_ASSIGN(Interpreter); |
173 }; | 173 }; |
174 | 174 |
175 } // namespace interpreter | 175 } // namespace interpreter |
176 } // namespace internal | 176 } // namespace internal |
177 } // namespace v8 | 177 } // namespace v8 |
178 | 178 |
179 #endif // V8_INTERPRETER_INTERPRETER_H_ | 179 #endif // V8_INTERPRETER_INTERPRETER_H_ |
OLD | NEW |