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, | |
66 // The top JS frame had been calling debug break slot stub. Patch the | 64 // The top JS frame had been calling debug break slot stub. Patch the |
67 // address this stub jumps to in the end. | 65 // address this stub jumps to in the end. |
68 FRAME_DROPPED_IN_DEBUG_SLOT_CALL, | 66 FRAME_DROPPED_IN_DEBUG_SLOT_CALL, |
69 // The top JS frame had been calling some C++ function. The return address | 67 // The top JS frame had been calling some C++ function. The return address |
70 // gets patched automatically. | 68 // gets patched automatically. |
71 FRAME_DROPPED_IN_DIRECT_CALL, | 69 FRAME_DROPPED_IN_DIRECT_CALL, |
72 FRAME_DROPPED_IN_RETURN_CALL, | 70 FRAME_DROPPED_IN_RETURN_CALL, |
73 CURRENTLY_SET_MODE | 71 CURRENTLY_SET_MODE |
74 }; | 72 }; |
75 | 73 |
(...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
364 static const int kSharedInfoOffset_ = 3; | 362 static const int kSharedInfoOffset_ = 3; |
365 static const int kSize_ = 4; | 363 static const int kSize_ = 4; |
366 | 364 |
367 friend class JSArrayBasedStruct<SharedInfoWrapper>; | 365 friend class JSArrayBasedStruct<SharedInfoWrapper>; |
368 }; | 366 }; |
369 | 367 |
370 } // namespace internal | 368 } // namespace internal |
371 } // namespace v8 | 369 } // namespace v8 |
372 | 370 |
373 #endif /* V8_DEBUG_LIVEEDIT_H_ */ | 371 #endif /* V8_DEBUG_LIVEEDIT_H_ */ |
OLD | NEW |