| 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 149 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 160   // Returns the offset from the BytecodeArrayPointer of the current bytecode. | 160   // Returns the offset from the BytecodeArrayPointer of the current bytecode. | 
| 161   compiler::Node* BytecodeOffset(); | 161   compiler::Node* BytecodeOffset(); | 
| 162   // Returns a raw pointer to first entry in the interpreter dispatch table. | 162   // Returns a raw pointer to first entry in the interpreter dispatch table. | 
| 163   compiler::Node* DispatchTableRawPointer(); | 163   compiler::Node* DispatchTableRawPointer(); | 
| 164 | 164 | 
| 165   // Saves and restores interpreter bytecode offset to the interpreter stack | 165   // Saves and restores interpreter bytecode offset to the interpreter stack | 
| 166   // frame when performing a call. | 166   // frame when performing a call. | 
| 167   void CallPrologue() override; | 167   void CallPrologue() override; | 
| 168   void CallEpilogue() override; | 168   void CallEpilogue() override; | 
| 169 | 169 | 
|  | 170   // Increment the dispatch counter for the (current, next) bytecode pair. | 
|  | 171   void TraceBytecodeDispatch(compiler::Node* target_index); | 
|  | 172 | 
| 170   // Traces the current bytecode by calling |function_id|. | 173   // Traces the current bytecode by calling |function_id|. | 
| 171   void TraceBytecode(Runtime::FunctionId function_id); | 174   void TraceBytecode(Runtime::FunctionId function_id); | 
| 172 | 175 | 
| 173   // Updates the bytecode array's interrupt budget by |weight| and calls | 176   // Updates the bytecode array's interrupt budget by |weight| and calls | 
| 174   // Runtime::kInterrupt if counter reaches zero. | 177   // Runtime::kInterrupt if counter reaches zero. | 
| 175   void UpdateInterruptBudget(compiler::Node* weight); | 178   void UpdateInterruptBudget(compiler::Node* weight); | 
| 176 | 179 | 
| 177   // Returns the offset of register |index| relative to RegisterFilePointer(). | 180   // Returns the offset of register |index| relative to RegisterFilePointer(). | 
| 178   compiler::Node* RegisterFrameOffset(compiler::Node* index); | 181   compiler::Node* RegisterFrameOffset(compiler::Node* index); | 
| 179 | 182 | 
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 224   compiler::Node* stack_pointer_before_call_; | 227   compiler::Node* stack_pointer_before_call_; | 
| 225 | 228 | 
| 226   DISALLOW_COPY_AND_ASSIGN(InterpreterAssembler); | 229   DISALLOW_COPY_AND_ASSIGN(InterpreterAssembler); | 
| 227 }; | 230 }; | 
| 228 | 231 | 
| 229 }  // namespace interpreter | 232 }  // namespace interpreter | 
| 230 }  // namespace internal | 233 }  // namespace internal | 
| 231 }  // namespace v8 | 234 }  // namespace v8 | 
| 232 | 235 | 
| 233 #endif  // V8_INTERPRETER_INTERPRETER_ASSEMBLER_H_ | 236 #endif  // V8_INTERPRETER_INTERPRETER_ASSEMBLER_H_ | 
| OLD | NEW | 
|---|