Merge "Check IsStatic() on special accessor fields."
diff --git a/runtime/thread.cc b/runtime/thread.cc
index 6c3e7ee..9797a48 100644
--- a/runtime/thread.cc
+++ b/runtime/thread.cc
@@ -1145,14 +1145,13 @@
   return managed_stack_.ShadowFramesContain(sirt_entry);
 }
 
-void Thread::SirtVisitRoots(RootCallback* visitor, void* arg) {
-  uint32_t tid = GetTid();
+void Thread::SirtVisitRoots(RootCallback* visitor, void* arg, uint32_t thread_id) {
   for (StackIndirectReferenceTable* cur = top_sirt_; cur; cur = cur->GetLink()) {
     size_t num_refs = cur->NumberOfReferences();
     for (size_t j = 0; j < num_refs; ++j) {
       mirror::Object* object = cur->GetReference(j);
       if (object != nullptr) {
-        mirror::Object* new_obj = visitor(object, arg, tid, kRootNativeStack);
+        mirror::Object* new_obj = visitor(object, arg, thread_id, kRootNativeStack);
         DCHECK(new_obj != nullptr);
         if (new_obj != object) {
           cur->SetReference(j, new_obj);
@@ -1998,7 +1997,7 @@
   }
   jni_env_->locals.VisitRoots(visitor, arg, thread_id, kRootJNILocal);
   jni_env_->monitors.VisitRoots(visitor, arg, thread_id, kRootJNIMonitor);
-  SirtVisitRoots(visitor, arg);
+  SirtVisitRoots(visitor, arg, thread_id);
   // Visit roots on this thread's stack
   Context* context = GetLongJumpContext();
   RootCallbackVisitor visitorToCallback(visitor, arg, thread_id);
@@ -2025,7 +2024,7 @@
 
 void Thread::VerifyStackImpl() {
   UniquePtr<Context> context(Context::Create());
-  RootCallbackVisitor visitorToCallback(VerifyRoot, Runtime::Current()->GetHeap(), GetTid());
+  RootCallbackVisitor visitorToCallback(VerifyRoot, Runtime::Current()->GetHeap(), GetThreadId());
   ReferenceMapVisitor<RootCallbackVisitor> mapper(this, context.get(), visitorToCallback);
   mapper.WalkStack();
 }
diff --git a/runtime/thread.h b/runtime/thread.h
index daffc92..a3a77bb 100644
--- a/runtime/thread.h
+++ b/runtime/thread.h
@@ -503,7 +503,7 @@
   // Is the given obj in this thread's stack indirect reference table?
   bool SirtContains(jobject obj) const;
 
-  void SirtVisitRoots(RootCallback* visitor, void* arg)
+  void SirtVisitRoots(RootCallback* visitor, void* arg, uint32_t thread_id)
       SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
 
   void PushSirt(StackIndirectReferenceTable* sirt) {