Lines Matching defs:Group
892 const InterleaveGroup<Instruction> &Group) {
894 if (Group.getNumMembers() == Group.getFactor())
898 assert(!Group.isReverse() && "Reversed group not supported.");
902 for (unsigned j = 0; j < Group.getFactor(); ++j) {
903 unsigned HasMember = Group.getMember(j) ? 1 : 0;
1282 auto DependentMember = [&](InterleaveGroup<Instruction> *Group,
1284 for (uint32_t Index = 0; Index < Group->getFactor(); ++Index) {
1285 Instruction *MemberOfGroupB = Group->getMember(Index);
1405 auto InvalidateGroupIfMemberMayWrap = [&](InterleaveGroup<Instruction> *Group,
1408 Instruction *Member = Group->getMember(Index);
1409 assert(Member && "Group member does not exist");
1418 releaseGroup(Group);
1436 for (auto *Group : LoadGroups) {
1440 if (Group->getNumMembers() == Group->getFactor())
1448 if (InvalidateGroupIfMemberMayWrap(Group, 0, std::string("first")))
1450 if (Group->getMember(Group->getFactor() - 1))
1451 InvalidateGroupIfMemberMayWrap(Group, Group->getFactor() - 1,
1459 if (Group->isReverse()) {
1463 releaseGroup(Group);
1472 for (auto *Group : StoreGroups) {
1476 if (Group->getNumMembers() == Group->getFactor())
1486 releaseGroup(Group);
1496 if (InvalidateGroupIfMemberMayWrap(Group, 0, std::string("first")))
1498 for (int Index = Group->getFactor() - 1; Index > 0; Index--)
1499 if (Group->getMember(Index)) {
1500 InvalidateGroupIfMemberMayWrap(Group, Index, std::string("last"));
1514 bool ReleasedGroup = InterleaveGroups.remove_if([&](auto *Group) {
1515 if (!Group->requiresScalarEpilogue())
1522 releaseGroupWithoutRemovingFromSet(Group);