| Index: src/x64/macro-assembler-x64.cc
|
| ===================================================================
|
| --- src/x64/macro-assembler-x64.cc (revision 15891)
|
| +++ src/x64/macro-assembler-x64.cc (working copy)
|
| @@ -3507,7 +3507,7 @@
|
| // Optionally save all XMM registers.
|
| if (save_doubles) {
|
| int space = XMMRegister::kMaxNumRegisters * kDoubleSize +
|
| - arg_stack_space * kPointerSize;
|
| + arg_stack_space * kRegisterSize;
|
| subq(rsp, Immediate(space));
|
| int offset = -2 * kPointerSize;
|
| for (int i = 0; i < XMMRegister::NumAllocatableRegisters(); i++) {
|
| @@ -3515,7 +3515,7 @@
|
| movsd(Operand(rbp, offset - ((i + 1) * kDoubleSize)), reg);
|
| }
|
| } else if (arg_stack_space > 0) {
|
| - subq(rsp, Immediate(arg_stack_space * kPointerSize));
|
| + subq(rsp, Immediate(arg_stack_space * kRegisterSize));
|
| }
|
|
|
| // Get the required frame alignment for the OS.
|
| @@ -4375,7 +4375,7 @@
|
| ASSERT(IsPowerOf2(frame_alignment));
|
| int argument_slots_on_stack =
|
| ArgumentStackSlotsForCFunctionCall(num_arguments);
|
| - subq(rsp, Immediate((argument_slots_on_stack + 1) * kPointerSize));
|
| + subq(rsp, Immediate((argument_slots_on_stack + 1) * kRegisterSize));
|
| and_(rsp, Immediate(-frame_alignment));
|
| movq(Operand(rsp, argument_slots_on_stack * kPointerSize), kScratchRegister);
|
| }
|
| @@ -4400,7 +4400,7 @@
|
| ASSERT(num_arguments >= 0);
|
| int argument_slots_on_stack =
|
| ArgumentStackSlotsForCFunctionCall(num_arguments);
|
| - movq(rsp, Operand(rsp, argument_slots_on_stack * kPointerSize));
|
| + movq(rsp, Operand(rsp, argument_slots_on_stack * kRegisterSize));
|
| }
|
|
|
|
|
|
|