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_ASSEMBLER_H_ | 5 #ifndef V8_INTERPRETER_INTERPRETER_ASSEMBLER_H_ |
6 #define V8_INTERPRETER_INTERPRETER_ASSEMBLER_H_ | 6 #define V8_INTERPRETER_INTERPRETER_ASSEMBLER_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/base/smart-pointers.h" | 9 #include "src/base/smart-pointers.h" |
10 #include "src/builtins.h" | 10 #include "src/builtins.h" |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 compiler::Node* jump_offset); | 120 compiler::Node* jump_offset); |
121 | 121 |
122 // Jump relative to the current bytecode by |jump_offset| if the | 122 // Jump relative to the current bytecode by |jump_offset| if the |
123 // word values |lhs| and |rhs| are not equal. | 123 // word values |lhs| and |rhs| are not equal. |
124 void JumpIfWordNotEqual(compiler::Node* lhs, compiler::Node* rhs, | 124 void JumpIfWordNotEqual(compiler::Node* lhs, compiler::Node* rhs, |
125 compiler::Node* jump_offset); | 125 compiler::Node* jump_offset); |
126 | 126 |
127 // Returns true if the stack guard check triggers an interrupt. | 127 // Returns true if the stack guard check triggers an interrupt. |
128 compiler::Node* StackCheckTriggeredInterrupt(); | 128 compiler::Node* StackCheckTriggeredInterrupt(); |
129 | 129 |
130 // Updates the profiler interrupt budget for a return. | 130 // Returns from the function. |
131 void UpdateInterruptBudgetOnReturn(); | 131 compiler::Node* InterpreterReturn(); |
132 | 132 |
133 // Dispatch to the bytecode. | 133 // Dispatch to the bytecode. |
134 compiler::Node* Dispatch(); | 134 compiler::Node* Dispatch(); |
135 | 135 |
136 // Dispatch to bytecode handler. | 136 // Dispatch to bytecode handler. |
137 compiler::Node* DispatchToBytecodeHandler(compiler::Node* handler) { | 137 compiler::Node* DispatchToBytecodeHandler(compiler::Node* handler) { |
138 return DispatchToBytecodeHandler(handler, BytecodeOffset()); | 138 return DispatchToBytecodeHandler(handler, BytecodeOffset()); |
139 } | 139 } |
140 | 140 |
141 // Dispatch bytecode as wide operand variant. | 141 // Dispatch bytecode as wide operand variant. |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
239 compiler::Node* stack_pointer_before_call_; | 239 compiler::Node* stack_pointer_before_call_; |
240 | 240 |
241 DISALLOW_COPY_AND_ASSIGN(InterpreterAssembler); | 241 DISALLOW_COPY_AND_ASSIGN(InterpreterAssembler); |
242 }; | 242 }; |
243 | 243 |
244 } // namespace interpreter | 244 } // namespace interpreter |
245 } // namespace internal | 245 } // namespace internal |
246 } // namespace v8 | 246 } // namespace v8 |
247 | 247 |
248 #endif // V8_INTERPRETER_INTERPRETER_ASSEMBLER_H_ | 248 #endif // V8_INTERPRETER_INTERPRETER_ASSEMBLER_H_ |
OLD | NEW |