OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 404 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
415 enum FrameDropMode { | 415 enum FrameDropMode { |
416 // No frame has been dropped. | 416 // No frame has been dropped. |
417 FRAMES_UNTOUCHED, | 417 FRAMES_UNTOUCHED, |
418 // The top JS frame had been calling IC stub. IC stub mustn't be called now. | 418 // The top JS frame had been calling IC stub. IC stub mustn't be called now. |
419 FRAME_DROPPED_IN_IC_CALL, | 419 FRAME_DROPPED_IN_IC_CALL, |
420 // The top JS frame had been calling debug break slot stub. Patch the | 420 // The top JS frame had been calling debug break slot stub. Patch the |
421 // address this stub jumps to in the end. | 421 // address this stub jumps to in the end. |
422 FRAME_DROPPED_IN_DEBUG_SLOT_CALL, | 422 FRAME_DROPPED_IN_DEBUG_SLOT_CALL, |
423 // The top JS frame had been calling some C++ function. The return address | 423 // The top JS frame had been calling some C++ function. The return address |
424 // gets patched automatically. | 424 // gets patched automatically. |
425 FRAME_DROPPED_IN_DIRECT_CALL | 425 FRAME_DROPPED_IN_DIRECT_CALL, |
| 426 FRAME_DROPPED_IN_RETURN_CALL |
426 }; | 427 }; |
427 | 428 |
428 void FramesHaveBeenDropped(StackFrame::Id new_break_frame_id, | 429 void FramesHaveBeenDropped(StackFrame::Id new_break_frame_id, |
429 FrameDropMode mode, | 430 FrameDropMode mode, |
430 Object** restarter_frame_function_pointer); | 431 Object** restarter_frame_function_pointer); |
431 | 432 |
432 // Initializes an artificial stack frame. The data it contains is used for: | 433 // Initializes an artificial stack frame. The data it contains is used for: |
433 // a. successful work of frame dropper code which eventually gets control, | 434 // a. successful work of frame dropper code which eventually gets control, |
434 // b. being compatible with regular stack structure for various stack | 435 // b. being compatible with regular stack structure for various stack |
435 // iterators. | 436 // iterators. |
(...skipping 610 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1046 | 1047 |
1047 DISALLOW_COPY_AND_ASSIGN(MessageDispatchHelperThread); | 1048 DISALLOW_COPY_AND_ASSIGN(MessageDispatchHelperThread); |
1048 }; | 1049 }; |
1049 | 1050 |
1050 | 1051 |
1051 } } // namespace v8::internal | 1052 } } // namespace v8::internal |
1052 | 1053 |
1053 #endif // ENABLE_DEBUGGER_SUPPORT | 1054 #endif // ENABLE_DEBUGGER_SUPPORT |
1054 | 1055 |
1055 #endif // V8_DEBUG_H_ | 1056 #endif // V8_DEBUG_H_ |
OLD | NEW |