OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_DEBUG_LIVEEDIT_H_ | 5 #ifndef V8_DEBUG_LIVEEDIT_H_ |
6 #define V8_DEBUG_LIVEEDIT_H_ | 6 #define V8_DEBUG_LIVEEDIT_H_ |
7 | 7 |
8 | 8 |
9 // Live Edit feature implementation. | 9 // Live Edit feature implementation. |
10 // User should be able to change script on already running VM. This feature | 10 // User should be able to change script on already running VM. This feature |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
54 Isolate* isolate_; | 54 Isolate* isolate_; |
55 }; | 55 }; |
56 | 56 |
57 | 57 |
58 class LiveEdit : AllStatic { | 58 class LiveEdit : AllStatic { |
59 public: | 59 public: |
60 // Describes how exactly a frame has been dropped from stack. | 60 // Describes how exactly a frame has been dropped from stack. |
61 enum FrameDropMode { | 61 enum FrameDropMode { |
62 // No frame has been dropped. | 62 // No frame has been dropped. |
63 FRAMES_UNTOUCHED, | 63 FRAMES_UNTOUCHED, |
| 64 // The top JS frame had been calling IC stub. IC stub mustn't be called now. |
| 65 FRAME_DROPPED_IN_IC_CALL, |
64 // The top JS frame had been calling debug break slot stub. Patch the | 66 // The top JS frame had been calling debug break slot stub. Patch the |
65 // address this stub jumps to in the end. | 67 // address this stub jumps to in the end. |
66 FRAME_DROPPED_IN_DEBUG_SLOT_CALL, | 68 FRAME_DROPPED_IN_DEBUG_SLOT_CALL, |
67 // The top JS frame had been calling some C++ function. The return address | 69 // The top JS frame had been calling some C++ function. The return address |
68 // gets patched automatically. | 70 // gets patched automatically. |
69 FRAME_DROPPED_IN_DIRECT_CALL, | 71 FRAME_DROPPED_IN_DIRECT_CALL, |
70 FRAME_DROPPED_IN_RETURN_CALL, | 72 FRAME_DROPPED_IN_RETURN_CALL, |
71 CURRENTLY_SET_MODE | 73 CURRENTLY_SET_MODE |
72 }; | 74 }; |
73 | 75 |
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
359 static const int kSharedInfoOffset_ = 3; | 361 static const int kSharedInfoOffset_ = 3; |
360 static const int kSize_ = 4; | 362 static const int kSize_ = 4; |
361 | 363 |
362 friend class JSArrayBasedStruct<SharedInfoWrapper>; | 364 friend class JSArrayBasedStruct<SharedInfoWrapper>; |
363 }; | 365 }; |
364 | 366 |
365 } // namespace internal | 367 } // namespace internal |
366 } // namespace v8 | 368 } // namespace v8 |
367 | 369 |
368 #endif /* V8_DEBUG_LIVEEDIT_H_ */ | 370 #endif /* V8_DEBUG_LIVEEDIT_H_ */ |
OLD | NEW |