private static final class GraphUtil.DefaultSimplifierTool extends Object implements SimplifierTool
Modifier and Type | Field and Description |
---|---|
private boolean |
canonicalizeReads |
private ConstantReflectionProvider |
constantReflection |
private MetaAccessProvider |
metaAccess |
Constructor and Description |
---|
DefaultSimplifierTool(MetaAccessProvider metaAccess,
ConstantReflectionProvider constantReflection,
boolean canonicalizeReads) |
Modifier and Type | Method and Description |
---|---|
void |
addToWorkList(Iterable<? extends Node> nodes) |
void |
addToWorkList(Node node)
Adds a node to the worklist independent of whether it has already been on the worklist.
|
boolean |
allUsagesAvailable()
If this method returns false, not all
usages of a node are yet
available. |
boolean |
canonicalizeReads() |
void |
deleteBranch(Node branch) |
ConstantReflectionProvider |
getConstantReflection() |
MetaAccessProvider |
getMetaAccess() |
void |
removeIfUnused(Node node) |
private final MetaAccessProvider metaAccess
private final ConstantReflectionProvider constantReflection
private final boolean canonicalizeReads
public DefaultSimplifierTool(MetaAccessProvider metaAccess, ConstantReflectionProvider constantReflection, boolean canonicalizeReads)
public MetaAccessProvider getMetaAccess()
getMetaAccess
in interface CanonicalizerTool
public ConstantReflectionProvider getConstantReflection()
getConstantReflection
in interface CanonicalizerTool
public boolean canonicalizeReads()
canonicalizeReads
in interface CanonicalizerTool
public boolean allUsagesAvailable()
CanonicalizerTool
usages of a node
are yet
available. So a node must not be canonicalized base on, e.g., information returned from
Node.hasNoUsages()
.allUsagesAvailable
in interface CanonicalizerTool
public void deleteBranch(Node branch)
deleteBranch
in interface SimplifierTool
public void removeIfUnused(Node node)
removeIfUnused
in interface SimplifierTool
public void addToWorkList(Node node)
SimplifierTool
addToWorkList
in interface SimplifierTool
public void addToWorkList(Iterable<? extends Node> nodes)
addToWorkList
in interface SimplifierTool