summaryrefslogtreecommitdiff
path: root/compiler/utils/arm/assembler_arm.cc
diff options
context:
space:
mode:
author Vladimir Marko <vmarko@google.com> 2016-05-19 10:37:24 +0100
committer Vladimir Marko <vmarko@google.com> 2016-05-19 18:12:22 +0100
commit3224838dfe9c95330ad963286f2c47e9546d3b5c (patch)
tree50d1b8759c61d392ecc159ede7efab94ecbfcde8 /compiler/utils/arm/assembler_arm.cc
parentdb9fcb30402a2726564905c206fa23ee86e146c3 (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.cc7
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();