diff options
Diffstat (limited to 'src/assembler_arm.cc')
-rw-r--r-- | src/assembler_arm.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/assembler_arm.cc b/src/assembler_arm.cc index 603be68..d470b90 100644 --- a/src/assembler_arm.cc +++ b/src/assembler_arm.cc @@ -1412,6 +1412,10 @@ void Assembler::StoreStackOffsetToThread(ThreadOffset thr_offs, TR, thr_offs.Int32Value()); } +void Assembler::StoreStackPointerToThread(ThreadOffset thr_offs) { + StoreToOffset(kStoreWord, SP, TR, thr_offs.Int32Value()); +} + void Assembler::Move(ManagedRegister dest, ManagedRegister src) { if (dest.IsCoreRegister()) { CHECK(src.IsCoreRegister()); @@ -1504,4 +1508,19 @@ void Assembler::Call(ManagedRegister base, Offset offset, // TODO: place reference map on call } +// Generate code to check if Thread::Current()->suspend_count_ is non-zero +// and branch to a SuspendSlowPath if it is. The SuspendSlowPath will continue +// at the next instruction. +void Assembler::SuspendPoll(ManagedRegister scratch, ManagedRegister return_reg, + FrameOffset return_save_location, + size_t return_size) { + LOG(WARNING) << "Unimplemented: Suspend poll"; +} + +// Generate code to check if Thread::Current()->exception_ is non-null +// and branch to a ExceptionSlowPath if it is. +void Assembler::ExceptionPoll(ManagedRegister scratch) { + LOG(WARNING) << "Unimplemented: Exception poll"; +} + } // namespace art |