Polaris: mem_util.cc File Reference

mem_util.cc File Reference

Go to the source code of this file.

Functions

void register_instance (int id, int size, void *object)
void unregister_instance (int id, void *object)
void registry_on ()
void registry_off ()
void registry_print ()
void registry_clear ()

Variables

Database< int, RegistryElem_registry
 This is the global instance registry for all classes - must be defined in the main program.
int _registry_on


Function Documentation

void register_instance int  id,
int  size,
void *  object
 

Definition at line 15 of file mem_util.cc.

References _registry, _registry_on, ProtoDatabase< S, T >::find_ref(), Database< S, T >::ins(), and RegistryElem::list().

Referenced by AbstractAccess::AbstractAccess(), AccessDimension::AccessDimension(), AIRangeDict::AIRangeDict(), Array< T >::Array(), ArrayBounds::ArrayBounds(), ArrayDims::ArrayDims(), Average::Average(), BaseIter::BaseIter(), BinPtr::BinPtr(), BinRep::BinRep(), BMNode::BMNode(), Boolean::Boolean(), CommonBlock::CommonBlock(), CommonBlockDict::CommonBlockDict(), Data::Data(), DataList::DataList(), Declaration::Declaration(), Definition::Definition(), DefLoc::DefLoc(), DefLocMap::DefLocMap(), Dictionary< T >::Dictionary(), DictionaryIter< T >::DictionaryIter(), DirectedEdge::DirectedEdge(), DominatorWorkSpace::DominatorWorkSpace(), EntryPoints::EntryPoints(), Equivalence::Equivalence(), EquivalenceDict::EquivalenceDict(), EquivalenceMember::EquivalenceMember(), Expression::Expression(), Format::Format(), FormatDB::FormatDB(), GSAPathExpr::GSAPathExpr(), GSAPathMap::GSAPathMap(), InlineObject::InlineObject(), InlineWorkSpace::InlineWorkSpace(), IntDef::IntDef(), IntElem::IntElem(), IntSet::IntSet(), IPAStats::IPAStats(), Listable::Listable(), LongElem::LongElem(), Monotonicity::Monotonicity(), Namelist::Namelist(), NamelistDict::NamelistDict(), OmegaInfo::OmegaInfo(), pDominatorWorkSpace::pDominatorWorkSpace(), Permutation::Permutation(), PhiPlaceDef::PhiPlaceDef(), PredicateElem::PredicateElem(), PredicateRepository::PredicateRepository(), Program::Program(), ProgramTag::ProgramTag(), ProgramUnit::ProgramUnit(), RefWrapper::RefWrapper(), Relation::Relation(), Relinkable::Relinkable(), RelinkableDef::RelinkableDef(), SharedBounds::SharedBounds(), SharedDims::SharedDims(), SimBiGraph::SimBiGraph(), SimBiGraphIterator::SimBiGraphIterator(), SimEdge::SimEdge(), SimEdgeKernel::SimEdgeKernel(), SimGraph::SimGraph(), SimGraphIterator::SimGraphIterator(), SmallIntSet::SmallIntSet(), SSAProgramUnit::SSAProgramUnit(), Statement::Statement(), StmtList::StmtList(), StmtRanges::StmtRanges(), String::String(), StringElem::StringElem(), Symbol::Symbol(), SymbolAccess::SymbolAccess(), SymbolAccessMap::SymbolAccessMap(), SymbolAccessRef::SymbolAccessRef(), SymbolAccessRefMap::SymbolAccessRefMap(), Symtab::Symtab(), Timer::Timer(), TopSortNode::TopSortNode(), TranslateObject::TranslateObject(), Type::Type(), UBiEdge::UBiEdge(), UBiGraph::UBiGraph(), UBiGraphIterator::UBiGraphIterator(), UEdge::UEdge(), UGraph::UGraph(), UGraphIterator::UGraphIterator(), UntypedAssign::UntypedAssign(), VDL::VDL(), WorkSpace::WorkSpace(), WorkSpaceStack::WorkSpaceStack(), Wrapper::Wrapper(), and Zombie::Zombie().

void unregister_instance int  id,
void *  object
 

Definition at line 42 of file mem_util.cc.

References _registry, _registry_on, classname(), Database< S, T >::del(), ProtoDatabase< S, T >::find_ref(), and RegistryElem::list().

Referenced by AbstractAccess::~AbstractAccess(), AccessDimension::~AccessDimension(), AIRangeDict::~AIRangeDict(), Array< T >::~Array(), ArrayBounds::~ArrayBounds(), ArrayDims::~ArrayDims(), Average::~Average(), BaseIter::~BaseIter(), BinPtr::~BinPtr(), BinRep::~BinRep(), BMNode::~BMNode(), Boolean::~Boolean(), CommonBlock::~CommonBlock(), CommonBlockDict::~CommonBlockDict(), Data::~Data(), DataList::~DataList(), Declaration::~Declaration(), Definition::~Definition(), DefLoc::~DefLoc(), DefLocMap::~DefLocMap(), Dictionary< T >::~Dictionary(), DictionaryIter< T >::~DictionaryIter(), DirectedEdge::~DirectedEdge(), DominatorWorkSpace::~DominatorWorkSpace(), EntryPoints::~EntryPoints(), Equivalence::~Equivalence(), EquivalenceDict::~EquivalenceDict(), EquivalenceMember::~EquivalenceMember(), Expression::~Expression(), Format::~Format(), FormatDB::~FormatDB(), GSAPathExpr::~GSAPathExpr(), GSAPathMap::~GSAPathMap(), GSAWorkSpace::~GSAWorkSpace(), InlineObject::~InlineObject(), IntDef::~IntDef(), IPAStats::~IPAStats(), Listable::~Listable(), LongElem::~LongElem(), Monotonicity::~Monotonicity(), Namelist::~Namelist(), NamelistDict::~NamelistDict(), OmegaInfo::~OmegaInfo(), pDominatorWorkSpace::~pDominatorWorkSpace(), Permutation::~Permutation(), PhiPlaceDef::~PhiPlaceDef(), PredicateElem::~PredicateElem(), PredicateRepository::~PredicateRepository(), Program::~Program(), ProgramTag::~ProgramTag(), ProgramUnit::~ProgramUnit(), RefWrapper::~RefWrapper(), Relation::~Relation(), Relinkable::~Relinkable(), RelinkableDef::~RelinkableDef(), SharedBounds::~SharedBounds(), SharedDims::~SharedDims(), SimBiGraph::~SimBiGraph(), SimBiGraphIterator::~SimBiGraphIterator(), SimEdge::~SimEdge(), SimEdgeKernel::~SimEdgeKernel(), SimGraph::~SimGraph(), SimGraphIterator::~SimGraphIterator(), SSAProgramUnit::~SSAProgramUnit(), Statement::~Statement(), StmtList::~StmtList(), StmtRanges::~StmtRanges(), String::~String(), StringElem::~StringElem(), Symbol::~Symbol(), SymbolAccess::~SymbolAccess(), SymbolAccessMap::~SymbolAccessMap(), SymbolAccessRef::~SymbolAccessRef(), SymbolAccessRefMap::~SymbolAccessRefMap(), Symtab::~Symtab(), Timer::~Timer(), TranslateObject::~TranslateObject(), Type::~Type(), UBiEdge::~UBiEdge(), UBiGraph::~UBiGraph(), UBiGraphIterator::~UBiGraphIterator(), UEdge::~UEdge(), UGraph::~UGraph(), UGraphIterator::~UGraphIterator(), UntypedAssign::~UntypedAssign(), VDL::~VDL(), WorkSpace::~WorkSpace(), WorkSpaceStack::~WorkSpaceStack(), Wrapper::~Wrapper(), and Zombie::~Zombie().

void registry_on  ) 
 

Definition at line 65 of file mem_util.cc.

References _registry_on.

void registry_off  ) 
 

Definition at line 71 of file mem_util.cc.

References _registry_on.

void registry_print  ) 
 

Definition at line 77 of file mem_util.cc.

References _registry, classname(), RegistryElem::list(), and RegistryElem::size().

void registry_clear  ) 
 

Definition at line 108 of file mem_util.cc.

References _registry, _registry_on, BaseMapRoot::clear(), and RegistryElem::list().


Variable Documentation

Database<int, RegistryElem> _registry
 

This is the global instance registry for all classes - must be defined in the main program.

Activated by the C preprocessor constant CLASS_INSTANCE_REGISTRY.

Referenced by register_instance(), registry_clear(), registry_print(), and unregister_instance().

int _registry_on
 

Referenced by register_instance(), registry_clear(), registry_off(), registry_on(), and unregister_instance().

 © 1995-2005 University of Illinois, Urbana-Champaign. All rights reserved.  Fri Mar 25 23:06:23 2005