OLD | NEW |
1 // Copyright 2010 the V8 project authors. All rights reserved. | 1 // Copyright 2010 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_VM_STATE_H_ | 5 #ifndef V8_VM_STATE_H_ |
6 #define V8_VM_STATE_H_ | 6 #define V8_VM_STATE_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
| 9 #include "src/counters.h" |
9 #include "src/isolate.h" | 10 #include "src/isolate.h" |
10 | 11 |
11 namespace v8 { | 12 namespace v8 { |
12 namespace internal { | 13 namespace internal { |
13 | 14 |
14 // Logging and profiling. A StateTag represents a possible state of | 15 // Logging and profiling. A StateTag represents a possible state of |
15 // the VM. The logger maintains a stack of these. Creating a VMState | 16 // the VM. The logger maintains a stack of these. Creating a VMState |
16 // object enters a state by pushing on the stack, and destroying a | 17 // object enters a state by pushing on the stack, and destroying a |
17 // VMState object leaves a state by popping the current state from the | 18 // VMState object leaves a state by popping the current state from the |
18 // stack. | 19 // stack. |
(...skipping 22 matching lines...) Expand all Loading... |
41 return &callback_; | 42 return &callback_; |
42 #endif | 43 #endif |
43 } | 44 } |
44 ExternalCallbackScope* previous() { return previous_scope_; } | 45 ExternalCallbackScope* previous() { return previous_scope_; } |
45 inline Address scope_address(); | 46 inline Address scope_address(); |
46 | 47 |
47 private: | 48 private: |
48 Isolate* isolate_; | 49 Isolate* isolate_; |
49 Address callback_; | 50 Address callback_; |
50 ExternalCallbackScope* previous_scope_; | 51 ExternalCallbackScope* previous_scope_; |
| 52 RuntimeCallTimer timer_; |
51 #ifdef USE_SIMULATOR | 53 #ifdef USE_SIMULATOR |
52 Address scope_address_; | 54 Address scope_address_; |
53 #endif | 55 #endif |
54 }; | 56 }; |
55 | 57 |
56 } // namespace internal | 58 } // namespace internal |
57 } // namespace v8 | 59 } // namespace v8 |
58 | 60 |
59 | 61 |
60 #endif // V8_VM_STATE_H_ | 62 #endif // V8_VM_STATE_H_ |
OLD | NEW |