Lines Matching refs:RegUses
159 // Update RegUses. The data structure is not optimized for this purpose;
228 const RegUseTracker &RegUses) const;
345 const RegUseTracker &RegUses) const {
347 if (RegUses.isRegUsedByUsesOtherThan(ScaledReg, LUIdx))
351 if (RegUses.isRegUsedByUsesOtherThan(*I, LUIdx))
1017 void RecomputeRegs(size_t LUIdx, RegUseTracker &Reguses);
1073 /// RecomputeRegs - Recompute the Regs field, and update RegUses.
1074 void LSRUse::RecomputeRegs(size_t LUIdx, RegUseTracker &RegUses) {
1089 RegUses.DropRegister(*I, LUIdx);
1310 /// RegUses - Track which uses use which register candidates.
1311 RegUseTracker RegUses;
1928 // Update RegUses.
1929 RegUses.SwapAndDropUse(LUIdx, Uses.size());
2137 /// updating RegUses.
2140 RegUses.CountRegister(F.ScaledReg, LUIdx);
2143 RegUses.CountRegister(*I, LUIdx);
2163 SmallVector<const SCEV *, 8> Worklist(RegUses.begin(), RegUses.end());
2618 if (!F.hasRegsUsedByUsesOtherThan(LUIdx, RegUses))
2663 for (RegUseTracker::const_iterator I = RegUses.begin(), E = RegUses.end();
2672 UsedByIndicesMap[Reg] |= RegUses.getUsedByIndices(*I);
2701 const SmallBitVector &UsedByIndices = RegUses.getUsedByIndices(OrigReg);
2884 if (RegUses.isRegUsedByUsesOtherThan(Reg, LUIdx))
2888 RegUses.isRegUsedByUsesOtherThan(F.ScaledReg, LUIdx))
2924 LU.RecomputeRegs(LUIdx, RegUses);
3016 LU.RecomputeRegs(LUIdx, RegUses);
3090 LUThatHas->RecomputeRegs(LUThatHas - &Uses.front(), RegUses);
3142 for (RegUseTracker::const_iterator I = RegUses.begin(), E = RegUses.end();
3150 unsigned Count = RegUses.getUsedByIndices(Reg).count();
3183 LU.RecomputeRegs(LUIdx, RegUses);
3764 RegUses.clear();