ROSE
0.9.6a
|
#include <DominanceFrontier.h>
Public Member Functions | |
std::set< int > | getFrontier (int node) |
retunrs a set of ID's with the nodes dominance-frontier More... | |
TemplatedDominanceFrontier (TemplatedDominatorTree< CFGFilterFunction > dt) | |
construct the domnancefrontier More... | |
void | printFrontiers () |
debug method to print forntiers More... | |
Public Member Functions inherited from DominatorTreesAndDominanceFrontiers::DominatorForwardBackwardWrapperClass< CFGFilterFunction > | |
DominatorForwardBackwardWrapperClass (Direction dir) | |
Direction | getDirection () |
Private Member Functions | |
int | validID (int id) |
checks if the id is valid More... | |
void | init () |
allocate the vector and initialize it with sets More... | |
void | buildFrontier () |
Private Attributes | |
TemplatedDominatorTree < CFGFilterFunction > | dominatorTree |
std::vector< std::set< int > > | dominatorFrontier |
a vector of dominance-frontiers, for every possible id one More... | |
Additional Inherited Members | |
Protected Member Functions inherited from DominatorTreesAndDominanceFrontiers::DominatorForwardBackwardWrapperClass< CFGFilterFunction > | |
std::vector < VirtualCFG::FilteredCFGEdge < CFGFilterFunction > > | getDirectionModifiedOutEdges (VirtualCFG::FilteredCFGNode< CFGFilterFunction > current) |
helperfunctions to toggle beween pre and post dominator tree More... | |
std::vector < VirtualCFG::FilteredCFGEdge < CFGFilterFunction > > | getDirectionModifiedInEdges (VirtualCFG::FilteredCFGNode< CFGFilterFunction > current) |
VirtualCFG::FilteredCFGNode < CFGFilterFunction > | target (VirtualCFG::FilteredCFGEdge< CFGFilterFunction > outedge) |
VirtualCFG::FilteredCFGNode < CFGFilterFunction > | source (VirtualCFG::FilteredCFGEdge< CFGFilterFunction > outedge) |
Protected Attributes inherited from DominatorTreesAndDominanceFrontiers::DominatorForwardBackwardWrapperClass< CFGFilterFunction > | |
Direction | treeDirection |
Definition at line 24 of file dominanceAnalysis/DominanceFrontier.h.
|
inline |
construct the domnancefrontier
Definition at line 43 of file dominanceAnalysis/DominanceFrontier.h.
References DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::buildFrontier(), DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::dominatorTree, and DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::init().
|
inline |
retunrs a set of ID's with the nodes dominance-frontier
Definition at line 30 of file dominanceAnalysis/DominanceFrontier.h.
References DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::dominatorFrontier, and DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::validID().
|
inline |
debug method to print forntiers
Definition at line 53 of file dominanceAnalysis/DominanceFrontier.h.
References DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::dominatorFrontier, and DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::dominatorTree.
|
inlineprivate |
checks if the id is valid
Definition at line 72 of file dominanceAnalysis/DominanceFrontier.h.
References DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::dominatorFrontier.
Referenced by DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::getFrontier().
|
inlineprivate |
allocate the vector and initialize it with sets
Definition at line 86 of file dominanceAnalysis/DominanceFrontier.h.
References DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::dominatorFrontier, and DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::dominatorTree.
Referenced by DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::TemplatedDominanceFrontier().
|
inlineprivate |
Definition at line 94 of file dominanceAnalysis/DominanceFrontier.h.
References DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::dominatorFrontier, DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::dominatorTree, DominatorTreesAndDominanceFrontiers::DominatorForwardBackwardWrapperClass< CFGFilterFunction >::getDirectionModifiedOutEdges(), StaticCFG::outEdges(), and DominatorTreesAndDominanceFrontiers::DominatorForwardBackwardWrapperClass< CFGFilterFunction >::target().
Referenced by DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::TemplatedDominanceFrontier().
|
private |
Definition at line 80 of file dominanceAnalysis/DominanceFrontier.h.
Referenced by DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::buildFrontier(), DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::init(), DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::printFrontiers(), and DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::TemplatedDominanceFrontier().
|
private |
a vector of dominance-frontiers, for every possible id one
Definition at line 83 of file dominanceAnalysis/DominanceFrontier.h.
Referenced by DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::buildFrontier(), DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::getFrontier(), DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::init(), DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::printFrontiers(), and DominatorTreesAndDominanceFrontiers::TemplatedDominanceFrontier< CFGFilterFunction >::validID().