MimIR 0.1
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
mim::CFA Class Reference

Control Flow Analysis. More...

#include <mim/analyses/cfg.h>

Public Member Functions

 CFA (const CFA &)=delete
 
CFAoperator= (CFA)=delete
 
 CFA (const Scope &scope)
 
 ~CFA ()
 
const Scopescope () const
 
Worldworld () const
 
size_t size () const
 
const MutMap< const CFNode * > & nodes () const
 
const F_CFGf_cfg () const
 
const B_CFGb_cfg () const
 
const CFNodeoperator[] (Def *mut) const
 

Friends

template<bool >
class CFG
 

Detailed Description

Control Flow Analysis.

Definition at line 62 of file cfg.h.

Constructor & Destructor Documentation

◆ CFA() [1/2]

mim::CFA::CFA ( const CFA & )
delete

◆ CFA() [2/2]

mim::CFA::CFA ( const Scope & scope)
explicit

Definition at line 26 of file cfg.cpp.

References mim::Scope::bound(), mim::Scope::entry(), mim::Def::ops(), mim::pop(), and scope().

◆ ~CFA()

mim::CFA::~CFA ( )

Definition at line 74 of file cfg.cpp.

Member Function Documentation

◆ b_cfg()

const B_CFG & mim::CFA::b_cfg ( ) const

Definition at line 79 of file cfg.cpp.

References mim::lazy_init().

Referenced by mim::Scope::b_cfg().

◆ f_cfg()

const F_CFG & mim::CFA::f_cfg ( ) const

Definition at line 78 of file cfg.cpp.

References mim::lazy_init().

Referenced by mim::Scope::f_cfg().

◆ nodes()

const MutMap< const CFNode * > & mim::CFA::nodes ( ) const
inline

Definition at line 73 of file cfg.h.

Referenced by size().

◆ operator=()

CFA & mim::CFA::operator= ( CFA )
delete

◆ operator[]()

const CFNode * mim::CFA::operator[] ( Def * mut) const
inline

Definition at line 76 of file cfg.h.

◆ scope()

const Scope & mim::CFA::scope ( ) const
inline

Definition at line 70 of file cfg.h.

Referenced by CFA(), and world().

◆ size()

size_t mim::CFA::size ( ) const
inline

Definition at line 72 of file cfg.h.

References nodes().

Referenced by mim::CFG< bool >::size().

◆ world()

World & mim::CFA::world ( ) const
inline

Definition at line 71 of file cfg.h.

References scope(), and mim::Scope::world().

Friends And Related Symbol Documentation

◆ CFG

template<bool >
friend class CFG
friend

Definition at line 105 of file cfg.h.


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