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 |
94 // Generates code to perform a runtime call. | 98 // Generates code to perform a runtime call. |
95 void DoCallRuntimeCommon(InterpreterAssembler* assembler); | 99 void DoCallRuntimeCommon(InterpreterAssembler* assembler); |
96 | 100 |
97 // Generates code to perform a runtime call returning a pair. | 101 // Generates code to perform a runtime call returning a pair. |
98 void DoCallRuntimeForPairCommon(InterpreterAssembler* assembler); | 102 void DoCallRuntimeForPairCommon(InterpreterAssembler* assembler); |
99 | 103 |
100 // Generates code to perform a JS runtime call. | 104 // Generates code to perform a JS runtime call. |
101 void DoCallJSRuntimeCommon(InterpreterAssembler* assembler); | 105 void DoCallJSRuntimeCommon(InterpreterAssembler* assembler); |
102 | 106 |
103 // Generates code to perform a constructor call.. | 107 // Generates code to perform a constructor call.. |
(...skipping 23 matching lines...) Expand all Loading... |
127 Object* dispatch_table_[kDispatchTableSize]; | 131 Object* dispatch_table_[kDispatchTableSize]; |
128 | 132 |
129 DISALLOW_COPY_AND_ASSIGN(Interpreter); | 133 DISALLOW_COPY_AND_ASSIGN(Interpreter); |
130 }; | 134 }; |
131 | 135 |
132 } // namespace interpreter | 136 } // namespace interpreter |
133 } // namespace internal | 137 } // namespace internal |
134 } // namespace v8 | 138 } // namespace v8 |
135 | 139 |
136 #endif // V8_INTERPRETER_INTERPRETER_H_ | 140 #endif // V8_INTERPRETER_INTERPRETER_H_ |
OLD | NEW |