Lines Matching refs:klass

230     Class* klass = obj->GetClass();  in ClearDexFileCookies()  local
231 if (klass == WellKnownClasses::ToClass(WellKnownClasses::dalvik_system_DexFile)) { in ClearDexFileCookies()
307 info.class_table_->Visit([&](ObjPtr<mirror::Class> klass) in PrepareImageAddressSpace()
309 if (!IsInBootImage(klass.Ptr())) { in PrepareImageAddressSpace()
749 ObjPtr<mirror::Class> klass = method->GetDeclaringClass(); in AddMethodPointerArray() local
750 CHECK(klass == nullptr || KeepClass(klass)) in AddMethodPointerArray()
751 << Class::PrettyClass(klass) << " should be a kept class"; in AddMethodPointerArray()
808 ObjPtr<mirror::Class> klass = object->AsClass(); in AssignImageBinSlot() local
811 ObjPtr<mirror::PointerArray> vtable = klass->GetVTable(); in AssignImageBinSlot()
815 ObjPtr<mirror::IfTable> iftable = klass->GetIfTable(); in AssignImageBinSlot()
817 for (int32_t i = 0; i < klass->GetIfTableCount(); ++i) { in AssignImageBinSlot()
827 dirty_image_objects_->find(klass->PrettyDescriptor()) != dirty_image_objects_->end()) { in AssignImageBinSlot()
829 } else if (klass->GetStatus() == ClassStatus::kVisiblyInitialized) { in AssignImageBinSlot()
834 uint32_t num_static_fields = klass->NumStaticFields(); in AssignImageBinSlot()
841 ArtField* field = klass->GetStaticField(i); in AssignImageBinSlot()
971 static bool IsBootClassLoaderClass(ObjPtr<mirror::Class> klass) in IsBootClassLoaderClass() argument
973 return klass->GetClassLoader() == nullptr; in IsBootClassLoaderClass()
976 bool ImageWriter::IsBootClassLoaderNonImageClass(mirror::Class* klass) { in IsBootClassLoaderNonImageClass() argument
977 return IsBootClassLoaderClass(klass) && !IsInBootImage(klass); in IsBootClassLoaderNonImageClass()
1010 ObjPtr<mirror::Class> klass = ref->IsClass() ? ref->AsClass() : ref->GetClass(); in operator ()() local
1011 if (klass == GetClassRoot<mirror::Method>(class_roots) || in operator ()()
1012 klass == GetClassRoot<mirror::Constructor>(class_roots)) { in operator ()()
1024 image_writer_->PruneImageClassInternal(klass, early_exit_, visited_); in operator ()()
1031 ALWAYS_INLINE void operator() (ObjPtr<mirror::Class> klass ATTRIBUTE_UNUSED, in operator ()()
1045 bool ImageWriter::PruneImageClass(ObjPtr<mirror::Class> klass) { in PruneImageClass() argument
1048 return PruneImageClassInternal(klass, &early_exit, &visited); in PruneImageClass()
1052 ObjPtr<mirror::Class> klass, in PruneImageClassInternal() argument
1058 if (klass == nullptr || IsInBootImage(klass.Ptr())) { in PruneImageClassInternal()
1061 auto found = prune_class_memo_.find(klass.Ptr()); in PruneImageClassInternal()
1067 if (visited->find(klass.Ptr()) != visited->end()) { in PruneImageClassInternal()
1071 visited->emplace(klass.Ptr()); in PruneImageClassInternal()
1072 bool result = IsBootClassLoaderClass(klass); in PruneImageClassInternal()
1076 result = result || !compiler_options_.IsImageClass(klass->GetDescriptor(&temp)); in PruneImageClassInternal()
1080 if (klass->IsErroneous()) { in PruneImageClassInternal()
1083 ObjPtr<mirror::ClassExt> ext(klass->GetExtData()); in PruneImageClassInternal()
1084 CHECK(ext.IsNull() || ext->GetVerifyError() == nullptr) << klass->PrettyClass(); in PruneImageClassInternal()
1088 ObjPtr<mirror::IfTable> if_table = klass->GetIfTable(); in PruneImageClassInternal()
1089 for (size_t i = 0, num_interfaces = klass->GetIfTableCount(); i < num_interfaces; ++i) { in PruneImageClassInternal()
1095 if (klass->IsObjectArrayClass()) { in PruneImageClassInternal()
1096 result = result || PruneImageClassInternal(klass->GetComponentType(), in PruneImageClassInternal()
1101 if (klass->IsResolved() && klass->NumReferenceStaticFields() != 0) { in PruneImageClassInternal()
1102 size_t num_static_fields = klass->NumReferenceStaticFields(); in PruneImageClassInternal()
1105 MemberOffset field_offset = klass->GetFirstReferenceStaticFieldOffset( in PruneImageClassInternal()
1108 mirror::Object* ref = klass->GetFieldObject<mirror::Object>(field_offset); in PruneImageClassInternal()
1129 result = result || PruneImageClassInternal(klass->GetSuperClass(), &my_early_exit, visited); in PruneImageClassInternal()
1132 ObjPtr<mirror::DexCache> dex_cache = klass->GetDexCache(); in PruneImageClassInternal()
1138 auto it = visited->find(klass.Ptr()); in PruneImageClassInternal()
1145 prune_class_memo_[klass.Ptr()] = result; in PruneImageClassInternal()
1151 bool ImageWriter::KeepClass(ObjPtr<mirror::Class> klass) { in KeepClass() argument
1152 if (klass == nullptr) { in KeepClass()
1155 if (IsInBootImage(klass.Ptr())) { in KeepClass()
1161 if (!compiler_options_.IsImageClass(klass->GetDescriptor(&temp))) { in KeepClass()
1170 return !PruneImageClass(klass); in KeepClass()
1183 bool operator()(ObjPtr<mirror::Class> klass) override REQUIRES_SHARED(Locks::mutator_lock_) { in operator ()() argument
1184 if (!image_writer_->KeepClass(klass.Ptr())) { in operator ()()
1185 classes_to_prune_.insert(klass.Ptr()); in operator ()()
1186 if (klass->GetClassLoader() == class_loader_) { in operator ()()
1196 for (mirror::Class* klass : classes_to_prune_) { in Prune()
1198 const char* descriptor = klass->GetDescriptor(&storage); in Prune()
1364 ObjPtr<mirror::Class> klass = pair.object.Read(); in PreloadDexCache() local
1365 if (klass == nullptr || i < stored_index) { in PreloadDexCache()
1366 klass = class_linker->LookupResolvedType(type_idx, dex_cache, class_loader); in PreloadDexCache()
1367 DCHECK(klass == nullptr || dex_cache->GetResolvedType(type_idx) == klass); in PreloadDexCache()
1445 ObjPtr<Class> klass = obj->AsClass(); in CheckNonImageClassesRemoved() local
1446 if (!KeepClass(klass)) { in CheckNonImageClassesRemoved()
1448 CHECK(KeepClass(klass)) in CheckNonImageClassesRemoved()
1449 << Runtime::Current()->GetHeap()->GetVerification()->FirstPathFromRootSet(klass); in CheckNonImageClassesRemoved()
1823 bool operator()(ObjPtr<mirror::Class> klass) override REQUIRES_SHARED(Locks::mutator_lock_) { in operator ()() argument
1824 if (!image_writer_->IsInBootImage(klass.Ptr())) { in operator ()()
1825 ObjPtr<mirror::Class> component_type = klass; in operator ()()
1840 DCHECK(it != dex_files_.end()) << klass->PrettyDescriptor(); in operator ()()
1844 klasses_.push_back({klass, dex_file_index, class_def_index, dimension}); in operator ()()
1866 result.emplace_back(entry.klass, last_oat_index); in SortAndReleaseClasses()
1874 ObjPtr<mirror::Class> klass; member
1953 void operator() (ObjPtr<mirror::Class> klass ATTRIBUTE_UNUSED, in operator ()()
1993 ALWAYS_INLINE void operator() (ObjPtr<mirror::Class> klass ATTRIBUTE_UNUSED, in operator ()()
2141 ObjPtr<mirror::Class> klass = ref->GetClass(); in VerifyImageBinSlotsAssigned() local
2142 CHECK(klass == WellKnownClasses::ToClass(WellKnownClasses::dalvik_system_DexFile)); in VerifyImageBinSlotsAssigned()
3022 void operator()(ObjPtr<mirror::Class> klass ATTRIBUTE_UNUSED, in operator ()()
3075 void operator()(ObjPtr<mirror::Class> klass ATTRIBUTE_UNUSED, in operator ()()
3198 ObjPtr<mirror::Class> klass = orig->GetClass(); in FixupObject() local
3199 if (klass == GetClassRoot<mirror::Method>(class_roots) || in FixupObject()
3200 klass == GetClassRoot<mirror::Constructor>(class_roots)) { in FixupObject()
3206 } else if (klass == GetClassRoot<mirror::DexCache>(class_roots)) { in FixupObject()
3208 } else if (klass->IsClassLoaderClass()) { in FixupObject()
3552 size_t ImageWriter::GetOatIndexForClass(ObjPtr<mirror::Class> klass) const { in GetOatIndexForClass()
3553 while (klass->IsArrayClass()) { in GetOatIndexForClass()
3554 klass = klass->GetComponentType(); in GetOatIndexForClass()
3556 if (UNLIKELY(klass->IsPrimitive())) { in GetOatIndexForClass()
3557 DCHECK(klass->GetDexCache() == nullptr); in GetOatIndexForClass()
3560 DCHECK(klass->GetDexCache() != nullptr); in GetOatIndexForClass()
3561 return GetOatIndexForDexFile(&klass->GetDexFile()); in GetOatIndexForClass()