154 static const int uninitialized=0;
155 static const int initialized=1;
160 std::vector<Lattice*> lattices;
167 void init(
const std::vector<Lattice*>& lattices);
172 const std::vector<Lattice*>& getLattices();
175 void copy_lattices(std::vector<Lattice*>& newLattices)
const;
178 virtual void copy(
Lattice* that);
182 virtual bool meetUpdate(
Lattice* that);
184 virtual bool operator==(
Lattice* that);
186 int getLevel() {
return level; }
200 virtual std::string str(std::string indent=
"");
270 std::map<varID, Lattice*> constVarLattices;
279 static std::map<Function, std::map<varID, int> > varLatticeIndex;
297 const std::map<varID, Lattice*>& constVarLattices,
Lattice* allVarLattice,
309 void setUpVarLatticeIndex();
318 varIDSet& getGlobalVars()
const;
319 static varIDSet& getGlobalVars(
bool includeScalars,
bool includeArrays);
322 varIDSet& getLocalVars(
Function func)
const;
325 varIDSet& getRefVars(
Function func)
const;
328 varIDSet getVisibleVars(
Function func)
const;
342 void remapVars(
const std::map<varID, varID>& varNameMap,
const Function& newFunc);
349 void incorporateVars(
Lattice* that);
362 std::string str(std::string indent=
"");