| 
| 
  | ConstrGraph (const Function &func, const DataflowNode &n, const NodeState &state, LiveDeadVarsAnalysis *ldva, FiniteVarsExprsProductLattice *divL, bool initialized=true, std::string indent="") | 
|   | 
| 
  | ConstrGraph (const Function &func, const DataflowNode &n, const NodeState &state, LiveDeadVarsAnalysis *ldva, const std::map< std::pair< std::string, void * >, FiniteVarsExprsProductLattice * > &divL, bool initialized=true, std::string indent="") | 
|   | 
| 
  | ConstrGraph (const Function &func, const std::set< NodeDesc > &nodes, const NodeState &state, LiveDeadVarsAnalysis *ldva, const std::map< std::pair< std::string, void * >, FiniteVarsExprsProductLattice * > &divL, bool initialized=true, std::string indent="") | 
|   | 
| 
  | ConstrGraph (ConstrGraph &that, bool initialized=true, std::string indent="") | 
|   | 
| 
  | ConstrGraph (const ConstrGraph *that, bool initialized=true, std::string indent="") | 
|   | 
| 
  | ConstrGraph (const std::set< varAffineInequality > &ineqs, const Function &func, const DataflowNode &n, const NodeState &state, LiveDeadVarsAnalysis *ldva, FiniteVarsExprsProductLattice *divL, std::string indent="") | 
|   | 
| 
  | ConstrGraph (const std::set< varAffineInequality > &ineqs, const Function &func, const DataflowNode &n, const NodeState &state, LiveDeadVarsAnalysis *ldva, const std::map< std::pair< std::string, void * >, FiniteVarsExprsProductLattice * > &divL, std::string indent="") | 
|   | 
| 
void  | initialize (std::string indent="") | 
|   | 
| void  | initialize () | 
|   | 
| 
FiniteVarsExprsProductLattice *  | getDivLattice (const varID &var, std::string indent="") | 
|   | 
| 
std::string  | DivLattices2Str (std::string indent="") | 
|   | 
| 
bool  | addVar (const varID &scalar, std::string indent="") | 
|   | 
| 
bool  | removeVar (const varID &scalar, std::string indent="") | 
|   | 
| 
const varIDSet &  | getVars () const | 
|   | 
| 
varIDSet &  | getVarsMod () | 
|   | 
| void  | copy (Lattice *that) | 
|   | 
| Lattice *  | copy () const | 
|   | 
| 
bool  | copyFrom (ConstrGraph &that, std::string indent="") | 
|   | 
| 
bool  | copyFromReplace (ConstrGraph &that, varID varTo, varID varFrom, std::string indent="") | 
|   | 
| 
bool  | copyVar (const ConstrGraph &that, const varID &var) | 
|   | 
| 
bool  | copyConstraints (ConstrGraph &that, std::string indent="") | 
|   | 
| 
bool  | copyConstraintsReplace (ConstrGraph &that, varID varTo, varID varFrom, std::string indent="") | 
|   | 
| 
void  | eraseConstraints (bool noBottomCheck=false, std::string indent="") | 
|   | 
| 
bool  | eraseVarConstr (const varID &eraseVar, bool noConsistencyCheck=false, std::string indent="") | 
|   | 
| 
bool  | eraseVarConstrNoDiv (const varID &eraseVar, bool noConsistencyCheck=false, std::string indent="") | 
|   | 
| 
bool  | eraseVarConstrNoDivVars (const varID &eraseVar, bool noConsistencyCheck=false, std::string indent="") | 
|   | 
| 
bool  | replaceVar (const varID &origVar, const varID &newVar, bool noConsistencyCheck=false, std::string indent="") | 
|   | 
| 
bool  | copyAnnotVars (std::string srcAnnotName, void *srcAnnotVal, std::string tgtAnnotName, void *tgtAnnotVal, const std::set< std::pair< std::string, void * > > &noCopyAnnots, const std::set< varID > &noCopyVars, std::string indent="") | 
|   | 
| 
bool  | mergeAnnotVars (const std::string &finalAnnotName, void *finalAnnotVal, const std::string &remAnnotName, void *remAnnotVal, const std::set< std::pair< std::string, void * > > &noCopyAnnots, const std::set< varID > &noCopyVars, std::string indent="") | 
|   | 
| void  | remapVars (const std::map< varID, varID > &, const Function &) | 
|   | 
| void  | incorporateVars (Lattice *) | 
|   | 
| Lattice *  | project (SgExpression *) | 
|   | 
| bool  | unProject (SgExpression *, Lattice *exprState) | 
|   | 
| 
ConstrGraph *  | getProjection (const varIDSet &focusVars, std::string indent="") | 
|   | 
| 
bool  | removeVarAnnot (std::string annotName, void *annot, std::string indent="") | 
|   | 
| 
bool  | replaceVarAnnot (std::string oldAnnotName, void *oldAnnot, std::string newAnnotName, void *newAnnot, std::string indent="") | 
|   | 
| 
bool  | addVarAnnot (std::string tgtAnnotName, void *tgtAnnotVal, std::string newAnnotName, void *newAnnotVal, std::string indent="") | 
|   | 
| 
bool  | negate (std::string indent="") | 
|   | 
| 
bool  | assign (const varAffineInequality &cond, std::string indent="") | 
|   | 
| 
bool  | assign (varID x, varID y, const affineInequality &ineq, std::string indent="") | 
|   | 
| 
bool  | assign (varID x, varID y, int a, int b, int c, std::string indent="") | 
|   | 
| 
bool  | assignBot (varID var, std::string indent="") | 
|   | 
| 
bool  | assignTop (varID var, std::string indent="") | 
|   | 
| 
bool  | assertCond (const varAffineInequality &cond, std::string indent="") | 
|   | 
| 
bool  | assertCond (const varID &x, const varID &y, const affineInequality &ineq, std::string indent="") | 
|   | 
| 
bool  | assertCond (const varID &x, const varID &y, int a, int b, int c, std::string indent="") | 
|   | 
| 
bool  | assertEq (const varAffineInequality &cond, std::string indent="") | 
|   | 
| 
bool  | assertEq (varID x, varID y, const affineInequality &ineq, std::string indent="") | 
|   | 
| 
bool  | assertEq (const varID &x, const varID &y, int a=1, int b=1, int c=0, std::string indent="") | 
|   | 
| 
affineInequality::signs  | getVarSign (const varID &var, std::string indent="") | 
|   | 
| 
bool  | isEqZero (const varID &var, std::string indent="") | 
|   | 
| 
bool  | eqVars (const varID &v1, const varID &v2, int a=1, int b=1, int c=0, std::string indent="") | 
|   | 
| bool  | eqVars (const varID &v1, const varID &v2, std::string indent="") | 
|   | 
| 
bool  | isEqVars (const varID &v1, const varID &v2, int &a, int &b, int &c, std::string indent="") | 
|   | 
| 
std::map< varID, affineInequality >  | getEqVars (varID var, std::string indent="") | 
|   | 
| 
bool  | lteVars (const varID &v1, const varID &v2, int a=1, int b=1, int c=0, std::string indent="") | 
|   | 
| 
bool  | ltVars (const varID &v1, const varID &v2, int a=1, int b=1, int c=0, std::string indent="") | 
|   | 
| 
leIterator  | leBegin (const varID &y) | 
|   | 
| 
leIterator  | leEnd () | 
|   | 
| 
geIterator  | geBegin (const varID &y) | 
|   | 
| 
geIterator  | geEnd () | 
|   | 
| 
bool  | widenUpdate (InfiniteLattice *that, std::string indent="") | 
|   | 
| bool  | widenUpdate (InfiniteLattice *that) | 
|   | 
| 
bool  | widenUpdateLimitToThat (InfiniteLattice *that, std::string indent="") | 
|   | 
| 
bool  | widenUpdate_ex (InfiniteLattice *that_arg, bool limitToThat, std::string indent="") | 
|   | 
| 
bool  | meetUpdate (Lattice *that, std::string indent="") | 
|   | 
| bool  | meetUpdate (Lattice *that) | 
|   | 
| 
bool  | meetUpdateLimitToThat (InfiniteLattice *that, std::string indent="") | 
|   | 
| 
bool  | meetUpdate_ex (Lattice *that_arg, bool limitToThat, std::string indent="") | 
|   | 
| 
bool  | orUpd (LogicalCond &that, std::string indent="") | 
|   | 
| bool  | orUpd (LogicalCond &that) | 
|   | 
| 
bool  | andUpd (LogicalCond &that, std::string indent="") | 
|   | 
| bool  | andUpd (LogicalCond &that) | 
|   | 
| 
bool  | andUpd (ConstrGraph *that, std::string indent="") | 
|   | 
| bool  | andUpd (ConstrGraph *that) | 
|   | 
| 
bool  | OrAndWidenUpdate (ConstrGraph *that, bool meet, bool OR, bool limitToThat, std::string indent="") | 
|   | 
| 
void  | OrAndWidenUpdate_XinThisNotThat (bool OR, bool limitToThat, std::map< varID, std::map< varID, affineInequality > >::iterator &itThisX, bool &modified, std::string indent="") | 
|   | 
| 
void  | OrAndWidenUpdate_XinThatNotThis (bool OR, bool limitToThat, ConstrGraph *that, std::map< varID, std::map< varID, affineInequality > >::iterator &itThatX, std::map< varID, std::map< varID, affineInequality > > &additionsToThis, bool &modified, std::string indent="") | 
|   | 
| 
void  | OrAndWidenUpdate_YinThisNotThat (bool OR, bool limitToThat, std::map< varID, std::map< varID, affineInequality > >::iterator &itThisX, std::map< varID, affineInequality >::iterator &itThisY, bool &modified, std::string indent="") | 
|   | 
| 
void  | OrAndWidenUpdate_YinThatNotThis (bool OR, bool limitToThat, std::map< varID, std::map< varID, affineInequality > >::iterator &itThatX, std::map< varID, affineInequality >::iterator &itThatY, std::map< varID, affineInequality > &additionsToThis, bool &modified, std::string indent="") | 
|   | 
| 
bool  | transitiveClosure (std::string indent="") | 
|   | 
| 
bool  | localTransClosure (const varID &tgtVar, std::string indent="") | 
|   | 
| 
bool  | addDivL (FiniteVarsExprsProductLattice *divLattice, std::string annotName, void *annot, std::string indent="") | 
|   | 
| 
bool  | containsVar (const varID &var, std::string indent="") | 
|   | 
| 
affineInequality *  | getVal (varID x, varID y, std::string indent="") | 
|   | 
| 
bool  | setVal (varID x, varID y, int a, int b, int c, std::string indent="") | 
|   | 
| 
bool  | setVal (varID x, varID y, const affineInequality &ineq, std::string indent="") | 
|   | 
| 
bool  | setToUninitialized_KeepState (std::string indent="") | 
|   | 
| 
bool  | setToBottom (std::string indent="") | 
|   | 
| 
bool  | setToConstrKnown (constrTypes ct, bool eraseCurConstr=true, std::string indent="") | 
|   | 
| 
bool  | setToInconsistent (std::string indent="") | 
|   | 
| 
bool  | setToTop (bool onlyIfNotInit=false, std::string indent="") | 
|   | 
| 
std::pair< levels, constrTypes >  | getLevel (bool noConsistencyCheck=false, std::string indent="") | 
|   | 
| 
bool  | isSelfConsistent (bool noConsistencyCheck=false, std::string indent="") | 
|   | 
| 
bool  | hasConsistentConstraints (bool noConsistencyCheck=false, std::string indent="") | 
|   | 
| 
bool  | isMaximalState (bool noConsistencyCheck=false, std::string indent="") | 
|   | 
| std::string  | str (std::string indent="") | 
|   | 
| 
void  | varSetStatusToStream (const std::set< varID > &vars, std::ostringstream &outs, bool &needEndl, std::string indent="") | 
|   | 
| 
std::string  | str (std::string indent, bool useIsBottom) | 
|   | 
| std::string  | toDOT (std::string graphName) | 
|   | 
| 
std::string  | toDOT (std::string graphName, std::set< varID > &focusVars) | 
|   | 
| 
bool  | operator!= (ConstrGraph &that) | 
|   | 
| 
bool  | operator== (ConstrGraph &that) | 
|   | 
| bool  | operator== (Lattice *that) | 
|   | 
| 
bool  | operator<<= (ConstrGraph &that) | 
|   | 
| 
bool  | mustOutsideRange (varID x, int b, int c, varID y, std::string indent="") | 
|   | 
| 
bool  | mayTrue (std::string indent="") | 
|   | 
| bool  | mayTrue () | 
|   | 
| 
void  | beginTransaction (std::string indent="") | 
|   | 
| 
void  | endTransaction (std::string indent="") | 
|   | 
| bool  | finiteLattice () | 
|   | Check if this lattice is finite or not.  
  | 
|   | 
| bool  | operator!= (Lattice *that) | 
|   | 
| bool  | operator== (Lattice &that) | 
|   | 
| bool  | operator!= (Lattice &that) | 
|   |