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 #include <memory> | 8 #include <memory> |
9 | 9 |
10 // Clients of this interface shouldn't depend on lots of interpreter internals. | 10 // Clients of this interface shouldn't depend on lots of interpreter internals. |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
101 | 101 |
102 // Generates code to perform the unary operation via |Generator|. | 102 // Generates code to perform the unary operation via |Generator|. |
103 template <class Generator> | 103 template <class Generator> |
104 void DoUnaryOp(InterpreterAssembler* assembler); | 104 void DoUnaryOp(InterpreterAssembler* assembler); |
105 | 105 |
106 // Generates code to perform the unary operation via |Generator| while | 106 // Generates code to perform the unary operation via |Generator| while |
107 // gatering type feedback. | 107 // gatering type feedback. |
108 template <class Generator> | 108 template <class Generator> |
109 void DoUnaryOpWithFeedback(InterpreterAssembler* assembler); | 109 void DoUnaryOpWithFeedback(InterpreterAssembler* assembler); |
110 | 110 |
| 111 // Generates code to perform the conversion operation via |Generator|. |
| 112 template <class Generator> |
| 113 void DoConversionOp(InterpreterAssembler* assembler); |
| 114 |
111 // Generates code to perform the comparison operation associated with | 115 // Generates code to perform the comparison operation associated with |
112 // |compare_op|. | 116 // |compare_op|. |
113 void DoCompareOp(Token::Value compare_op, InterpreterAssembler* assembler); | 117 void DoCompareOp(Token::Value compare_op, InterpreterAssembler* assembler); |
114 | 118 |
115 // Generates code to perform a global store via |ic|. | 119 // Generates code to perform a global store via |ic|. |
116 void DoStaGlobal(Callable ic, InterpreterAssembler* assembler); | 120 void DoStaGlobal(Callable ic, InterpreterAssembler* assembler); |
117 | 121 |
118 // Generates code to perform a named property store via |ic|. | 122 // Generates code to perform a named property store via |ic|. |
119 void DoStoreIC(Callable ic, InterpreterAssembler* assembler); | 123 void DoStoreIC(Callable ic, InterpreterAssembler* assembler); |
120 | 124 |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
195 std::unique_ptr<uintptr_t[]> bytecode_dispatch_counters_table_; | 199 std::unique_ptr<uintptr_t[]> bytecode_dispatch_counters_table_; |
196 | 200 |
197 DISALLOW_COPY_AND_ASSIGN(Interpreter); | 201 DISALLOW_COPY_AND_ASSIGN(Interpreter); |
198 }; | 202 }; |
199 | 203 |
200 } // namespace interpreter | 204 } // namespace interpreter |
201 } // namespace internal | 205 } // namespace internal |
202 } // namespace v8 | 206 } // namespace v8 |
203 | 207 |
204 #endif // V8_INTERPRETER_INTERPRETER_H_ | 208 #endif // V8_INTERPRETER_INTERPRETER_H_ |
OLD | NEW |