Index: src/x64/code-stubs-x64.cc |
=================================================================== |
--- src/x64/code-stubs-x64.cc (revision 9462) |
+++ src/x64/code-stubs-x64.cc (working copy) |
@@ -3370,13 +3370,16 @@ |
bool CEntryStub::IsPregenerated() { |
+#ifdef _WIN64 |
return result_size_ == 1; |
+#else |
+ return true; |
+#endif |
} |
void CodeStub::GenerateStubsAheadOfTime() { |
- CEntryStub save_doubles(1, kSaveFPRegs); |
- save_doubles.GetCode()->set_is_pregenerated(true); |
+ CEntryStub::GenerateFixedRegStubsAheadOfTime(); |
StoreBufferOverflowStub::GenerateFixedRegStubsAheadOfTime(); |
// It is important that the store buffer overflow stubs are generated first. |
RecordWriteStub::GenerateFixedRegStubsAheadOfTime(); |
@@ -3387,6 +3390,14 @@ |
} |
+void CEntryStub::GenerateFixedRegStubsAheadOfTime() { |
+ CEntryStub stub(1, kDontSaveFPRegs); |
+ stub.GetCode()->set_is_pregenerated(true); |
+ CEntryStub save_doubles(1, kSaveFPRegs); |
+ save_doubles.GetCode()->set_is_pregenerated(true); |
+} |
+ |
+ |
void CEntryStub::GenerateThrowTOS(MacroAssembler* masm) { |
// Throw exception in eax. |
__ Throw(rax); |