summaryrefslogtreecommitdiff
path: root/runtime/entrypoints/entrypoint_utils-inl.h
diff options
context:
space:
mode:
author Nicolas Geoffray <ngeoffray@google.com> 2015-12-01 16:28:28 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2015-12-01 16:28:28 +0000
commit1cfe7fd885fc21292dfe74b554c38b07304cb10e (patch)
tree5a809d58debfe5265bb40c2ae71f67a0532dd974 /runtime/entrypoints/entrypoint_utils-inl.h
parent8b3609b4daacfd6d823fe9d9052955db2202aa0f (diff)
parentc88ef3a10c474045a3476a02ae75d07ddd3230b7 (diff)
Merge "Revert "Don't use the compiler driver for method resolution.""
Diffstat (limited to 'runtime/entrypoints/entrypoint_utils-inl.h')
-rw-r--r--runtime/entrypoints/entrypoint_utils-inl.h8
1 files changed, 2 insertions, 6 deletions
diff --git a/runtime/entrypoints/entrypoint_utils-inl.h b/runtime/entrypoints/entrypoint_utils-inl.h
index dccb1dad3b..21e4e445e6 100644
--- a/runtime/entrypoints/entrypoint_utils-inl.h
+++ b/runtime/entrypoints/entrypoint_utils-inl.h
@@ -598,12 +598,8 @@ inline ArtMethod* FindMethodFast(uint32_t method_idx, mirror::Object* this_objec
} else if (type == kStatic || type == kDirect) {
return resolved_method;
} else if (type == kSuper) {
- mirror::Class* super_class = referrer->GetDeclaringClass()->GetSuperClass();
- if (resolved_method->GetMethodIndex() >= super_class->GetVTableLength()) {
- // The super class does not have the method.
- return nullptr;
- }
- return super_class->GetVTableEntry(resolved_method->GetMethodIndex(), sizeof(void*));
+ return referrer->GetDeclaringClass()->GetSuperClass()->GetVTableEntry(
+ resolved_method->GetMethodIndex(), sizeof(void*));
} else {
DCHECK(type == kVirtual);
return this_object->GetClass()->GetVTableEntry(