public class MultiTypeGuardInlineInfo extends AbstractInlineInfo
invoke| Constructor and Description |
|---|
MultiTypeGuardInlineInfo(Invoke invoke,
ArrayList<ResolvedJavaMethod> concretes,
ArrayList<ProfiledType> ptypes,
ArrayList<Integer> typesToConcretes,
double notRecordedTypeProbability,
boolean speculationFailed,
Speculation speculation) |
| Modifier and Type | Method and Description |
|---|---|
protected org.graalvm.collections.EconomicSet<Node> |
doInline(int index,
Invoke invokeForInlining,
String reason) |
org.graalvm.collections.EconomicSet<Node> |
inline(CoreProviders providers,
String reason)
Performs the inlining described by this object and returns the node that represents the
return value of the inlined method (or null for void methods and methods that have no
non-exceptional exit).
|
Inlineable |
inlineableElementAt(int index) |
ResolvedJavaMethod |
methodAt(int index) |
int |
numberOfMethods()
Returns the number of methods that may be inlined by the
invocation. |
double |
probabilityAt(int index) |
double |
relevanceAt(int index) |
void |
setInlinableElement(int index,
Inlineable inlineableElement) |
boolean |
shouldInline() |
String |
toString() |
void |
tryToDevirtualizeInvoke(Providers providers)
Try to make the call static bindable to avoid interface and virtual method calls.
|
determineNodeCount, graph, inline, invoke, populateInlinableElementspublic int numberOfMethods()
InlineInfoinvocation. This
may be more than one in the case of a invocation profile showing a number of "hot" concrete
methods dispatched to by the invocation.public ResolvedJavaMethod methodAt(int index)
public Inlineable inlineableElementAt(int index)
public double probabilityAt(int index)
public double relevanceAt(int index)
public void setInlinableElement(int index,
Inlineable inlineableElement)
public org.graalvm.collections.EconomicSet<Node> inline(CoreProviders providers, String reason)
InlineInfopublic boolean shouldInline()
protected org.graalvm.collections.EconomicSet<Node> doInline(int index, Invoke invokeForInlining, String reason)
public void tryToDevirtualizeInvoke(Providers providers)
InlineInfo