Otawa  0.10
otawa::dcache::MAYProblem Class Reference

#include <otawa/dcache/ACSMayBuilder.h>

Classes

class  Domain
 

Public Member Functions

 MAYProblem (const BlockCollection &coll, WorkSpace *_fw, const hard::Cache *_cache)
 
 ~MAYProblem (void)
 
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)
 Produces the output MAY cache state with the execution of given BB. More...
 
void update (Domain &s, const BlockAccess &access)
 Update the state according to the given block access. More...
 
void enterContext (Domain &dom, BasicBlock *header, util::hai_context_t ctx)
 
void leaveContext (Domain &dom, BasicBlock *header, util::hai_context_t ctx)
 

Public Attributes

Domain callstate
 

Private Attributes

const BlockCollectioncoll
 
WorkSpacefw
 
int line
 
const hard::Cachecache
 
Domain bot
 
Domain ent
 

Constructor & Destructor Documentation

MAYProblem::MAYProblem ( const BlockCollection coll,
WorkSpace _fw,
const hard::Cache _cache 
)

References otawa::dcache::ACS::empty(), and ent.

MAYProblem::~MAYProblem ( void  )

Member Function Documentation

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

Referenced by update().

const MAYProblem::Domain & MAYProblem::bottom ( void  ) const

References bot.

void otawa::dcache::MAYProblem::enterContext ( Domain dom,
BasicBlock header,
util::hai_context_t  ctx 
)
inline
const MAYProblem::Domain & MAYProblem::entry ( void  ) const

References ent.

bool otawa::dcache::MAYProblem::equals ( const Domain a,
const Domain b 
) const
inline
void otawa::dcache::MAYProblem::leaveContext ( Domain dom,
BasicBlock header,
util::hai_context_t  ctx 
)
inline
void otawa::dcache::MAYProblem::lub ( Domain a,
const Domain b 
) const
inline
void MAYProblem::update ( Domain out,
const Domain in,
BasicBlock bb 
)

Produces the output MAY cache state with the execution of given BB.

Parameters
outOutput state.
inInput state.
bbBB to to analyze.

References assign(), otawa::dcache::DATA_BLOCKS, elm::Pair< T1, T2 >::fst, and elm::Pair< T1, T2 >::snd.

void MAYProblem::update ( Domain s,
const BlockAccess access 
)

Member Data Documentation

Domain otawa::dcache::MAYProblem::bot
private

Referenced by bottom().

const hard::Cache* otawa::dcache::MAYProblem::cache
private
Domain otawa::dcache::MAYProblem::callstate
const BlockCollection& otawa::dcache::MAYProblem::coll
private
Domain otawa::dcache::MAYProblem::ent
private

Referenced by entry(), and MAYProblem().

WorkSpace* otawa::dcache::MAYProblem::fw
private
int otawa::dcache::MAYProblem::line
private

Referenced by update().


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