#include <StructuralAnalysis.h>
List of all members.
Classes |
struct | Node |
Public Types |
enum | EdgeClass { TREE,
FORWARD,
BACK,
CROSS
} |
enum | RegionTy {
Nil,
Block,
IfThen,
IfThenElse,
Case,
SelfLoop,
NaturalLoop,
Improper,
Unreachable
} |
typedef std::pair
< ir::ControlFlowGraph::iterator,
ir::ControlFlowGraph::iterator > | EdgeLLVMTy |
typedef std::vector< EdgeLLVMTy > | EdgeVecTy |
typedef std::unordered_set
< ir::ControlFlowGraph::iterator > | BBSetTy |
typedef std::vector
< ir::ControlFlowGraph::iterator > | BBVecTy |
typedef struct
analysis::StructuralAnalysis::Node | NodeTy |
typedef std::set< NodeTy * > | NodeSetTy |
typedef std::unordered_map
< ir::ControlFlowGraph::iterator,
NodeTy * > | BB2NodeMapTy |
typedef std::map< NodeTy
*, NodeTy * > | Node2NodeMapTy |
typedef std::map< NodeTy
*, RegionTy > | Node2RegionTyMapTy |
typedef std::map< NodeTy
*, NodeSetTy * > | Node2NodeSetMapTy |
typedef std::pair< NodeTy
*, NodeTy * > | EdgeTy |
typedef std::map< EdgeTy,
EdgeClass > | Edge2ClassMapTy |
typedef std::set< EdgeTy > | EdgeSetTy |
typedef std::map< NodeTy *, bool > | VisitMapTy |
Public Member Functions |
| ~StructuralAnalysis () |
void | analyze (ir::IRKernel &k) |
void | write (std::ostream &stream) const |
Public Attributes |
NodeSetTy | Net |
EdgeVecTy | unstructuredBRVec |
BB2NodeMapTy | BB2NodeMap |
NodeSetTy | unreachableNodeSet |
Member Typedef Documentation
Member Enumeration Documentation
- Enumerator:
Nil |
|
Block |
|
IfThen |
|
IfThenElse |
|
Case |
|
SelfLoop |
|
NaturalLoop |
|
Improper |
|
Unreachable |
|
Constructor & Destructor Documentation
analysis::StructuralAnalysis::~StructuralAnalysis |
( |
| ) |
|
Member Function Documentation
void analysis::StructuralAnalysis::analyze |
( |
ir::IRKernel & |
k | ) |
[virtual] |
void analysis::StructuralAnalysis::write |
( |
std::ostream & |
stream | ) |
const |
Member Data Documentation
The documentation for this class was generated from the following files: