cprover
cfg_dominators_templatet< P, T, post_dom > Class Template Reference

#include <cfg_dominators.h>

Inheritance diagram for cfg_dominators_templatet< P, T, post_dom >:
[legend]
Collaboration diagram for cfg_dominators_templatet< P, T, post_dom >:
[legend]

Classes

struct  nodet
 

Public Types

typedef std::set< T > target_sett
 
typedef procedure_local_cfg_baset< nodet, P, T > cfgt
 

Public Member Functions

void operator() (P &program)
 Compute dominators. More...
 
void output (std::ostream &) const
 Print the result of the dominator computation. More...
 

Public Attributes

cfgt cfg
 
entry_node
 

Protected Member Functions

void initialise (P &program)
 Initialises the elements of the fixed point analysis. More...
 
void fixedpoint (P &program)
 Computes the MOP for the dominator analysis. More...
 

Detailed Description

template<class P, class T, bool post_dom>
class cfg_dominators_templatet< P, T, post_dom >

Definition at line 26 of file cfg_dominators.h.

Member Typedef Documentation

§ cfgt

template<class P, class T, bool post_dom>
typedef procedure_local_cfg_baset<nodet, P, T> cfg_dominators_templatet< P, T, post_dom >::cfgt

Definition at line 36 of file cfg_dominators.h.

§ target_sett

template<class P, class T, bool post_dom>
typedef std::set<T> cfg_dominators_templatet< P, T, post_dom >::target_sett

Definition at line 29 of file cfg_dominators.h.

Member Function Documentation

§ fixedpoint()

template<class P, class T , bool post_dom>
void cfg_dominators_templatet< P, T, post_dom >::fixedpoint ( P &  program)
protected

Computes the MOP for the dominator analysis.

Definition at line 77 of file cfg_dominators.h.

Referenced by cfg_dominators_templatet< const goto_programt, goto_programt::const_targett, false >::operator()().

§ initialise()

template<class P, class T , bool post_dom>
void cfg_dominators_templatet< P, T, post_dom >::initialise ( P &  program)
protected

Initialises the elements of the fixed point analysis.

Definition at line 70 of file cfg_dominators.h.

Referenced by cfg_dominators_templatet< const goto_programt, goto_programt::const_targett, false >::operator()().

§ operator()()

template<class P, class T , bool post_dom>
void cfg_dominators_templatet< P, T, post_dom >::operator() ( P &  program)

Compute dominators.

Definition at line 62 of file cfg_dominators.h.

§ output()

template<class P , class T , bool post_dom>
void cfg_dominators_templatet< P, T, post_dom >::output ( std::ostream &  out) const

Print the result of the dominator computation.

Definition at line 185 of file cfg_dominators.h.

Referenced by natural_loops_templatet< const goto_programt, goto_programt::const_targett >::compute(), and operator<<().

Member Data Documentation

§ cfg

§ entry_node

template<class P, class T, bool post_dom>
T cfg_dominators_templatet< P, T, post_dom >::entry_node

The documentation for this class was generated from the following file: