public class ConstantTree extends PrintableDominatorOptimizationProblem<ConstantTree.Flags,ConstantTree.NodeCost>
| Modifier and Type | Class and Description |
|---|---|
static class |
ConstantTree.Flags |
static class |
ConstantTree.NodeCost
Costs associated with a block.
|
| Constructor and Description |
|---|
ConstantTree(AbstractControlFlowGraph<?> cfg,
org.graalvm.compiler.lir.constopt.DefUseTree tree) |
| Modifier and Type | Method and Description |
|---|---|
void |
forEachPropertyPair(AbstractBlockBase<?> block,
BiConsumer<String,String> action)
Applies
action to all extra property pairs (name, value) of block. |
String |
getName(ConstantTree.Flags type)
Returns the name of a flag.
|
AbstractBlockBase<?> |
getStartBlock() |
List<org.graalvm.compiler.lir.constopt.UseEntry> |
getUsages(AbstractBlockBase<?> block) |
boolean |
isLeafBlock(AbstractBlockBase<?> block) |
boolean |
isMarked(AbstractBlockBase<?> block) |
void |
markBlocks() |
void |
setSolution(AbstractBlockBase<?> block) |
int |
size() |
long |
subTreeSize() |
void |
traverseTreeWhileTrue(AbstractBlockBase<?> block,
Predicate<AbstractBlockBase<?>> action) |
get, getBlockForId, getBlocks, getCost, getFlags, getFlagsForBlock, set, setCost, setDominatorPath, streamclone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetBlockspublic ConstantTree(AbstractControlFlowGraph<?> cfg, org.graalvm.compiler.lir.constopt.DefUseTree tree)
public List<org.graalvm.compiler.lir.constopt.UseEntry> getUsages(AbstractBlockBase<?> block)
public String getName(ConstantTree.Flags type)
DominatorOptimizationProblemgetName in class DominatorOptimizationProblem<ConstantTree.Flags,ConstantTree.NodeCost>public void forEachPropertyPair(AbstractBlockBase<?> block, BiConsumer<String,String> action)
PrintableCFGaction to all extra property pairs (name, value) of block.forEachPropertyPair in interface PrintableCFGforEachPropertyPair in class PrintableDominatorOptimizationProblem<ConstantTree.Flags,ConstantTree.NodeCost>block - a block from PrintableCFG.getBlocks().action - a consumer.public long subTreeSize()
public AbstractBlockBase<?> getStartBlock()
public void markBlocks()
public boolean isMarked(AbstractBlockBase<?> block)
public boolean isLeafBlock(AbstractBlockBase<?> block)
public void setSolution(AbstractBlockBase<?> block)
public int size()
public void traverseTreeWhileTrue(AbstractBlockBase<?> block, Predicate<AbstractBlockBase<?>> action)