Lines Matching refs:CVPLatticeKey

52 using CVPLatticeKey = PointerIntPair<Value *, 2, IPOGrouping>;  typedef
115 : public AbstractLatticeFunction<CVPLatticeKey, CVPLatticeVal> {
123 CVPLatticeVal ComputeLatticeVal(CVPLatticeKey Key) override { in ComputeLatticeVal()
171 Instruction &I, DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in ComputeInstructionState() argument
172 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) override { in ComputeInstructionState() argument
203 void PrintLatticeKey(CVPLatticeKey Key, raw_ostream &OS) override { in PrintLatticeKey()
241 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitReturn() argument
242 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitReturn() argument
246 auto RegI = CVPLatticeKey(I.getReturnValue(), IPOGrouping::Register); in visitReturn()
247 auto RetF = CVPLatticeKey(F, IPOGrouping::Return); in visitReturn()
257 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitCallBase() argument
258 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitCallBase() argument
260 auto RegI = CVPLatticeKey(&CB, IPOGrouping::Register); in visitCallBase()
280 auto RetF = CVPLatticeKey(F, IPOGrouping::Return); in visitCallBase()
282 auto RegFormal = CVPLatticeKey(&A, IPOGrouping::Register); in visitCallBase()
284 CVPLatticeKey(CB.getArgOperand(A.getArgNo()), IPOGrouping::Register); in visitCallBase()
301 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitSelect() argument
302 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitSelect() argument
303 auto RegI = CVPLatticeKey(&I, IPOGrouping::Register); in visitSelect()
304 auto RegT = CVPLatticeKey(I.getTrueValue(), IPOGrouping::Register); in visitSelect()
305 auto RegF = CVPLatticeKey(I.getFalseValue(), IPOGrouping::Register); in visitSelect()
314 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitLoad() argument
315 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitLoad() argument
316 auto RegI = CVPLatticeKey(&I, IPOGrouping::Register); in visitLoad()
318 auto MemGV = CVPLatticeKey(GV, IPOGrouping::Memory); in visitLoad()
330 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitStore() argument
331 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitStore() argument
335 auto RegI = CVPLatticeKey(I.getValueOperand(), IPOGrouping::Register); in visitStore()
336 auto MemGV = CVPLatticeKey(GV, IPOGrouping::Memory); in visitStore()
344 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitInst() argument
345 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitInst() argument
349 auto RegI = CVPLatticeKey(&I, IPOGrouping::Register); in visitInst()
359 template <> struct LatticeKeyInfo<CVPLatticeKey> {
360 static inline Value *getValueFromLatticeKey(CVPLatticeKey Key) { in getValueFromLatticeKey()
363 static inline CVPLatticeKey getLatticeKeyFromValue(Value *V) { in getLatticeKeyFromValue()
364 return CVPLatticeKey(V, IPOGrouping::Register); in getLatticeKeyFromValue()
372 SparseSolver<CVPLatticeKey, CVPLatticeVal> Solver(&Lattice); in runCVP()
389 auto RegI = CVPLatticeKey(C->getCalledOperand(), IPOGrouping::Register); in runCVP()