Home
last modified time | relevance | path

Searched refs:type_idx (Results 1 – 25 of 45) sorted by relevance

12

/art/runtime/
Dclass_linker-inl.h117 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 …]
Dart_method-inl.h90 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()
Dsdk_checker.cc142 dex::TypeIndex type_idx = dex_file->GetIndexForTypeId(*type_id); in ShouldDenyAccess() local
143 if (dex_file->FindClassDef(type_idx) != nullptr) { in ShouldDenyAccess()
Dclass_linker.h277 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 …]
Dclass_linker_test.cc986 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 …]
Dart_method.h457 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/
Ddexanalyze_bytecode.cc283 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/
Dquick_dexcache_entrypoints.cc81 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/
Ddex_cache-inl.h150 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 …]
Ddex_cache.h295 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/
Ddex_instruction.cc224 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()
Ddex_file.cc213 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 …]
Dtest_dex_file_builder.h114 uint32_t type_idx = 0u; variable
116 entry.second = type_idx;
117 type_idx += 1u;
181 ++type_idx;
Ddex_file_verifier.cc810 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/
Dentrypoint_utils.h81 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,
Dentrypoint_utils-inl.h228 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/
Dresolver.cc32 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/
Ddex2oat_vdex_test.cc104 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()
Dverifier_deps_test.cc249 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/
Ddex_visualize.cc258 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/
Dprofile_compilation_info.h116 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,
Dprofile_compilation_info.cc574 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/
Djava_lang_reflect_Executable.cc364 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/
Dinterpreter_common.cc1341 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/
Dreference_type_propagation.cc97 dex::TypeIndex type_idx,
577 dex::TypeIndex type_idx, in UpdateReferenceTypeInfo() argument
585 type_idx, dex_cache, class_loader_.Get()); in UpdateReferenceTypeInfo()

12