public class MethodInvocation extends Object
An instance of this class denotes a callsite being analyzed for inlining.
Each element of the InliningData
stack contains one such instance, the accompanying
CallsiteHolder
s in that element represent feasible targets for the callsite in question.
InliningData.moveForward()
Modifier and Type | Field and Description |
---|---|
private InlineInfo |
callee |
private BitSet |
freshlyInstantiatedArguments
The immutable positions of freshly instantiated arguments (ie, positions in
callee.invoke.callTarget.arguments ). |
private double |
probability |
private int |
processedGraphs |
private double |
relevance |
private int |
sizeFreshArgs |
Constructor and Description |
---|
MethodInvocation(InlineInfo info,
double probability,
double relevance,
BitSet freshlyInstantiatedArguments) |
Modifier and Type | Method and Description |
---|---|
CallsiteHolder |
buildCallsiteHolderForElement(int index) |
InlineInfo |
callee() |
BitSet |
getFreshlyInstantiatedArguments() |
int |
getSizeFreshArgs() |
void |
incrementProcessedGraphs() |
boolean |
isRoot() |
double |
probability() |
int |
processedGraphs() |
double |
relevance() |
String |
toString() |
int |
totalGraphs() |
private final InlineInfo callee
private final double probability
private final double relevance
private int processedGraphs
private final BitSet freshlyInstantiatedArguments
The immutable positions of freshly instantiated arguments (ie, positions in
callee.invoke.callTarget.arguments
).
A freshly instantiated argument is either:
InliningData.isFreshInstantiation(com.oracle.graal.nodes.ValueNode)
callee.graph()
that contains callee.invoke
)
Given those positions, the
CallsiteHolderExplorable
instantiated
in buildCallsiteHolderForElement(int)
can determine which of its parameters
are fixed.
private final int sizeFreshArgs
public MethodInvocation(InlineInfo info, double probability, double relevance, BitSet freshlyInstantiatedArguments)
public void incrementProcessedGraphs()
public int processedGraphs()
public int totalGraphs()
public InlineInfo callee()
public double probability()
public double relevance()
public boolean isRoot()
public BitSet getFreshlyInstantiatedArguments()
public int getSizeFreshArgs()
public CallsiteHolder buildCallsiteHolderForElement(int index)