Chromium Code Reviews| Index: src/x64/deoptimizer-x64.cc |
| diff --git a/src/x64/deoptimizer-x64.cc b/src/x64/deoptimizer-x64.cc |
| index ae180ec59b4b5078919a5f8f2659a3de1c5ad7b2..ff9beba586ccaa79cf42b962d7f6a4eede878e97 100644 |
| --- a/src/x64/deoptimizer-x64.cc |
| +++ b/src/x64/deoptimizer-x64.cc |
| @@ -156,7 +156,7 @@ void Deoptimizer::EntryGenerator::Generate() { |
| __ push(r); |
| } |
| - const int kSavedRegistersAreaSize = kNumberOfRegisters * kPointerSize + |
| + const int kSavedRegistersAreaSize = kNumberOfRegisters * kRegisterSize + |
|
haitao.feng
2014/01/14 08:40:39
x32 uses the 64-bit push instruction to save all t
|
| kDoubleRegsSize; |
| // We use this to keep the value of the fifth argument temporarily. |
| @@ -169,9 +169,9 @@ void Deoptimizer::EntryGenerator::Generate() { |
| // Get the address of the location in the code object |
| // and compute the fp-to-sp delta in register arg5. |
| - __ movq(arg_reg_4, |
| - Operand(rsp, kSavedRegistersAreaSize + 1 * kPointerSize)); |
| - __ lea(arg5, Operand(rsp, kSavedRegistersAreaSize + 2 * kPointerSize)); |
| + __ movq(arg_reg_4, Operand(rsp, kSavedRegistersAreaSize + 1 * kRegisterSize)); |
|
haitao.feng
2014/01/14 08:40:39
x32 uses 64-bit push instruction for the bailout i
|
| + __ lea(arg5, Operand(rsp, kSavedRegistersAreaSize + 1 * kRegisterSize + |
| + kPCOnStackSize)); |
| __ subq(arg5, rbp); |
| __ neg(arg5); |
| @@ -215,7 +215,7 @@ void Deoptimizer::EntryGenerator::Generate() { |
| } |
| // Remove the bailout id and return address from the stack. |
| - __ addq(rsp, Immediate(2 * kPointerSize)); |
| + __ addq(rsp, Immediate(1 * kRegisterSize + kPCOnStackSize)); |
| // Compute a pointer to the unwinding limit in register rcx; that is |
| // the first stack slot not part of the input frame. |