Home
last modified time | relevance | path

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

12

/art/runtime/mirror/
Ddex_cache_test.cc37 Handle<DexCache> dex_cache( in TEST_F() local
39 ASSERT_TRUE(dex_cache.Get() != NULL); in TEST_F()
41 EXPECT_EQ(java_lang_dex_file_->NumStringIds(), dex_cache->NumStrings()); in TEST_F()
42 EXPECT_EQ(java_lang_dex_file_->NumTypeIds(), dex_cache->NumResolvedTypes()); in TEST_F()
43 EXPECT_EQ(java_lang_dex_file_->NumMethodIds(), dex_cache->NumResolvedMethods()); in TEST_F()
44 EXPECT_EQ(java_lang_dex_file_->NumFieldIds(), dex_cache->NumResolvedFields()); in TEST_F()
46 EXPECT_LE(0, dex_cache->GetStrings()->GetLength()); in TEST_F()
47 EXPECT_LE(0, dex_cache->GetResolvedTypes()->GetLength()); in TEST_F()
48 EXPECT_LE(0, dex_cache->GetResolvedMethods()->GetLength()); in TEST_F()
49 EXPECT_LE(0, dex_cache->GetResolvedFields()->GetLength()); in TEST_F()
[all …]
Dclass.cc397 ArtMethod* Class::FindInterfaceMethod(const DexCache* dex_cache, uint32_t dex_method_idx) { in FindInterfaceMethod() argument
399 ArtMethod* method = FindDeclaredVirtualMethod(dex_cache, dex_method_idx); in FindInterfaceMethod()
407 method = iftable->GetInterface(i)->FindDeclaredVirtualMethod(dex_cache, dex_method_idx); in FindInterfaceMethod()
435 ArtMethod* Class::FindDeclaredDirectMethod(const DexCache* dex_cache, uint32_t dex_method_idx) { in FindDeclaredDirectMethod() argument
436 if (GetDexCache() == dex_cache) { in FindDeclaredDirectMethod()
467 ArtMethod* Class::FindDirectMethod(const DexCache* dex_cache, uint32_t dex_method_idx) { in FindDirectMethod() argument
469 ArtMethod* method = klass->FindDeclaredDirectMethod(dex_cache, dex_method_idx); in FindDirectMethod()
497 ArtMethod* Class::FindDeclaredVirtualMethod(const DexCache* dex_cache, uint32_t dex_method_idx) { in FindDeclaredVirtualMethod() argument
498 if (GetDexCache() == dex_cache) { in FindDeclaredVirtualMethod()
532 ArtMethod* Class::FindVirtualMethod(const DexCache* dex_cache, uint32_t dex_method_idx) { in FindVirtualMethod() argument
[all …]
Dclass.h573 DexCache* dex_cache, uint32_t field_idx)
583 DexCache* dex_cache, uint32_t method_idx)
760 ArtMethod* FindInterfaceMethod(const DexCache* dex_cache, uint32_t dex_method_idx)
769 ArtMethod* FindDeclaredDirectMethod(const DexCache* dex_cache, uint32_t dex_method_idx)
778 ArtMethod* FindDirectMethod(const DexCache* dex_cache, uint32_t dex_method_idx)
787 ArtMethod* FindDeclaredVirtualMethod(const DexCache* dex_cache, uint32_t dex_method_idx)
796 ArtMethod* FindVirtualMethod(const DexCache* dex_cache, uint32_t dex_method_idx)
900 ArtField* FindInstanceField(const DexCache* dex_cache, uint32_t dex_field_idx)
906 ArtField* FindDeclaredInstanceField(const DexCache* dex_cache, uint32_t dex_field_idx)
916 static ArtField* FindStaticField(Thread* self, Handle<Class> klass, const DexCache* dex_cache,
[all …]
Dclass-inl.h249 uint32_t field_idx, DexCache* dex_cache) { in ResolvedFieldAccessTest() argument
250 DCHECK_EQ(use_referrers_cache, dex_cache == nullptr); in ResolvedFieldAccessTest()
255 DexCache* referrer_dex_cache = use_referrers_cache ? this->GetDexCache() : dex_cache; in ResolvedFieldAccessTest()
280 uint32_t method_idx, DexCache* dex_cache) { in ResolvedMethodAccessTest() argument
282 DCHECK_EQ(use_referrers_cache, dex_cache == nullptr); in ResolvedMethodAccessTest()
287 DexCache* referrer_dex_cache = use_referrers_cache ? this->GetDexCache() : dex_cache; in ResolvedMethodAccessTest()
312 DexCache* dex_cache, uint32_t field_idx) { in CanAccessResolvedField() argument
313 return ResolvedFieldAccessTest<false, false>(access_to, field, field_idx, dex_cache); in CanAccessResolvedField()
322 DexCache* dex_cache, uint32_t method_idx) { in CanAccessResolvedMethod() argument
323 return ResolvedMethodAccessTest<false, false, kStatic>(access_to, method, method_idx, dex_cache); in CanAccessResolvedMethod()
/art/runtime/native/
Ddalvik_system_VMRuntime.cc227 static void PreloadDexCachesResolveString(Handle<mirror::DexCache> dex_cache, uint32_t string_idx, in PreloadDexCachesResolveString() argument
230 mirror::String* string = dex_cache->GetResolvedString(string_idx); in PreloadDexCachesResolveString()
234 const DexFile* dex_file = dex_cache->GetDexFile(); in PreloadDexCachesResolveString()
241 dex_cache->SetResolvedString(string_idx, string); in PreloadDexCachesResolveString()
245 static void PreloadDexCachesResolveType(mirror::DexCache* dex_cache, uint32_t type_idx) in PreloadDexCachesResolveType() argument
247 mirror::Class* klass = dex_cache->GetResolvedType(type_idx); in PreloadDexCachesResolveType()
251 const DexFile* dex_file = dex_cache->GetDexFile(); in PreloadDexCachesResolveType()
263 dex_cache->SetResolvedType(type_idx, klass); in PreloadDexCachesResolveType()
273 static void PreloadDexCachesResolveField(Handle<mirror::DexCache> dex_cache, uint32_t field_idx, in PreloadDexCachesResolveField() argument
276 mirror::ArtField* field = dex_cache->GetResolvedField(field_idx); in PreloadDexCachesResolveField()
[all …]
Djava_lang_DexCache.cc27 mirror::DexCache* dex_cache = soa.Decode<mirror::DexCache*>(javaDexCache); in DexCache_getDexNative() local
29 DCHECK_EQ(dex_cache->GetLockOwnerThreadId(), soa.Self()->GetThreadId()); in DexCache_getDexNative()
30 const DexFile* dex_file = dex_cache->GetDexFile(); in DexCache_getDexNative()
/art/compiler/driver/
Dcompiler_driver-inl.h44 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache, in ResolveCompilingMethodsClass() argument
46 DCHECK_EQ(dex_cache->GetDexFile(), mUnit->GetDexFile()); in ResolveCompilingMethodsClass()
51 *mUnit->GetDexFile(), referrer_method_id.class_idx_, dex_cache, class_loader); in ResolveCompilingMethodsClass()
61 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache, in ResolveField() argument
64 DCHECK_EQ(dex_cache->GetDexFile(), mUnit->GetDexFile()); in ResolveField()
67 *mUnit->GetDexFile(), field_idx, dex_cache, class_loader, is_static); in ResolveField()
96 mirror::DexCache* dex_cache, mirror::Class* referrer_class, in IsFastInstanceField() argument
102 dex_cache, field_idx); in IsFastInstanceField()
108 mirror::DexCache* dex_cache, mirror::Class* referrer_class, in IsFastStaticField() argument
122 dex_cache, field_idx)) { in IsFastStaticField()
[all …]
Dcompiler_driver_test.cc110 mirror::DexCache* dex_cache = class_linker_->FindDexCache(*dex); in TEST_F() local
111 EXPECT_EQ(dex->NumStringIds(), dex_cache->NumStrings()); in TEST_F()
112 for (size_t i = 0; i < dex_cache->NumStrings(); i++) { in TEST_F()
113 const mirror::String* string = dex_cache->GetResolvedString(i); in TEST_F()
116 EXPECT_EQ(dex->NumTypeIds(), dex_cache->NumResolvedTypes()); in TEST_F()
117 for (size_t i = 0; i < dex_cache->NumResolvedTypes(); i++) { in TEST_F()
118 mirror::Class* type = dex_cache->GetResolvedType(i); in TEST_F()
122 EXPECT_EQ(dex->NumMethodIds(), dex_cache->NumResolvedMethods()); in TEST_F()
123 for (size_t i = 0; i < dex_cache->NumResolvedMethods(); i++) { in TEST_F()
124 mirror::ArtMethod* method = dex_cache->GetResolvedMethod(i); in TEST_F()
[all …]
Dcompiler_driver.cc754 Handle<mirror::DexCache> dex_cache(hs.NewHandle(class_linker->FindDexCache(*dex_file))); in LoadImageClasses() local
756 class_linker->ResolveType(*dex_file, exception_type_idx, dex_cache, in LoadImageClasses()
832 mirror::DexCache* dex_cache = Runtime::Current()->GetClassLinker()->FindDexCache(dex_file); in CanAssumeTypeIsPresentInDexCache() local
833 mirror::Class* resolved_class = dex_cache->GetResolvedType(type_idx); in CanAssumeTypeIsPresentInDexCache()
857 Handle<mirror::DexCache> dex_cache( in CanAssumeStringIsPresentInDexCache() local
859 Runtime::Current()->GetClassLinker()->ResolveString(dex_file, string_idx, dex_cache); in CanAssumeStringIsPresentInDexCache()
884 mirror::DexCache* dex_cache = Runtime::Current()->GetClassLinker()->FindDexCache(dex_file); in CanAccessTypeWithoutChecks() local
886 mirror::Class* resolved_class = dex_cache->GetResolvedType(type_idx); in CanAccessTypeWithoutChecks()
895 mirror::Class* referrer_class = dex_cache->GetResolvedType(method_id.class_idx_); in CanAccessTypeWithoutChecks()
921 mirror::DexCache* dex_cache = Runtime::Current()->GetClassLinker()->FindDexCache(dex_file); in CanAccessInstantiableTypeWithoutChecks() local
[all …]
Dcompiler_driver.h232 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
239 const ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
254 mirror::DexCache* dex_cache, mirror::Class* referrer_class,
262 mirror::DexCache* dex_cache, mirror::Class* referrer_class,
269 ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
288 ScopedObjectAccess& soa, Handle<mirror::DexCache> dex_cache,
/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 …]
Dclass_linker.cc1637 Handle<mirror::DexCache> dex_cache(hs.NewHandle(dex_caches->Get(i))); in InitFromImage() local
1638 const std::string& dex_file_location(dex_cache->GetLocation()->ToModifiedUtf8()); in InitFromImage()
1652 AppendToBootClassPath(*dex_file, dex_cache); in InitFromImage()
1750 for (GcRoot<mirror::DexCache>& dex_cache : dex_caches_) { in VisitRoots()
1751 dex_cache.VisitRoot(callback, arg, RootInfo(kRootVMInternal)); in VisitRoots()
1890 Handle<mirror::DexCache> dex_cache( in AllocDexCache() local
1894 if (dex_cache.Get() == nullptr) { in AllocDexCache()
1922 dex_cache->Init(&dex_file, location.Get(), strings.Get(), types.Get(), methods.Get(), in AllocDexCache()
1924 return dex_cache.Get(); in AllocDexCache()
2947 Handle<mirror::DexCache> dex_cache(hs.NewHandle(AllocDexCache(self, dex_file))); in AppendToBootClassPath() local
[all …]
Dintern_table.cc157 mirror::DexCache* dex_cache = dex_caches->Get(i); in AddImageStringsToTable() local
158 const DexFile* dex_file = dex_cache->GetDexFile(); in AddImageStringsToTable()
161 mirror::String* image_string = dex_cache->GetResolvedString(j); in AddImageStringsToTable()
189 mirror::DexCache* dex_cache = dex_caches->Get(i); in LookupStringFromImage() local
190 const DexFile* dex_file = dex_cache->GetDexFile(); in LookupStringFromImage()
195 mirror::String* image = dex_cache->GetResolvedString(string_idx); in LookupStringFromImage()
Dmethod_helper-inl.h71 Handle<mirror::DexCache> dex_cache(hs.NewHandle(method->GetDexCache())); in ResolveString()
73 dex_cache); in ResolveString()
Dcommon_throws.cc319 mirror::DexCache* dex_cache = throw_location.GetMethod()->GetDeclaringClass()->GetDexCache(); in ThrowNoSuchMethodError() local
320 const DexFile& dex_file = *dex_cache->GetDexFile(); in ThrowNoSuchMethodError()
351 mirror::DexCache* dex_cache = throw_location.GetMethod()->GetDeclaringClass()->GetDexCache(); in ThrowNullPointerExceptionForMethodAccess() local
352 const DexFile& dex_file = *dex_cache->GetDexFile(); in ThrowNullPointerExceptionForMethodAccess()
360 mirror::DexCache* dex_cache = method->GetDeclaringClass()->GetDexCache(); in ThrowNullPointerExceptionForMethodAccess() local
361 const DexFile& dex_file = *dex_cache->GetDexFile(); in ThrowNullPointerExceptionForMethodAccess()
Dmethod_helper.cc34 Handle<mirror::DexCache> dex_cache(hs.NewHandle(method->GetDexCache())); in GetNameAsString() local
36 dex_cache); in GetNameAsString()
Dclass_linker.h145 Handle<mirror::DexCache> dex_cache)
168 Handle<mirror::DexCache> dex_cache,
179 Handle<mirror::DexCache> dex_cache,
205 Handle<mirror::DexCache> dex_cache,
215 Handle<mirror::DexCache> dex_cache,
236 void RegisterDexFile(const DexFile& dex_file, Handle<mirror::DexCache> dex_cache)
465 void AppendToBootClassPath(const DexFile& dex_file, Handle<mirror::DexCache> dex_cache)
505 void RegisterDexFileLocked(const DexFile& dex_file, Handle<mirror::DexCache> dex_cache)
/art/compiler/dex/
Dmir_field_info.cc47 Handle<mirror::DexCache> dex_cache(hs.NewHandle(compiler_driver->GetDexCache(mUnit))); in Resolve() local
51 compiler_driver->ResolveCompilingMethodsClass(soa, dex_cache, class_loader, mUnit))); in Resolve()
58 compiler_driver->ResolveField(soa, dex_cache, class_loader, mUnit, field_idx, false); in Resolve()
67 dex_cache.Get(), referrer_class.Get(), resolved_field, field_idx); in Resolve()
94 Handle<mirror::DexCache> dex_cache(hs.NewHandle(compiler_driver->GetDexCache(mUnit))); in Resolve() local
98 compiler_driver->ResolveCompilingMethodsClass(soa, dex_cache, class_loader, mUnit))); in Resolve()
105 compiler_driver->ResolveField(soa, dex_cache, class_loader, mUnit, field_idx, true); in Resolve()
115 dex_cache.Get(), referrer_class.Get(), resolved_field, field_idx, &it->field_offset_, in Resolve()
Dmir_method_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()
66 compiler_driver->ResolveMethod(soa, dex_cache, class_loader, mUnit, it->MethodIndex(), in Resolve()
77 soa, dex_cache, class_loader, mUnit, referrer_class.Get(), resolved_method, &invoke_type, in Resolve()
/art/compiler/
Delf_patcher.cc80 Handle<mirror::DexCache> dex_cache( in GetTargetMethod() local
84 dex_cache, in GetTargetMethod()
92 CHECK(dex_cache->GetResolvedMethods()->Get(patch->GetTargetMethodIdx()) == method) in GetTargetMethod()
94 << PrettyMethod(dex_cache->GetResolvedMethods()->Get(patch->GetTargetMethodIdx())) << " " in GetTargetMethod()
102 Handle<mirror::DexCache> dex_cache(hs.NewHandle(class_linker->FindDexCache(patch->GetDexFile()))); in GetTargetString() local
104 dex_cache); in GetTargetString()
112 Handle<mirror::DexCache> dex_cache(hs.NewHandle(class_linker->FindDexCache(patch->GetDexFile()))); in GetTargetType() local
114 dex_cache, NullHandle<mirror::ClassLoader>()); in GetTargetType()
117 CHECK(dex_cache->GetResolvedTypes()->Get(patch->GetTargetTypeIdx()) == klass) in GetTargetType()
119 << PrettyClass(dex_cache->GetResolvedTypes()->Get(patch->GetTargetTypeIdx())) << " " in GetTargetType()
Dimage_writer.cc612 DexCache* dex_cache = class_linker->GetDexCache(i); in ComputeEagerResolvedStringsCallback() local
613 const DexFile& dex_file = *dex_cache->GetDexFile(); in ComputeEagerResolvedStringsCallback()
623 if (dex_cache->GetResolvedString(string_idx) == NULL) { in ComputeEagerResolvedStringsCallback()
624 dex_cache->SetResolvedString(string_idx, string); in ComputeEagerResolvedStringsCallback()
670 DexCache* dex_cache = class_linker->GetDexCache(idx); in PruneNonImageClasses() local
671 for (size_t i = 0; i < dex_cache->NumResolvedTypes(); i++) { in PruneNonImageClasses()
672 Class* klass = dex_cache->GetResolvedType(i); in PruneNonImageClasses()
674 dex_cache->SetResolvedType(i, NULL); in PruneNonImageClasses()
677 for (size_t i = 0; i < dex_cache->NumResolvedMethods(); i++) { in PruneNonImageClasses()
678 ArtMethod* method = dex_cache->GetResolvedMethod(i); in PruneNonImageClasses()
[all …]
Delf_writer_mclinker.cc365 Handle<mirror::DexCache> dex_cache(hs.NewHandle(linker->FindDexCache(dex_file))); in FixupOatMethodOffsets() local
366 method = linker->ResolveMethod(dex_file, method_idx, dex_cache, in FixupOatMethodOffsets()
/art/runtime/verifier/
Dmethod_verifier.h144 static FailureKind VerifyClass(const DexFile* dex_file, Handle<mirror::DexCache> dex_cache,
152 Handle<mirror::DexCache> dex_cache,
206 MethodVerifier(const DexFile* dex_file, Handle<mirror::DexCache>* dex_cache, in MethodVerifier() argument
211 : MethodVerifier(dex_file, dex_cache, class_loader, class_def, code_item, method_idx, method, in MethodVerifier()
244 MethodVerifier(const DexFile* dex_file, Handle<mirror::DexCache>* dex_cache,
269 Handle<mirror::DexCache> dex_cache,
Dmethod_verifier.cc138 Handle<mirror::DexCache> dex_cache(hs.NewHandle(klass->GetDexCache())); in VerifyClass() local
140 return VerifyClass(&dex_file, dex_cache, class_loader, class_def, allow_soft_failures, error); in VerifyClass()
144 Handle<mirror::DexCache> dex_cache, in VerifyClass() argument
174 linker->ResolveMethod(*dex_file, method_idx, dex_cache, class_loader, in VerifyClass()
183 dex_cache, in VerifyClass()
218 linker->ResolveMethod(*dex_file, method_idx, dex_cache, class_loader, in VerifyClass()
227 dex_cache, in VerifyClass()
259 Handle<mirror::DexCache> dex_cache, in VerifyMethod() argument
270 MethodVerifier verifier(dex_file, &dex_cache, &class_loader, class_def, code_item, in VerifyMethod()
308 Handle<mirror::DexCache> dex_cache, in VerifyMethodAndDump() argument
[all …]
/art/runtime/quick/
Dinline_method_analyser.cc332 mirror::DexCache* dex_cache = verifier->GetDexCache(); in ComputeSpecialAccessorInfo() local
334 mirror::ArtMethod* method = dex_cache->GetResolvedMethod(method_idx); in ComputeSpecialAccessorInfo()
335 mirror::ArtField* field = dex_cache->GetResolvedField(field_idx); in ComputeSpecialAccessorInfo()
341 if (!method_class->CanAccessResolvedField(field_class, field, dex_cache, field_idx) || in ComputeSpecialAccessorInfo()

12