ltState holds the working state for Lengauer-Tarjan algorithm (during which domInfo.pre is repurposed for CFG DFS preorder number).
| 74 | // ltState holds the working state for Lengauer-Tarjan algorithm |
| 75 | // (during which domInfo.pre is repurposed for CFG DFS preorder number). |
| 76 | type ltState struct { |
| 77 | // Each slice is indexed by domInfo.index. |
| 78 | sdom []*node // b's semidominator |
| 79 | parent []*node // b's parent in DFS traversal of CFG |
| 80 | ancestor []*node // b's ancestor with least sdom |
| 81 | } |
| 82 | |
| 83 | // dfs implements the depth-first search part of the LT algorithm. |
| 84 | func (lt *ltState) dfs(v *node, i int32, preorder []*node) int32 { |
nothing calls this directly
no outgoing calls
no test coverage detected