summaryrefslogtreecommitdiff
path: root/runtime/class_linker.cc
diff options
context:
space:
mode:
author Hiroshi Yamauchi <yamauchi@google.com> 2016-06-13 23:11:33 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2016-06-13 23:11:33 +0000
commitece5386eeb30aa6be663af2416b68a7ebf9bd42e (patch)
tree6a951fc8c1a2358591327d107828d7d48ee47ea4 /runtime/class_linker.cc
parent614968198625a6693666bdc1e5609e2f663f5638 (diff)
parent7a62e6728463237684d3d9834d81bd7bba7ab197 (diff)
Merge "Propagate the read barrier option to Class::VisitNativeRoots."
Diffstat (limited to 'runtime/class_linker.cc')
-rw-r--r--runtime/class_linker.cc27
1 files changed, 0 insertions, 27 deletions
diff --git a/runtime/class_linker.cc b/runtime/class_linker.cc
index db0e9ac9c4..fe7448fa25 100644
--- a/runtime/class_linker.cc
+++ b/runtime/class_linker.cc
@@ -4280,33 +4280,6 @@ std::string ClassLinker::GetDescriptorForProxy(mirror::Class* proxy_class) {
return DotToDescriptor(name->ToModifiedUtf8().c_str());
}
-ArtMethod* ClassLinker::FindMethodForProxy(mirror::Class* proxy_class, ArtMethod* proxy_method) {
- DCHECK(proxy_class->IsProxyClass());
- DCHECK(proxy_method->IsProxyMethod());
- {
- Thread* const self = Thread::Current();
- ReaderMutexLock mu(self, dex_lock_);
- // Locate the dex cache of the original interface/Object
- for (const DexCacheData& data : dex_caches_) {
- if (!self->IsJWeakCleared(data.weak_root) &&
- proxy_method->HasSameDexCacheResolvedTypes(data.resolved_types,
- image_pointer_size_)) {
- mirror::DexCache* dex_cache = down_cast<mirror::DexCache*>(
- self->DecodeJObject(data.weak_root));
- if (dex_cache != nullptr) {
- ArtMethod* resolved_method = dex_cache->GetResolvedMethod(
- proxy_method->GetDexMethodIndex(), image_pointer_size_);
- CHECK(resolved_method != nullptr);
- return resolved_method;
- }
- }
- }
- }
- LOG(FATAL) << "Didn't find dex cache for " << PrettyClass(proxy_class) << " "
- << PrettyMethod(proxy_method);
- UNREACHABLE();
-}
-
void ClassLinker::CreateProxyConstructor(Handle<mirror::Class> klass, ArtMethod* out) {
// Create constructor for Proxy that must initialize the method.
CHECK_EQ(GetClassRoot(kJavaLangReflectProxy)->NumDirectMethods(), 18u);