| OLD | NEW | 
|---|
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "src/v8.h" | 5 #include "src/v8.h" | 
| 6 | 6 | 
| 7 #include "src/codegen.h" | 7 #include "src/codegen.h" | 
| 8 #include "src/deoptimizer.h" | 8 #include "src/deoptimizer.h" | 
| 9 #include "src/full-codegen.h" | 9 #include "src/full-codegen.h" | 
| 10 #include "src/safepoint-table.h" | 10 #include "src/safepoint-table.h" | 
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 125   // Save all allocatable floating point registers. | 125   // Save all allocatable floating point registers. | 
| 126   CPURegList saved_fp_registers(CPURegister::kFPRegister, kDRegSizeInBits, | 126   CPURegList saved_fp_registers(CPURegister::kFPRegister, kDRegSizeInBits, | 
| 127                                 FPRegister::kAllocatableFPRegisters); | 127                                 FPRegister::kAllocatableFPRegisters); | 
| 128   __ PushCPURegList(saved_fp_registers); | 128   __ PushCPURegList(saved_fp_registers); | 
| 129 | 129 | 
| 130   // We save all the registers expcept jssp, sp and lr. | 130   // We save all the registers expcept jssp, sp and lr. | 
| 131   CPURegList saved_registers(CPURegister::kRegister, kXRegSizeInBits, 0, 27); | 131   CPURegList saved_registers(CPURegister::kRegister, kXRegSizeInBits, 0, 27); | 
| 132   saved_registers.Combine(fp); | 132   saved_registers.Combine(fp); | 
| 133   __ PushCPURegList(saved_registers); | 133   __ PushCPURegList(saved_registers); | 
| 134 | 134 | 
|  | 135   __ Mov(x3, Operand(ExternalReference(Isolate::kCEntryFPAddress, isolate()))); | 
|  | 136   __ Str(fp, MemOperand(x3)); | 
|  | 137 | 
| 135   const int kSavedRegistersAreaSize = | 138   const int kSavedRegistersAreaSize = | 
| 136       (saved_registers.Count() * kXRegSize) + | 139       (saved_registers.Count() * kXRegSize) + | 
| 137       (saved_fp_registers.Count() * kDRegSize); | 140       (saved_fp_registers.Count() * kDRegSize); | 
| 138 | 141 | 
| 139   // Floating point registers are saved on the stack above core registers. | 142   // Floating point registers are saved on the stack above core registers. | 
| 140   const int kFPRegistersOffset = saved_registers.Count() * kXRegSize; | 143   const int kFPRegistersOffset = saved_registers.Count() * kXRegSize; | 
| 141 | 144 | 
| 142   // Get the bailout id from the stack. | 145   // Get the bailout id from the stack. | 
| 143   Register bailout_id = x2; | 146   Register bailout_id = x2; | 
| 144   __ Peek(bailout_id, kSavedRegistersAreaSize); | 147   __ Peek(bailout_id, kSavedRegistersAreaSize); | 
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 352 | 355 | 
| 353 void FrameDescription::SetCallerConstantPool(unsigned offset, intptr_t value) { | 356 void FrameDescription::SetCallerConstantPool(unsigned offset, intptr_t value) { | 
| 354   // No out-of-line constant pool support. | 357   // No out-of-line constant pool support. | 
| 355   UNREACHABLE(); | 358   UNREACHABLE(); | 
| 356 } | 359 } | 
| 357 | 360 | 
| 358 | 361 | 
| 359 #undef __ | 362 #undef __ | 
| 360 | 363 | 
| 361 } }  // namespace v8::internal | 364 } }  // namespace v8::internal | 
| OLD | NEW | 
|---|