public final class ComputeLoopFrequenciesClosure extends com.oracle.graal.phases.graph.ReentrantNodeIterator.NodeIteratorClosure<Double>
Modifier and Type | Field and Description |
---|---|
private static ComputeLoopFrequenciesClosure |
INSTANCE |
Modifier | Constructor and Description |
---|---|
private |
ComputeLoopFrequenciesClosure() |
Modifier and Type | Method and Description |
---|---|
protected Double |
afterSplit(com.oracle.graal.nodes.AbstractBeginNode node,
Double oldState) |
static void |
compute(com.oracle.graal.nodes.StructuredGraph graph)
Computes the frequencies of all loops in the given graph.
|
protected Double |
merge(com.oracle.graal.nodes.AbstractMergeNode merge,
List<Double> states) |
static double |
multiplySaturate(double a,
double b)
Multiplies a and b and saturates the result to 1/
#MIN_PROBABILITY . |
protected Map<com.oracle.graal.nodes.LoopExitNode,Double> |
processLoop(com.oracle.graal.nodes.LoopBeginNode loop,
Double initialState) |
protected Double |
processNode(com.oracle.graal.nodes.FixedNode node,
Double currentState) |
private static final ComputeLoopFrequenciesClosure INSTANCE
private ComputeLoopFrequenciesClosure()
protected Double processNode(com.oracle.graal.nodes.FixedNode node, Double currentState)
processNode
in class com.oracle.graal.phases.graph.ReentrantNodeIterator.NodeIteratorClosure<Double>
protected Double merge(com.oracle.graal.nodes.AbstractMergeNode merge, List<Double> states)
merge
in class com.oracle.graal.phases.graph.ReentrantNodeIterator.NodeIteratorClosure<Double>
protected Double afterSplit(com.oracle.graal.nodes.AbstractBeginNode node, Double oldState)
afterSplit
in class com.oracle.graal.phases.graph.ReentrantNodeIterator.NodeIteratorClosure<Double>
protected Map<com.oracle.graal.nodes.LoopExitNode,Double> processLoop(com.oracle.graal.nodes.LoopBeginNode loop, Double initialState)
processLoop
in class com.oracle.graal.phases.graph.ReentrantNodeIterator.NodeIteratorClosure<Double>
public static double multiplySaturate(double a, double b)
#MIN_PROBABILITY
.#MIN_PROBABILITY
public static void compute(com.oracle.graal.nodes.StructuredGraph graph)