public class CompilationInfo extends Object
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
canDeoptForTesting |
protected CompileQueue.CompileFunction |
customCompileFunction |
protected CompileQueue.ParseFunction |
customParseFunction |
protected HostedMethod |
deoptOrigin
A link to the regular compiled method if this method is a deoptimization target.
|
protected HostedMethod |
deoptTarget
A link to the deoptimization target method if this method can deoptimize.
|
protected org.graalvm.compiler.nodes.StructuredGraph |
graph |
protected boolean |
inCompileQueue
No need for this flag to be atomic, because
CompileQueue.compilations is used to
ensure each method is compiled only once. |
protected AtomicBoolean |
inParseQueue |
protected boolean |
isTrivialMethod |
protected HostedMethod |
method |
protected long |
numDeoptEntryPoints |
protected AtomicLong |
numDirectCalls |
protected long |
numDuringCallEntryPoints |
protected AtomicLong |
numEntryPointCalls |
protected long |
numNodesAfterCompilation |
protected long |
numNodesAfterParsing |
protected long |
numNodesBeforeCompilation |
protected AtomicLong |
numVirtualCalls |
protected org.graalvm.compiler.nodes.ConstantNode[] |
specializedArguments
The constant arguments for a
DeoptTest method called by a Specialize method. |
| Constructor and Description |
|---|
CompilationInfo(HostedMethod method,
HostedMethod deoptOrigin) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canDeoptForTesting() |
void |
clear() |
CompileQueue.CompileFunction |
getCustomCompileFunction() |
CompileQueue.ParseFunction |
getCustomParseFunction() |
HostedMethod |
getDeoptTargetMethod() |
org.graalvm.compiler.nodes.StructuredGraph |
getGraph() |
boolean |
hasDefaultParseFunction() |
boolean |
isDeoptEntry(int bci,
boolean duringCall,
boolean rethrowException) |
boolean |
isDeoptTarget() |
boolean |
isRegisteredDeoptEntry(int bci,
boolean duringCall,
boolean rethrowException)
Returns whether this bci was registered as a potential deoptimization entrypoint via
CompilationInfoSupport.registerDeoptEntry(org.graalvm.compiler.nodes.FrameState). |
boolean |
isTrivialMethod() |
void |
setCustomCompileFunction(CompileQueue.CompileFunction compileFunction) |
void |
setCustomParseFunction(CompileQueue.ParseFunction parseFunction) |
void |
setGraph(org.graalvm.compiler.nodes.StructuredGraph graph) |
void |
setTrivialMethod(boolean trivial) |
protected final HostedMethod method
protected final AtomicBoolean inParseQueue
protected boolean inCompileQueue
CompileQueue.compilations is used to
ensure each method is compiled only once.protected volatile org.graalvm.compiler.nodes.StructuredGraph graph
protected boolean isTrivialMethod
protected boolean canDeoptForTesting
protected org.graalvm.compiler.nodes.ConstantNode[] specializedArguments
DeoptTest method called by a Specialize method.
Note: this is only used for testing.protected HostedMethod deoptTarget
protected final HostedMethod deoptOrigin
method
name depends on this field (to distinguish a regular method from a deoptimization target
method), so mutating this field would mutate the name of a method.protected CompileQueue.ParseFunction customParseFunction
protected CompileQueue.CompileFunction customCompileFunction
protected long numNodesAfterParsing
protected long numNodesBeforeCompilation
protected long numNodesAfterCompilation
protected long numDeoptEntryPoints
protected long numDuringCallEntryPoints
protected final AtomicLong numDirectCalls
protected final AtomicLong numVirtualCalls
protected final AtomicLong numEntryPointCalls
public CompilationInfo(HostedMethod method, HostedMethod deoptOrigin)
public boolean isDeoptTarget()
public boolean isDeoptEntry(int bci,
boolean duringCall,
boolean rethrowException)
public boolean isRegisteredDeoptEntry(int bci,
boolean duringCall,
boolean rethrowException)
CompilationInfoSupport.registerDeoptEntry(org.graalvm.compiler.nodes.FrameState).public boolean canDeoptForTesting()
public HostedMethod getDeoptTargetMethod()
public void setGraph(org.graalvm.compiler.nodes.StructuredGraph graph)
public void clear()
public org.graalvm.compiler.nodes.StructuredGraph getGraph()
public boolean isTrivialMethod()
public void setTrivialMethod(boolean trivial)
public void setCustomParseFunction(CompileQueue.ParseFunction parseFunction)
public CompileQueue.ParseFunction getCustomParseFunction()
public void setCustomCompileFunction(CompileQueue.CompileFunction compileFunction)
public CompileQueue.CompileFunction getCustomCompileFunction()
public boolean hasDefaultParseFunction()