Modifier and Type | Class and Description |
---|---|
private class |
LoopEx.InvariantPredicate |
Modifier and Type | Field and Description |
---|---|
private CountedLoopInfo |
counted |
private LoopsData |
data |
private LoopFragmentInside |
inside |
private Map<Node,InductionVariable> |
ivs |
private Loop<Block> |
loop |
private LoopFragmentWhole |
whole |
Constructor and Description |
---|
LoopEx(Loop<Block> loop,
LoopsData data) |
private LoopFragmentInside inside
private LoopFragmentWhole whole
private CountedLoopInfo counted
private Map<Node,InductionVariable> ivs
public LoopFragmentInside inside()
public LoopFragmentWhole whole()
public void invalidateFragments()
public LoopFragmentInsideFrom insideFrom(FixedNode point)
public LoopFragmentInsideBefore insideBefore(FixedNode point)
public boolean isOutsideLoop(Node n)
public LoopBeginNode loopBegin()
public FixedNode predecessor()
public FixedNode entryPoint()
public boolean isCounted()
public CountedLoopInfo counted()
public int size()
public void reassociateInvariants()
public boolean detectCounted()
public NodeBitMap nodesInLoopBranch(AbstractBeginNode branch)
public Map<Node,InductionVariable> getInductionVariables()
private static Map<Node,InductionVariable> findInductionVariables(LoopEx loop)
loop
- public void deleteUnusedNodes()