diff options
author | 2016-05-19 10:37:24 +0100 | |
---|---|---|
committer | 2016-05-19 18:12:22 +0100 | |
commit | 3224838dfe9c95330ad963286f2c47e9546d3b5c (patch) | |
tree | 50d1b8759c61d392ecc159ede7efab94ecbfcde8 /compiler/utils/arm/assembler_arm.cc | |
parent | db9fcb30402a2726564905c206fa23ee86e146c3 (diff) |
Clean up JNI calling convention callee saves.
Precalculate callee saves at compile time and return them
as ArrayRef<> instead of keeping then in a std::vector<>.
Change-Id: I4fd7d2bbf6138dc31b0fe8554eac35b0777ec9ef
Diffstat (limited to 'compiler/utils/arm/assembler_arm.cc')
-rw-r--r-- | compiler/utils/arm/assembler_arm.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/compiler/utils/arm/assembler_arm.cc b/compiler/utils/arm/assembler_arm.cc index e5f91dc8ca..a7f4547514 100644 --- a/compiler/utils/arm/assembler_arm.cc +++ b/compiler/utils/arm/assembler_arm.cc @@ -386,8 +386,9 @@ static dwarf::Reg DWARFReg(SRegister reg) { constexpr size_t kFramePointerSize = kArmPointerSize; -void ArmAssembler::BuildFrame(size_t frame_size, ManagedRegister method_reg, - const std::vector<ManagedRegister>& callee_save_regs, +void ArmAssembler::BuildFrame(size_t frame_size, + ManagedRegister method_reg, + ArrayRef<const ManagedRegister> callee_save_regs, const ManagedRegisterEntrySpills& entry_spills) { CHECK_EQ(buffer_.Size(), 0U); // Nothing emitted yet CHECK_ALIGNED(frame_size, kStackAlignment); @@ -442,7 +443,7 @@ void ArmAssembler::BuildFrame(size_t frame_size, ManagedRegister method_reg, } void ArmAssembler::RemoveFrame(size_t frame_size, - const std::vector<ManagedRegister>& callee_save_regs) { + ArrayRef<const ManagedRegister> callee_save_regs) { CHECK_ALIGNED(frame_size, kStackAlignment); cfi_.RememberState(); |