Index: src/debug/debug.cc |
diff --git a/src/debug/debug.cc b/src/debug/debug.cc |
index d3f3b905151a02ab82f5d626353ad30b487522db..5f623f6b26aa11a1e5405a981ae60f2d17737947 100644 |
--- a/src/debug/debug.cc |
+++ b/src/debug/debug.cc |
@@ -336,7 +336,6 @@ void Debug::ThreadInit() { |
// TODO(isolates): frames_are_dropped_? |
base::NoBarrier_Store(&thread_local_.current_debug_scope_, |
static_cast<base::AtomicWord>(0)); |
- thread_local_.restarter_frame_function_pointer_ = NULL; |
} |
@@ -828,18 +827,6 @@ void Debug::PrepareStep(StepAction step_action, |
DCHECK(in_debug_scope()); |
- // Remember this step action and count. |
- thread_local_.last_step_action_ = step_action; |
- STATIC_ASSERT(StepFrame > StepIn); |
- thread_local_.step_in_enabled_ = (step_action >= StepIn); |
- if (step_action == StepOut) { |
- // For step out target frame will be found on the stack so there is no need |
- // to set step counter for it. It's expected to always be 0 for StepOut. |
- thread_local_.step_count_ = 0; |
- } else { |
- thread_local_.step_count_ = step_count; |
- } |
- |
// Get the frame where the execution has stopped and skip the debug frame if |
// any. The debug frame will only be present if execution was stopped due to |
// hitting a break point. In other situations (e.g. unhandled exception) the |
@@ -857,6 +844,18 @@ void Debug::PrepareStep(StepAction step_action, |
feature_tracker()->Track(DebugFeatureTracker::kStepping); |
+ // Remember this step action and count. |
+ thread_local_.last_step_action_ = step_action; |
+ STATIC_ASSERT(StepFrame > StepIn); |
+ thread_local_.step_in_enabled_ = (step_action >= StepIn); |
+ if (step_action == StepOut) { |
+ // For step out target frame will be found on the stack so there is no need |
+ // to set step counter for it. It's expected to always be 0 for StepOut. |
+ thread_local_.step_count_ = 0; |
+ } else { |
+ thread_local_.step_count_ = step_count; |
+ } |
+ |
// First of all ensure there is one-shot break points in the top handler |
// if any. |
FloodHandlerWithOneShot(); |
@@ -931,17 +930,6 @@ void Debug::PrepareStep(StepAction step_action, |
return; |
} |
- STATIC_ASSERT(StepFrame > StepIn); |
- if (step_action >= StepIn) { |
- // If there's restarter frame on top of the stack, just get the pointer |
- // to function which is going to be restarted. |
- if (thread_local_.restarter_frame_function_pointer_ != NULL) { |
- Handle<JSFunction> restarted_function( |
- JSFunction::cast(*thread_local_.restarter_frame_function_pointer_)); |
- FloodWithOneShot(restarted_function); |
- } |
- } |
- |
// Fill the current function with one-shot break points even for step in on |
// a call target as the function called might be a native function for |
// which step in will not stop. It also prepares for stepping in |
@@ -1049,6 +1037,7 @@ void Debug::ClearStepping() { |
thread_local_.step_count_ = 0; |
thread_local_.last_step_action_ = StepNone; |
+ thread_local_.step_in_enabled_ = false; |
thread_local_.last_statement_position_ = RelocInfo::kNoPosition; |
thread_local_.last_fp_ = 0; |
} |
@@ -1522,14 +1511,11 @@ bool Debug::IsBreakAtReturn(JavaScriptFrame* frame) { |
void Debug::FramesHaveBeenDropped(StackFrame::Id new_break_frame_id, |
- LiveEdit::FrameDropMode mode, |
- Object** restarter_frame_function_pointer) { |
+ LiveEdit::FrameDropMode mode) { |
if (mode != LiveEdit::CURRENTLY_SET_MODE) { |
thread_local_.frame_drop_mode_ = mode; |
} |
thread_local_.break_frame_id_ = new_break_frame_id; |
- thread_local_.restarter_frame_function_pointer_ = |
- restarter_frame_function_pointer; |
} |