Home
last modified time | relevance | path

Searched refs:dex_cache (Results 1 – 25 of 42) sorted by relevance

12

/art/runtime/mirror/
Ddex_cache_test.cc38 Handle<DexCache> dex_cache( in TEST_F() local
40 ASSERT_TRUE(dex_cache.Get() != nullptr); in TEST_F()
42 EXPECT_EQ(java_lang_dex_file_->NumStringIds(), dex_cache->NumStrings()); in TEST_F()
43 EXPECT_EQ(java_lang_dex_file_->NumTypeIds(), dex_cache->NumResolvedTypes()); in TEST_F()
44 EXPECT_EQ(java_lang_dex_file_->NumMethodIds(), dex_cache->NumResolvedMethods()); in TEST_F()
45 EXPECT_EQ(java_lang_dex_file_->NumFieldIds(), dex_cache->NumResolvedFields()); in TEST_F()
47 EXPECT_LE(0, dex_cache->GetStrings()->GetLength()); in TEST_F()
48 EXPECT_LE(0, dex_cache->GetResolvedTypes()->GetLength()); in TEST_F()
49 EXPECT_LE(0, dex_cache->GetResolvedMethods()->GetLength()); in TEST_F()
50 EXPECT_LE(0u, dex_cache->NumResolvedFields()); in TEST_F()
[all …]
Dclass.cc386 ArtMethod* Class::FindInterfaceMethod(const DexCache* dex_cache, uint32_t dex_method_idx, in FindInterfaceMethod() argument
389 ArtMethod* method = FindDeclaredVirtualMethod(dex_cache, dex_method_idx, pointer_size); in FindInterfaceMethod()
398 dex_cache, dex_method_idx, pointer_size); in FindInterfaceMethod()
426 ArtMethod* Class::FindDeclaredDirectMethod(const DexCache* dex_cache, uint32_t dex_method_idx, in FindDeclaredDirectMethod() argument
428 if (GetDexCache() == dex_cache) { in FindDeclaredDirectMethod()
461 const DexCache* dex_cache, uint32_t dex_method_idx, size_t pointer_size) { in FindDirectMethod() argument
463 ArtMethod* method = klass->FindDeclaredDirectMethod(dex_cache, dex_method_idx, pointer_size); in FindDirectMethod()
493 ArtMethod* Class::FindDeclaredVirtualMethod(const DexCache* dex_cache, uint32_t dex_method_idx, in FindDeclaredVirtualMethod() argument
495 if (GetDexCache() == dex_cache) { in FindDeclaredVirtualMethod()
530 const DexCache* dex_cache, uint32_t dex_method_idx, size_t pointer_size) { in FindVirtualMethod() argument
[all …]
Dfield.cc70 mirror::DexCache* const dex_cache = declaring_class->GetDexCache(); in GetArtField() local
71 ArtField* const art_field = dex_cache->GetResolvedField(GetDexFieldIndex(), sizeof(void*)); in GetArtField()
Dclass.h595 DexCache* dex_cache, uint32_t field_idx)
605 DexCache* dex_cache, uint32_t method_idx)
818 ArtMethod* FindInterfaceMethod(const DexCache* dex_cache, uint32_t dex_method_idx,
830 ArtMethod* FindDeclaredDirectMethod(const DexCache* dex_cache, uint32_t dex_method_idx,
842 ArtMethod* FindDirectMethod(const DexCache* dex_cache, uint32_t dex_method_idx,
854 ArtMethod* FindDeclaredVirtualMethod(const DexCache* dex_cache, uint32_t dex_method_idx,
866 ArtMethod* FindVirtualMethod(const DexCache* dex_cache, uint32_t dex_method_idx,
976 ArtField* FindInstanceField(const DexCache* dex_cache, uint32_t dex_field_idx)
982 ArtField* FindDeclaredInstanceField(const DexCache* dex_cache, uint32_t dex_field_idx)
992 static ArtField* FindStaticField(Thread* self, Handle<Class> klass, const DexCache* dex_cache,
[all …]
Dclass-inl.h274 uint32_t field_idx, DexCache* dex_cache) { in ResolvedFieldAccessTest() argument
275 DCHECK_EQ(use_referrers_cache, dex_cache == nullptr); in ResolvedFieldAccessTest()
280 DexCache* referrer_dex_cache = use_referrers_cache ? this->GetDexCache() : dex_cache; in ResolvedFieldAccessTest()
305 uint32_t method_idx, DexCache* dex_cache) { in ResolvedMethodAccessTest() argument
307 DCHECK_EQ(use_referrers_cache, dex_cache == nullptr); in ResolvedMethodAccessTest()
312 DexCache* referrer_dex_cache = use_referrers_cache ? this->GetDexCache() : dex_cache; in ResolvedMethodAccessTest()
337 DexCache* dex_cache, uint32_t field_idx) { in CanAccessResolvedField() argument
338 return ResolvedFieldAccessTest<false, false>(access_to, field, field_idx, dex_cache); in CanAccessResolvedField()
347 DexCache* dex_cache, uint32_t method_idx) { in CanAccessResolvedMethod() argument
348 return ResolvedMethodAccessTest<false, false, kStatic>(access_to, method, method_idx, dex_cache); in CanAccessResolvedMethod()
/art/runtime/native/
Djava_lang_DexCache.cc31 mirror::DexCache* dex_cache = soa.Decode<mirror::DexCache*>(javaDexCache); in DexCache_getDexNative() local
33 DCHECK_EQ(dex_cache->GetLockOwnerThreadId(), soa.Self()->GetThreadId()); in DexCache_getDexNative()
34 const DexFile* dex_file = dex_cache->GetDexFile(); in DexCache_getDexNative()
54 mirror::DexCache* dex_cache = soa.Decode<mirror::DexCache*>(javaDexCache); in DexCache_getResolvedType() local
55 return soa.AddLocalReference<jobject>(dex_cache->GetResolvedType(type_index)); in DexCache_getResolvedType()
60 mirror::DexCache* dex_cache = soa.Decode<mirror::DexCache*>(javaDexCache); in DexCache_getResolvedString() local
61 return soa.AddLocalReference<jobject>(dex_cache->GetResolvedString(string_index)); in DexCache_getResolvedString()
67 mirror::DexCache* dex_cache = soa.Decode<mirror::DexCache*>(javaDexCache); in DexCache_setResolvedType() local
68 dex_cache->SetResolvedType(type_index, soa.Decode<mirror::Class*>(type)); in DexCache_setResolvedType()
74 mirror::DexCache* dex_cache = soa.Decode<mirror::DexCache*>(javaDexCache); in DexCache_setResolvedString() local
[all …]
Ddalvik_system_VMRuntime.cc276 Handle<mirror::DexCache> dex_cache, uint32_t string_idx, StringTable& strings) in PreloadDexCachesResolveString() argument
278 mirror::String* string = dex_cache->GetResolvedString(string_idx); in PreloadDexCachesResolveString()
282 const DexFile* dex_file = dex_cache->GetDexFile(); in PreloadDexCachesResolveString()
289 dex_cache->SetResolvedString(string_idx, string); in PreloadDexCachesResolveString()
294 Thread* self, mirror::DexCache* dex_cache, uint32_t type_idx) in PreloadDexCachesResolveType() argument
296 mirror::Class* klass = dex_cache->GetResolvedType(type_idx); in PreloadDexCachesResolveType()
300 const DexFile* dex_file = dex_cache->GetDexFile(); in PreloadDexCachesResolveType()
312 dex_cache->SetResolvedType(type_idx, klass); in PreloadDexCachesResolveType()
322 static void PreloadDexCachesResolveField(Handle<mirror::DexCache> dex_cache, uint32_t field_idx, in PreloadDexCachesResolveField() argument
325 ArtField* field = dex_cache->GetResolvedField(field_idx, sizeof(void*)); in PreloadDexCachesResolveField()
[all …]
/art/compiler/driver/
Dcompiler_driver-inl.h43 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache, in ResolveClass() argument
46 DCHECK_EQ(dex_cache->GetDexFile(), mUnit->GetDexFile()); in ResolveClass()
49 *mUnit->GetDexFile(), cls_index, dex_cache, class_loader); in ResolveClass()
59 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache, in ResolveCompilingMethodsClass() argument
61 DCHECK_EQ(dex_cache->GetDexFile(), mUnit->GetDexFile()); in ResolveCompilingMethodsClass()
65 return ResolveClass(soa, dex_cache, class_loader, referrer_method_id.class_idx_, mUnit); in ResolveCompilingMethodsClass()
69 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache, in ResolveFieldWithDexFile() argument
72 DCHECK_EQ(dex_cache->GetDexFile(), dex_file); in ResolveFieldWithDexFile()
74 *dex_file, field_idx, dex_cache, class_loader, is_static); in ResolveFieldWithDexFile()
94 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache, in ResolveField() argument
[all …]
Dcompiler_driver_test.cc111 mirror::DexCache* dex_cache = class_linker_->FindDexCache(dex); in TEST_F() local
112 EXPECT_EQ(dex.NumStringIds(), dex_cache->NumStrings()); in TEST_F()
113 for (size_t i = 0; i < dex_cache->NumStrings(); i++) { in TEST_F()
114 const mirror::String* string = dex_cache->GetResolvedString(i); in TEST_F()
117 EXPECT_EQ(dex.NumTypeIds(), dex_cache->NumResolvedTypes()); in TEST_F()
118 for (size_t i = 0; i < dex_cache->NumResolvedTypes(); i++) { in TEST_F()
119 mirror::Class* type = dex_cache->GetResolvedType(i); in TEST_F()
123 EXPECT_EQ(dex.NumMethodIds(), dex_cache->NumResolvedMethods()); in TEST_F()
126 for (size_t i = 0; i < dex_cache->NumResolvedMethods(); i++) { in TEST_F()
127 ArtMethod* method = dex_cache->GetResolvedMethod(i, pointer_size); in TEST_F()
[all …]
Dcompiler_driver.cc797 Handle<mirror::DexCache> dex_cache(hs2.NewHandle(class_linker->FindDexCache(*dex_file))); in LoadImageClasses() local
799 class_linker->ResolveType(*dex_file, exception_type_idx, dex_cache, in LoadImageClasses()
1019 mirror::DexCache* dex_cache = Runtime::Current()->GetClassLinker()->FindDexCache(dex_file); in CanAssumeTypeIsPresentInDexCache() local
1020 mirror::Class* resolved_class = dex_cache->GetResolvedType(type_idx); in CanAssumeTypeIsPresentInDexCache()
1044 Handle<mirror::DexCache> dex_cache( in CanAssumeStringIsPresentInDexCache() local
1046 Runtime::Current()->GetClassLinker()->ResolveString(dex_file, string_idx, dex_cache); in CanAssumeStringIsPresentInDexCache()
1071 mirror::DexCache* dex_cache = Runtime::Current()->GetClassLinker()->FindDexCache(dex_file); in CanAccessTypeWithoutChecks() local
1073 mirror::Class* resolved_class = dex_cache->GetResolvedType(type_idx); in CanAccessTypeWithoutChecks()
1082 mirror::Class* referrer_class = dex_cache->GetResolvedType(method_id.class_idx_); in CanAccessTypeWithoutChecks()
1108 mirror::DexCache* dex_cache = Runtime::Current()->GetClassLinker()->FindDexCache(dex_file); in CanAccessInstantiableTypeWithoutChecks() local
[all …]
Dcompiler_driver.h233 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
238 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
246 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
253 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
273 mirror::DexCache* dex_cache, mirror::Class* referrer_class,
280 mirror::DexCache* dex_cache, mirror::Class* referrer_class,
289 bool IsClassOfStaticMethodAvailableToReferrer(mirror::DexCache* dex_cache,
307 ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
326 ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
351 mirror::DexCache** dex_cache)
[all …]
/art/runtime/
Dclass_linker-inl.h65 Handle<mirror::DexCache> dex_cache(hs.NewHandle(declaring_class->GetDexCache())); in ResolveString()
66 const DexFile& dex_file = *dex_cache->GetDexFile(); in ResolveString()
67 resolved_string = ResolveString(dex_file, string_idx, dex_cache); in ResolveString()
69 DCHECK_EQ(dex_cache->GetResolvedString(string_idx), resolved_string); in ResolveString()
81 Handle<mirror::DexCache> dex_cache(hs.NewHandle(declaring_class->GetDexCache())); in ResolveType()
83 const DexFile& dex_file = *dex_cache->GetDexFile(); in ResolveType()
84 resolved_type = ResolveType(dex_file, type_idx, dex_cache, class_loader); in ResolveType()
97 Handle<mirror::DexCache> dex_cache(hs.NewHandle(dex_cache_ptr)); in ResolveType()
99 const DexFile& dex_file = *dex_cache->GetDexFile(); in ResolveType()
100 resolved_type = ResolveType(dex_file, type_idx, dex_cache, class_loader); in ResolveType()
[all …]
Dart_field-inl.h295 auto* dex_cache = declaring_class->GetDexCache(); in GetType() local
296 const DexFile* const dex_file = dex_cache->GetDexFile(); in GetType()
298 mirror::Class* type = dex_cache->GetResolvedType(field_id.type_idx_); in GetType()
321 auto* dex_cache = GetDexCache(); in GetStringName() local
322 const auto* dex_file = dex_cache->GetDexFile(); in GetStringName()
324 auto* name = dex_cache->GetResolvedString(field_id.name_idx_); in GetStringName()
326 name = ResolveGetStringName(self, *dex_file, field_id.name_idx_, dex_cache); in GetStringName()
Dclass_linker.cc1139 Handle<mirror::DexCache> dex_cache(hs2.NewHandle(dex_caches->Get(i))); in InitFromImage() local
1140 const std::string& dex_file_location(dex_cache->GetLocation()->ToModifiedUtf8()); in InitFromImage()
1154 SanityCheckArtMethodPointerArray(dex_cache->GetResolvedMethods(), nullptr, in InitFromImage()
1160 AppendToBootClassPath(*dex_file.get(), dex_cache); in InitFromImage()
1177 auto* dex_cache = dex_caches->Get(i); in InitFromImage() local
1178 for (size_t j = 0; j < dex_cache->NumResolvedFields(); ++j) { in InitFromImage()
1179 auto* field = dex_cache->GetResolvedField(j, image_pointer_size_); in InitFromImage()
1323 for (GcRoot<mirror::DexCache>& dex_cache : dex_caches_) { in VisitRoots()
1324 dex_cache.VisitRoot(visitor, RootInfo(kRootVMInternal)); in VisitRoots()
1469 auto dex_cache(hs.NewHandle(down_cast<mirror::DexCache*>( in AllocDexCache() local
[all …]
Dart_field.cc84 uint32_t string_idx, mirror::DexCache* dex_cache) { in ResolveGetStringName() argument
87 dex_file, string_idx, hs.NewHandle(dex_cache)); in ResolveGetStringName()
Dcommon_throws.cc319 mirror::DexCache* dex_cache = method->GetDeclaringClass()->GetDexCache(); in ThrowNoSuchMethodError() local
320 const DexFile& dex_file = *dex_cache->GetDexFile(); in ThrowNoSuchMethodError()
348 mirror::DexCache* dex_cache = in ThrowNullPointerExceptionForMethodAccess() local
350 const DexFile& dex_file = *dex_cache->GetDexFile(); in ThrowNullPointerExceptionForMethodAccess()
356 mirror::DexCache* dex_cache = method->GetDeclaringClass()->GetDexCache(); in ThrowNullPointerExceptionForMethodAccess() local
357 const DexFile& dex_file = *dex_cache->GetDexFile(); in ThrowNullPointerExceptionForMethodAccess()
Dintern_table.cc165 mirror::DexCache* dex_cache = dex_caches->Get(i); in AddImageStringsToTable() local
166 const DexFile* dex_file = dex_cache->GetDexFile(); in AddImageStringsToTable()
169 mirror::String* image_string = dex_cache->GetResolvedString(j); in AddImageStringsToTable()
198 mirror::DexCache* dex_cache = dex_caches->Get(i); in LookupStringFromImage() local
199 const DexFile* dex_file = dex_cache->GetDexFile(); in LookupStringFromImage()
205 mirror::String* image_string = dex_cache->GetResolvedString(string_idx); in LookupStringFromImage()
Dclass_linker.h195 Handle<mirror::DexCache> dex_cache)
218 Handle<mirror::DexCache> dex_cache,
228 Handle<mirror::DexCache> dex_cache,
240 ArtField* GetResolvedField(uint32_t field_idx, mirror::DexCache* dex_cache)
252 Handle<mirror::DexCache> dex_cache,
262 Handle<mirror::DexCache> dex_cache,
284 void RegisterDexFile(const DexFile& dex_file, Handle<mirror::DexCache> dex_cache)
521 void AppendToBootClassPath(const DexFile& dex_file, Handle<mirror::DexCache> dex_cache)
557 void RegisterDexFileLocked(const DexFile& dex_file, Handle<mirror::DexCache> dex_cache)
Dart_method.cc60 Handle<mirror::DexCache> dex_cache(hs.NewHandle(GetDexCache())); in GetNameAsString() local
61 auto* dex_file = dex_cache->GetDexFile(); in GetNameAsString()
65 dex_cache); in GetNameAsString()
538 auto* dex_cache = GetDexCache(); in EqualParameters() local
539 auto* dex_file = dex_cache->GetDexFile(); in EqualParameters()
/art/compiler/dex/
Dmir_field_info.cc49 Handle<mirror::DexCache> dex_cache(hs.NewHandle(compiler_driver->GetDexCache(mUnit))); in Resolve() local
53 compiler_driver->ResolveCompilingMethodsClass(soa, dex_cache, class_loader, mUnit))); in Resolve()
62 resolved_field = compiler_driver->ResolveField(soa, dex_cache, class_loader, mUnit, in Resolve()
86 dex_cache.Get(), referrer_class.Get(), resolved_field, field_idx); in Resolve()
114 Handle<mirror::DexCache> dex_cache(hs.NewHandle(compiler_driver->GetDexCache(mUnit))); in Resolve() local
118 compiler_driver->ResolveCompilingMethodsClass(soa, dex_cache, class_loader, mUnit))); in Resolve()
125 compiler_driver->ResolveField(soa, dex_cache, class_loader, mUnit, field_idx, true); in Resolve()
135 dex_cache.Get(), referrer_class, resolved_field, field_idx, &it->storage_index_); in Resolve()
148 compiler_driver->CanAssumeTypeIsPresentInDexCache(*dex_cache->GetDexFile(), in Resolve()
Dmir_method_info.cc58 Handle<mirror::DexCache> dex_cache(hs.NewHandle(compiler_driver->GetDexCache(mUnit))); in Resolve() local
62 compiler_driver->ResolveCompilingMethodsClass(soa, dex_cache, class_loader, mUnit))); in Resolve()
97 current_dex_cache.Assign(dex_cache.Get()); in Resolve()
98 resolved_method = compiler_driver->ResolveMethod(soa, dex_cache, class_loader, mUnit, in Resolve()
/art/compiler/
Dimage_writer.cc309 DexCache* dex_cache = class_linker->GetDexCache(idx); in PrepareDexCacheArraySlots() local
310 const DexFile* dex_file = dex_cache->GetDexFile(); in PrepareDexCacheArraySlots()
319 dex_cache->GetResolvedTypes(), in PrepareDexCacheArraySlots()
322 dex_cache->GetResolvedMethods(), in PrepareDexCacheArraySlots()
324 AddMethodPointerArray(dex_cache->GetResolvedMethods()); in PrepareDexCacheArraySlots()
326 dex_cache->GetResolvedFields(), in PrepareDexCacheArraySlots()
328 pointer_arrays_.emplace(dex_cache->GetResolvedFields(), kBinArtField); in PrepareDexCacheArraySlots()
330 dex_cache->GetStrings(), in PrepareDexCacheArraySlots()
565 DexCache* dex_cache = class_linker->GetDexCache(i); in ComputeEagerResolvedStringsCallback() local
566 const DexFile& dex_file = *dex_cache->GetDexFile(); in ComputeEagerResolvedStringsCallback()
[all …]
/art/runtime/verifier/
Dmethod_verifier.h144 Handle<mirror::DexCache> dex_cache,
152 Handle<mirror::DexCache> dex_cache,
211 MethodVerifier(Thread* self, const DexFile* dex_file, Handle<mirror::DexCache> dex_cache, in MethodVerifier() argument
218 : MethodVerifier(self, dex_file, dex_cache, class_loader, class_def, code_item, method_idx, in MethodVerifier()
282 MethodVerifier(Thread* self, const DexFile* dex_file, Handle<mirror::DexCache> dex_cache,
308 Handle<mirror::DexCache> dex_cache,
/art/compiler/optimizing/
Dreference_type_propagation.cc180 mirror::DexCache* dex_cache = dex_compilation_unit_.GetClassLinker()->FindDexCache(dex_file_); in VisitNewInstance() local
182 mirror::Class* resolved_class = dex_cache->GetResolvedType(instr->GetTypeIndex()); in VisitNewInstance()
191 mirror::DexCache* dex_cache = dex_compilation_unit_.GetClassLinker()->FindDexCache(dex_file_); in VisitLoadClass() local
193 mirror::Class* resolved_class = dex_cache->GetResolvedType(instr->GetTypeIndex()); in VisitLoadClass()
/art/runtime/quick/
Dinline_method_analyser.cc331 mirror::DexCache* dex_cache = verifier->GetDexCache(); in ComputeSpecialAccessorInfo() local
334 ArtMethod* method = dex_cache->GetResolvedMethod(method_idx, cl->GetImagePointerSize()); in ComputeSpecialAccessorInfo()
335 ArtField* field = cl->GetResolvedField(field_idx, dex_cache); in ComputeSpecialAccessorInfo()
341 if (!method_class->CanAccessResolvedField(field_class, field, dex_cache, field_idx) || in ComputeSpecialAccessorInfo()

12