Lines Matching refs:VNI
212 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI);
339 for (auto *VNI : SnipLI.vnis()) { in isSnippet() local
340 MachineInstr *MI = LIS.getInstructionFromIndex(VNI->def); in isSnippet()
437 VNInfo *VNI = SpillLI.getVNInfoAt(Idx.getRegSlot()); in hoistSpillInsideBB() local
438 assert(VNI && VNI->def == Idx.getRegSlot() && "Not defined by copy"); in hoistSpillInsideBB()
494 void InlineSpiller::eliminateRedundantSpills(LiveInterval &SLI, VNInfo *VNI) { in eliminateRedundantSpills() argument
495 assert(VNI && "Missing value"); in eliminateRedundantSpills()
497 WorkList.push_back(std::make_pair(&SLI, VNI)); in eliminateRedundantSpills()
502 std::tie(LI, VNI) = WorkList.pop_back_val(); in eliminateRedundantSpills()
504 LLVM_DEBUG(dbgs() << "Checking redundant spills for " << VNI->id << '@' in eliminateRedundantSpills()
505 << VNI->def << " in " << *LI << '\n'); in eliminateRedundantSpills()
512 StackInt->MergeValueInAsValue(*LI, VNI, StackInt->getValNumInfo(0)); in eliminateRedundantSpills()
521 if (LI->getVNInfoAt(Idx) != VNI) in eliminateRedundantSpills()
558 void InlineSpiller::markValueUsed(LiveInterval *LI, VNInfo *VNI) { in markValueUsed() argument
560 WorkList.push_back(std::make_pair(LI, VNI)); in markValueUsed()
562 std::tie(LI, VNI) = WorkList.pop_back_val(); in markValueUsed()
563 if (!UsedValues.insert(VNI).second) in markValueUsed()
566 if (VNI->isPHIDef()) { in markValueUsed()
567 MachineBasicBlock *MBB = LIS.getMBBFromIndex(VNI->def); in markValueUsed()
577 MachineInstr *MI = LIS.getInstructionFromIndex(VNI->def); in markValueUsed()
582 VNInfo *SnipVNI = SnipLI.getVNInfoAt(VNI->def.getRegSlot(true)); in markValueUsed()
741 for (VNInfo *VNI : LI.vnis()) { in reMaterializeAll()
742 if (VNI->isUnused() || VNI->isPHIDef() || UsedValues.count(VNI)) in reMaterializeAll()
744 MachineInstr *MI = LIS.getInstructionFromIndex(VNI->def); in reMaterializeAll()
1177 if (VNInfo *VNI = OldLI.getVNInfoAt(Idx.getRegSlot(true))) in spillAroundUses() local
1178 if (SlotIndex::isSameInstr(Idx, VNI->def)) in spillAroundUses()
1179 Idx = VNI->def; in spillAroundUses()
1364 VNInfo *VNI = LI.getVNInfoAt(Idx); in isSpillCandBB() local
1365 if (VNI) { in isSpillCandBB()