summaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
author Nicolas Geoffray <ngeoffray@google.com> 2021-09-14 09:48:51 +0100
committer Nicolas Geoffray <ngeoffray@google.com> 2021-09-14 13:49:58 +0000
commitab91eefc875956752c20e47f5e23715597b41511 (patch)
treef651ffdf07197b50c3dbbfd6880d3a75940140f1 /runtime
parente8a822d2209a644f30fc1b6db3c70ec5faf2b79a (diff)
Address review comments on method resolution.
Follow-up after: https://android-review.googlesource.com/c/platform/art/+/1825135 Test: 827-resolve-method Bug: 199246839 Change-Id: I085348040308d70730bd7f90bd3aa8ded5113087
Diffstat (limited to 'runtime')
-rw-r--r--runtime/class_linker-inl.h6
-rw-r--r--runtime/class_linker.cc18
2 files changed, 12 insertions, 12 deletions
diff --git a/runtime/class_linker-inl.h b/runtime/class_linker-inl.h
index 13191016b2..65b2afd949 100644
--- a/runtime/class_linker-inl.h
+++ b/runtime/class_linker-inl.h
@@ -164,7 +164,7 @@ inline ObjPtr<mirror::Class> ClassLinker::ResolveType(dex::TypeIndex type_idx,
Handle<mirror::DexCache> dex_cache,
Handle<mirror::ClassLoader> class_loader) {
DCHECK(dex_cache != nullptr);
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Get());
+ DCHECK(dex_cache->GetClassLoader() == class_loader.Get());
Thread::PoisonObjectPointersIfDebug();
ObjPtr<mirror::Class> resolved = dex_cache->GetResolvedType(type_idx);
if (resolved == nullptr) {
@@ -213,7 +213,7 @@ inline ObjPtr<mirror::Class> ClassLinker::LookupResolvedType(
dex::TypeIndex type_idx,
ObjPtr<mirror::DexCache> dex_cache,
ObjPtr<mirror::ClassLoader> class_loader) {
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Ptr());
+ DCHECK(dex_cache->GetClassLoader() == class_loader);
ObjPtr<mirror::Class> type = dex_cache->GetResolvedType(type_idx);
if (type == nullptr) {
type = DoLookupResolvedType(type_idx, dex_cache, class_loader);
@@ -291,7 +291,7 @@ inline bool ClassLinker::CheckInvokeClassMismatch(ObjPtr<mirror::DexCache> dex_c
inline ArtMethod* ClassLinker::LookupResolvedMethod(uint32_t method_idx,
ObjPtr<mirror::DexCache> dex_cache,
ObjPtr<mirror::ClassLoader> class_loader) {
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Ptr());
+ DCHECK(dex_cache->GetClassLoader() == class_loader);
ArtMethod* resolved = dex_cache->GetResolvedMethod(method_idx);
if (resolved == nullptr) {
const DexFile& dex_file = *dex_cache->GetDexFile();
diff --git a/runtime/class_linker.cc b/runtime/class_linker.cc
index f94bffd58e..97e22d028c 100644
--- a/runtime/class_linker.cc
+++ b/runtime/class_linker.cc
@@ -8867,7 +8867,7 @@ ObjPtr<mirror::Class> ClassLinker::DoLookupResolvedType(dex::TypeIndex type_idx,
ObjPtr<mirror::Class> ClassLinker::DoLookupResolvedType(dex::TypeIndex type_idx,
ObjPtr<mirror::DexCache> dex_cache,
ObjPtr<mirror::ClassLoader> class_loader) {
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Ptr());
+ DCHECK(dex_cache->GetClassLoader() == class_loader);
const DexFile& dex_file = *dex_cache->GetDexFile();
const char* descriptor = dex_file.StringByTypeIdx(type_idx);
ObjPtr<mirror::Class> type = LookupResolvedType(descriptor, class_loader);
@@ -8915,7 +8915,7 @@ template ObjPtr<mirror::Class> ClassLinker::DoResolveType(dex::TypeIndex type_id
ObjPtr<mirror::Class> ClassLinker::DoResolveType(dex::TypeIndex type_idx,
Handle<mirror::DexCache> dex_cache,
Handle<mirror::ClassLoader> class_loader) {
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Get());
+ DCHECK(dex_cache->GetClassLoader() == class_loader.Get());
Thread* self = Thread::Current();
const char* descriptor = dex_cache->GetDexFile()->StringByTypeIdx(type_idx);
ObjPtr<mirror::Class> resolved = FindClass(self, descriptor, class_loader);
@@ -8946,7 +8946,7 @@ ArtMethod* ClassLinker::FindResolvedMethod(ObjPtr<mirror::Class> klass,
ObjPtr<mirror::DexCache> dex_cache,
ObjPtr<mirror::ClassLoader> class_loader,
uint32_t method_idx) {
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Ptr());
+ DCHECK(dex_cache->GetClassLoader() == class_loader);
// Search for the method using dex_cache and method_idx. The Class::Find*Method()
// functions can optimize the search if the dex_cache is the same as the DexCache
// of the class, with fall-back to name and signature search otherwise.
@@ -9018,7 +9018,7 @@ ArtMethod* ClassLinker::FindIncompatibleMethod(ObjPtr<mirror::Class> klass,
ObjPtr<mirror::DexCache> dex_cache,
ObjPtr<mirror::ClassLoader> class_loader,
uint32_t method_idx) {
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Ptr());
+ DCHECK(dex_cache->GetClassLoader() == class_loader);
if (klass->IsInterface()) {
ArtMethod* method = klass->FindClassMethod(dex_cache, method_idx, image_pointer_size_);
return CheckNoSuchMethod(method, dex_cache, class_loader) ? nullptr : method;
@@ -9041,7 +9041,7 @@ ArtMethod* ClassLinker::ResolveMethod(uint32_t method_idx,
Handle<mirror::ClassLoader> class_loader,
ArtMethod* referrer,
InvokeType type) {
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Get());
+ DCHECK(dex_cache->GetClassLoader() == class_loader.Get());
DCHECK(!Thread::Current()->IsExceptionPending()) << Thread::Current()->GetException()->Dump();
DCHECK(dex_cache != nullptr);
DCHECK(referrer == nullptr || !referrer->IsProxyMethod());
@@ -9136,7 +9136,7 @@ ArtMethod* ClassLinker::ResolveMethod(uint32_t method_idx,
ArtMethod* ClassLinker::ResolveMethodWithoutInvokeType(uint32_t method_idx,
Handle<mirror::DexCache> dex_cache,
Handle<mirror::ClassLoader> class_loader) {
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Get());
+ DCHECK(dex_cache->GetClassLoader() == class_loader.Get());
ArtMethod* resolved = dex_cache->GetResolvedMethod(method_idx);
Thread::PoisonObjectPointersIfDebug();
if (resolved != nullptr) {
@@ -9219,7 +9219,7 @@ ArtField* ClassLinker::ResolveFieldJLS(uint32_t field_idx,
Handle<mirror::DexCache> dex_cache,
Handle<mirror::ClassLoader> class_loader) {
DCHECK(dex_cache != nullptr);
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Get());
+ DCHECK(dex_cache->GetClassLoader() == class_loader.Get());
ArtField* resolved = dex_cache->GetResolvedField(field_idx);
Thread::PoisonObjectPointersIfDebug();
if (resolved != nullptr) {
@@ -9247,7 +9247,7 @@ ArtField* ClassLinker::FindResolvedField(ObjPtr<mirror::Class> klass,
ObjPtr<mirror::ClassLoader> class_loader,
uint32_t field_idx,
bool is_static) {
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Ptr());
+ DCHECK(dex_cache->GetClassLoader() == class_loader);
ArtField* resolved = is_static ? klass->FindStaticField(dex_cache, field_idx)
: klass->FindInstanceField(dex_cache, field_idx);
if (resolved != nullptr &&
@@ -9292,7 +9292,7 @@ ObjPtr<mirror::MethodType> ClassLinker::ResolveMethodType(
Handle<mirror::ClassLoader> class_loader) {
DCHECK(Runtime::Current()->IsMethodHandlesEnabled());
DCHECK(dex_cache != nullptr);
- DCHECK(dex_cache->GetClassLoader().Ptr() == class_loader.Get());
+ DCHECK(dex_cache->GetClassLoader() == class_loader.Get());
ObjPtr<mirror::MethodType> resolved = dex_cache->GetResolvedMethodType(proto_idx);
if (resolved != nullptr) {