Lines Matching defs:CVPLatticeKey

53 using CVPLatticeKey = PointerIntPair<Value *, 2, IPOGrouping>;
116 : public AbstractLatticeFunction<CVPLatticeKey, CVPLatticeVal> {
123 /// Compute and return a CVPLatticeVal for the given CVPLatticeKey.
124 CVPLatticeVal ComputeLatticeVal(CVPLatticeKey Key) override {
173 SmallDenseMap<CVPLatticeKey, CVPLatticeVal, 16> &ChangedValues,
174 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) override {
204 /// Print the given CVPLatticeKey to the specified stream.
205 void PrintLatticeKey(CVPLatticeKey Key, raw_ostream &OS) override {
244 SmallDenseMap<CVPLatticeKey, CVPLatticeVal, 16> &ChangedValues,
245 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) {
249 auto RegI = CVPLatticeKey(I.getReturnValue(), IPOGrouping::Register);
250 auto RetF = CVPLatticeKey(F, IPOGrouping::Return);
261 SmallDenseMap<CVPLatticeKey, CVPLatticeVal, 16> &ChangedValues,
262 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) {
264 auto RegI = CVPLatticeKey(&CB, IPOGrouping::Register);
284 auto RetF = CVPLatticeKey(F, IPOGrouping::Return);
286 auto RegFormal = CVPLatticeKey(&A, IPOGrouping::Register);
288 CVPLatticeKey(CB.getArgOperand(A.getArgNo()), IPOGrouping::Register);
306 SmallDenseMap<CVPLatticeKey, CVPLatticeVal, 16> &ChangedValues,
307 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) {
308 auto RegI = CVPLatticeKey(&I, IPOGrouping::Register);
309 auto RegT = CVPLatticeKey(I.getTrueValue(), IPOGrouping::Register);
310 auto RegF = CVPLatticeKey(I.getFalseValue(), IPOGrouping::Register);
319 SmallDenseMap<CVPLatticeKey, CVPLatticeVal, 16> &ChangedValues,
320 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) {
321 auto RegI = CVPLatticeKey(&I, IPOGrouping::Register);
323 auto MemGV = CVPLatticeKey(GV, IPOGrouping::Memory);
336 SmallDenseMap<CVPLatticeKey, CVPLatticeVal, 16> &ChangedValues,
337 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) {
341 auto RegI = CVPLatticeKey(I.getValueOperand(), IPOGrouping::Register);
342 auto MemGV = CVPLatticeKey(GV, IPOGrouping::Memory);
350 SmallDenseMap<CVPLatticeKey, CVPLatticeVal, 16> &ChangedValues,
351 SparseSolver<CVPLatticeKey, CVPLatticeVal> &SS) {
355 auto RegI = CVPLatticeKey(&I, IPOGrouping::Register);
365 template <> struct LatticeKeyInfo<CVPLatticeKey> {
366 static inline Value *getValueFromLatticeKey(CVPLatticeKey Key) {
369 static inline CVPLatticeKey getLatticeKeyFromValue(Value *V) {
370 return CVPLatticeKey(V, IPOGrouping::Register);
378 SparseSolver<CVPLatticeKey, CVPLatticeVal> Solver(&Lattice);
395 auto RegI = CVPLatticeKey(C->getCalledOperand(), IPOGrouping::Register);