public class TypeGuardInlineInfo extends AbstractInlineInfo
invoke| Constructor and Description |
|---|
TypeGuardInlineInfo(Invoke invoke,
ResolvedJavaMethod concrete,
ResolvedJavaType type,
Speculation speculation) |
| Modifier and Type | Method and Description |
|---|---|
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 TypeGuardInlineInfo(Invoke invoke, ResolvedJavaMethod concrete, ResolvedJavaType type, Speculation speculation)
public 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 void tryToDevirtualizeInvoke(Providers providers)
InlineInfopublic boolean shouldInline()