/art/runtime/ |
D | class_linker-inl.h | 117 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType() argument 128 referrer->GetDexCache<kDefaultVerifyFlags, kWithoutReadBarrier>()->GetResolvedType(type_idx); in ResolveType() 130 resolved_type = DoResolveType(type_idx, referrer); in ResolveType() 135 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType() argument 142 referrer->GetDexCache<kWithoutReadBarrier>()->GetResolvedType(type_idx); in ResolveType() 144 resolved_type = DoResolveType(type_idx, referrer); in ResolveType() 149 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType() argument 156 referrer->GetDexCache<kWithoutReadBarrier>()->GetResolvedType(type_idx); in ResolveType() 158 resolved_type = DoResolveType(type_idx, referrer); in ResolveType() 163 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType() argument [all …]
|
D | art_method-inl.h | 90 inline ObjPtr<mirror::Class> ArtMethod::LookupResolvedClassFromTypeIndex(dex::TypeIndex type_idx) { in LookupResolvedClassFromTypeIndex() argument 93 Runtime::Current()->GetClassLinker()->LookupResolvedType(type_idx, this); in LookupResolvedClassFromTypeIndex() 98 inline ObjPtr<mirror::Class> ArtMethod::ResolveClassFromTypeIndex(dex::TypeIndex type_idx) { in ResolveClassFromTypeIndex() argument 99 ObjPtr<mirror::Class> type = Runtime::Current()->GetClassLinker()->ResolveType(type_idx, this); in ResolveClassFromTypeIndex() 237 inline bool ArtMethod::IsResolvedTypeIdx(dex::TypeIndex type_idx) { in IsResolvedTypeIdx() argument 239 return LookupResolvedClassFromTypeIndex(type_idx) != nullptr; in IsResolvedTypeIdx() 298 inline const char* ArtMethod::GetTypeDescriptorFromTypeIdx(dex::TypeIndex type_idx) { in GetTypeDescriptorFromTypeIdx() argument 301 return dex_file->GetTypeDescriptor(dex_file->GetTypeId(type_idx)); in GetTypeDescriptorFromTypeIdx()
|
D | sdk_checker.cc | 142 dex::TypeIndex type_idx = dex_file->GetIndexForTypeId(*type_id); in ShouldDenyAccess() local 143 if (dex_file->FindClassDef(type_idx) != nullptr) { in ShouldDenyAccess()
|
D | class_linker.h | 277 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, ObjPtr<mirror::Class> referrer) 280 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, ArtField* referrer) 283 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, ArtMethod* referrer) 290 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, 299 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx, 302 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx, ArtField* referrer) 304 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx, ArtMethod* referrer) 310 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx, 1051 ObjPtr<mirror::Class> DoLookupResolvedType(dex::TypeIndex type_idx, 1054 ObjPtr<mirror::Class> DoLookupResolvedType(dex::TypeIndex type_idx, [all …]
|
D | class_linker_test.cc | 986 dex::TypeIndex type_idx = klass->GetClassDef()->class_idx_; in TEST_F() local 989 class_linker_->LookupResolvedType(type_idx, dex_cache, class_loader.Get()), in TEST_F() 992 dex_cache->ClearResolvedType(type_idx); in TEST_F() 993 EXPECT_TRUE(dex_cache->GetResolvedType(type_idx) == nullptr); in TEST_F() 995 class_linker_->LookupResolvedType(type_idx, dex_cache, class_loader.Get()), in TEST_F() 1042 dex::TypeIndex type_idx = klass->GetClassDef()->class_idx_; in TEST_F() local 1045 class_linker_->LookupResolvedType(type_idx, dex_cache.Get(), class_loader.Get()), in TEST_F() 1048 dex_cache->ClearResolvedType(type_idx); in TEST_F() 1049 EXPECT_TRUE(dex_cache->GetResolvedType(type_idx) == nullptr); in TEST_F() 1051 class_linker_->LookupResolvedType(type_idx, dex_cache.Get(), class_loader.Get()), in TEST_F() [all …]
|
D | art_method.h | 457 ObjPtr<mirror::Class> LookupResolvedClassFromTypeIndex(dex::TypeIndex type_idx) 460 ObjPtr<mirror::Class> ResolveClassFromTypeIndex(dex::TypeIndex type_idx) 645 bool IsResolvedTypeIdx(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_); 665 const char* GetTypeDescriptorFromTypeIdx(dex::TypeIndex type_idx)
|
/art/tools/dexanalyze/ |
D | dexanalyze_bytecode.cc | 283 uint32_t type_idx = current_type.types_.Get(holder_type.index_); in ProcessCodeItem() local 285 ExtendPrefix(&type_idx, &field_idx); in ProcessCodeItem() 286 CHECK(InstNibbles(new_opcode, {out_reg, receiver, type_idx, field_idx})); in ProcessCodeItem() 344 uint32_t type_idx = current_type.types_.Get(holder_type.index_); in ProcessCodeItem() local 346 ++field_linkage_counts_[std::make_pair(type_idx, field_idx)]; in ProcessCodeItem() 347 extended_field_ += ExtendPrefix(&type_idx, &field_idx) ? 1u : 0u; in ProcessCodeItem() 348 if (InstNibbles(new_opcode, {out_reg >> 4, out_reg & 0xF, type_idx, field_idx})) { in ProcessCodeItem() 388 uint32_t type_idx = current_type.types_.Get(receiver_type.index_); in ProcessCodeItem() local 390 ++method_linkage_counts_[std::make_pair(type_idx, local_idx)]; in ProcessCodeItem() 401 extended_method_ += ExtendPrefix(&type_idx, &local_idx) ? 1u : 0u; in ProcessCodeItem() [all …]
|
/art/runtime/entrypoints/quick/ |
D | quick_dexcache_entrypoints.cc | 81 dex::TypeIndex type_idx, in StoreTypeInBss() argument 90 type_idx.index_, in StoreTypeInBss() 163 extern "C" mirror::Class* artResolveTypeFromCode(uint32_t type_idx, Thread* self) in artResolveTypeFromCode() argument 170 ObjPtr<mirror::Class> result = ResolveVerifyAndClinit(dex::TypeIndex(type_idx), in artResolveTypeFromCode() 176 StoreTypeInBss(caller_and_outer.outer_method, dex::TypeIndex(type_idx), result); in artResolveTypeFromCode() 181 extern "C" mirror::Class* artResolveTypeAndVerifyAccessFromCode(uint32_t type_idx, Thread* self) in artResolveTypeAndVerifyAccessFromCode() argument 188 ObjPtr<mirror::Class> result = ResolveVerifyAndClinit(dex::TypeIndex(type_idx), in artResolveTypeAndVerifyAccessFromCode() 194 StoreTypeInBss(caller_and_outer.outer_method, dex::TypeIndex(type_idx), result); in artResolveTypeAndVerifyAccessFromCode()
|
/art/runtime/mirror/ |
D | dex_cache-inl.h | 150 inline uint32_t DexCache::TypeSlotIndex(dex::TypeIndex type_idx) { in TypeSlotIndex() argument 151 DCHECK_LT(type_idx.index_, GetDexFile()->NumTypeIds()); in TypeSlotIndex() 152 const uint32_t slot_idx = type_idx.index_ % kDexCacheTypeCacheSize; in TypeSlotIndex() 157 inline Class* DexCache::GetResolvedType(dex::TypeIndex type_idx) { in GetResolvedType() argument 160 return GetResolvedTypes()[TypeSlotIndex(type_idx)].load( in GetResolvedType() 161 std::memory_order_relaxed).GetObjectForIndex(type_idx.index_); in GetResolvedType() 164 inline void DexCache::SetResolvedType(dex::TypeIndex type_idx, ObjPtr<Class> resolved) { in SetResolvedType() argument 171 GetResolvedTypes()[TypeSlotIndex(type_idx)].store( in SetResolvedType() 172 TypeDexCachePair(resolved, type_idx.index_), std::memory_order_release); in SetResolvedType() 177 inline void DexCache::ClearResolvedType(dex::TypeIndex type_idx) { in ClearResolvedType() argument [all …]
|
D | dex_cache.h | 295 Class* GetResolvedType(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_); 297 void SetResolvedType(dex::TypeIndex type_idx, ObjPtr<Class> resolved) 300 void ClearResolvedType(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_); 464 uint32_t TypeSlotIndex(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_);
|
/art/libdexfile/dex/ |
D | dex_instruction.cc | 224 dex::TypeIndex type_idx(VRegB_21c()); in DumpString() local 226 << file->PrettyType(type_idx) << " // type@" << type_idx; in DumpString() 300 dex::TypeIndex type_idx(VRegC_22c()); in DumpString() local 302 << static_cast<int>(VRegB_22c()) << ", " << file->PrettyType(type_idx) in DumpString() 303 << " // type@" << type_idx.index_; in DumpString() 309 dex::TypeIndex type_idx(VRegC_22c()); in DumpString() local 311 << static_cast<int>(VRegB_22c()) << ", " << file->PrettyType(type_idx) in DumpString() 312 << " // type@" << type_idx.index_; in DumpString()
|
D | dex_file.cc | 213 const ClassDef* DexFile::FindClassDef(dex::TypeIndex type_idx) const { in FindClassDef() 221 if (class_def.class_idx_ == type_idx) { in FindClassDef() 253 const dex::TypeIndex type_idx = GetIndexForTypeId(type); in FindFieldId() local 269 if (type_idx > field.type_idx_) { in FindFieldId() 271 } else if (type_idx < field.type_idx_) { in FindFieldId() 460 dex::TypeIndex type_idx = GetIndexForTypeId(*type_id); in CreateTypeList() local 462 param_type_idxs->push_back(type_idx); in CreateTypeList() 464 *return_type_idx = type_idx; in CreateTypeList() 586 std::string DexFile::PrettyType(dex::TypeIndex type_idx) const { in PrettyType() 587 if (type_idx.index_ >= NumTypeIds()) { in PrettyType() [all …]
|
D | test_dex_file_builder.h | 114 uint32_t type_idx = 0u; variable 116 entry.second = type_idx; 117 type_idx += 1u; 181 ++type_idx;
|
D | dex_file_verifier.cc | 810 DECODE_UNSIGNED_CHECKED_FROM(ptr_, type_idx); in CheckAndGetHandlerOffsets() 811 if (!CheckIndex(type_idx, header_->type_ids_size_, "handler type_idx")) { in CheckAndGetHandlerOffsets() 1771 DECODE_UNSIGNED_CHECKED_FROM(ptr_, type_idx); in CheckIntraDebugInfoItem() 1772 if (type_idx != 0) { in CheckIntraDebugInfoItem() 1773 type_idx--; in CheckIntraDebugInfoItem() 1774 if (!CheckIndex(type_idx, header_->type_ids_size_, "DBG_START_LOCAL type_idx")) { in CheckIntraDebugInfoItem() 1802 DECODE_UNSIGNED_CHECKED_FROM(ptr_, type_idx); in CheckIntraDebugInfoItem() 1803 if (type_idx != 0) { in CheckIntraDebugInfoItem() 1804 type_idx--; in CheckIntraDebugInfoItem() 1805 if (!CheckIndex(type_idx, header_->type_ids_size_, "DBG_START_LOCAL_EXTENDED type_idx")) { in CheckIntraDebugInfoItem()
|
/art/runtime/entrypoints/ |
D | entrypoint_utils.h | 81 ALWAYS_INLINE inline ObjPtr<mirror::Class> CheckArrayAlloc(dex::TypeIndex type_idx, 93 ALWAYS_INLINE inline ObjPtr<mirror::Array> AllocArrayFromCode(dex::TypeIndex type_idx, 161 inline ObjPtr<mirror::Class> ResolveVerifyAndClinit(dex::TypeIndex type_idx,
|
D | entrypoint_utils-inl.h | 228 inline ObjPtr<mirror::Class> CheckArrayAlloc(dex::TypeIndex type_idx, in CheckArrayAlloc() argument 237 ObjPtr<mirror::Class> klass = method->GetDexCache()->GetResolvedType(type_idx); in CheckArrayAlloc() 240 klass = class_linker->ResolveType(type_idx, method); in CheckArrayAlloc() 265 inline ObjPtr<mirror::Array> AllocArrayFromCode(dex::TypeIndex type_idx, in AllocArrayFromCode() argument 272 CheckArrayAlloc<kAccessCheck>(type_idx, component_count, method, &slow_path); in AllocArrayFromCode() 700 inline ObjPtr<mirror::Class> ResolveVerifyAndClinit(dex::TypeIndex type_idx, in ResolveVerifyAndClinit() argument 706 ObjPtr<mirror::Class> klass = class_linker->ResolveType(type_idx, referrer); in ResolveVerifyAndClinit()
|
/art/tools/veridex/ |
D | resolver.cc | 32 const uint32_t type_idx = accessor.GetClassIdx().index_; in Run() local 35 type_infos_[type_idx] = *existing->second; in Run() 38 type_infos_[type_idx] = VeriClass(Primitive::Type::kPrimNot, 0, &accessor.GetClassDef()); in Run() 39 type_map_[name] = &type_infos_[type_idx]; in Run()
|
/art/dex2oat/ |
D | dex2oat_vdex_test.cc | 104 dex::TypeIndex type_idx = dex_file.GetIndexForTypeId(*type_id); in GetClassDefIndex() local 105 const dex::ClassDef* class_def = dex_file.FindClassDef(type_idx); in GetClassDefIndex()
|
D | verifier_deps_test.cc | 249 dex::TypeIndex type_idx = dex_file.GetIndexForTypeId(*type_id); in GetClassDefIndex() local 250 const dex::ClassDef* class_def = dex_file.FindClassDef(type_idx); in GetClassDefIndex()
|
/art/dexlayout/ |
D | dex_visualize.cc | 258 dex::TypeIndex type_idx(class_def->ClassType()->GetIndex()); in VisualizeDexLayout() local 259 if (profile_info != nullptr && !profile_info->ContainsClass(*dex_file, type_idx)) { in VisualizeDexLayout()
|
/art/libprofile/profile/ |
D | profile_compilation_info.h | 116 ClassReference(ProfileIndexType dex_profile_idx, const dex::TypeIndex type_idx) : in ClassReference() 117 dex_profile_index(dex_profile_idx), type_index(type_idx) {} in ClassReference() 142 void AddClass(const dex::TypeIndex& type_idx); 506 dex::TypeIndex type_idx,
|
D | profile_compilation_info.cc | 574 void ProfileCompilationInfo::DexPcData::AddClass(const dex::TypeIndex& type_idx) { in AddClass() argument 583 auto lb = classes.lower_bound(type_idx); in AddClass() 584 if (lb != classes.end() && *lb == type_idx) { in AddClass() 597 classes.emplace_hint(lb, type_idx); in AddClass() 1949 dex::TypeIndex type_idx, in ContainsClass() argument 1952 return (dex_data != nullptr) && dex_data->ContainsClass(type_idx); in ContainsClass() 2169 uint16_t type_idx = rand() % max_classes; in GenerateTestProfile() local 2171 type_idx %= kFavorFirstN; in GenerateTestProfile() 2173 data->class_set.insert(dex::TypeIndex(type_idx)); in GenerateTestProfile() 2369 for (dex::TypeIndex type_idx : data->class_set) { in GetClassDescriptors() local [all …]
|
/art/runtime/native/ |
D | java_lang_reflect_Executable.cc | 364 const dex::TypeIndex type_idx = params->GetTypeItem(i).type_idx_; in Executable_getParameterTypesInternal() local 365 param.Assign(Runtime::Current()->GetClassLinker()->ResolveType(type_idx, method)); in Executable_getParameterTypesInternal()
|
/art/runtime/interpreter/ |
D | interpreter_common.cc | 1341 const dex::TypeIndex type_idx = params->GetTypeItem(shorty_pos).type_idx_; in DoCallCommon() local 1342 ObjPtr<mirror::Class> arg_type = method->GetDexCache()->GetResolvedType(type_idx); in DoCallCommon() 1348 arg_type = method->ResolveClassFromTypeIndex(type_idx); in DoCallCommon() 1453 uint16_t type_idx = is_range ? inst->VRegB_3rc() : inst->VRegB_35c(); in DoFilledNewArray() local 1454 ObjPtr<mirror::Class> array_class = ResolveVerifyAndClinit(dex::TypeIndex(type_idx), in DoFilledNewArray()
|
/art/compiler/optimizing/ |
D | reference_type_propagation.cc | 97 dex::TypeIndex type_idx, 577 dex::TypeIndex type_idx, in UpdateReferenceTypeInfo() argument 585 type_idx, dex_cache, class_loader_.Get()); in UpdateReferenceTypeInfo()
|