Lines Matching defs:FoldCandidate
24 struct FoldCandidate {
36 FoldCandidate(MachineInstr *MI, unsigned OpNo, MachineOperand *FoldOp,
81 bool updateOperand(FoldCandidate &Fold) const;
83 bool canUseImmWithOpSel(FoldCandidate &Fold) const;
85 bool tryFoldImmWithOpSel(FoldCandidate &Fold) const;
87 bool tryAddToFoldList(SmallVectorImpl<FoldCandidate> &FoldList,
97 SmallVectorImpl<FoldCandidate> &FoldList) const;
101 SmallVectorImpl<FoldCandidate> &FoldList,
203 bool SIFoldOperands::canUseImmWithOpSel(FoldCandidate &Fold) const {
233 bool SIFoldOperands::tryFoldImmWithOpSel(FoldCandidate &Fold) const {
357 bool SIFoldOperands::updateOperand(FoldCandidate &Fold) const {
449 static bool isUseMIInFoldList(ArrayRef<FoldCandidate> FoldList,
454 static void appendFoldCandidate(SmallVectorImpl<FoldCandidate> &FoldList,
459 for (FoldCandidate &Fold : FoldList)
467 bool SIFoldOperands::tryAddToFoldList(SmallVectorImpl<FoldCandidate> &FoldList,
508 FoldCandidate Fold(MI, OpNo, OpToFold);
691 SmallVectorImpl<FoldCandidate> &FoldList) const {
759 SmallVectorImpl<FoldCandidate> &FoldList,
1377 SmallVector<FoldCandidate, 4> FoldList;
1416 for (FoldCandidate &Fold : FoldList) {