Index: src/x64/codegen-x64.cc |
diff --git a/src/x64/codegen-x64.cc b/src/x64/codegen-x64.cc |
index e74d58fb60ea943efaefddd17882d0c86bf02e07..803b6b2b3b58845b2dccbb0402bc65f641aae88a 100644 |
--- a/src/x64/codegen-x64.cc |
+++ b/src/x64/codegen-x64.cc |
@@ -3434,6 +3434,7 @@ void CodeGenerator::GenerateGetFramePointer(ZoneList<Expression*>* args) { |
void CodeGenerator::GenerateRandomPositiveSmi(ZoneList<Expression*>* args) { |
ASSERT(args->length() == 0); |
frame_->SpillAll(); |
+ __ push(rsi); |
// Make sure the frame is aligned like the OS expects. |
static const int kFrameAlignment = OS::ActivationFrameAlignment(); |
@@ -3446,11 +3447,12 @@ void CodeGenerator::GenerateRandomPositiveSmi(ZoneList<Expression*>* args) { |
// Call V8::RandomPositiveSmi(). |
__ Call(FUNCTION_ADDR(V8::RandomPositiveSmi), RelocInfo::RUNTIME_ENTRY); |
- // Restore stack pointer from callee-saved register edi. |
+ // Restore stack pointer from callee-saved register. |
if (kFrameAlignment > 0) { |
__ movq(rsp, rbx); |
} |
+ __ pop(rsi); |
Result result = allocator_->Allocate(rax); |
frame_->Push(&result); |
} |
@@ -6807,6 +6809,7 @@ void FloatingPointHelper::LoadFloatOperands(MacroAssembler* masm) { |
__ bind(&done); |
} |
+ |
void FloatingPointHelper::LoadFloatOperands(MacroAssembler* masm, |
Register lhs, |
Register rhs) { |
@@ -6841,6 +6844,7 @@ void FloatingPointHelper::LoadFloatOperands(MacroAssembler* masm, |
__ bind(&done); |
} |
+ |
void FloatingPointHelper::CheckFloatOperands(MacroAssembler* masm, |
Label* non_float) { |
Label test_other, done; |
@@ -6878,6 +6882,7 @@ const char* GenericBinaryOpStub::GetName() { |
} |
} |
+ |
void GenericBinaryOpStub::GenerateSmiCode(MacroAssembler* masm, Label* slow) { |
// Perform fast-case smi code for the operation (rax <op> rbx) and |
// leave result in register rax. |
@@ -7018,7 +7023,6 @@ void GenericBinaryOpStub::GenerateSmiCode(MacroAssembler* masm, Label* slow) { |
void GenericBinaryOpStub::Generate(MacroAssembler* masm) { |
Label call_runtime; |
- |
if (flags_ == SMI_CODE_IN_STUB) { |
// The fast case smi code wasn't inlined in the stub caller |
// code. Generate it here to speed up common operations. |