| Modifier and Type | Class and Description |
|---|---|
| private static class | |
| private class | Dominators.
Callback for depth-first walk through control flow graph (either from the entry block or the exit block). |
| Modifier and Type | Field and Description |
|---|---|
| private final ArrayList | |
| private final DomFront. | domInfos
|
| private final Dominators. | info
indexed by basic block index |
| private final SsaMethod | |
| private final boolean | |
| private final ArrayList |
| Access | Constructor and Description |
|---|---|
| private | Dominators(SsaMethod
non-null; method to processnon-null; the raw dominator infotrue for postdom information, false for normal dom info postdom)Constructs an instance. |
| Modifier and Type | Method and Description |
|---|---|
| private void | compress(SsaBasicBlock
Basic block whose DFS info we are path compressing. in)Performs path compress on the DFS info. |
| private SsaBasicBlock | |
| private BitSet | |
| private BitSet | |
| public static Dominators | |
| private void |
| blocks | back to summary |
|---|---|
| private final ArrayList<SsaBasicBlock> blocks | |
| domInfos | back to summary |
|---|---|
| private final DomFront.
| |
| info | back to summary |
|---|---|
| private final Dominators. indexed by basic block index | |
| meth | back to summary |
|---|---|
| private final SsaMethod meth | |
| postdom | back to summary |
|---|---|
| private final boolean postdom | |
| vertex | back to summary |
|---|---|
| private final ArrayList<SsaBasicBlock> vertex | |
| Dominators | back to summary |
|---|---|
| private Dominators(SsaMethod meth, DomFront. Constructs an instance. | |
| compress | back to summary |
|---|---|
| private void compress(SsaBasicBlock in) Performs path compress on the DFS info.
| |
| eval | back to summary |
|---|---|
| private SsaBasicBlock eval(SsaBasicBlock v) | |
| getPreds | back to summary |
|---|---|
| private BitSet getPreds(SsaBasicBlock block) | |
| getSuccs | back to summary |
|---|---|
| private BitSet getSuccs(SsaBasicBlock block) | |
| make | back to summary |
|---|---|
| public static Dominators make(SsaMethod meth, DomFront. Constructs a fully-initialized instance. (This method exists so as to avoid calling a large amount of code in the constructor.) | |
| run | back to summary |
|---|---|
| private void run() Performs dominator/post-dominator calculation for the control flow graph. | |
| Modifier and Type | Field and Description |
|---|---|
| public SsaBasicBlock | |
| public ArrayList | |
| public SsaBasicBlock | |
| public SsaBasicBlock | rep
rep(resentative) is known as "label" in the paper. |
| public int |
| Access | Constructor and Description |
|---|---|
| public |
| ancestor | back to summary |
|---|---|
| public SsaBasicBlock ancestor | |
| bucket | back to summary |
|---|---|
| public ArrayList<SsaBasicBlock> bucket | |
| parent | back to summary |
|---|---|
| public SsaBasicBlock parent | |
| rep | back to summary |
|---|---|
| public SsaBasicBlock rep rep(resentative) is known as "label" in the paper. It is the node that our block's DFS info has been unioned to. | |
| semidom | back to summary |
|---|---|
| public int semidom | |
| DFSInfo | back to summary |
|---|---|
| public DFSInfo() | |
infolist.
| Modifier and Type | Field and Description |
|---|---|
| private int |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public void | visitBlock(SsaBasicBlock
non-null; block visitednull-ok; parent node if applicableImplements org. |
| dfsNum | back to summary |
|---|---|
| private int dfsNum | |
| DfsWalker | back to summary |
|---|---|
| private DfsWalker() | |
| visitBlock | back to summary |
|---|---|
| public void visitBlock(SsaBasicBlock v, SsaBasicBlock parent) Implements org. Doc from org. Indicates a block has been visited by an iterator method.
| |