diff options
author | 2017-07-27 14:14:28 +0100 | |
---|---|---|
committer | 2017-07-27 15:30:47 +0100 | |
commit | b45528c1f1b83ca8c970f439b54fbfcfda6908ea (patch) | |
tree | e8f493a7b21064d353d112ea1378d7819db385aa /compiler/driver/compiler_driver.cc | |
parent | 2c2e13ec24bff70db6e49270b9d4d787add9925e (diff) |
ART: Refactor retrieval of types through ArtMethod.
Split Get*() functions that take a "bool resolve"
argument into Lookup*() and Resolve*() functions.
Test: m test-art-host-gtest
Test: testrunner.py --host
Change-Id: I0b7eaa1fadc2ffa8c0168203790467f91a126963
Diffstat (limited to 'compiler/driver/compiler_driver.cc')
-rw-r--r-- | compiler/driver/compiler_driver.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc index ed36e111ff..3862f4dcaf 100644 --- a/compiler/driver/compiler_driver.cc +++ b/compiler/driver/compiler_driver.cc @@ -2452,7 +2452,8 @@ class InitializeClassVisitor : public CompilationVisitor { bool ResolveTypesOfMethods(Thread* self, ArtMethod* m) REQUIRES_SHARED(Locks::mutator_lock_) { - auto rtn_type = m->GetReturnType(true); // return value is discarded because resolve will be done internally. + // Return value of ResolveReturnType() is discarded because resolve will be done internally. + ObjPtr<mirror::Class> rtn_type = m->ResolveReturnType(); if (rtn_type == nullptr) { self->ClearException(); return false; @@ -2461,7 +2462,7 @@ class InitializeClassVisitor : public CompilationVisitor { if (types != nullptr) { for (uint32_t i = 0; i < types->Size(); ++i) { dex::TypeIndex param_type_idx = types->GetTypeItem(i).type_idx_; - auto param_type = m->GetClassFromTypeIndex(param_type_idx, true); + ObjPtr<mirror::Class> param_type = m->ResolveClassFromTypeIndex(param_type_idx); if (param_type == nullptr) { self->ClearException(); return false; |