StatementList Class Reference

#include <include/managed.h>

List of all members.


Detailed Description

Definition at line 117 of file managed.h.

Public Types

typedef std::list< Statement
* >::iterator 
iterator
typedef std::list< Statement
* >::reverse_iterator 
reverse_iterator

Public Member Functions

void append (StatementSet &sl)
void append (StatementList &sl)
void append (Statement *s)
iterator begin ()
void clear ()
void dump ()
iterator end ()
iterator erase (iterator first, iterator last)
iterator erase (iterator it)
bool exists (Statement *s)
bool existsOnLeft (Exp *loc)
AssignmentfindOnLeft (Exp *loc)
iterator insert (iterator it, Statement *s)
void makeCloneOf (StatementList &o)
void makeIsect (StatementList &a, LocationSet &b)
char * prints ()
reverse_iterator rbegin ()
bool remove (Statement *s)
void removeDefOf (Exp *loc)
reverse_iterator rend ()
unsigned size ()
 ~StatementList ()

Private Attributes

std::list< Statement * > slist


Member Typedef Documentation

typedef std::list<Statement*>::iterator StatementList::iterator
 

Definition at line 121 of file managed.h.

typedef std::list<Statement*>::reverse_iterator StatementList::reverse_iterator
 

Definition at line 122 of file managed.h.


Constructor & Destructor Documentation

StatementList::~StatementList  )  [inline]
 

Definition at line 123 of file managed.h.


Member Function Documentation

void StatementList::append StatementSet sl  ) 
 

Definition at line 540 of file managed.cpp.

References StatementSet::begin(), StatementSet::end(), and slist.

void StatementList::append StatementList sl  ) 
 

Definition at line 534 of file managed.cpp.

References slist.

void StatementList::append Statement s  )  [inline]
 

Definition at line 135 of file managed.h.

References slist.

Referenced by CallStatement::addDefine(), ReturnStatement::addReturn(), CallStatement::addSigParam(), CallStatement::appendArgument(), CallStatement::calcResults(), ReturnStatement::clone(), CallStatement::clone(), CallStatement::generateCode(), BasicBlock::getStatements(), Signature::getStdRetStmt(), UserProc::initialParameters(), CallingConvention::StdC::PentiumSignature::qualified(), CallStatement::rangeAnalysis(), UserProc::removeRedundantParameters(), Signature::setABIdefines(), CallStatement::setArguments(), CallingConvention::StdC::SparcSignature::setLibraryDefines(), CallingConvention::StdC::PPCSignature::setLibraryDefines(), CallStatement::setNumArguments(), CallStatement::setSigArguments(), StatementTest::testAddUsedLocsCall(), RtlTest::testSetConscripts(), StatementTest::testSubscriptVars(), and CallStatement::updateArguments().

iterator StatementList::begin  )  [inline]
 

Definition at line 125 of file managed.h.

References slist.

Referenced by ReturnStatement::accept(), CallStatement::accept(), CHLLCode::AddCallStatement(), UserProc::addImplicitAssigns(), CHLLCode::AddIndCallStatement(), UserProc::addParameterSymbols(), CHLLCode::AddReturnStatement(), Boomerang::alert_decompile_debug_point(), ReturnStatement::begin(), UserProc::branchAnalysis(), UserProc::castConst(), UserProc::checkForGainfulUse(), UserProc::clearRanges(), ReturnStatement::clone(), CallStatement::clone(), UserProc::conTypeAnalysis(), UserProc::countRefs(), ReturnStatement::definesLoc(), CallStatement::definesLoc(), ReturnStatement::dfaTypeAnalysis(), CallStatement::dfaTypeAnalysis(), UserProc::dfaTypeAnalysis(), UserProc::doesParamChainToCall(), CallStatement::eliminateDuplicateArgs(), ArgSourceProvider::exists(), CallStatement::findDefine(), UserProc::findPhiUnites(), UserProc::findPreserveds(), UserProc::fixCallAndPhiRefs(), UserProc::fixUglyBranches(), UserProc::fromSSAform(), CallStatement::genConstraints(), CallStatement::getArgumentExp(), CallStatement::getArgumentType(), ReturnStatement::getDefinitions(), CallStatement::getDefinitions(), UserProc::getStmtAtLex(), ReturnStatement::getTypeFor(), UserProc::insertParameter(), UserProc::isRetNonFakeUsed(), UserProc::logSuspectMemoryDefs(), UserProc::makeParamsImplicit(), UserProc::mapExpressionsToLocals(), UserProc::mapLocalsAndParams(), UserProc::mapParameters(), UserProc::mapTempsToLocals(), UserProc::nameParameterPhis(), XMLProgParser::persistToXML(), ReturnStatement::print(), CallStatement::print(), UserProc::printDFG(), UserProc::printParams(), UserProc::printUseGraph(), UserProc::processFloatConstants(), PentiumFrontEnd::processOverlapped(), UserProc::propagateStatements(), CallStatement::removeArgument(), CallStatement::removeDefine(), UserProc::removeMatchingAssignsIfPossible(), UserProc::removeNullStatements(), UserProc::removeRedundantParameters(), ReturnStatement::removeReturn(), UserProc::removeSpAssignsIfPossible(), UserProc::removeSubscriptsFromParameters(), Prog::removeUnusedGlobals(), UserProc::removeUnusedLocals(), UserProc::remUnusedStmtEtc(), UserProc::reverseStrengthReduction(), CallStatement::search(), CallStatement::searchAll(), CallStatement::searchAndReplace(), UserProc::searchAndReplace(), UserProc::searchRegularLocals(), CallStatement::setArgumentExp(), CallStatement::setArguments(), UserProc::setImplicitRef(), CallStatement::setNumArguments(), CallStatement::setNumber(), UserProc::setParamType(), ReturnStatement::setTypeFor(), ReturnStatement::simplify(), CallStatement::simplify(), StatementTest::testBypass(), UserProc::updateCallDefines(), ReturnStatement::updateReturns(), CallStatement::usesExp(), StmtSsaXformer::visit(), StmtSubscripter::visit(), UsedLocsVisitor::visit(), and StmtConscriptSetter::visit().

void StatementList::clear  )  [inline]
 

Definition at line 148 of file managed.h.

References slist.

Referenced by UserProc::findFinalParameters(), UserProc::initialParameters(), CallStatement::rangeAnalysis(), CallStatement::setArguments(), CallStatement::setSigArguments(), StatementTest::testSubscriptVars(), CallStatement::updateArguments(), ReturnStatement::updateModifieds(), and ReturnStatement::updateReturns().

void StatementList::dump  ) 
 

iterator StatementList::end  )  [inline]
 

Definition at line 126 of file managed.h.

References slist.

Referenced by ReturnStatement::accept(), CallStatement::accept(), UserProc::addImplicitAssigns(), CHLLCode::AddIndCallStatement(), UserProc::addParameterSymbols(), CHLLCode::AddReturnStatement(), Boomerang::alert_decompile_debug_point(), UserProc::branchAnalysis(), UserProc::castConst(), UserProc::checkForGainfulUse(), UserProc::clearRanges(), ReturnStatement::clone(), CallStatement::clone(), UserProc::conTypeAnalysis(), UserProc::countRefs(), ReturnStatement::definesLoc(), CallStatement::definesLoc(), ReturnStatement::dfaTypeAnalysis(), CallStatement::dfaTypeAnalysis(), UserProc::dfaTypeAnalysis(), UserProc::doesParamChainToCall(), CallStatement::eliminateDuplicateArgs(), ReturnStatement::end(), ArgSourceProvider::exists(), CallStatement::findDefine(), UserProc::findPhiUnites(), UserProc::findPreserveds(), UserProc::fixCallAndPhiRefs(), UserProc::fixUglyBranches(), UserProc::fromSSAform(), CallStatement::genConstraints(), ReturnStatement::getDefinitions(), CallStatement::getDefinitions(), UserProc::getStmtAtLex(), ReturnStatement::getTypeFor(), UserProc::insertParameter(), UserProc::isRetNonFakeUsed(), UserProc::logSuspectMemoryDefs(), UserProc::makeParamsImplicit(), UserProc::mapExpressionsToLocals(), UserProc::mapLocalsAndParams(), UserProc::mapParameters(), UserProc::mapTempsToLocals(), UserProc::nameParameterPhis(), ArgSourceProvider::nextArgLoc(), XMLProgParser::persistToXML(), ReturnStatement::print(), CallStatement::print(), UserProc::printDFG(), UserProc::printParams(), UserProc::printUseGraph(), UserProc::processFloatConstants(), PentiumFrontEnd::processOverlapped(), UserProc::propagateStatements(), CallStatement::removeDefine(), UserProc::removeMatchingAssignsIfPossible(), UserProc::removeNullStatements(), UserProc::removeRedundantParameters(), ReturnStatement::removeReturn(), UserProc::removeSpAssignsIfPossible(), UserProc::removeSubscriptsFromParameters(), Prog::removeUnusedGlobals(), UserProc::removeUnusedLocals(), UserProc::remUnusedStmtEtc(), UserProc::reverseStrengthReduction(), CallStatement::search(), CallStatement::searchAll(), CallStatement::searchAndReplace(), UserProc::searchAndReplace(), UserProc::searchRegularLocals(), CallStatement::setArguments(), UserProc::setImplicitRef(), CallStatement::setNumArguments(), CallStatement::setNumber(), UserProc::setParamType(), ReturnStatement::setTypeFor(), ReturnStatement::simplify(), CallStatement::simplify(), UserProc::updateCallDefines(), ReturnStatement::updateReturns(), CallStatement::usesExp(), StmtSsaXformer::visit(), StmtSubscripter::visit(), UsedLocsVisitor::visit(), and StmtConscriptSetter::visit().

iterator StatementList::erase iterator  first,
iterator  last
[inline]
 

Definition at line 143 of file managed.h.

References slist.

iterator StatementList::erase iterator  it  )  [inline]
 

Definition at line 142 of file managed.h.

References slist.

Referenced by CallStatement::eliminateDuplicateArgs(), ReturnStatement::erase(), CallStatement::removeArgument(), CallStatement::removeDefine(), removeDefOf(), ReturnStatement::removeReturn(), and CallStatement::setNumArguments().

bool StatementList::exists Statement s  ) 
 

bool StatementList::existsOnLeft Exp loc  ) 
 

Definition at line 622 of file managed.cpp.

References slist.

Referenced by UserProc::isLocalOrParam(), and CallStatement::updateArguments().

Assignment * StatementList::findOnLeft Exp loc  ) 
 

Definition at line 642 of file managed.cpp.

References UserProc::expFromSymbol(), Statement::getProc(), Exp::getSubExp1(), Exp::isSubscript(), NULL, and slist.

Referenced by CallStatement::getTypeFor(), and CallStatement::setTypeFor().

iterator StatementList::insert iterator  it,
Statement s
[inline]
 

Definition at line 144 of file managed.h.

References slist.

Referenced by UserProc::insertParameter().

void StatementList::makeCloneOf StatementList o  ) 
 

Definition at line 614 of file managed.cpp.

References slist.

void StatementList::makeIsect StatementList a,
LocationSet b
 

Definition at line 605 of file managed.cpp.

References LocationSet::exists(), and slist.

char * StatementList::prints  ) 
 

Definition at line 546 of file managed.cpp.

References slist.

reverse_iterator StatementList::rbegin  )  [inline]
 

Definition at line 127 of file managed.h.

References slist.

bool StatementList::remove Statement s  ) 
 

Definition at line 523 of file managed.cpp.

References slist.

void StatementList::removeDefOf Exp loc  ) 
 

Definition at line 632 of file managed.cpp.

References erase(), and slist.

Referenced by ReturnStatement::removeModified().

reverse_iterator StatementList::rend  )  [inline]
 

Definition at line 128 of file managed.h.

References slist.

unsigned StatementList::size  )  [inline]
 

Definition at line 124 of file managed.h.

References slist.

Referenced by CHLLCode::AddCallStatement(), CHLLCode::AddReturnStatement(), CallStatement::addSigParam(), CallStatement::getArgumentExp(), CallStatement::getArgumentType(), CallStatement::getNumArguments(), ReturnStatement::getNumReturns(), CallStatement::print(), Signature::setABIdefines(), CallStatement::setArgumentExp(), CallingConvention::StdC::SparcSignature::setLibraryDefines(), CallingConvention::StdC::PPCSignature::setLibraryDefines(), CallingConvention::StdC::PentiumSignature::setLibraryDefines(), CallingConvention::Win32Signature::setLibraryDefines(), and CallStatement::setNumArguments().


Member Data Documentation

std::list<Statement*> StatementList::slist [private]
 

Definition at line 118 of file managed.h.

Referenced by append(), begin(), clear(), end(), erase(), existsOnLeft(), findOnLeft(), insert(), makeCloneOf(), makeIsect(), prints(), rbegin(), remove(), removeDefOf(), rend(), and size().


The documentation for this class was generated from the following files:
Generated on Tue Sep 19 21:18:46 2006 for Boomerang by  doxygen 1.4.6