#include <include/dataflow.h>
This class collects all definitions that reach the statement that contains this collector.
Definition at line 145 of file dataflow.h.
Public Types | |
typedef AssignSet::iterator | iterator |
Public Member Functions | |
iterator | begin () |
void | clear () |
DefCollector () | |
Constructor. | |
void | dump () |
Assign * | dumpAddrOfFourth () |
iterator | end () |
bool | existsOnLeft (Exp *e) |
Exp * | findDefFor (Exp *e) |
Find the definition for a location. | |
void | insert (Assign *a) |
bool | isInitialised () |
void | makeCloneOf (DefCollector &other) |
makeCloneOf(): clone the given Collector into this one | |
void | print (std::ostream &os, bool html=false) |
char * | prints () |
void | searchReplaceAll (Exp *from, Exp *to, bool &change) |
Search and replace all occurrences. | |
void | updateDefs (std::map< Exp *, std::stack< Statement * >, lessExpStar > &Stacks, UserProc *proc) |
Private Attributes | |
AssignSet | defs |
The set of definitions. | |
bool | initialised |
|
Definition at line 195 of file dataflow.h. |
|
Constructor.
Definition at line 159 of file dataflow.h. |
|
Definition at line 196 of file dataflow.h. References AssignSet::begin(), and defs. Referenced by CallStatement::accept(), ReturnStatement::accept(), makeCloneOf(), ReturnStatement::searchAndReplace(), CallStatement::searchAndReplace(), CallStatement::updateArguments(), and UsedLocsVisitor::visit(). |
|
Definition at line 174 of file dataflow.h. References AssignSet::clear(), defs, and initialised. |
|
Definition at line 678 of file dataflow.cpp. References print(). |
|
|
|
Definition at line 197 of file dataflow.h. References defs, and AssignSet::end(). Referenced by CallStatement::accept(), ReturnStatement::accept(), makeCloneOf(), ArgSourceProvider::nextArgLoc(), ReturnStatement::searchAndReplace(), CallStatement::searchAndReplace(), CallStatement::updateArguments(), and UsedLocsVisitor::visit(). |
|
Definition at line 198 of file dataflow.h. References AssignSet::definesLoc(), and defs. Referenced by insert(). |
|
Find the definition for a location. If not found, return NULL Definition at line 608 of file dataflow.cpp. Referenced by ReturnStatement::findDefFor(), CallStatement::findDefFor(), and CallStatement::setTypeFor(). |
|
Definition at line 734 of file dataflow.cpp. References defs, existsOnLeft(), Assignment::getLeft(), and AssignSet::insert(). Referenced by updateDefs(). |
|
Definition at line 169 of file dataflow.h. References initialised. Referenced by CallStatement::localiseExp(). |
|
makeCloneOf(): clone the given Collector into this one
Definition at line 691 of file dataflow.cpp. References begin(), AssignSet::clear(), defs, end(), initialised, and AssignSet::insert(). Referenced by ReturnStatement::clone(). |
|
Definition at line 631 of file dataflow.cpp. References AssignSet::begin(), DEFCOL_COLS, defs, AssignSet::end(), and print(). |
|
Definition at line 664 of file dataflow.cpp. References debug_buffer, DEBUG_BUFSIZE, and print(). |
|
Search and replace all occurrences.
Definition at line 698 of file dataflow.cpp. References AssignSet::begin(), defs, AssignSet::end(), and to. |
|
Definition at line 593 of file dataflow.cpp. References insert(), and Statement::setProc(). |
|
The set of definitions.
Definition at line 154 of file dataflow.h. Referenced by begin(), clear(), end(), existsOnLeft(), insert(), makeCloneOf(), print(), and searchReplaceAll(). |
|
Definition at line 150 of file dataflow.h. Referenced by clear(), isInitialised(), and makeCloneOf(). |