Mercurial > hg > graal-compiler
diff graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MethodCallTargetNode.java @ 19801:deab43a789ad
Split LeafType off from ConcreteSubtype
author | Tom Rodriguez <tom.rodriguez@oracle.com> |
---|---|
date | Wed, 11 Mar 2015 17:45:21 -0700 |
parents | 3362ba500371 |
children | 754f2b20d8bc |
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MethodCallTargetNode.java Wed Mar 11 17:32:04 2015 -0700 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MethodCallTargetNode.java Wed Mar 11 17:45:21 2015 -0700 @@ -126,11 +126,11 @@ } Assumptions assumptions = receiver.graph().getAssumptions(); if (assumptions != null) { - AssumptionResult<ResolvedJavaType> uniqueConcreteType = type.findUniqueConcreteSubtype(); - if (uniqueConcreteType != null) { - ResolvedJavaMethod methodFromUniqueType = uniqueConcreteType.getResult().resolveConcreteMethod(targetMethod, contextType); + AssumptionResult<ResolvedJavaType> leafConcreteSubtype = type.findLeafConcreteSubtype(); + if (leafConcreteSubtype != null) { + ResolvedJavaMethod methodFromUniqueType = leafConcreteSubtype.getResult().resolveConcreteMethod(targetMethod, contextType); if (methodFromUniqueType != null) { - assumptions.record(uniqueConcreteType); + assumptions.record(leafConcreteSubtype); return methodFromUniqueType; } }