Class TruffleCompilerAssumptionDependency
java.lang.Object
com.oracle.truffle.compiler.TruffleCompilerAssumptionDependency
- All Implemented Interfaces:
OptimizedAssumptionDependency
public final class TruffleCompilerAssumptionDependency
extends Object
implements OptimizedAssumptionDependency
For multi tier compilation it is necessary to pair the call target with the installed code as
multiple installed codes may be active for a given call target. For example if the tier 1
compiled code is currently active while tier 2 code is installed. If now an assumption is
invalidated both installed codes must be deoptimized eagerly. Installing tier 2 code over tier 1
code does not eagerly deoptimize the tier 1 code.
-
Constructor Summary
ConstructorsConstructorDescriptionTruffleCompilerAssumptionDependency(TruffleCompilable compilation, jdk.vm.ci.code.InstalledCode code) -
Method Summary
Modifier and TypeMethodDescriptionGets the Truffle AST whose machine code is represented by this object.jdk.vm.ci.code.InstalledCodebooleanisAlive()Determines if the machine code referenced by this object is valid.voidonAssumptionInvalidated(Object source, CharSequence reason) Called when a depended-on assumption is invalidated, with the intention to invalidate the machine code referenced by this object.toString()
-
Constructor Details
-
TruffleCompilerAssumptionDependency
public TruffleCompilerAssumptionDependency(TruffleCompilable compilation, jdk.vm.ci.code.InstalledCode code)
-
-
Method Details
-
onAssumptionInvalidated
Description copied from interface:OptimizedAssumptionDependencyCalled when a depended-on assumption is invalidated, with the intention to invalidate the machine code referenced by this object.- Specified by:
onAssumptionInvalidatedin interfaceOptimizedAssumptionDependency
-
getInstalledCode
public jdk.vm.ci.code.InstalledCode getInstalledCode() -
getCompilable
Description copied from interface:OptimizedAssumptionDependencyGets the Truffle AST whose machine code is represented by this object. May benull.- Specified by:
getCompilablein interfaceOptimizedAssumptionDependency
-
isAlive
public boolean isAlive()Description copied from interface:OptimizedAssumptionDependencyDetermines if the machine code referenced by this object is valid.- Specified by:
isAlivein interfaceOptimizedAssumptionDependency
-
toString
-