public class InstrumentTruffleBoundariesPhase extends InstrumentPhase
TruffleBoundary
-annotated methods in the graph, by adding execution
counters to respective callsites. If this phase is enabled, the runtime outputs a summary of all
such compiled callsites and their execution counts, when the program exits.
The phase is enabled with the following flag:
-Dgraal.TruffleInstrumentBoundariesThe phase can be configured to only instrument callsites in specific methods, by providing the following method filter flag:
-Dgraal.TruffleInstrumentBoundariesFilterThe flag:
-Dgraal.TruffleInstrumentBoundariesPerInlineSitedecides whether to treat different inlining sites separately when tracking the execution counts.
Modifier and Type | Class and Description |
---|---|
class |
InstrumentTruffleBoundariesPhase.BoundaryPoint |
InstrumentPhase.Instrumentation, InstrumentPhase.InstrumentationConfiguration, InstrumentPhase.Point
BasePhase.BasePhaseStatistics, BasePhase.PhaseOptions
methodFilter, snippetReflection
Constructor and Description |
---|
InstrumentTruffleBoundariesPhase(org.graalvm.options.OptionValues options,
SnippetReflectionProvider snippetReflection,
InstrumentPhase.Instrumentation instrumentation,
boolean instrumentPerInlineSite) |
Modifier and Type | Method and Description |
---|---|
protected InstrumentPhase.Point |
createPoint(int id,
int startIndex,
Node n) |
protected int |
instrumentationPointSlotCount() |
protected void |
instrumentGraph(StructuredGraph graph,
CoreProviders context,
jdk.vm.ci.meta.JavaConstant tableConstant) |
protected boolean |
instrumentPerInlineSite() |
codeSizeIncrease, getInstrumentation, getOrCreatePoint, insertCounter, instrumentationFilter, run
apply, apply, contractorName, getName, shouldDumpAfterAtBasicLevel, shouldDumpBeforeAtBasicLevel
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
checkContract
public InstrumentTruffleBoundariesPhase(org.graalvm.options.OptionValues options, SnippetReflectionProvider snippetReflection, InstrumentPhase.Instrumentation instrumentation, boolean instrumentPerInlineSite)
protected void instrumentGraph(StructuredGraph graph, CoreProviders context, jdk.vm.ci.meta.JavaConstant tableConstant)
instrumentGraph
in class InstrumentPhase
protected int instrumentationPointSlotCount()
instrumentationPointSlotCount
in class InstrumentPhase
protected boolean instrumentPerInlineSite()
instrumentPerInlineSite
in class InstrumentPhase
protected InstrumentPhase.Point createPoint(int id, int startIndex, Node n)
createPoint
in class InstrumentPhase