Lines Matching refs:CVPLatticeKey

54 using CVPLatticeKey = PointerIntPair<Value *, 2, IPOGrouping>;  typedef
117 : public AbstractLatticeFunction<CVPLatticeKey, CVPLatticeVal> {
125 CVPLatticeVal ComputeLatticeVal(CVPLatticeKey Key) override { in ComputeLatticeVal()
173 Instruction &I, DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in ComputeInstructionState() argument
174 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) override { in ComputeInstructionState() argument
205 void PrintLatticeKey(CVPLatticeKey Key, raw_ostream &OS) override { in PrintLatticeKey()
243 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitReturn() argument
244 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitReturn() argument
248 auto RegI = CVPLatticeKey(I.getReturnValue(), IPOGrouping::Register); in visitReturn()
249 auto RetF = CVPLatticeKey(F, IPOGrouping::Return); in visitReturn()
259 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitCallBase() argument
260 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitCallBase() argument
262 auto RegI = CVPLatticeKey(&CB, IPOGrouping::Register); in visitCallBase()
282 auto RetF = CVPLatticeKey(F, IPOGrouping::Return); in visitCallBase()
284 auto RegFormal = CVPLatticeKey(&A, IPOGrouping::Register); in visitCallBase()
286 CVPLatticeKey(CB.getArgOperand(A.getArgNo()), IPOGrouping::Register); in visitCallBase()
303 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitSelect() argument
304 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitSelect() argument
305 auto RegI = CVPLatticeKey(&I, IPOGrouping::Register); in visitSelect()
306 auto RegT = CVPLatticeKey(I.getTrueValue(), IPOGrouping::Register); in visitSelect()
307 auto RegF = CVPLatticeKey(I.getFalseValue(), IPOGrouping::Register); in visitSelect()
316 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitLoad() argument
317 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitLoad() argument
318 auto RegI = CVPLatticeKey(&I, IPOGrouping::Register); in visitLoad()
320 auto MemGV = CVPLatticeKey(GV, IPOGrouping::Memory); in visitLoad()
332 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitStore() argument
333 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitStore() argument
337 auto RegI = CVPLatticeKey(I.getValueOperand(), IPOGrouping::Register); in visitStore()
338 auto MemGV = CVPLatticeKey(GV, IPOGrouping::Memory); in visitStore()
346 DenseMap<CVPLatticeKey, CVPLatticeVal> &ChangedValues, in visitInst() argument
347 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) { in visitInst() argument
351 auto RegI = CVPLatticeKey(&I, IPOGrouping::Register); in visitInst()
361 template <> struct LatticeKeyInfo<CVPLatticeKey> {
362 static inline Value *getValueFromLatticeKey(CVPLatticeKey Key) { in getValueFromLatticeKey()
365 static inline CVPLatticeKey getLatticeKeyFromValue(Value *V) { in getLatticeKeyFromValue()
366 return CVPLatticeKey(V, IPOGrouping::Register); in getLatticeKeyFromValue()
374 SparseSolver<CVPLatticeKey, CVPLatticeVal> Solver(&Lattice); in runCVP()
391 auto RegI = CVPLatticeKey(C->getCalledOperand(), IPOGrouping::Register); in runCVP()