#include <dominators.h>
Public Types | |
| typedef vector< basicblockNode *> | basicblock_vec |
| typedef map< basicblockNode *, int > | index_map |
| typedef map< basicblockNode *, basicblockNode *> | basicblock_map |
| typedef map< basicblockNode *, basicblock_bitset > | basicblockset_map |
Public Methods | |
| Dominators (procNode *proc, bool forward) | |
| ~Dominators () | |
| void | print () |
Static Public Methods | |
| bool | dominates (basicblockNode *A, basicblockNode *B) |
Private Methods | |
| void | dominator_tree () |
| void | depth_first_search (basicblockNode *node, basicblockNode *par) |
| void | compress (basicblockNode *v) |
| basicblockNode * | eval (basicblockNode *v) |
| void | link (basicblockNode *v, basicblockNode *w) |
Private Attributes | |
| procNode * | _proc |
| basicblockNode * | _root |
| const bool | _forward |
| index_map | node_index |
| basicblock_vec | df_vec |
| int | _index |
Static Private Attributes | |
| basicblockNode * | None = 0 |
Friends | |
| class | dominator_info |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.2.13.1 written by Dimitri van Heesch,
© 1997-2001