Otawa  0.10
otawa::BranchProblem Class Reference

#include <otawa/branch/BranchProblem.h>

Classes

class  Domain
 

Public Member Functions

 BranchProblem (const int _size, WorkSpace *_fw, const int _A, const int _row)
 
const Domainbottom (void) const
 
const Domainentry (void) const
 
void lub (Domain &a, const Domain &b) const
 
void assign (Domain &a, const Domain &b) const
 
bool equals (const Domain &a, const Domain &b) const
 
void update (Domain &out, const Domain &in, BasicBlock *bb)
 
void updateLBlock (Domain &acs, LBlock *lblock)
 
void enterContext (Domain &dom, BasicBlock *header, util::hai_context_t ctx)
 
void leaveContext (Domain &dom, BasicBlock *header, util::hai_context_t ctx)
 

Private Attributes

MUSTBranch mustProb
 
PERSBranch persProb
 
MAYBranch mayProb
 
WorkSpacefw
 
int row
 
Domain bot
 
Domain ent
 

Constructor & Destructor Documentation

Member Function Documentation

void otawa::BranchProblem::assign ( Domain a,
const Domain b 
) const
inline

Referenced by update().

const BranchProblem::Domain & otawa::BranchProblem::bottom ( void  ) const

References bot.

const BranchProblem::Domain & otawa::BranchProblem::entry ( void  ) const

References ent.

bool otawa::BranchProblem::equals ( const Domain a,
const Domain b 
) const
inline
void otawa::BranchProblem::lub ( Domain a,
const Domain b 
) const
inline
void otawa::BranchProblem::updateLBlock ( Domain acs,
LBlock lblock 
)

Member Data Documentation

Domain otawa::BranchProblem::bot
private

Referenced by bottom(), and BranchProblem().

Domain otawa::BranchProblem::ent
private

Referenced by BranchProblem(), and entry().

WorkSpace* otawa::BranchProblem::fw
private

Referenced by update().

MAYBranch otawa::BranchProblem::mayProb
private

Referenced by enterContext(), and leaveContext().

MUSTBranch otawa::BranchProblem::mustProb
private
PERSBranch otawa::BranchProblem::persProb
private
int otawa::BranchProblem::row
private

Referenced by update().


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