Mercurial > hg > graal-compiler
comparison graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MethodCallTargetNode.java @ 19306:a0a760b0fb5f
pulled method evolution dependencies out of Assumptions and directly into StructuredGraph
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Thu, 12 Feb 2015 01:54:05 +0100 |
parents | 8ab925a6f724 |
children | a7247418a58b |
comparison
equal
deleted
inserted
replaced
19305:48bdad77afcd | 19306:a0a760b0fb5f |
---|---|
122 ResolvedJavaMethod resolvedMethod = type.resolveConcreteMethod(targetMethod, contextType); | 122 ResolvedJavaMethod resolvedMethod = type.resolveConcreteMethod(targetMethod, contextType); |
123 if (resolvedMethod != null && (resolvedMethod.canBeStaticallyBound() || StampTool.isExactType(receiver) || type.isArray())) { | 123 if (resolvedMethod != null && (resolvedMethod.canBeStaticallyBound() || StampTool.isExactType(receiver) || type.isArray())) { |
124 return resolvedMethod; | 124 return resolvedMethod; |
125 } | 125 } |
126 Assumptions assumptions = receiver.graph().getAssumptions(); | 126 Assumptions assumptions = receiver.graph().getAssumptions(); |
127 if (assumptions.useOptimisticAssumptions()) { | 127 if (assumptions != null) { |
128 ResolvedJavaType uniqueConcreteType = type.findUniqueConcreteSubtype(); | 128 ResolvedJavaType uniqueConcreteType = type.findUniqueConcreteSubtype(); |
129 if (uniqueConcreteType != null) { | 129 if (uniqueConcreteType != null) { |
130 ResolvedJavaMethod methodFromUniqueType = uniqueConcreteType.resolveConcreteMethod(targetMethod, contextType); | 130 ResolvedJavaMethod methodFromUniqueType = uniqueConcreteType.resolveConcreteMethod(targetMethod, contextType); |
131 if (methodFromUniqueType != null) { | 131 if (methodFromUniqueType != null) { |
132 assumptions.recordConcreteSubtype(type, uniqueConcreteType); | 132 assumptions.recordConcreteSubtype(type, uniqueConcreteType); |