Support for JNI local reference cookie.
This also fixes a cross compilation bug in reseting the top of the
indirect reference table following a down call.
Change-Id: I40d913a6f86dadfe87b58d6d13a1ff3613f270ac
diff --git a/src/assembler_arm.h b/src/assembler_arm.h
index 69b39c0..3f979c6 100644
--- a/src/assembler_arm.h
+++ b/src/assembler_arm.h
@@ -455,6 +455,8 @@
// Load routines
virtual void Load(ManagedRegister dest, FrameOffset src, size_t size);
+ virtual void Load(ManagedRegister dest, ThreadOffset src, size_t size);
+
virtual void LoadRef(ManagedRegister dest, FrameOffset src);
virtual void LoadRef(ManagedRegister dest, ManagedRegister base,
@@ -484,11 +486,18 @@
virtual void Copy(FrameOffset dest, ManagedRegister src_base, Offset src_offset,
ManagedRegister scratch, size_t size);
+ virtual void Copy(ManagedRegister dest_base, Offset dest_offset, FrameOffset src,
+ ManagedRegister scratch, size_t size);
+
virtual void Copy(FrameOffset dest, FrameOffset src_base, Offset src_offset,
ManagedRegister scratch, size_t size);
- virtual void Copy(ThreadOffset dest_base, Offset dest_offset, FrameOffset src,
- ManagedRegister scratch, ManagedRegister scratch2, size_t size);
+ virtual void Copy(ManagedRegister dest, Offset dest_offset,
+ ManagedRegister src, Offset src_offset,
+ ManagedRegister scratch, size_t size);
+
+ virtual void Copy(FrameOffset dest, Offset dest_offset, FrameOffset src, Offset src_offset,
+ ManagedRegister scratch, size_t size);
virtual void MemoryBarrier(ManagedRegister scratch);