Lines Matching defs:Group
152 /// \param Group Consecutive CMOV instructions to be converted into branch.
153 void convertCmovInstsToBranches(SmallVectorImpl<MachineInstr *> &Group) const;
197 for (auto &Group : AllCmovGroups) {
200 llvm::none_of(Group, [&](MachineInstr *I) { return I->mayLoad(); }))
207 convertCmovInstsToBranches(Group);
262 for (auto &Group : CmovInstGroups)
263 convertCmovInstsToBranches(Group);
291 // Current processed CMOV-Group.
292 CmovGroup Group;
294 Group.clear();
315 if (Group.empty()) {
324 Group.push_back(&I);
328 // Mark the SKipGroup indicator to skip current processed CMOV-Group.
350 // If Group is empty, keep looking for first CMOV in the range.
351 if (Group.empty())
362 CmovInstGroups.push_back(Group);
365 Group.clear();
370 if (Group.empty())
373 CmovInstGroups.push_back(Group);
418 for (auto &Group : CmovInstGroups)
419 CmovInstructions.insert(Group.begin(), Group.end());
539 // Worth-Optimize-Group:
551 for (auto &Group : TempGroups) {
553 for (auto *MI : Group) {
578 CmovInstGroups.push_back(Group);
630 SmallVectorImpl<MachineInstr *> &Group) const {
631 assert(!Group.empty() && "No CMOV instructions to convert");
637 packCmovGroup(Group.front(), Group.back());
668 MachineInstr &MI = *Group.front();
669 MachineInstr *LastCMOV = Group.back();
678 if (llvm::any_of(Group, [&](MachineInstr *I) {