Index: src/ia32/code-stubs-ia32.cc |
=================================================================== |
--- src/ia32/code-stubs-ia32.cc (revision 11250) |
+++ src/ia32/code-stubs-ia32.cc (working copy) |
@@ -1734,7 +1734,7 @@ |
__ fstp_d(FieldOperand(eax, HeapNumber::kValueOffset)); |
__ ret(0); |
__ bind(&after_alloc_failure); |
- __ ffree(); |
+ __ fstp(0); // Pop FPU stack before calling runtime. |
__ jmp(&call_runtime); |
} |
@@ -1957,7 +1957,7 @@ |
__ fstp_d(FieldOperand(eax, HeapNumber::kValueOffset)); |
__ ret(0); |
__ bind(&after_alloc_failure); |
- __ ffree(); |
+ __ fstp(0); // Pop FPU stack before calling runtime. |
__ jmp(&call_runtime); |
} |
@@ -2161,8 +2161,8 @@ |
__ fstp_d(FieldOperand(eax, HeapNumber::kValueOffset)); |
__ ret(0); |
__ bind(&after_alloc_failure); |
- __ ffree(); |
- __ jmp(&call_runtime); |
+ __ fstp(0); // Pop FPU stack before calling runtime. |
+ __ jmp(&call_runtime); |
} |
__ bind(¬_floats); |
break; |