Index: src/debug/debug.cc |
diff --git a/src/debug/debug.cc b/src/debug/debug.cc |
index 73af4cf7f71b390b7f0b46462417479273cb8dae..43e12e99b724359fe9164c639da8e982dc84223f 100644 |
--- a/src/debug/debug.cc |
+++ b/src/debug/debug.cc |
@@ -896,7 +896,11 @@ void Debug::PrepareStepIn(Handle<JSFunction> function) { |
if (in_debug_scope()) return; |
if (break_disabled()) return; |
Handle<SharedFunctionInfo> shared(function->shared()); |
- if (IsBlackboxed(shared)) return; |
+ if (IsBlackboxed(shared)) { |
+ if (!Compiler::Compile(function, Compiler::KEEP_EXCEPTION)) return; |
+ Deoptimizer::DeoptimizeFunction(*function); |
+ return; |
+ } |
if (*function == thread_local_.ignore_step_into_function_) return; |
thread_local_.ignore_step_into_function_ = Smi::kZero; |
FloodWithOneShot(Handle<SharedFunctionInfo>(function->shared(), isolate_)); |