Index: src/ia32/builtins-ia32.cc |
diff --git a/src/ia32/builtins-ia32.cc b/src/ia32/builtins-ia32.cc |
index b9a27c37b7d293982c2dda0c3e7964185fd338ed..537ffcd129c40551e61b6c5f0f063d4586c7303e 100644 |
--- a/src/ia32/builtins-ia32.cc |
+++ b/src/ia32/builtins-ia32.cc |
@@ -539,6 +539,25 @@ void Builtins::Generate_JSConstructStubForDerived(MacroAssembler* masm) { |
__ j(greater_equal, &loop); |
__ inc(eax); // Pushed new.target. |
+ |
+ |
+ // Handle step in. |
+ Label skip_step_in; |
+ ExternalReference debug_step_in_fp = |
+ ExternalReference::debug_step_in_fp_address(masm->isolate()); |
+ __ cmp(Operand::StaticVariable(debug_step_in_fp), Immediate(0)); |
+ __ j(equal, &skip_step_in); |
+ |
+ __ push(eax); |
+ __ push(edi); |
+ __ push(edi); |
+ __ CallRuntime(Runtime::kHandleStepInForDerivedConstructors, 1); |
+ __ pop(edi); |
+ __ pop(eax); |
+ |
+ __ bind(&skip_step_in); |
+ |
+ // Invoke function. |
ParameterCount actual(eax); |
__ InvokeFunction(edi, actual, CALL_FUNCTION, NullCallWrapper()); |