Lines Matching refs:LatticeKey

29 template <class LatticeKey> struct LatticeKeyInfo {
34 template <class LatticeKey, class LatticeVal,
35 class KeyInfo = LatticeKeyInfo<LatticeKey>>
47 template <class LatticeKey, class LatticeVal> class AbstractLatticeFunction {
68 virtual bool IsUntrackedValue(LatticeKey Key) { return false; } in IsUntrackedValue()
72 virtual LatticeVal ComputeLatticeVal(LatticeKey Key) { in ComputeLatticeVal()
92 DenseMap<LatticeKey, LatticeVal> &ChangedValues,
93 SparseSolver<LatticeKey, LatticeVal> &SS) = 0;
99 virtual void PrintLatticeKey(LatticeKey Key, raw_ostream &OS);
112 template <class LatticeKey, class LatticeVal, class KeyInfo>
117 AbstractLatticeFunction<LatticeKey, LatticeVal> *LatticeFunc;
120 DenseMap<LatticeKey, LatticeVal> ValueState;
139 AbstractLatticeFunction<LatticeKey, LatticeVal> *Lattice) in SparseSolver() argument
152 LatticeVal getExistingValueState(LatticeKey Key) const { in getExistingValueState()
160 LatticeVal getValueState(LatticeKey Key);
185 void UpdateState(LatticeKey Key, LatticeVal LV);
205 template <class LatticeKey, class LatticeVal>
206 void AbstractLatticeFunction<LatticeKey, LatticeVal>::PrintLatticeVal( in PrintLatticeVal()
218 template <class LatticeKey, class LatticeVal>
219 void AbstractLatticeFunction<LatticeKey, LatticeVal>::PrintLatticeKey( in PrintLatticeKey()
220 LatticeKey Key, raw_ostream &OS) { in PrintLatticeKey()
228 template <class LatticeKey, class LatticeVal, class KeyInfo>
230 SparseSolver<LatticeKey, LatticeVal, KeyInfo>::getValueState(LatticeKey Key) { in getValueState()
245 template <class LatticeKey, class LatticeVal, class KeyInfo>
246 void SparseSolver<LatticeKey, LatticeVal, KeyInfo>::UpdateState(LatticeKey Key, in UpdateState()
259 template <class LatticeKey, class LatticeVal, class KeyInfo>
260 void SparseSolver<LatticeKey, LatticeVal, KeyInfo>::MarkBlockExecutable( in MarkBlockExecutable()
268 template <class LatticeKey, class LatticeVal, class KeyInfo>
269 void SparseSolver<LatticeKey, LatticeVal, KeyInfo>::markEdgeExecutable( in markEdgeExecutable()
288 template <class LatticeKey, class LatticeVal, class KeyInfo>
289 void SparseSolver<LatticeKey, LatticeVal, KeyInfo>::getFeasibleSuccessors( in getFeasibleSuccessors()
370 template <class LatticeKey, class LatticeVal, class KeyInfo>
371 bool SparseSolver<LatticeKey, LatticeVal, KeyInfo>::isEdgeFeasible( in isEdgeFeasible()
384 template <class LatticeKey, class LatticeVal, class KeyInfo>
385 void SparseSolver<LatticeKey, LatticeVal, KeyInfo>::visitTerminator( in visitTerminator()
398 template <class LatticeKey, class LatticeVal, class KeyInfo>
399 void SparseSolver<LatticeKey, LatticeVal, KeyInfo>::visitPHINode(PHINode &PN) { in visitPHINode()
404 DenseMap<LatticeKey, LatticeVal> ChangedValues; in visitPHINode()
413 LatticeKey Key = KeyInfo::getLatticeKeyFromValue(&PN); in visitPHINode()
450 template <class LatticeKey, class LatticeVal, class KeyInfo>
451 void SparseSolver<LatticeKey, LatticeVal, KeyInfo>::visitInst(Instruction &I) { in visitInst()
459 DenseMap<LatticeKey, LatticeVal> ChangedValues; in visitInst()
469 template <class LatticeKey, class LatticeVal, class KeyInfo>
470 void SparseSolver<LatticeKey, LatticeVal, KeyInfo>::Solve() { in Solve()
501 template <class LatticeKey, class LatticeVal, class KeyInfo>
502 void SparseSolver<LatticeKey, LatticeVal, KeyInfo>::Print( in Print()
507 LatticeKey Key; in Print()