Lines Matching defs:VRI

1103       ValueRotInfo &VRI = ValueRots[std::make_pair(BG.V, RLAmtKey)];
1104 VRI.V = BG.V;
1105 VRI.RLAmt = BG.RLAmt;
1106 VRI.Repl32 = BG.Repl32;
1107 VRI.NumGroups += 1;
1108 VRI.FirstGroupStartIdx = std::min(VRI.FirstGroupStartIdx, BG.StartIdx);
1279 for (ValueRotInfo &VRI : ValueRotsVec) {
1282 if (!Bits[i].hasValue() || Bits[i].getValue() != VRI.V)
1284 if (RLAmt[i] != VRI.RLAmt)
1293 bool NeedsRotate = VRI.RLAmt != 0;
1315 DEBUG(dbgs() << "\t\trotation groups for " << VRI.V.getNode() <<
1316 " RL: " << VRI.RLAmt << ":" <<
1318 " using rotates: " << VRI.NumGroups << "\n");
1320 if (NumAndInsts >= VRI.NumGroups)
1328 if (VRI.RLAmt) {
1330 { VRI.V, getI32Imm(VRI.RLAmt, dl), getI32Imm(0, dl),
1335 VRot = VRI.V;
1363 eraseMatchingBitGroups([VRI](const BitGroup &BG) {
1364 return BG.V == VRI.V && BG.RLAmt == VRI.RLAmt;
1383 ValueRotInfo &VRI = ValueRotsVec[0];
1384 if (VRI.RLAmt) {
1387 { VRI.V, getI32Imm(VRI.RLAmt, dl), getI32Imm(0, dl),
1392 Res = VRI.V;
1396 eraseMatchingBitGroups([VRI](const BitGroup &BG) {
1397 return BG.V == VRI.V && BG.RLAmt == VRI.RLAmt;
1592 for (ValueRotInfo &VRI : ValueRotsVec) {
1600 auto MatchingBG = [VRI](const BitGroup &BG) {
1601 if (VRI.V != BG.V)
1605 if (!VRI.Repl32 && BG.Repl32) {
1613 } else if (VRI.Repl32 != BG.Repl32) {
1617 if (VRI.RLAmt != EffRLAmt)
1646 bool NeedsRotate = VRI.RLAmt || (VRI.Repl32 && !isUInt<32>(Mask));
1667 DEBUG(dbgs() << "\t\trotation groups for " << VRI.V.getNode() <<
1668 " RL: " << VRI.RLAmt << (VRI.Repl32 ? " (32):" : ":") <<
1690 if (VRI.RLAmt || (VRI.Repl32 && !isUInt<32>(Mask)))
1691 VRot = SelectRotMask64(VRI.V, dl, VRI.RLAmt, VRI.Repl32,
1692 VRI.Repl32 ? 31 : 0, VRI.Repl32 ? 30 : 63);
1694 VRot = VRI.V;
1750 // groups will come first, and so the VRI representing the largest number
1762 ValueRotInfo &VRI = ValueRotsVec[MaxGroupsIdx];
1764 if (VRI.RLAmt) {
1766 } else if (VRI.Repl32) {
1768 if (BG.V != VRI.V || BG.RLAmt != VRI.RLAmt ||
1769 BG.Repl32 != VRI.Repl32)
1783 Res = SelectRotMask64(VRI.V, dl, VRI.RLAmt, VRI.Repl32,
1784 VRI.Repl32 ? 31 : 0, VRI.Repl32 ? 30 : 63,
1787 Res = VRI.V;
1791 eraseMatchingBitGroups([VRI](const BitGroup &BG) {
1792 return BG.V == VRI.V && BG.RLAmt == VRI.RLAmt &&
1793 BG.Repl32 == VRI.Repl32;