Lines Matching refs:Class

176   ObjPtr<mirror::Class> exception_class = class_linker->FindClass(self, descriptor, class_loader);  in HasInitWithString()
190 static ObjPtr<mirror::Object> GetVerifyError(ObjPtr<mirror::Class> c) in GetVerifyError()
203 ObjPtr<mirror::Class> c) in HandleEarlierVerifyError()
222 ObjPtr<mirror::Class> throwable_class = GetClassRoot<mirror::Throwable>(class_linker); in HandleEarlierVerifyError()
223 ObjPtr<mirror::Class> error_class = obj->GetClass(); in HandleEarlierVerifyError()
249 static void EnsureSkipAccessChecksMethods(Handle<mirror::Class> klass, PointerSize pointer_size) in EnsureSkipAccessChecksMethods()
289 void AddClass(Thread* self, ObjPtr<mirror::Class> klass) REQUIRES_SHARED(Locks::mutator_lock_) { in AddClass()
326 MutableHandle<mirror::Class> klass = hs.NewHandle<mirror::Class>(nullptr); in AdjustThreadVisibilityCounter()
329 klass.Assign(ObjPtr<mirror::Class>::DownCast(self->DecodeJObject(classes_[i]))); in AdjustThreadVisibilityCounter()
332 mirror::Class::SetStatus(klass, ClassStatus::kVisiblyInitialized, self); in AdjustThreadVisibilityCounter()
418 void ClassLinker::ForceClassInitialized(Thread* self, Handle<mirror::Class> klass) { in ForceClassInitialized()
428 Thread* self, Handle<mirror::Class> klass) { in MarkClassInitialized()
432 mirror::Class::SetStatus(klass, ClassStatus::kVisiblyInitialized, self); in MarkClassInitialized()
439 mirror::Class::SetStatus(klass, ClassStatus::kVisiblyInitialized, self); in MarkClassInitialized()
443 mirror::Class::SetStatus(klass, ClassStatus::kInitialized, self); in MarkClassInitialized()
519 void ClassLinker::ThrowEarlierClassFailure(ObjPtr<mirror::Class> c, in ThrowEarlierClassFailure()
532 extra = mirror::Class::PrettyDescriptor(verify_error->AsClass()); in ThrowEarlierClassFailure()
568 static void VlogClassInitializationFailure(Handle<mirror::Class> klass) in VlogClassInitializationFailure()
577 static void WrapExceptionInInitializer(Handle<mirror::Class> klass) in WrapExceptionInInitializer()
716 std::fill_n(find_array_class_cache_, kFindArrayCacheSize, GcRoot<mirror::Class>(nullptr)); in ClassLinker()
719 void ClassLinker::CheckSystemClass(Thread* self, Handle<mirror::Class> c1, const char* descriptor) { in CheckSystemClass()
720 ObjPtr<mirror::Class> c2 = FindSystemClass(self, descriptor); in CheckSystemClass()
727 c1->DumpClass(os1, mirror::Class::kDumpClassFullDetail); in CheckSystemClass()
728 c2->DumpClass(os2, mirror::Class::kDumpClassFullDetail); in CheckSystemClass()
755 auto class_class_size = mirror::Class::ClassClassSize(image_pointer_size_); in InitWithoutImage()
758 Handle<mirror::Class> java_lang_Class(hs.NewHandle(ObjPtr<mirror::Class>::DownCast( in InitWithoutImage()
772 auto class_array_class_size = mirror::ObjectArray<mirror::Class>::ClassSize(image_pointer_size_); in InitWithoutImage()
773 Handle<mirror::Class> class_array_class(hs.NewHandle( in InitWithoutImage()
778 Handle<mirror::Class> java_lang_Object(hs.NewHandle( in InitWithoutImage()
783 mirror::Class::SetStatus(java_lang_Object, ClassStatus::kLoaded, self); in InitWithoutImage()
800 SubtypeCheck<ObjPtr<mirror::Class>>::EnsureInitialized(java_lang_Object.Get()); in InitWithoutImage()
801 SubtypeCheck<ObjPtr<mirror::Class>>::EnsureInitialized(java_lang_Class.Get()); in InitWithoutImage()
805 Handle<mirror::Class> object_array_class(hs.NewHandle( in InitWithoutImage()
818 Handle<mirror::Class> java_lang_String(hs.NewHandle( in InitWithoutImage()
822 mirror::Class::SetStatus(java_lang_String, ClassStatus::kResolved, self); in InitWithoutImage()
825 Handle<mirror::Class> java_lang_ref_Reference(hs.NewHandle( in InitWithoutImage()
828 mirror::Class::SetStatus(java_lang_ref_Reference, ClassStatus::kResolved, self); in InitWithoutImage()
831 class_roots_ = GcRoot<mirror::ObjectArray<mirror::Class>>( in InitWithoutImage()
832 mirror::ObjectArray<mirror::Class>::Alloc(self, in InitWithoutImage()
876 Handle<mirror::Class> java_lang_DexCache(hs.NewHandle( in InitWithoutImage()
881 mirror::Class::SetStatus(java_lang_DexCache, ClassStatus::kResolved, self); in InitWithoutImage()
885 Handle<mirror::Class> dalvik_system_ClassExt(hs.NewHandle( in InitWithoutImage()
888 mirror::Class::SetStatus(dalvik_system_ClassExt, ClassStatus::kResolved, self); in InitWithoutImage()
891 Handle<mirror::Class> object_array_string(hs.NewHandle( in InitWithoutImage()
935 mirror::Class::SetStatus(java_lang_Object, ClassStatus::kNotReady, self); in InitWithoutImage()
938 mirror::Class::SetStatus(java_lang_String, ClassStatus::kNotReady, self); in InitWithoutImage()
940 mirror::Class::SetStatus(java_lang_DexCache, ClassStatus::kNotReady, self); in InitWithoutImage()
943 mirror::Class::SetStatus(dalvik_system_ClassExt, ClassStatus::kNotReady, self); in InitWithoutImage()
977 mirror::Class::GetDirectInterface(self, class_array_class.Get(), 0)); in InitWithoutImage()
979 mirror::Class::GetDirectInterface(self, class_array_class.Get(), 1)); in InitWithoutImage()
981 mirror::Class::GetDirectInterface(self, object_array_class.Get(), 0)); in InitWithoutImage()
983 mirror::Class::GetDirectInterface(self, object_array_class.Get(), 1)); in InitWithoutImage()
995 ObjPtr<mirror::Class> class_root = FindSystemClass(self, "Ljava/lang/reflect/Field;"); in InitWithoutImage()
1072 mirror::Class::SetStatus(java_lang_ref_Reference, ClassStatus::kNotReady, self); in InitWithoutImage()
1121 ObjPtr<mirror::Class> string_factory_class = in CreateStringInitBindings()
1124 ObjPtr<mirror::Class> string_class = GetClassRoot<mirror::String>(class_linker); in CreateStringInitBindings()
1140 Handle<mirror::Class> java_lang_ref_Reference = in FinishInit()
1142 Handle<mirror::Class> java_lang_ref_FinalizerReference = in FinishInit()
1168 ObjPtr<mirror::Class> klass = GetClassRoot(class_root); in FinishInit()
1187 ObjPtr<mirror::Class> soe_klass = FindSystemClass(self, "Ljava/lang/StackOverflowError;"); in FinishInit()
1200 ObjPtr<mirror::Class> c = GetClassRoot(ClassRoot(i), this); in RunRootClinits()
1203 Handle<mirror::Class> h_class(hs.NewHandle(c)); in RunRootClinits()
1319 ObjPtr<mirror::Class> klass = obj->AsClass(); in InitFromBootImage()
1345 class_roots_ = GcRoot<mirror::ObjectArray<mirror::Class>>( in InitFromBootImage()
1346 ObjPtr<mirror::ObjectArray<mirror::Class>>::DownCast( in InitFromBootImage()
1348 DCHECK_EQ(GetClassRoot<mirror::Class>(this)->GetClassFlags(), mirror::kClassFlagClass); in InitFromBootImage()
1392 soa.Decode<mirror::Class>(WellKnownClasses::java_lang_BootClassLoader) == in IsBootClassLoader()
1403 bool operator()(ObjPtr<mirror::Class> klass) REQUIRES_SHARED(Locks::mutator_lock_) { in operator ()()
1464 void operator()(ObjPtr<mirror::Class> klass ATTRIBUTE_UNUSED, in operator ()()
1697 ObjPtr<mirror::Class> klass = types[j].load(std::memory_order_relaxed).object.Read(); in Update()
1704 ObjPtr<mirror::Class> super_class = klass->GetSuperClass(); in Update()
1749 ObjPtr<mirror::Class> klass = method.GetDeclaringClassUnchecked(); in Update()
1958 void CheckArtMethod(ArtMethod* m, ObjPtr<mirror::Class> expected_class) in CheckArtMethod()
1961 ObjPtr<mirror::Class> declaring_class = m->GetDeclaringClassUnchecked(); in CheckArtMethod()
1980 ObjPtr<mirror::Class> expected_class) in CheckArtMethodPointerArray()
2034 ObjPtr<mirror::Class> klass = method.GetDeclaringClass(); in VerifyAppImage()
2037 << mirror::Class::PrettyClass(klass); in VerifyAppImage()
2042 std::vector<ObjPtr<mirror::Class>> classes; in VerifyAppImage()
2043 auto verify_direct_interfaces_in_table = [&](ObjPtr<mirror::Class> klass) in VerifyAppImage()
2052 for (ObjPtr<mirror::Class> klass : classes) { in VerifyAppImage()
2063 ObjPtr<mirror::Class> klass = types[j].load(std::memory_order_relaxed).object.Read(); in VerifyAppImage()
2104 Handle<mirror::ObjectArray<mirror::Class>> class_roots(hs.NewHandle( in AddImageSpace()
2105 header.GetImageRoot(ImageHeader::kClassRoots)->AsObjectArray<mirror::Class>())); in AddImageSpace()
2117 ObjPtr<mirror::ObjectArray<mirror::Class>> existing_class_roots = GetClassRoots(); in AddImageSpace()
2147 ObjPtr<mirror::Class> klass = types[j].load(std::memory_order_relaxed).object.Read(); in AddImageSpace()
2246 ObjPtr<mirror::Class> klass(root.Read()); in AddImageSpace()
2271 SubtypeCheck<ObjPtr<mirror::Class>>::EnsureInitialized(root.Read()); in AddImageSpace()
2296 bool ClassLinker::ClassInClassTable(ObjPtr<mirror::Class> klass) { in ClassInClassTable()
2345 ObjPtr<mirror::Class> old_ref = root.Read<kWithoutReadBarrier>(); in VisitClassRoots()
2347 ObjPtr<mirror::Class> new_ref = root.Read<kWithoutReadBarrier>(); in VisitClassRoots()
2416 bool operator()(ObjPtr<mirror::Class> klass) override REQUIRES_SHARED(Locks::mutator_lock_) { in operator ()()
2453 bool operator()(ObjPtr<mirror::Class> klass) override { in operator ()()
2457 std::vector<ObjPtr<mirror::Class>> classes_;
2462 explicit GetClassInToObjectArray(mirror::ObjectArray<mirror::Class>* arr) in GetClassInToObjectArray()
2465 bool operator()(ObjPtr<mirror::Class> klass) override REQUIRES_SHARED(Locks::mutator_lock_) { in operator ()()
2479 mirror::ObjectArray<mirror::Class>* const arr_;
2490 for (ObjPtr<mirror::Class> klass : accumulator.classes_) { in VisitClassesWithoutClassesLock()
2498 auto classes = hs.NewHandle<mirror::ObjectArray<mirror::Class>>(nullptr); in VisitClassesWithoutClassesLock()
2508 ObjPtr<mirror::Class> array_of_class = GetClassRoot<mirror::ObjectArray<mirror::Class>>(this); in VisitClassesWithoutClassesLock()
2510 mirror::ObjectArray<mirror::Class>::Alloc(self, array_of_class, class_table_size)); in VisitClassesWithoutClassesLock()
2522 ObjPtr<mirror::Class> klass = classes->Get(i); in VisitClassesWithoutClassesLock()
2629 ObjPtr<mirror::Class> ClassLinker::AllocClass(Thread* self, in AllocClass()
2630 ObjPtr<mirror::Class> java_lang_Class, in AllocClass()
2633 DCHECK_GE(class_size, sizeof(mirror::Class)); in AllocClass()
2646 ObjPtr<mirror::Class> ClassLinker::AllocClass(Thread* self, in AllocClass()
2647 ObjPtr<mirror::Class> java_lang_Class, in AllocClass()
2649 mirror::Class::InitializeClassVisitor visitor(class_size); in AllocClass()
2653 ObjPtr<mirror::Class> ClassLinker::AllocClass(Thread* self, uint32_t class_size) { in AllocClass()
2654 return AllocClass(self, GetClassRoot<mirror::Class>(this), class_size); in AllocClass()
2666 ObjPtr<mirror::Class> array_class = AllocClass</* kMovable= */ false>( in AllocPrimitiveArrayClass()
2667 self, GetClassRoot<mirror::Class>(this), mirror::Array::ClassSize(image_pointer_size_)); in AllocPrimitiveArrayClass()
2668 ObjPtr<mirror::Class> component_type = GetClassRoot(primitive_root, this); in AllocPrimitiveArrayClass()
2674 void ClassLinker::FinishArrayClassSetup(ObjPtr<mirror::Class> array_class) { in FinishArrayClassSetup()
2675 ObjPtr<mirror::Class> java_lang_Object = GetClassRoot<mirror::Object>(this); in FinishArrayClassSetup()
2679 ObjPtr<mirror::Class> component_type = array_class->GetComponentType(); in FinishArrayClassSetup()
2729 ObjPtr<mirror::Class> array_class = GetClassRoot(array_root, this); in FinishCoreArrayClassSetup()
2735 ObjPtr<mirror::Class> existing = InsertClass(descriptor, array_class, hash); in FinishCoreArrayClassSetup()
2746 ObjPtr<mirror::Class> ClassLinker::EnsureResolved(Thread* self, in EnsureResolved()
2748 ObjPtr<mirror::Class> klass) { in EnsureResolved()
2752 HandleWrapperObjPtr<mirror::Class> h = hs.NewHandleWrapper(&klass); in EnsureResolved()
2764 Handle<mirror::Class> h_class(hs.NewHandle(klass)); in EnsureResolved()
2765 ObjectLock<mirror::Class> lock(self, h_class); in EnsureResolved()
2787 HandleWrapperObjPtr<mirror::Class> h_class(hs.NewHandleWrapper(&klass)); in EnsureResolved()
2789 ObjectTryLock<mirror::Class> lock(self, h_class); in EnsureResolved()
2796 mirror::Class::SetStatus(h_class, ClassStatus::kErrorUnresolved, self); in EnsureResolved()
2843 /*out*/ ObjPtr<mirror::Class>* result) { in FindClassInSharedLibraries()
2872 /*out*/ ObjPtr<mirror::Class>* result) { in FindClassInBaseDexClassLoader()
2978 ObjPtr<mirror::Class> ClassLinker::FindClassInBootClassLoaderClassPath(Thread* self, in FindClassInBootClassLoaderClassPath()
2981 ObjPtr<mirror::Class> result = nullptr; in FindClassInBootClassLoaderClassPath()
2984 ObjPtr<mirror::Class> klass = LookupClass(self, descriptor, hash, nullptr); in FindClassInBootClassLoaderClassPath()
3003 ObjPtr<mirror::Class> ClassLinker::FindClassInBaseDexClassLoaderClassPath( in FindClassInBaseDexClassLoaderClassPath()
3013 ObjPtr<mirror::Class> ret; in FindClassInBaseDexClassLoaderClassPath()
3017 ObjPtr<mirror::Class> klass = DefineClass(soa.Self(), in FindClassInBaseDexClassLoaderClassPath()
3040 ObjPtr<mirror::Class> ClassLinker::FindClass(Thread* self, in FindClass()
3054 ObjPtr<mirror::Class> klass = LookupClass(self, descriptor, hash, class_loader.Get()); in FindClass()
3079 ObjPtr<mirror::Class> result_ptr; in FindClass()
3166 result_ptr = soa.Decode<mirror::Class>(result.get()); in FindClass()
3187 ObjPtr<mirror::Class> old; in FindClass()
3203 ObjPtr<mirror::Class> loader_class = class_loader->GetClass(); in FindClass()
3243 ObjPtr<mirror::Class> Finish(Handle<mirror::Class> h_klass) in Finish()
3253 ObjPtr<mirror::Class> Finish(ObjPtr<mirror::Class> klass) in Finish()
3256 Handle<mirror::Class> h_klass(hs.NewHandle(klass)); in Finish()
3260 ObjPtr<mirror::Class> Finish(nullptr_t np ATTRIBUTE_UNUSED) in Finish()
3262 ScopedNullHandle<mirror::Class> snh; in Finish()
3271 ObjPtr<mirror::Class> ClassLinker::DefineClass(Thread* self, in DefineClass()
3279 auto klass = hs.NewHandle<mirror::Class>(nullptr); in DefineClass()
3287 klass.Assign(GetClassRoot<mirror::Class>(this)); in DefineClass()
3369 ObjectLock<mirror::Class> lock(self, klass); in DefineClass()
3375 ObjPtr<mirror::Class> existing = InsertClass(descriptor, klass.Get(), hash); in DefineClass()
3392 mirror::Class::SetStatus(klass, ClassStatus::kErrorUnresolved, self); in DefineClass()
3402 mirror::Class::SetStatus(klass, ClassStatus::kErrorUnresolved, self); in DefineClass()
3415 auto interfaces = hs.NewHandle<mirror::ObjectArray<mirror::Class>>(nullptr); in DefineClass()
3417 MutableHandle<mirror::Class> h_new_class = hs.NewHandle<mirror::Class>(nullptr); in DefineClass()
3421 mirror::Class::SetStatus(klass, ClassStatus::kErrorUnresolved, self); in DefineClass()
3508 return mirror::Class::ComputeClassSize(false, in SizeOfClassWithoutEmbeddedTables()
3609 void ClassLinker::FixupStaticTrampolines(Thread* self, ObjPtr<mirror::Class> klass) { in FixupStaticTrampolines()
3769 Handle<mirror::Class> klass, in SetupClass()
3777 klass->SetClass(GetClassRoot<mirror::Class>(this)); in SetupClass()
3783 mirror::Class::SetStatus(klass, ClassStatus::kIdx, nullptr); in SetupClass()
3850 Handle<mirror::Class> klass) { in LoadClass()
3959 Handle<mirror::Class> klass, in LoadField()
3971 Handle<mirror::Class> klass, in LoadMethod()
4326 ObjPtr<mirror::Class> primitive_class = in CreatePrimitiveClass()
4327 AllocClass(self, mirror::Class::PrimitiveClassSize(image_pointer_size_)); in CreatePrimitiveClass()
4342 ObjPtr<mirror::Class> existing = InsertClass(descriptor, in CreatePrimitiveClass()
4366 ObjPtr<mirror::Class> ClassLinker::CreateArrayClass(Thread* self, in CreateArrayClass()
4385 MutableHandle<mirror::Class> component_type(hs.NewHandle(FindClass(self, descriptor + 1, in CreateArrayClass()
4421 ObjPtr<mirror::Class> new_class = in CreateArrayClass()
4449 mirror::Class::InitializeClassVisitor init_class(array_class_size); in CreateArrayClass()
4451 ObjPtr<mirror::Class> klass = ObjPtr<mirror::Class>::DownCast(obj); in CreateArrayClass()
4459 auto new_class = hs.NewHandle<mirror::Class>( in CreateArrayClass()
4460 AllocClass(self, GetClassRoot<mirror::Class>(this), array_class_size, visitor)); in CreateArrayClass()
4466 ObjPtr<mirror::Class> existing = InsertClass(descriptor, new_class.Get(), hash); in CreateArrayClass()
4486 ObjPtr<mirror::Class> ClassLinker::LookupPrimitiveClass(char type) { in LookupPrimitiveClass()
4504 ObjPtr<mirror::Class> ClassLinker::FindPrimitiveClass(char type) { in FindPrimitiveClass()
4505 ObjPtr<mirror::Class> result = LookupPrimitiveClass(type); in FindPrimitiveClass()
4513 ObjPtr<mirror::Class> ClassLinker::InsertClass(const char* descriptor, in InsertClass()
4514 ObjPtr<mirror::Class> klass, in InsertClass()
4530 ObjPtr<mirror::Class> existing = class_table->Lookup(descriptor, hash); in InsertClass()
4541 new_class_roots_.push_back(GcRoot<mirror::Class>(klass)); in InsertClass()
4562 void ClassLinker::UpdateClassMethods(ObjPtr<mirror::Class> klass, in UpdateClassMethods()
4571 ObjPtr<mirror::Class> ClassLinker::LookupClass(Thread* self, in LookupClass()
4577 ObjPtr<mirror::Class> ClassLinker::LookupClass(Thread* self, in LookupClass()
4584 ObjPtr<mirror::Class> result = class_table->Lookup(descriptor, hash); in LookupClass()
4618 std::vector<ObjPtr<mirror::Class>>* result) in LookupClassesVisitor()
4626 ObjPtr<mirror::Class> klass = class_table->Lookup(descriptor_, hash_); in Visit()
4636 std::vector<ObjPtr<mirror::Class>>* const result_;
4640 std::vector<ObjPtr<mirror::Class>>& result) { in LookupClasses()
4645 ObjPtr<mirror::Class> klass = boot_class_table_->Lookup(descriptor, hash); in LookupClasses()
4655 Handle<mirror::Class> klass, in AttemptSupertypeVerification()
4656 Handle<mirror::Class> supertype) { in AttemptSupertypeVerification()
4694 ObjectLock<mirror::Class> super_lock(self, klass); in AttemptSupertypeVerification()
4695 mirror::Class::SetStatus(klass, ClassStatus::kErrorResolved, self); in AttemptSupertypeVerification()
4700 Thread* self, Handle<mirror::Class> klass, verifier::HardFailLogMode log_level) { in VerifyClass()
4703 ObjectLock<mirror::Class> lock(self, klass); in VerifyClass()
4737 mirror::Class::SetStatus(klass, ClassStatus::kVerified, self); in VerifyClass()
4750 mirror::Class::SetStatus(klass, ClassStatus::kVerifying, self); in VerifyClass()
4754 mirror::Class::SetStatus(klass, ClassStatus::kVerified, self); in VerifyClass()
4766 MutableHandle<mirror::Class> supertype(hs.NewHandle(klass->GetSuperClass())); in VerifyClass()
4786 MutableHandle<mirror::Class> iface(hs.NewHandle<mirror::Class>(nullptr)); in VerifyClass()
4829 DCHECK(!mirror::Class::IsErroneous(oat_file_class_status) || !preverified); in VerifyClass()
4838 ObjectLock<mirror::Class> lock(self, klass); in VerifyClass()
4856 mirror::Class::SetStatus(klass, ClassStatus::kVerified, self); in VerifyClass()
4860 mirror::Class::SetStatus(klass, ClassStatus::kRetryVerificationAtRuntime, self); in VerifyClass()
4872 mirror::Class::SetStatus(klass, ClassStatus::kRetryVerificationAtRuntime, self); in VerifyClass()
4874 mirror::Class::SetStatus(klass, ClassStatus::kVerifiedNeedsAccessChecks, self); in VerifyClass()
4877 mirror::Class::SetStatus(klass, ClassStatus::kVerified, self); in VerifyClass()
4889 mirror::Class::SetStatus(klass, ClassStatus::kErrorResolved, self); in VerifyClass()
4917 Handle<mirror::Class> klass, in PerformClassVerification()
4931 ObjPtr<mirror::Class> klass, in VerifyClassUsingOatFile()
4970 if (mirror::Class::IsErroneous(oat_file_class_status)) { in VerifyClassUsingOatFile()
4989 void ClassLinker::ResolveClassExceptionHandlerTypes(Handle<mirror::Class> klass) { in ResolveClassExceptionHandlerTypes()
5012 ObjPtr<mirror::Class> exception_type = ResolveType(iterator.GetHandlerTypeIndex(), method); in ResolveMethodExceptionHandlerTypes()
5023 ObjPtr<mirror::Class> ClassLinker::CreateProxyClass(ScopedObjectAccessAlreadyRunnable& soa, in CreateProxyClass()
5043 MutableHandle<mirror::Class> temp_klass(hs.NewHandle( in CreateProxyClass()
5044 AllocClass(self, GetClassRoot<mirror::Class>(this), sizeof(mirror::Class)))); in CreateProxyClass()
5061 mirror::Class::SetStatus(temp_klass, ClassStatus::kIdx, self); in CreateProxyClass()
5073 ObjPtr<mirror::Class> existing = InsertClass(descriptor, temp_klass.Get(), hash); in CreateProxyClass()
5103 << mirror::Class::PrettyClass(h_methods->GetClass()); in CreateProxyClass()
5126 MutableHandle<mirror::ObjectArray<mirror::ObjectArray<mirror::Class>>> original_proxied_throws( in CreateProxyClass()
5127 hs.NewHandle(soa.Decode<mirror::ObjectArray<mirror::ObjectArray<mirror::Class>>>(throws))); in CreateProxyClass()
5128 MutableHandle<mirror::ObjectArray<mirror::ObjectArray<mirror::Class>>> proxied_throws( in CreateProxyClass()
5129 hs.NewHandle<mirror::ObjectArray<mirror::ObjectArray<mirror::Class>>>( in CreateProxyClass()
5131 ? mirror::ObjectArray<mirror::ObjectArray<mirror::Class>>::Alloc( in CreateProxyClass()
5172 mirror::Class::SetStatus(temp_klass, ClassStatus::kLoaded, self); in CreateProxyClass()
5179 MutableHandle<mirror::Class> klass = hs.NewHandle<mirror::Class>(nullptr); in CreateProxyClass()
5182 ObjectLock<mirror::Class> resolution_lock(self, temp_klass); in CreateProxyClass()
5185 Handle<mirror::ObjectArray<mirror::Class>> h_interfaces( in CreateProxyClass()
5186 hs.NewHandle(soa.Decode<mirror::ObjectArray<mirror::Class>>(interfaces))); in CreateProxyClass()
5188 mirror::Class::SetStatus(temp_klass, ClassStatus::kErrorUnresolved, self); in CreateProxyClass()
5198 soa.Decode<mirror::ObjectArray<mirror::Class>>(interfaces)); in CreateProxyClass()
5210 SubtypeCheck<ObjPtr<mirror::Class>>::EnsureInitialized(klass.Get()); in CreateProxyClass()
5217 ObjectLock<mirror::Class> initialization_lock(self, klass); in CreateProxyClass()
5247 soa.Decode<mirror::ObjectArray<mirror::Class>>(interfaces)); in CreateProxyClass()
5254 void ClassLinker::CreateProxyConstructor(Handle<mirror::Class> klass, ArtMethod* out) { in CreateProxyConstructor()
5256 ObjPtr<mirror::Class> proxy_class = GetClassRoot<mirror::Proxy>(this); in CreateProxyConstructor()
5290 void ClassLinker::CreateProxyMethod(Handle<mirror::Class> klass, ArtMethod* prototype, in CreateProxyMethod()
5331 bool ClassLinker::CanWeInitializeClass(ObjPtr<mirror::Class> klass, bool can_init_statics, in CanWeInitializeClass()
5356 ObjPtr<mirror::Class> iface = klass->GetIfTable()->GetInterface(i); in CanWeInitializeClass()
5367 ObjPtr<mirror::Class> super_class = klass->GetSuperClass(); in CanWeInitializeClass()
5375 Handle<mirror::Class> klass, in InitializeClass()
5397 ObjectLock<mirror::Class> lock(self, klass); in InitializeClass()
5426 mirror::Class::PrettyClass(self->GetException()->GetClass())); in InitializeClass()
5487 mirror::Class::SetStatus(klass, ClassStatus::kErrorResolved, self); in InitializeClass()
5498 mirror::Class::SetStatus(klass, ClassStatus::kInitializing, self); in InitializeClass()
5507 ObjPtr<mirror::Class> super_class = klass->GetSuperClass(); in InitializeClass()
5512 Handle<mirror::Class> handle_scope_super(hs.NewHandle(super_class)); in InitializeClass()
5527 ObjectLock<mirror::Class> lock(self, klass); in InitializeClass()
5529 mirror::Class::SetStatus(klass, ClassStatus::kErrorResolved, self); in InitializeClass()
5542 MutableHandle<mirror::Class> handle_scope_iface(hs_iface.NewHandle<mirror::Class>(nullptr)); in InitializeClass()
5544 handle_scope_iface.Assign(mirror::Class::GetDirectInterface(self, klass.Get(), i)); in InitializeClass()
5562 ObjectLock<mirror::Class> lock(self, klass); in InitializeClass()
5564 mirror::Class::SetStatus(klass, ClassStatus::kErrorResolved, self); in InitializeClass()
5644 ObjectLock<mirror::Class> lock(self, klass); in InitializeClass()
5648 mirror::Class::SetStatus(klass, ClassStatus::kErrorResolved, self); in InitializeClass()
5654 << mirror::Class::PrettyDescriptor(klass.Get()) in InitializeClass()
5657 mirror::Class::SetStatus(klass, ClassStatus::kErrorResolved, self); in InitializeClass()
5686 Handle<mirror::Class> iface, in InitializeDefaultInterfaceRecursive()
5694 MutableHandle<mirror::Class> handle_super_iface(hs.NewHandle<mirror::Class>(nullptr)); in InitializeDefaultInterfaceRecursive()
5697 ObjPtr<mirror::Class> super_iface = mirror::Class::GetDirectInterface(self, iface.Get(), i); in InitializeDefaultInterfaceRecursive()
5728 ObjectTryLock<mirror::Class> lock(self, iface); in InitializeDefaultInterfaceRecursive()
5736 bool ClassLinker::WaitForInitializeClass(Handle<mirror::Class> klass, in WaitForInitializeClass()
5738 ObjectLock<mirror::Class>& lock) in WaitForInitializeClass()
5750 mirror::Class::SetStatus(klass, ClassStatus::kErrorResolved, self); in WaitForInitializeClass()
5779 static void ThrowSignatureCheckResolveReturnTypeException(Handle<mirror::Class> klass, in ThrowSignatureCheckResolveReturnTypeException()
5780 Handle<mirror::Class> super_klass, in ThrowSignatureCheckResolveReturnTypeException()
5795 mirror::Class::PrettyDescriptor(klass.Get()).c_str(), in ThrowSignatureCheckResolveReturnTypeException()
5798 mirror::Class::PrettyDescriptor(super_klass.Get()).c_str(), in ThrowSignatureCheckResolveReturnTypeException()
5802 static void ThrowSignatureCheckResolveArgException(Handle<mirror::Class> klass, in ThrowSignatureCheckResolveArgException()
5803 Handle<mirror::Class> super_klass, in ThrowSignatureCheckResolveArgException()
5817 mirror::Class::PrettyDescriptor(klass.Get()).c_str(), in ThrowSignatureCheckResolveArgException()
5820 mirror::Class::PrettyDescriptor(super_klass.Get()).c_str(), in ThrowSignatureCheckResolveArgException()
5824 static void ThrowSignatureMismatch(Handle<mirror::Class> klass, in ThrowSignatureMismatch()
5825 Handle<mirror::Class> super_klass, in ThrowSignatureMismatch()
5831 mirror::Class::PrettyDescriptor(klass.Get()).c_str(), in ThrowSignatureMismatch()
5834 mirror::Class::PrettyDescriptor(super_klass.Get()).c_str(), in ThrowSignatureMismatch()
5839 Handle<mirror::Class> klass, in HasSameSignatureWithDifferentClassLoaders()
5840 Handle<mirror::Class> super_klass, in HasSameSignatureWithDifferentClassLoaders()
5846 Handle<mirror::Class> return_type(hs.NewHandle(method1->ResolveReturnType())); in HasSameSignatureWithDifferentClassLoaders()
5851 ObjPtr<mirror::Class> other_return_type = method2->ResolveReturnType(); in HasSameSignatureWithDifferentClassLoaders()
5895 Handle<mirror::Class> param_type(hs.NewHandle( in HasSameSignatureWithDifferentClassLoaders()
5903 ObjPtr<mirror::Class> other_param_type = in HasSameSignatureWithDifferentClassLoaders()
5925 bool ClassLinker::ValidateSuperClassDescriptors(Handle<mirror::Class> klass) { in ValidateSuperClassDescriptors()
5932 MutableHandle<mirror::Class> super_klass(hs.NewHandle<mirror::Class>(nullptr)); in ValidateSuperClassDescriptors()
5976 Handle<mirror::Class> c, in EnsureInitialized()
6007 SubtypeCheck<ObjPtr<mirror::Class>>::EnsureInitialized(c.Get()); in EnsureInitialized()
6021 void ClassLinker::FixupTemporaryDeclaringClass(ObjPtr<mirror::Class> temp_class, in FixupTemporaryDeclaringClass()
6022 ObjPtr<mirror::Class> new_class) { in FixupTemporaryDeclaringClass()
6083 static ImTable* FindSuperImt(ObjPtr<mirror::Class> klass, PointerSize pointer_size) in FindSuperImt()
6096 Handle<mirror::Class> klass, in LinkClass()
6097 Handle<mirror::ObjectArray<mirror::Class>> interfaces, in LinkClass()
6098 MutableHandle<mirror::Class>* h_new_class_out) { in LinkClass()
6172 mirror::Class::SetStatus(klass, ClassStatus::kResolved, self); in LinkClass()
6178 Handle<mirror::Class> h_new_class = in LinkClass()
6179 hs.NewHandle(mirror::Class::CopyOf(klass, self, class_size, imt, image_pointer_size_)); in LinkClass()
6189 mirror::Class::SetStatus(klass, ClassStatus::kErrorUnresolved, self); in LinkClass()
6194 ObjectLock<mirror::Class> lock(self, h_new_class); in LinkClass()
6201 const ObjPtr<mirror::Class> existing = in LinkClass()
6210 new_class_roots_.push_back(GcRoot<mirror::Class>(h_new_class.Get())); in LinkClass()
6223 mirror::Class::SetStatus(klass, ClassStatus::kRetired, self); in LinkClass()
6228 mirror::Class::SetStatus(h_new_class, ClassStatus::kResolved, self); in LinkClass()
6235 bool ClassLinker::LoadSuperAndInterfaces(Handle<mirror::Class> klass, const DexFile& dex_file) { in LoadSuperAndInterfaces()
6253 ObjPtr<mirror::Class> super_class = ResolveType(super_class_idx, klass.Get()); in LoadSuperAndInterfaces()
6272 ObjPtr<mirror::Class> interface = ResolveType(idx, klass.Get()); in LoadSuperAndInterfaces()
6289 mirror::Class::SetStatus(klass, ClassStatus::kLoaded, nullptr); in LoadSuperAndInterfaces()
6293 bool ClassLinker::LinkSuperClass(Handle<mirror::Class> klass) { in LinkSuperClass()
6295 ObjPtr<mirror::Class> super = klass->GetSuperClass(); in LinkSuperClass()
6296 ObjPtr<mirror::Class> object_class = GetClassRoot<mirror::Object>(this); in LinkSuperClass()
6372 Handle<mirror::Class> klass, in LinkMethods()
6373 Handle<mirror::ObjectArray<mirror::Class>> interfaces, in LinkMethods()
6439 LinkVirtualHashTable(Handle<mirror::Class> klass, in LinkVirtualHashTable()
6501 Handle<mirror::Class> klass_;
6512 Handle<mirror::Class> klass, in LinkVirtualMethods()
6555 Handle<mirror::Class> super_class(hs.NewHandle(klass->GetSuperClass())); in LinkVirtualMethods()
6696 << " in " << mirror::Class::PrettyClass(klass.Get()); in LinkVirtualMethods()
6774 Handle<mirror::Class> iface, in ContainsOverridingMethodOf()
6787 MutableHandle<mirror::Class> current_iface(hs.NewHandle<mirror::Class>(nullptr)); in ContainsOverridingMethodOf()
6813 Handle<mirror::Class> klass, in FindDefaultMethodImplementation()
6835 MutableHandle<mirror::Class> chosen_iface(hs.NewHandle<mirror::Class>(nullptr)); in FindDefaultMethodImplementation()
6837 MutableHandle<mirror::Class> iface(hs.NewHandle<mirror::Class>(nullptr)); in FindDefaultMethodImplementation()
6922 ArtMethod* ClassLinker::AddMethodToConflictTable(ObjPtr<mirror::Class> klass, in AddMethodToConflictTable()
6962 Handle<mirror::Class> klass, in AllocateIfTableMethodArrays()
7030 void ClassLinker::FillIMTAndConflictTables(ObjPtr<mirror::Class> klass) { in FillIMTAndConflictTables()
7055 ObjPtr<mirror::Class> super_class = klass->GetSuperClass(); in FillIMTAndConflictTables()
7108 ObjPtr<mirror::Class> klass, in FillIMTFromIfTable()
7115 ObjPtr<mirror::Class> interface = if_table->GetInterface(i); in FillIMTFromIfTable()
7182 ObjPtr<mirror::Class> interface = if_table->GetInterface(i); in FillIMTFromIfTable()
7215 const std::unordered_set<ObjPtr<mirror::Class>, HashObjPtr>& classes, in NotSubinterfaceOfAny() argument
7216 ObjPtr<mirror::Class> val) in NotSubinterfaceOfAny()
7220 for (ObjPtr<mirror::Class> c : classes) { in NotSubinterfaceOfAny()
7249 const std::vector<ObjPtr<mirror::Class>>& to_process) in FillIfTable()
7254 std::unordered_set<ObjPtr<mirror::Class>, HashObjPtr> classes_in_iftable; in FillIfTable()
7257 ObjPtr<mirror::Class> iface = iftable->GetInterface(i); in FillIfTable()
7262 for (ObjPtr<mirror::Class> interface : to_process) { in FillIfTable()
7275 ObjPtr<mirror::Class> super_interface = interface->GetIfTable()->GetInterface(j); in FillIfTable()
7292 ObjPtr<mirror::Class> super_interface = interface->GetIfTable()->GetInterface(j); in FillIfTable()
7294 << "Iftable does not contain " << mirror::Class::PrettyClass(super_interface) in FillIfTable()
7302 ObjPtr<mirror::Class> if_a = iftable->GetInterface(i); in FillIfTable()
7304 ObjPtr<mirror::Class> if_b = iftable->GetInterface(j); in FillIfTable()
7307 << "Bad interface order: " << mirror::Class::PrettyClass(if_a) << " (index " << i in FillIfTable()
7317 bool ClassLinker::SetupInterfaceLookupTable(Thread* self, Handle<mirror::Class> klass, in SetupInterfaceLookupTable()
7318 Handle<mirror::ObjectArray<mirror::Class>> interfaces) { in SetupInterfaceLookupTable()
7352 ObjPtr<mirror::Class> interface = have_interfaces in SetupInterfaceLookupTable()
7354 : mirror::Class::GetDirectInterface(self, klass.Get(), i); in SetupInterfaceLookupTable()
7376 ObjPtr<mirror::Class> super_interface = super_iftable->GetInterface(i); in SetupInterfaceLookupTable()
7389 std::vector<ObjPtr<mirror::Class>> to_add; in SetupInterfaceLookupTable()
7391 ObjPtr<mirror::Class> interface = have_interfaces ? interfaces->Get(i) : in SetupInterfaceLookupTable()
7392 mirror::Class::GetDirectInterface(self, klass.Get(), i); in SetupInterfaceLookupTable()
7442 Handle<mirror::Class> klass, in CheckClassOwnsVTableEntries()
7447 ObjPtr<mirror::Class> super_temp = (klass->HasSuperClass()) ? klass->GetSuperClass() : nullptr; in CheckClassOwnsVTableEntries()
7448 Handle<mirror::Class> superclass(hs.NewHandle(super_temp)); in CheckClassOwnsVTableEntries()
7474 void CheckVTableHasNoDuplicates(Thread* self, Handle<mirror::Class> klass) in CheckVTableHasNoDuplicates()
7631 Handle<mirror::Class> klass, in CheckVTableHasNoDuplicates()
7644 static void CheckVTable(Thread* self, Handle<mirror::Class> klass, PointerSize pointer_size) in CheckVTable()
7652 void ClassLinker::FillImtFromSuperClass(Handle<mirror::Class> klass, in FillImtFromSuperClass()
7658 ObjPtr<mirror::Class> super_class = klass->GetSuperClass(); in FillImtFromSuperClass()
7684 Handle<mirror::Class> klass, in LinkInterfaceMethodsHelper()
7786 VLOG(class_linker) << mirror::Class::PrettyClass(klass_.Get()) << ": miranda_methods=" in LogNewVirtuals()
7796 Handle<mirror::Class> klass_;
8174 Handle<mirror::Class> klass, in LinkInterfaceMethods()
8416 bool ClassLinker::LinkInstanceFields(Thread* self, Handle<mirror::Class> klass) { in LinkInstanceFields()
8421 bool ClassLinker::LinkStaticFields(Thread* self, Handle<mirror::Class> klass, size_t* class_size) { in LinkStaticFields()
8461 Handle<mirror::Class> klass, in LinkFields()
8474 ObjPtr<mirror::Class> super_class = klass->GetSuperClass(); in LinkFields()
8561 ObjPtr<mirror::Class> super_class = klass->GetSuperClass(); in LinkFields()
8573 ObjPtr<mirror::Class> cur_super = klass.Get(); in LinkFields()
8647 void ClassLinker::CreateReferenceInstanceOffsets(Handle<mirror::Class> klass) { in CreateReferenceInstanceOffsets()
8649 ObjPtr<mirror::Class> super_class = klass->GetSuperClass(); in CreateReferenceInstanceOffsets()
8654 if (reference_offsets != mirror::Class::kClassWalkSuper) { in CreateReferenceInstanceOffsets()
8664 reference_offsets = mirror::Class::kClassWalkSuper; in CreateReferenceInstanceOffsets()
8708 ObjPtr<mirror::Class> ClassLinker::DoLookupResolvedType(dex::TypeIndex type_idx, in DoLookupResolvedType()
8709 ObjPtr<mirror::Class> referrer) { in DoLookupResolvedType()
8713 ObjPtr<mirror::Class> ClassLinker::DoLookupResolvedType(dex::TypeIndex type_idx, in DoLookupResolvedType()
8719 ObjPtr<mirror::Class> type = nullptr; in DoLookupResolvedType()
8742 ObjPtr<mirror::Class> ClassLinker::DoResolveType(dex::TypeIndex type_idx, RefType referrer) { in DoResolveType()
8750 template ObjPtr<mirror::Class> ClassLinker::DoResolveType(dex::TypeIndex type_idx,
8752 template ObjPtr<mirror::Class> ClassLinker::DoResolveType(dex::TypeIndex type_idx,
8754 template ObjPtr<mirror::Class> ClassLinker::DoResolveType(dex::TypeIndex type_idx,
8755 ObjPtr<mirror::Class> referrer);
8757 ObjPtr<mirror::Class> ClassLinker::DoResolveType(dex::TypeIndex type_idx, in DoResolveType()
8762 ObjPtr<mirror::Class> resolved = FindClass(self, descriptor, class_loader); in DoResolveType()
8786 ArtMethod* ClassLinker::FindResolvedMethod(ObjPtr<mirror::Class> klass, in FindResolvedMethod()
8838 ArtMethod* ClassLinker::FindIncompatibleMethod(ObjPtr<mirror::Class> klass, in FindIncompatibleMethod()
8880 ObjPtr<mirror::Class> klass = nullptr; in ResolveMethod()
8920 ObjPtr<mirror::Class> methods_class = resolved->GetDeclaringClass(); in ResolveMethod()
8921 ObjPtr<mirror::Class> referring_class = referrer->GetDeclaringClass(); in ResolveMethod()
8968 ObjPtr<mirror::Class> klass = ResolveType(method_id.class_idx_, dex_cache, class_loader); in ResolveMethodWithoutInvokeType()
8994 ObjPtr<mirror::Class> klass = dex_cache->GetResolvedType(field_id.class_idx_); in LookupResolvedField()
9020 ObjPtr<mirror::Class> klass = ResolveType(field_id.class_idx_, dex_cache, class_loader); in ResolveField()
9046 ObjPtr<mirror::Class> klass = ResolveType(field_id.class_idx_, dex_cache, class_loader); in ResolveFieldJLS()
9061 ArtField* ClassLinker::FindResolvedField(ObjPtr<mirror::Class> klass, in FindResolvedField()
9070 resolved = is_static ? mirror::Class::FindStaticField(self, klass, dex_cache, field_idx) in FindResolvedField()
9077 resolved = is_static ? mirror::Class::FindStaticField(self, klass, name, type) in FindResolvedField()
9095 ArtField* ClassLinker::FindResolvedFieldJLS(ObjPtr<mirror::Class> klass, in FindResolvedFieldJLS()
9106 resolved = mirror::Class::FindField(self, klass, name, type); in FindResolvedFieldJLS()
9140 Handle<mirror::Class> return_type(hs.NewHandle( in ResolveMethodType()
9153 ObjPtr<mirror::Class> array_of_class = GetClassRoot<mirror::ObjectArray<mirror::Class>>(this); in ResolveMethodType()
9154 Handle<mirror::ObjectArray<mirror::Class>> method_params(hs.NewHandle( in ResolveMethodType()
9155 mirror::ObjectArray<mirror::Class>::Alloc(self, array_of_class, num_method_args))); in ResolveMethodType()
9163 MutableHandle<mirror::Class> param_class = hs.NewHandle<mirror::Class>(nullptr); in ResolveMethodType()
9243 ObjPtr<mirror::Class> target_class = target_field->GetDeclaringClass(); in ResolveMethodHandleForField()
9244 ObjPtr<mirror::Class> referring_class = referrer->GetDeclaringClass(); in ResolveMethodHandleForField()
9259 ObjPtr<mirror::Class> array_of_class = GetClassRoot<mirror::ObjectArray<mirror::Class>>(this); in ResolveMethodHandleForField()
9260 Handle<mirror::ObjectArray<mirror::Class>> method_params(hs.NewHandle( in ResolveMethodHandleForField()
9261 mirror::ObjectArray<mirror::Class>::Alloc(self, array_of_class, num_params))); in ResolveMethodHandleForField()
9267 Handle<mirror::Class> constructor_class; in ResolveMethodHandleForField()
9268 Handle<mirror::Class> return_type; in ResolveMethodHandleForField()
9422 ObjPtr<mirror::Class> target_class = target_method->GetDeclaringClass(); in ResolveMethodHandleForMethod()
9423 ObjPtr<mirror::Class> referring_class = referrer->GetDeclaringClass(); in ResolveMethodHandleForMethod()
9437 ObjPtr<mirror::Class> array_of_class = GetClassRoot<mirror::ObjectArray<mirror::Class>>(this); in ResolveMethodHandleForMethod()
9438 Handle<mirror::ObjectArray<mirror::Class>> method_params(hs.NewHandle( in ResolveMethodHandleForMethod()
9439 mirror::ObjectArray<mirror::Class>::Alloc(self, array_of_class, num_params))); in ResolveMethodHandleForMethod()
9452 ObjPtr<mirror::Class> receiver_class = LookupResolvedType(method_id.class_idx_, referrer); in ResolveMethodHandleForMethod()
9463 ObjPtr<mirror::Class> klass = ResolveType(type_idx, referrer); in ResolveMethodHandleForMethod()
9472 Handle<mirror::Class> return_type = in ResolveMethodHandleForMethod()
9487 Handle<mirror::Class> constructor_class = hs.NewHandle(target_method->GetDeclaringClass()); in ResolveMethodHandleForMethod()
9660 void ClassLinker::SetClassRoot(ClassRoot class_root, ObjPtr<mirror::Class> klass) { in SetClassRoot()
9666 mirror::ObjectArray<mirror::Class>* class_roots = class_roots_.Read(); in SetClassRoot()
9677 Handle<mirror::Class> loader_class, in CreateWellKnownClassLoader()
9686 Handle<mirror::Class> dex_elements_class(hs.NewHandle(dex_elements_field->ResolveType())); in CreateWellKnownClassLoader()
9693 Handle<mirror::Class> h_dex_element_class = in CreateWellKnownClassLoader()
9753 ObjPtr<mirror::Class> list_class = FindSystemClass(self, "Ljava/util/ArrayList;"); in CreateWellKnownClassLoader()
9757 Handle<mirror::Class> h_list_class(h_list_scope.NewHandle<mirror::Class>(list_class)); in CreateWellKnownClassLoader()
9783 mirror::Class::FindField(self, in CreateWellKnownClassLoader()
9790 ObjPtr<mirror::Object> boot_loader(soa.Decode<mirror::Class>( in CreateWellKnownClassLoader()
9824 Handle<mirror::Class> h_loader_class = in CreateWellKnownClassLoader()
9825 hs.NewHandle<mirror::Class>(soa.Decode<mirror::Class>(loader_class)); in CreateWellKnownClassLoader()
9853 std::fill_n(find_array_class_cache_, kFindArrayCacheSize, GcRoot<mirror::Class>(nullptr)); in DropFindArrayClassCache()
9924 bool operator()(ObjPtr<mirror::Class> klass) REQUIRES_SHARED(Locks::mutator_lock_) override { in operator ()()
9932 ObjPtr<mirror::Class> holder_ = nullptr;
9937 ObjPtr<mirror::Class> ClassLinker::GetHoldingClassOfCopiedMethod(ArtMethod* method) { in GetHoldingClassOfCopiedMethod()
9973 template ObjPtr<mirror::Class> ClassLinker::AllocClass</* kMovable= */ true>(
9975 ObjPtr<mirror::Class> java_lang_Class,
9977 template ObjPtr<mirror::Class> ClassLinker::AllocClass</* kMovable= */ false>(
9979 ObjPtr<mirror::Class> java_lang_Class,