Index: src/ia32/macro-assembler-ia32.cc |
diff --git a/src/ia32/macro-assembler-ia32.cc b/src/ia32/macro-assembler-ia32.cc |
index 14fb8ca85220f1adba75dd26fb86711466bb72ad..e9ce7974e56c6f16b05e71e9f0dd0460ceda70e5 100644 |
--- a/src/ia32/macro-assembler-ia32.cc |
+++ b/src/ia32/macro-assembler-ia32.cc |
@@ -1801,7 +1801,8 @@ void MacroAssembler::CallRuntimeSaveDoubles(Runtime::FunctionId id) { |
const Runtime::Function* function = Runtime::FunctionForId(id); |
Set(eax, Immediate(function->nargs)); |
mov(ebx, Immediate(ExternalReference(function, isolate()))); |
- CEntryStub ces(1, kSaveFPRegs); |
+ CEntryStub ces(1, CpuFeatures::IsSupported(SSE2) ? kSaveFPRegs |
+ : kDontSaveFPRegs); |
CallStub(&ces); |
} |