diff options
author | 2015-12-08 22:33:23 +0000 | |
---|---|---|
committer | 2015-12-08 22:33:23 +0000 | |
commit | eb5ddd7b02ce2d25d4f28f85a13aac628526e1c1 (patch) | |
tree | 8f655b382e73222e70e30daaeedc3999014aa7ae /runtime/class_linker-inl.h | |
parent | 2433d4e17c3006b8262a0d9421e201fc84777208 (diff) | |
parent | dae24142127c64551142a50423085aabdb0a6060 (diff) |
Merge "ART: Check invoke-interface earlier in verifier"
Diffstat (limited to 'runtime/class_linker-inl.h')
-rw-r--r-- | runtime/class_linker-inl.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/runtime/class_linker-inl.h b/runtime/class_linker-inl.h index 88a3996577..a5d10b265f 100644 --- a/runtime/class_linker-inl.h +++ b/runtime/class_linker-inl.h @@ -116,6 +116,7 @@ inline ArtMethod* ClassLinker::GetResolvedMethod(uint32_t method_idx, ArtMethod* return resolved_method; } +template <ClassLinker::ResolveMode kResolveMode> inline ArtMethod* ClassLinker::ResolveMethod(Thread* self, uint32_t method_idx, ArtMethod* referrer, @@ -127,12 +128,12 @@ inline ArtMethod* ClassLinker::ResolveMethod(Thread* self, Handle<mirror::DexCache> h_dex_cache(hs.NewHandle(declaring_class->GetDexCache())); Handle<mirror::ClassLoader> h_class_loader(hs.NewHandle(declaring_class->GetClassLoader())); const DexFile* dex_file = h_dex_cache->GetDexFile(); - resolved_method = ResolveMethod(*dex_file, - method_idx, - h_dex_cache, - h_class_loader, - referrer, - type); + resolved_method = ResolveMethod<kResolveMode>(*dex_file, + method_idx, + h_dex_cache, + h_class_loader, + referrer, + type); } // Note: We cannot check here to see whether we added the method to the cache. It // might be an erroneous class, which results in it being hidden from us. |