Mercurial > hg > graal-compiler
comparison graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/inlining/info/TypeGuardInlineInfo.java @ 19250:8ab925a6f724
made Assumptions be part of a StructuredGraph
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Wed, 11 Feb 2015 10:13:08 +0100 |
parents | 30c8d110b281 |
children | 48c1ebd24120 |
comparison
equal
deleted
inserted
replaced
19249:ec8402f4e00a | 19250:8ab925a6f724 |
---|---|
22 */ | 22 */ |
23 package com.oracle.graal.phases.common.inlining.info; | 23 package com.oracle.graal.phases.common.inlining.info; |
24 | 24 |
25 import java.util.*; | 25 import java.util.*; |
26 | 26 |
27 import com.oracle.graal.api.code.*; | |
28 import com.oracle.graal.api.meta.*; | 27 import com.oracle.graal.api.meta.*; |
29 import com.oracle.graal.compiler.common.calc.*; | 28 import com.oracle.graal.compiler.common.calc.*; |
30 import com.oracle.graal.graph.*; | 29 import com.oracle.graal.graph.*; |
31 import com.oracle.graal.nodes.CallTargetNode.InvokeKind; | 30 import com.oracle.graal.nodes.CallTargetNode.InvokeKind; |
32 import com.oracle.graal.nodes.*; | 31 import com.oracle.graal.nodes.*; |
88 assert index == 0; | 87 assert index == 0; |
89 this.inlineableElement = inlineableElement; | 88 this.inlineableElement = inlineableElement; |
90 } | 89 } |
91 | 90 |
92 @Override | 91 @Override |
93 public Collection<Node> inline(Providers providers, Assumptions assumptions) { | 92 public Collection<Node> inline(Providers providers) { |
94 createGuard(graph(), providers); | 93 createGuard(graph(), providers); |
95 return inline(invoke, concrete, inlineableElement, assumptions, false); | 94 return inline(invoke, concrete, inlineableElement, false); |
96 } | 95 } |
97 | 96 |
98 @Override | 97 @Override |
99 public void tryToDevirtualizeInvoke(Providers providers, Assumptions assumptions) { | 98 public void tryToDevirtualizeInvoke(Providers providers) { |
100 createGuard(graph(), providers); | 99 createGuard(graph(), providers); |
101 InliningUtil.replaceInvokeCallTarget(invoke, graph(), InvokeKind.Special, concrete); | 100 InliningUtil.replaceInvokeCallTarget(invoke, graph(), InvokeKind.Special, concrete); |
102 } | 101 } |
103 | 102 |
104 private void createGuard(StructuredGraph graph, Providers providers) { | 103 private void createGuard(StructuredGraph graph, Providers providers) { |