| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #include "vm/globals.h" // NOLINT | 5 #include "vm/globals.h" // NOLINT |
| 6 #if defined(TARGET_ARCH_ARM) | 6 #if defined(TARGET_ARCH_ARM) |
| 7 | 7 |
| 8 #include "vm/assembler.h" | 8 #include "vm/assembler.h" |
| 9 #include "vm/cpu.h" | 9 #include "vm/cpu.h" |
| 10 #include "vm/longjump.h" | 10 #include "vm/longjump.h" |
| (...skipping 3204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3215 | 3215 |
| 3216 AddImmediate(SP, -extra_size); | 3216 AddImmediate(SP, -extra_size); |
| 3217 } | 3217 } |
| 3218 | 3218 |
| 3219 | 3219 |
| 3220 void Assembler::LeaveDartFrame(RestorePP restore_pp) { | 3220 void Assembler::LeaveDartFrame(RestorePP restore_pp) { |
| 3221 if (restore_pp == kRestoreCallerPP) { | 3221 if (restore_pp == kRestoreCallerPP) { |
| 3222 ldr(PP, Address(FP, kSavedCallerPpSlotFromFp * kWordSize)); | 3222 ldr(PP, Address(FP, kSavedCallerPpSlotFromFp * kWordSize)); |
| 3223 set_constant_pool_allowed(false); | 3223 set_constant_pool_allowed(false); |
| 3224 } | 3224 } |
| 3225 Drop(2); // Drop saved PP, PC marker. | 3225 |
| 3226 // This will implicitly drop saved PP, PC marker due to restoring SP from FP |
| 3227 // first. |
| 3226 LeaveFrame((1 << FP) | (1 << LR)); | 3228 LeaveFrame((1 << FP) | (1 << LR)); |
| 3227 } | 3229 } |
| 3228 | 3230 |
| 3229 | 3231 |
| 3230 void Assembler::EnterStubFrame() { | 3232 void Assembler::EnterStubFrame() { |
| 3231 EnterDartFrame(0); | 3233 EnterDartFrame(0); |
| 3232 } | 3234 } |
| 3233 | 3235 |
| 3234 | 3236 |
| 3235 void Assembler::LeaveStubFrame() { | 3237 void Assembler::LeaveStubFrame() { |
| (...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3508 | 3510 |
| 3509 | 3511 |
| 3510 const char* Assembler::FpuRegisterName(FpuRegister reg) { | 3512 const char* Assembler::FpuRegisterName(FpuRegister reg) { |
| 3511 ASSERT((0 <= reg) && (reg < kNumberOfFpuRegisters)); | 3513 ASSERT((0 <= reg) && (reg < kNumberOfFpuRegisters)); |
| 3512 return fpu_reg_names[reg]; | 3514 return fpu_reg_names[reg]; |
| 3513 } | 3515 } |
| 3514 | 3516 |
| 3515 } // namespace dart | 3517 } // namespace dart |
| 3516 | 3518 |
| 3517 #endif // defined TARGET_ARCH_ARM | 3519 #endif // defined TARGET_ARCH_ARM |
| OLD | NEW |