Lines Matching defs:FoldList

87   bool tryAddToFoldList(SmallVectorImpl<FoldCandidate> &FoldList,
97 SmallVectorImpl<FoldCandidate> &FoldList) const;
101 SmallVectorImpl<FoldCandidate> &FoldList,
449 static bool isUseMIInFoldList(ArrayRef<FoldCandidate> FoldList,
451 return any_of(FoldList, [&](const auto &C) { return C.UseMI == MI; });
454 static void appendFoldCandidate(SmallVectorImpl<FoldCandidate> &FoldList,
459 for (FoldCandidate &Fold : FoldList)
464 FoldList.emplace_back(MI, OpNo, FoldOp, Commuted, ShrinkOp);
467 bool SIFoldOperands::tryAddToFoldList(SmallVectorImpl<FoldCandidate> &FoldList,
482 tryAddToFoldList(FoldList, MI, TryAK ? 3 : 2, OpToFold);
523 bool FoldAsMAD = tryAddToFoldList(FoldList, MI, OpNo, OpToFold);
549 appendFoldCandidate(FoldList, MI, OpNo, OpToFold);
557 if (isUseMIInFoldList(FoldList, MI))
600 appendFoldCandidate(FoldList, MI, CommuteOpNo, OpToFold, true, Op32);
644 appendFoldCandidate(FoldList, MI, OpNo, OpToFold);
691 SmallVectorImpl<FoldCandidate> &FoldList) const {
713 if (isUseMIInFoldList(FoldList, UseMI))
751 appendFoldCandidate(FoldList, UseMI, UseOpIdx, Defs[0].first);
759 SmallVectorImpl<FoldCandidate> &FoldList,
786 RSUseMI->getOperandNo(RSUse), FoldList))
792 foldOperand(OpToFold, RSUseMI, RSUseMI->getOperandNo(RSUse), FoldList,
798 if (tryToFoldACImm(OpToFold, UseMI, UseOpIdx, FoldList))
1069 tryAddToFoldList(FoldList, UseMI, UseOpIdx, &OpToFold);
1098 tryAddToFoldList(FoldList, UseMI, UseOpIdx, &ImmOp);
1102 tryAddToFoldList(FoldList, UseMI, UseOpIdx, &OpToFold);
1377 SmallVector<FoldCandidate, 4> FoldList;
1404 foldOperand(OpToFold, UseMI, UseMI->getOperandNo(U), FoldList,
1408 if (CopiesToReplace.empty() && FoldList.empty())
1416 for (FoldCandidate &Fold : FoldList) {