Home
last modified time | relevance | path

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

123

/art/runtime/
Dclass_linker-inl.h114 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType() argument
125 referrer->GetDexCache<kDefaultVerifyFlags, kWithoutReadBarrier>()->GetResolvedType(type_idx); in ResolveType()
127 resolved_type = DoResolveType(type_idx, referrer); in ResolveType()
132 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType() argument
139 referrer->GetDexCache<kWithoutReadBarrier>()->GetResolvedType(type_idx); in ResolveType()
141 resolved_type = DoResolveType(type_idx, referrer); in ResolveType()
146 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType() argument
153 referrer->GetDexCache<kWithoutReadBarrier>()->GetResolvedType(type_idx); in ResolveType()
155 resolved_type = DoResolveType(type_idx, referrer); in ResolveType()
160 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()
227 inline bool ArtMethod::IsResolvedTypeIdx(dex::TypeIndex type_idx) { in IsResolvedTypeIdx() argument
229 return LookupResolvedClassFromTypeIndex(type_idx) != nullptr; in IsResolvedTypeIdx()
288 inline const char* ArtMethod::GetTypeDescriptorFromTypeIdx(dex::TypeIndex type_idx) { in GetTypeDescriptorFromTypeIdx() argument
291 return dex_file->GetTypeDescriptor(dex_file->GetTypeId(type_idx)); in GetTypeDescriptorFromTypeIdx()
Dclass_linker.h247 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, ObjPtr<mirror::Class> referrer)
250 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, ArtField* referrer)
253 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx, ArtMethod* referrer)
260 ObjPtr<mirror::Class> ResolveType(dex::TypeIndex type_idx,
269 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx,
272 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx, ArtField* referrer)
274 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx, ArtMethod* referrer)
280 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_idx,
927 ObjPtr<mirror::Class> DoLookupResolvedType(dex::TypeIndex type_idx,
930 ObjPtr<mirror::Class> DoLookupResolvedType(dex::TypeIndex type_idx,
[all …]
Dclass_linker_test.cc976 dex::TypeIndex type_idx = klass->GetClassDef()->class_idx_; in TEST_F() local
979 class_linker_->LookupResolvedType(type_idx, dex_cache, class_loader.Get()), in TEST_F()
982 dex_cache->ClearResolvedType(type_idx); in TEST_F()
983 EXPECT_TRUE(dex_cache->GetResolvedType(type_idx) == nullptr); in TEST_F()
985 class_linker_->LookupResolvedType(type_idx, dex_cache, class_loader.Get()), in TEST_F()
1032 dex::TypeIndex type_idx = klass->GetClassDef()->class_idx_; in TEST_F() local
1035 class_linker_->LookupResolvedType(type_idx, dex_cache.Get(), class_loader.Get()), in TEST_F()
1038 dex_cache->ClearResolvedType(type_idx); in TEST_F()
1039 EXPECT_TRUE(dex_cache->GetResolvedType(type_idx) == nullptr); in TEST_F()
1041 class_linker_->LookupResolvedType(type_idx, dex_cache.Get(), class_loader.Get()), in TEST_F()
[all …]
Dart_method.h400 ObjPtr<mirror::Class> LookupResolvedClassFromTypeIndex(dex::TypeIndex type_idx)
403 ObjPtr<mirror::Class> ResolveClassFromTypeIndex(dex::TypeIndex type_idx)
594 bool IsResolvedTypeIdx(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_);
614 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.cc78 dex::TypeIndex type_idx, in StoreTypeInBss() argument
86 type_idx.index_, in StoreTypeInBss()
150 extern "C" mirror::Class* artResolveTypeFromCode(uint32_t type_idx, Thread* self) in artResolveTypeFromCode() argument
157 ObjPtr<mirror::Class> result = ResolveVerifyAndClinit(dex::TypeIndex(type_idx), in artResolveTypeFromCode()
163 StoreTypeInBss(caller_and_outer.outer_method, dex::TypeIndex(type_idx), result); in artResolveTypeFromCode()
168 extern "C" mirror::Class* artResolveTypeAndVerifyAccessFromCode(uint32_t type_idx, Thread* self) in artResolveTypeAndVerifyAccessFromCode() argument
175 ObjPtr<mirror::Class> result = ResolveVerifyAndClinit(dex::TypeIndex(type_idx), in artResolveTypeAndVerifyAccessFromCode()
/art/libdexfile/dex/
Ddex_file.cc212 const ClassDef* DexFile::FindClassDef(dex::TypeIndex type_idx) const { in FindClassDef()
220 if (class_def.class_idx_ == type_idx) { in FindClassDef()
245 const dex::TypeIndex type_idx = GetIndexForTypeId(type); in FindFieldId() local
261 if (type_idx > field.type_idx_) { in FindFieldId()
263 } else if (type_idx < field.type_idx_) { in FindFieldId()
442 dex::TypeIndex type_idx = GetIndexForTypeId(*type_id); in CreateTypeList() local
444 param_type_idxs->push_back(type_idx); in CreateTypeList()
446 *return_type_idx = type_idx; in CreateTypeList()
567 std::string DexFile::PrettyType(dex::TypeIndex type_idx) const { in PrettyType()
568 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.cc111 const char* DexFileVerifier::CheckLoadStringByTypeIdx(dex::TypeIndex type_idx, in CheckLoadStringByTypeIdx() argument
113 if (UNLIKELY(!CheckIndex(type_idx.index_, dex_file_->NumTypeIds(), error_string))) { in CheckLoadStringByTypeIdx()
116 return CheckLoadStringByIdx(dex_file_->GetTypeId(type_idx).descriptor_idx_, error_string); in CheckLoadStringByTypeIdx()
149 #define LOAD_STRING_BY_TYPE(var, type_idx, error) \ argument
150 const char* (var) = CheckLoadStringByTypeIdx(type_idx, error); \
554 DECODE_UNSIGNED_CHECKED_FROM(ptr_, type_idx); in CheckAndGetHandlerOffsets()
555 if (!CheckIndex(type_idx, header_->type_ids_size_, "handler type_idx")) { in CheckAndGetHandlerOffsets()
1475 DECODE_UNSIGNED_CHECKED_FROM(ptr_, type_idx); in CheckIntraDebugInfoItem()
1476 if (type_idx != 0) { in CheckIntraDebugInfoItem()
1477 type_idx--; in CheckIntraDebugInfoItem()
[all …]
/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
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.h292 Class* GetResolvedType(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_);
294 void SetResolvedType(dex::TypeIndex type_idx, ObjPtr<Class> resolved)
297 void ClearResolvedType(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_);
471 uint32_t TypeSlotIndex(dex::TypeIndex type_idx) REQUIRES_SHARED(Locks::mutator_lock_);
/art/runtime/entrypoints/
Dentrypoint_utils.h79 ALWAYS_INLINE inline ObjPtr<mirror::Class> CheckArrayAlloc(dex::TypeIndex type_idx,
91 ALWAYS_INLINE inline ObjPtr<mirror::Array> AllocArrayFromCode(dex::TypeIndex type_idx,
159 inline ObjPtr<mirror::Class> ResolveVerifyAndClinit(dex::TypeIndex type_idx,
Dentrypoint_utils-inl.h242 inline ObjPtr<mirror::Class> CheckArrayAlloc(dex::TypeIndex type_idx, in CheckArrayAlloc() argument
251 ObjPtr<mirror::Class> klass = method->GetDexCache()->GetResolvedType(type_idx); in CheckArrayAlloc()
254 klass = class_linker->ResolveType(type_idx, method); in CheckArrayAlloc()
279 inline ObjPtr<mirror::Array> AllocArrayFromCode(dex::TypeIndex type_idx, in AllocArrayFromCode() argument
286 CheckArrayAlloc<kAccessCheck>(type_idx, component_count, method, &slow_path); in AllocArrayFromCode()
707 inline ObjPtr<mirror::Class> ResolveVerifyAndClinit(dex::TypeIndex type_idx, in ResolveVerifyAndClinit() argument
713 ObjPtr<mirror::Class> klass = class_linker->ResolveType(type_idx, referrer); in ResolveVerifyAndClinit()
/art/libprofile/profile/
Dprofile_compilation_info.cc125 const dex::TypeIndex& type_idx) { in AddClass() argument
134 ClassReference ref(dex_profile_idx, type_idx); in AddClass()
492 uint16_t type_idx = class_id.index_; in Save() local
493 AddUintToBuffer(&buffer, dex_data.class_counters[type_idx]); in Save()
801 dex::TypeIndex type_idx, in AddClassIndex() argument
807 data->class_set.insert(type_idx); in AddClassIndex()
1645 for (const dex::TypeIndex& type_idx : other_dex_data->class_set) { in MergeWith() local
1647 ? other_dex_data->class_counters[type_idx.index_] in MergeWith()
1648 : (dex_data->ContainsClass(type_idx) ? 1 : 0); in MergeWith()
1650 dex_data->class_counters[type_idx.index_] = in MergeWith()
[all …]
Dprofile_compilation_info.h121 ClassReference(uint8_t dex_profile_idx, const dex::TypeIndex type_idx) : in ClassReference()
122 dex_profile_index(dex_profile_idx), type_index(type_idx) {} in ClassReference()
148 void AddClass(uint16_t dex_profile_idx, const dex::TypeIndex& type_idx);
370 bool ContainsClass(const DexFile& dex_file, dex::TypeIndex type_idx) const;
624 dex::TypeIndex type_idx,
/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/verifier/
Dverifier_deps.h89 dex::TypeIndex type_idx,
161 ClassResolution(dex::TypeIndex type_idx, uint16_t access_flags) in ClassResolution()
162 : ClassResolutionBase(type_idx, access_flags) {} in ClassResolution()
300 dex::TypeIndex type_idx,
Dverifier_deps.cc134 dex::TypeIndex type_idx, in TryGetClassDescriptorStringId() argument
138 const dex::TypeId& type_id = dex_file.GetTypeId(type_idx); in TryGetClassDescriptorStringId()
296 dex::TypeIndex type_idx, in AddClassResolution() argument
310 dex_deps->classes_.emplace(ClassResolution(type_idx, GetAccessFlags(klass))); in AddClassResolution()
545 dex::TypeIndex type_idx, in MaybeRecordClassResolution() argument
549 thread_deps->AddClassResolution(dex_file, type_idx, klass); in MaybeRecordClassResolution()
/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/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/runtime/native/
Ddalvik_system_VMRuntime.cc396 dex::TypeIndex type_idx) in PreloadDexCachesResolveType() argument
398 uint32_t slot_idx = dex_cache->TypeSlotIndex(type_idx); in PreloadDexCachesResolveType()
404 const char* class_name = dex_file->StringByTypeIdx(type_idx); in PreloadDexCachesResolveType()
413 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()

123