public class InstanceOfTypeFlow extends TypeFlow<jdk.vm.ci.code.BytecodePosition>
FilterTypeFlow that implements
the filtering operation and propagates the reduced state to uses. An InstanceOfTypeFlow is a sink
flow, i.e., it doesn't have any uses.context, declaredType, graphRef, id, inQueue, nextId, source, usedAsAParameter, usedAsAReceiver| Constructor and Description |
|---|
InstanceOfTypeFlow(InstanceOfTypeFlow original,
MethodFlowsGraph methodFlows) |
InstanceOfTypeFlow(org.graalvm.compiler.nodes.ValueNode node,
BytecodeLocation instanceOfLocation,
AnalysisType declaredType) |
| Modifier and Type | Method and Description |
|---|---|
TypeFlow<jdk.vm.ci.code.BytecodePosition> |
copy(PointsToAnalysis bb,
MethodFlowsGraph methodFlows)
By default a type flow is not cloneable.
|
TypeState |
filter(PointsToAnalysis bb,
TypeState newState) |
BytecodeLocation |
getLocation() |
String |
toString() |
addInput, addObservee, addObserver, addOriginalObserver, addOriginalUse, addState, addState, addUse, canSaturate, context, declaredTypeFilter, doAddUse, equals, format, formatSource, getDeclaredType, getInputs, getObservees, getObservers, getSlot, getSource, getState, getUses, graphRef, hashCode, id, initClone, isAllInstantiated, isClone, isSaturated, isUsedAsAParameter, isUsedAsAReceiver, method, notifyObserverOfSaturation, notifyObservers, notifyUseOfSaturation, onInputSaturated, onObservedSaturated, onObservedUpdate, onSaturated, receiver, removeInput, removeObservee, removeObserver, removeUse, replacedObservedWith, replaceObservedWith, setObserved, setSaturated, setSlot, setState, setUsedAsAParameter, setUsedAsAReceiver, swapAtObserver, swapAtUse, swapOut, updatepublic InstanceOfTypeFlow(org.graalvm.compiler.nodes.ValueNode node,
BytecodeLocation instanceOfLocation,
AnalysisType declaredType)
public InstanceOfTypeFlow(InstanceOfTypeFlow original, MethodFlowsGraph methodFlows)
public TypeState filter(PointsToAnalysis bb, TypeState newState)
public TypeFlow<jdk.vm.ci.code.BytecodePosition> copy(PointsToAnalysis bb, MethodFlowsGraph methodFlows)
TypeFlowpublic BytecodeLocation getLocation()