Home
last modified time | relevance | path

Searched refs:type_idx (Results 1 – 25 of 49) 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()
229 inline bool ArtMethod::IsResolvedTypeIdx(dex::TypeIndex type_idx) { in IsResolvedTypeIdx() argument
231 return LookupResolvedClassFromTypeIndex(type_idx) != nullptr; in IsResolvedTypeIdx()
290 inline const char* ArtMethod::GetTypeDescriptorFromTypeIdx(dex::TypeIndex type_idx) { in GetTypeDescriptorFromTypeIdx() argument
293 return dex_file->GetTypeDescriptor(dex_file->GetTypeId(type_idx)); in GetTypeDescriptorFromTypeIdx()
Dclass_linker.h272 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, ObjPtr<mirror::Class> referrer)
275 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, ArtField* referrer)
278 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, ArtMethod* referrer)
285 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx,
294 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx,
297 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx, ArtField* referrer)
299 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx, ArtMethod* referrer)
305 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx,
1021 ObjPtr<mirror::Class> DoLookupResolvedType(dex::TypeIndex type_idx,
1024 ObjPtr<mirror::Class> DoLookupResolvedType(dex::TypeIndex type_idx,
[all …]
Dclass_linker_test.cc983 dex::TypeIndex type_idx = klass->GetClassDef()->class_idx_; in TEST_F() local
986 class_linker_->LookupResolvedType(type_idx, dex_cache, class_loader.Get()), in TEST_F()
989 dex_cache->ClearResolvedType(type_idx); in TEST_F()
990 EXPECT_TRUE(dex_cache->GetResolvedType(type_idx) == nullptr); in TEST_F()
992 class_linker_->LookupResolvedType(type_idx, dex_cache, class_loader.Get()), in TEST_F()
1039 dex::TypeIndex type_idx = klass->GetClassDef()->class_idx_; in TEST_F() local
1042 class_linker_->LookupResolvedType(type_idx, dex_cache.Get(), class_loader.Get()), in TEST_F()
1045 dex_cache->ClearResolvedType(type_idx); in TEST_F()
1046 EXPECT_TRUE(dex_cache->GetResolvedType(type_idx) == nullptr); in TEST_F()
1048 class_linker_->LookupResolvedType(type_idx, dex_cache.Get(), class_loader.Get()), in TEST_F()
[all …]
Dart_method.h444 ObjPtr<mirror::Class> LookupResolvedClassFromTypeIndex(dex::TypeIndex type_idx)
447 ObjPtr<mirror::Class> ResolveClassFromTypeIndex(dex::TypeIndex type_idx)
650 bool IsResolvedTypeIdx(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_);
670 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
89 type_idx.index_, in StoreTypeInBss()
153 extern "C" mirror::Class* artResolveTypeFromCode(uint32_t type_idx, Thread* self) in artResolveTypeFromCode() argument
160 ObjPtr<mirror::Class> result = ResolveVerifyAndClinit(dex::TypeIndex(type_idx), in artResolveTypeFromCode()
166 StoreTypeInBss(caller_and_outer.outer_method, dex::TypeIndex(type_idx), result); in artResolveTypeFromCode()
171 extern "C" mirror::Class* artResolveTypeAndVerifyAccessFromCode(uint32_t type_idx, Thread* self) in artResolveTypeAndVerifyAccessFromCode() argument
178 ObjPtr<mirror::Class> result = ResolveVerifyAndClinit(dex::TypeIndex(type_idx), in artResolveTypeAndVerifyAccessFromCode()
/art/runtime/mirror/
Ddex_cache-inl.h151 inline uint32_t DexCache::TypeSlotIndex(dex::TypeIndex type_idx) { in TypeSlotIndex() argument
152 DCHECK_LT(type_idx.index_, GetDexFile()->NumTypeIds()); in TypeSlotIndex()
153 const uint32_t slot_idx = type_idx.index_ % kDexCacheTypeCacheSize; in TypeSlotIndex()
158 inline Class* DexCache::GetResolvedType(dex::TypeIndex type_idx) { in GetResolvedType() argument
161 return GetResolvedTypes()[TypeSlotIndex(type_idx)].load( in GetResolvedType()
162 std::memory_order_relaxed).GetObjectForIndex(type_idx.index_); in GetResolvedType()
165 inline void DexCache::SetResolvedType(dex::TypeIndex type_idx, ObjPtr<Class> resolved) { in SetResolvedType() argument
172 GetResolvedTypes()[TypeSlotIndex(type_idx)].store( in SetResolvedType()
173 TypeDexCachePair(resolved, type_idx.index_), std::memory_order_release); in SetResolvedType()
178 inline void DexCache::ClearResolvedType(dex::TypeIndex type_idx) { in ClearResolvedType() argument
[all …]
Ddex_cache.h294 Class* GetResolvedType(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_);
296 void SetResolvedType(dex::TypeIndex type_idx, ObjPtr<Class> resolved)
299 void ClearResolvedType(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_);
473 uint32_t TypeSlotIndex(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_);
/art/libdexfile/dex/
Ddex_file.cc213 const ClassDef* DexFile::FindClassDef(dex::TypeIndex type_idx) const { in FindClassDef()
221 if (class_def.class_idx_ == type_idx) { in FindClassDef()
246 const dex::TypeIndex type_idx = GetIndexForTypeId(type); in FindFieldId() local
262 if (type_idx > field.type_idx_) { in FindFieldId()
264 } else if (type_idx < field.type_idx_) { in FindFieldId()
443 dex::TypeIndex type_idx = GetIndexForTypeId(*type_id); in CreateTypeList() local
445 param_type_idxs->push_back(type_idx); in CreateTypeList()
447 *return_type_idx = type_idx; in CreateTypeList()
568 std::string DexFile::PrettyType(dex::TypeIndex type_idx) const { in PrettyType()
569 if (type_idx.index_ >= NumTypeIds()) { in PrettyType()
[all …]
Ddex_instruction.cc224 dex::TypeIndex type_idx(VRegB_21c()); in DumpString() local
226 << file->PrettyType(type_idx) << " // type@" << type_idx; in DumpString()
318 dex::TypeIndex type_idx(VRegC_22c()); in DumpString() local
320 << static_cast<int>(VRegB_22c()) << ", " << file->PrettyType(type_idx) in DumpString()
321 << " // type@" << type_idx.index_; in DumpString()
327 dex::TypeIndex type_idx(VRegC_22c()); in DumpString() local
329 << static_cast<int>(VRegB_22c()) << ", " << file->PrettyType(type_idx) in DumpString()
330 << " // type@" << type_idx.index_; in DumpString()
Dtest_dex_file_builder.h116 uint32_t type_idx = 0u; in Build() local
118 entry.second = type_idx; in Build()
119 type_idx += 1u; in Build()
180 ++type_idx; in Build()
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/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/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()
701 inline ObjPtr<mirror::Class> ResolveVerifyAndClinit(dex::TypeIndex type_idx, in ResolveVerifyAndClinit() argument
707 ObjPtr<mirror::Class> klass = class_linker->ResolveType(type_idx, referrer); in ResolveVerifyAndClinit()
/art/runtime/utils/
Ddex_cache_arrays_layout-inl.h78 inline size_t DexCacheArraysLayout::TypeOffset(dex::TypeIndex type_idx) const { in TypeOffset() argument
80 type_idx.index_ % mirror::DexCache::kDexCacheTypeCacheSize); in TypeOffset()
Ddex_cache_arrays_layout.h68 size_t TypeOffset(dex::TypeIndex type_idx) const;
/art/runtime/verifier/
Dverifier_deps.h90 dex::TypeIndex type_idx,
163 ClassResolution(dex::TypeIndex type_idx, uint16_t access_flags) in ClassResolution()
164 : ClassResolutionBase(type_idx, access_flags) {} in ClassResolution()
303 dex::TypeIndex type_idx,
Dverifier_deps.cc131 dex::TypeIndex type_idx, in TryGetClassDescriptorStringId() argument
135 const dex::TypeId& type_id = dex_file.GetTypeId(type_idx); in TryGetClassDescriptorStringId()
293 dex::TypeIndex type_idx, in AddClassResolution() argument
307 dex_deps->classes_.emplace(ClassResolution(type_idx, GetAccessFlags(klass))); in AddClassResolution()
542 dex::TypeIndex type_idx, in MaybeRecordClassResolution() argument
546 thread_deps->AddClassResolution(dex_file, type_idx, klass); in MaybeRecordClassResolution()
/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.h138 ClassReference(ProfileIndexType dex_profile_idx, const dex::TypeIndex type_idx) : in ClassReference()
139 dex_profile_index(dex_profile_idx), type_index(type_idx) {} in ClassReference()
165 void AddClass(uint16_t dex_profile_idx, const dex::TypeIndex& type_idx);
460 dex::TypeIndex type_idx,
Dprofile_compilation_info.cc132 const dex::TypeIndex& type_idx) { in AddClass() argument
141 ClassReference ref(dex_profile_idx, type_idx); in AddClass()
1628 dex::TypeIndex type_idx, in ContainsClass() argument
1631 return (dex_data != nullptr) && dex_data->ContainsClass(type_idx); in ContainsClass()
1836 uint16_t type_idx = rand() % max_classes; in GenerateTestProfile() local
1838 type_idx %= kFavorFirstN; in GenerateTestProfile()
1840 data->class_set.insert(dex::TypeIndex(type_idx)); in GenerateTestProfile()
2125 for (dex::TypeIndex type_idx : data->class_set) { in GetClassDescriptors() local
2126 if (!dex_file->IsTypeIndexValid(type_idx)) { in GetClassDescriptors()
2129 << type_idx.index_ << " in dex " << dex_file->GetLocation(); in GetClassDescriptors()
[all …]
/art/runtime/native/
Ddalvik_system_VMRuntime.cc408 dex::TypeIndex type_idx) in PreloadDexCachesResolveType() argument
410 uint32_t slot_idx = dex_cache->TypeSlotIndex(type_idx); in PreloadDexCachesResolveType()
416 const char* class_name = dex_file->StringByTypeIdx(type_idx); in PreloadDexCachesResolveType()
424 dex_cache->SetResolvedType(type_idx, klass); in PreloadDexCachesResolveType()
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()

12