Home
last modified time | relevance | path

Searched refs:TypeIndex (Results 1 – 25 of 116) sorted by relevance

12345

/art/libdexfile/dex/
Dtype_reference.h34 TypeReference(const DexFile* dex_file, dex::TypeIndex index) in TypeReference()
37 dex::TypeIndex TypeIndex() const { in TypeIndex() function
38 return dex::TypeIndex(index); in TypeIndex()
47 StringReference sr1(tr1.dex_file, tr1.dex_file->GetTypeId(tr1.TypeIndex()).descriptor_idx_); in operator()
48 StringReference sr2(tr2.dex_file, tr2.dex_file->GetTypeId(tr2.TypeIndex()).descriptor_idx_); in operator()
Ddex_file_types.h83 class TypeIndex : public DexIndex<uint16_t> {
85 TypeIndex() {} in TypeIndex() function
86 explicit constexpr TypeIndex(uint16_t index) : DexIndex<uint16_t>(index) {} in TypeIndex() function
87 static constexpr TypeIndex Invalid() { in Invalid()
88 return TypeIndex(std::numeric_limits<decltype(index_)>::max()); in Invalid()
91 std::ostream& operator<<(std::ostream& os, const TypeIndex& index);
110 template<> struct hash<art::dex::TypeIndex> {
111 size_t operator()(const art::dex::TypeIndex& index) const {
Ddex_file_structs.h69 dex::TypeIndex class_idx_; // index into type_ids_ array for defining class
70 dex::TypeIndex type_idx_; // index into type_ids_ array for field type
80 dex::TypeIndex return_type_idx_; // index into type_ids array for return type
90 dex::TypeIndex class_idx_; // index into type_ids_ array for defining class
109 dex::TypeIndex class_idx_; // index into type_ids_ array for this class
112 dex::TypeIndex superclass_idx_; // index into type_ids_ array for superclass
144 dex::TypeIndex type_idx_; // index into type_ids section
Ddex_file.cc61 static_assert(sizeof(dex::TypeIndex) == sizeof(uint16_t), "TypeIndex size is wrong");
62 static_assert(std::is_trivially_copyable<dex::TypeIndex>::value, "TypeIndex not trivial");
213 const ClassDef* DexFile::FindClassDef(dex::TypeIndex type_idx) const { in FindClassDef()
251 const dex::TypeIndex class_idx = GetIndexForTypeId(declaring_klass); in FindFieldId()
253 const dex::TypeIndex type_idx = GetIndexForTypeId(type); in FindFieldId()
286 const dex::TypeIndex class_idx = GetIndexForTypeId(declaring_klass); in FindMethodId()
292 const MethodId* DexFile::FindMethodIdByIndex(dex::TypeIndex class_idx, in FindMethodIdByIndex()
351 const TypeId& type_id = GetTypeId(dex::TypeIndex(mid)); in FindTypeId()
371 const TypeId& type_id = GetTypeId(dex::TypeIndex(mid)); in FindTypeId()
383 const ProtoId* DexFile::FindProtoId(dex::TypeIndex return_type_idx, in FindProtoId()
[all …]
Ddex_file_exception_helpers.h42 dex::TypeIndex GetHandlerTypeIndex() const { in GetHandlerTypeIndex()
63 dex::TypeIndex type_idx_; // type index of the caught exception type
Ddex_file.h285 bool IsTypeIndexValid(dex::TypeIndex idx) const { in IsTypeIndexValid()
290 const dex::TypeId& GetTypeId(dex::TypeIndex idx) const { in GetTypeId()
295 dex::TypeIndex GetIndexForTypeId(const dex::TypeId& type_id) const { in GetIndexForTypeId()
300 return dex::TypeIndex(static_cast<uint16_t>(result)); in GetIndexForTypeId()
304 const char* StringByTypeIdx(dex::TypeIndex idx, uint32_t* unicode_length) const;
306 const char* StringByTypeIdx(dex::TypeIndex idx) const;
384 const dex::MethodId* FindMethodIdByIndex(dex::TypeIndex declaring_klass,
437 const dex::ClassDef* FindClassDef(dex::TypeIndex type_idx) const;
493 const dex::ProtoId* FindProtoId(dex::TypeIndex return_type_idx,
494 const dex::TypeIndex* signature_type_idxs,
[all …]
Ddex_file_exception_helpers.cc88 handler_.type_idx_ = dex::TypeIndex(DecodeUnsignedLeb128(&current_data_)); in Next()
95 handler_.type_idx_ = dex::TypeIndex(DexFile::kDexNoIndex16); in Next()
/art/compiler/optimizing/
Dssa_liveness_analysis_test.cc61 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kInt32); in TEST_F()
81 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
83 graph_->GetDexFile(), dex::TypeIndex(1), 1, DataType::Type::kInt32); in TEST_F()
85 graph_->GetDexFile(), dex::TypeIndex(2), 2, DataType::Type::kInt32); in TEST_F()
87 graph_->GetDexFile(), dex::TypeIndex(3), 3, DataType::Type::kInt32); in TEST_F()
89 graph_->GetDexFile(), dex::TypeIndex(4), 4, DataType::Type::kReference); in TEST_F()
150 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
152 graph_->GetDexFile(), dex::TypeIndex(1), 1, DataType::Type::kInt32); in TEST_F()
154 graph_->GetDexFile(), dex::TypeIndex(2), 2, DataType::Type::kInt32); in TEST_F()
156 graph_->GetDexFile(), dex::TypeIndex(3), 3, DataType::Type::kInt32); in TEST_F()
[all …]
Dinstruction_builder.h173 HNewArray* BuildNewArray(uint32_t dex_pc, dex::TypeIndex type_index, HInstruction* length);
177 dex::TypeIndex type_index,
202 dex::TypeIndex type_index,
207 dex::TypeIndex type_index,
217 HLoadClass* BuildLoadClass(dex::TypeIndex type_index, uint32_t dex_pc);
219 HLoadClass* BuildLoadClass(dex::TypeIndex type_index,
226 Handle<mirror::Class> ResolveClass(ScopedObjectAccess& soa, dex::TypeIndex type_index)
229 bool LoadClassNeedsAccessCheck(dex::TypeIndex type_index, ObjPtr<mirror::Class> klass)
278 HNewInstance* BuildNewInstance(dex::TypeIndex type_index, uint32_t dex_pc);
292 ObjPtr<mirror::Class> LookupResolvedType(dex::TypeIndex type_index,
[all …]
Dload_store_analysis_test.cc80 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
82 graph_->GetDexFile(), dex::TypeIndex(1), 1, DataType::Type::kInt32); in TEST_F()
161 dex::TypeIndex(0), in TEST_F()
235 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
237 graph_->GetDexFile(), dex::TypeIndex(1), 1, DataType::Type::kInt32); in TEST_F()
329 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
331 graph_->GetDexFile(), dex::TypeIndex(1), 1, DataType::Type::kInt32); in TEST_F()
541 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
543 graph_->GetDexFile(), dex::TypeIndex(1), 1, DataType::Type::kInt32); in TEST_F()
665 dex::TypeIndex(0), in TEST_F()
[all …]
Dnodes_test.cc150 graph->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
190 graph->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
192 graph->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
215 graph->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
233 graph->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
Doptimizing_unit_test.h409 HLoadClass* MakeClassLoad(std::optional<dex::TypeIndex> ti = std::nullopt,
412 ti ? *ti : dex::TypeIndex(class_idx_++),
497 dex::TypeIndex DefaultTypeIndexForType(DataType::Type type) { in DefaultTypeIndexForType()
500 return dex::TypeIndex(1); in DefaultTypeIndexForType()
503 return dex::TypeIndex(2); in DefaultTypeIndexForType()
506 return dex::TypeIndex(3); in DefaultTypeIndexForType()
509 return dex::TypeIndex(4); in DefaultTypeIndexForType()
512 return dex::TypeIndex(5); in DefaultTypeIndexForType()
514 return dex::TypeIndex(6); in DefaultTypeIndexForType()
516 return dex::TypeIndex(7); in DefaultTypeIndexForType()
[all …]
Dselect_generator_test.cc32 dex::TypeIndex(0), in InitGraphAndParameters()
50 dex::TypeIndex(0), in ConstructBasicGraphForSelect()
/art/libprofile/profile/
Dprofile_compilation_info_test.cc74 std::vector<TypeReference> types = {TypeReference(dex1, dex::TypeIndex(0))}; in GetTestInlineCaches()
80 TypeReference(dex1, dex::TypeIndex(0)), in GetTestInlineCaches()
81 TypeReference(dex2, dex::TypeIndex(1)), in GetTestInlineCaches()
82 TypeReference(dex3, dex::TypeIndex(2))}; in GetTestInlineCaches()
90 TypeReference(dex1, dex::TypeIndex(0)), in GetTestInlineCaches()
91 TypeReference(dex1, dex::TypeIndex(1)), in GetTestInlineCaches()
92 TypeReference(dex1, dex::TypeIndex(2)), in GetTestInlineCaches()
93 TypeReference(dex1, dex::TypeIndex(3)), in GetTestInlineCaches()
94 TypeReference(dex1, dex::TypeIndex(4))}; in GetTestInlineCaches()
110 TypeReference type_ref(dex1, dex::TypeIndex(k++)); in MakeMegamorphic()
[all …]
Dprofile_compilation_info.h116 ClassReference(ProfileIndexType dex_profile_idx, const dex::TypeIndex type_idx) : in ClassReference()
129 dex::TypeIndex type_index; // the type index of the class
141 classes(std::less<dex::TypeIndex>(), allocator) {} in DexPcData()
142 void AddClass(const dex::TypeIndex& type_idx);
164 ArenaSet<dex::TypeIndex> classes;
326 dex::TypeIndex FindOrCreateTypeIndex(const DexFile& dex_file, TypeReference class_ref);
327 dex::TypeIndex FindOrCreateTypeIndex(const DexFile& dex_file, const char* descriptor);
332 void AddClass(ProfileIndexType profile_index, dex::TypeIndex type_index) { in AddClass()
346 dex::TypeIndex type_index,
506 dex::TypeIndex type_idx,
[all …]
Dprofile_test_helper.h77 dex::TypeIndex type_index,
129 for (dex::TypeIndex type_index : dex_pc_data.classes) { in EqualInlineCaches()
134 return type_index == type_ref.TypeIndex(); in EqualInlineCaches()
137 type_ref.dex_file->StringByTypeIdx(type_ref.TypeIndex()); in EqualInlineCaches()
Dprofile_compilation_info.cc574 void ProfileCompilationInfo::DexPcData::AddClass(const dex::TypeIndex& type_idx) { in AddClass()
672 dex::TypeIndex ProfileCompilationInfo::FindOrCreateTypeIndex(const DexFile& dex_file, in FindOrCreateTypeIndex()
675 DCHECK_LT(class_ref.TypeIndex().index_, class_ref.dex_file->NumTypeIds()); in FindOrCreateTypeIndex()
678 return class_ref.TypeIndex(); in FindOrCreateTypeIndex()
681 const char* descriptor = class_ref.dex_file->StringByTypeIdx(class_ref.TypeIndex()); in FindOrCreateTypeIndex()
685 dex::TypeIndex ProfileCompilationInfo::FindOrCreateTypeIndex(const DexFile& dex_file, in FindOrCreateTypeIndex()
697 return dex::TypeIndex(); // Invalid. in FindOrCreateTypeIndex()
701 return (*it < max_artificial_ids) ? dex::TypeIndex(num_type_ids + *it) : dex::TypeIndex(); in FindOrCreateTypeIndex()
705 return dex::TypeIndex(); // Invalid. in FindOrCreateTypeIndex()
710 return dex::TypeIndex(num_type_ids + new_extra_descriptor_index); in FindOrCreateTypeIndex()
[all …]
/art/runtime/
Dsdk_checker.cc66 dex::TypeIndex return_type_idx; in ShouldDenyAccess()
67 std::vector<dex::TypeIndex> param_type_idxs; in ShouldDenyAccess()
142 dex::TypeIndex type_idx = dex_file->GetIndexForTypeId(*type_id); in ShouldDenyAccess()
Dclass_linker-inl.h117 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType()
135 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType()
149 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType()
163 inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx, in ResolveType()
175 inline ObjPtr<mirror::Class> ClassLinker::LookupResolvedType(dex::TypeIndex type_idx, in LookupResolvedType()
187 inline ObjPtr<mirror::Class> ClassLinker::LookupResolvedType(dex::TypeIndex type_idx, in LookupResolvedType()
199 inline ObjPtr<mirror::Class> ClassLinker::LookupResolvedType(dex::TypeIndex type_idx, in LookupResolvedType()
212 dex::TypeIndex type_idx, in LookupResolvedType()
Dart_method-inl.h90 inline ObjPtr<mirror::Class> ArtMethod::LookupResolvedClassFromTypeIndex(dex::TypeIndex type_idx) { in LookupResolvedClassFromTypeIndex()
98 inline ObjPtr<mirror::Class> ArtMethod::ResolveClassFromTypeIndex(dex::TypeIndex type_idx) { in ResolveClassFromTypeIndex()
237 inline bool ArtMethod::IsResolvedTypeIdx(dex::TypeIndex type_idx) { in IsResolvedTypeIdx()
298 inline const char* ArtMethod::GetTypeDescriptorFromTypeIdx(dex::TypeIndex type_idx) { in GetTypeDescriptorFromTypeIdx()
346 inline dex::TypeIndex ArtMethod::GetReturnTypeIndex() { in GetReturnTypeIndex()
/art/runtime/entrypoints/quick/
Dquick_dexcache_entrypoints.cc81 dex::TypeIndex type_idx, in StoreTypeInBss()
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()
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/tools/veridex/
Dresolver.cc73 VeriClass* VeridexResolver::GetVeriClass(dex::TypeIndex index) { in GetVeriClass()
167 dex::TypeIndex idx = interfaces->GetTypeItem(i).type_idx_; in LookupMethodIn()
211 dex::TypeIndex idx = interfaces->GetTypeItem(i).type_idx_; in LookupFieldIn()
296 if (GetVeriClass(dex::TypeIndex(i)) == nullptr) { in ResolveAll()
297 LOG(WARNING) << "Unresolved " << dex_file_.PrettyType(dex::TypeIndex(i)); in ResolveAll()
/art/profman/
Dprofman.cc808 std::set<dex::TypeIndex> classes_; in GetInlineCacheLine()
810 std::unordered_map<dex::TypeIndex, IcLineInfo> ics; in GetInlineCacheLine()
831 for (dex::TypeIndex type_index : ic_data.classes) { in GetInlineCacheLine()
849 for (dex::TypeIndex type_index : dex_data.classes_) { in GetInlineCacheLine()
865 std::set<dex::TypeIndex> class_types; in GetClassNamesAndMethods()
875 for (const dex::TypeIndex& type_index : class_types) { in GetClassNamesAndMethods()
1045 dex::TypeIndex type_index = dex_file->GetIndexForTypeId(*type_id); in FindClassDef()
1092 dex::TypeIndex return_type_idx; in FindMethodIndex()
1093 std::vector<dex::TypeIndex> param_type_idxs; in FindMethodIndex()
1104 dex_file->GetTypeId(class_ref.TypeIndex()), *name_id, *proto_id); in FindMethodIndex()
[all …]
/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,
/art/runtime/interpreter/mterp/
Dnterp.cc539 dex::TypeIndex index; in NterpGetClassOrAllocateObject()
542 index = dex::TypeIndex(inst->VRegB_21c()); in NterpGetClassOrAllocateObject()
545 index = dex::TypeIndex(inst->VRegB_21c()); in NterpGetClassOrAllocateObject()
548 index = dex::TypeIndex(inst->VRegC_22c()); in NterpGetClassOrAllocateObject()
551 index = dex::TypeIndex(inst->VRegB_21c()); in NterpGetClassOrAllocateObject()
554 index = dex::TypeIndex(inst->VRegC_22c()); in NterpGetClassOrAllocateObject()
653 ResolveVerifyAndClinit(dex::TypeIndex(type_idx), in DoFilledNewArray()

12345