Index: src/full-codegen/x64/full-codegen-x64.cc |
diff --git a/src/full-codegen/x64/full-codegen-x64.cc b/src/full-codegen/x64/full-codegen-x64.cc |
index acc6a9e285d3a93956b6489c15827828bb3d9435..d927c6ba1a626ff7a46cf81a406aca628ea604f6 100644 |
--- a/src/full-codegen/x64/full-codegen-x64.cc |
+++ b/src/full-codegen/x64/full-codegen-x64.cc |
@@ -960,8 +960,10 @@ void FullCodeGenerator::VisitForInStatement(ForInStatement* stmt) { |
__ CompareRoot(rax, Heap::kUndefinedValueRootIndex); |
__ j(equal, &exit); |
__ bind(&convert); |
+ __ Push(rsi); |
ToObjectStub stub(isolate()); |
__ CallStub(&stub); |
+ __ Pop(rsi); |
__ bind(&done_convert); |
PrepareForBailoutForId(stmt->ToObjectId(), BailoutState::TOS_REGISTER); |
__ Push(rax); |