Mercurial > hg > graal-compiler
changeset 14604:bd7cf02d1756
added fast path for HotSpotResolvedObjectType.resolveMethod() when the receiver is the declarer of the method
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Tue, 18 Mar 2014 22:56:50 +0100 |
parents | a378e5922932 |
children | 5953ac9e0d93 |
files | graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java |
diffstat | 1 files changed, 4 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java Tue Mar 18 22:51:03 2014 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java Tue Mar 18 22:56:50 2014 +0100 @@ -363,6 +363,10 @@ @Override public ResolvedJavaMethod resolveMethod(ResolvedJavaMethod method) { assert method instanceof HotSpotMethod; + if (!isAbstract(method.getModifiers()) && method.getDeclaringClass().equals(this)) { + return method; + } + final long resolvedMetaspaceMethod = runtime().getCompilerToVM().resolveMethod(metaspaceKlass(), method.getName(), ((HotSpotSignature) method.getSignature()).getMethodDescriptor()); if (resolvedMetaspaceMethod == 0) { return null;