Lines Matching refs:DstOps
105 void CSEMIRBuilder::profileEverything(unsigned Opc, ArrayRef<DstOp> DstOps, in profileEverything() argument
112 profileDstOps(DstOps, B); in profileEverything()
129 bool CSEMIRBuilder::checkCopyToDefsPossible(ArrayRef<DstOp> DstOps) { in checkCopyToDefsPossible() argument
130 if (DstOps.size() == 1) in checkCopyToDefsPossible()
133 return std::all_of(DstOps.begin(), DstOps.end(), [](const DstOp &Op) { in checkCopyToDefsPossible()
140 CSEMIRBuilder::generateCopiesIfRequired(ArrayRef<DstOp> DstOps, in generateCopiesIfRequired() argument
142 assert(checkCopyToDefsPossible(DstOps) && in generateCopiesIfRequired()
144 if (DstOps.size() == 1) { in generateCopiesIfRequired()
145 const DstOp &Op = DstOps[0]; in generateCopiesIfRequired()
168 ArrayRef<DstOp> DstOps, in buildInstr() argument
189 assert(DstOps.size() == 1 && "Invalid dsts"); in buildInstr()
192 return buildConstant(DstOps[0], Cst->getSExtValue()); in buildInstr()
196 assert(DstOps.size() == 1 && "Invalid dst ops"); in buildInstr()
198 const DstOp &Dst = DstOps[0]; in buildInstr()
207 bool CanCopy = checkCopyToDefsPossible(DstOps); in buildInstr()
209 return MachineIRBuilder::buildInstr(Opc, DstOps, SrcOps, Flag); in buildInstr()
213 auto MIB = MachineIRBuilder::buildInstr(Opc, DstOps, SrcOps, Flag); in buildInstr()
222 profileEverything(Opc, DstOps, SrcOps, Flag, ProfBuilder); in buildInstr()
226 return generateCopiesIfRequired(DstOps, MIB); in buildInstr()
230 MachineIRBuilder::buildInstr(Opc, DstOps, SrcOps, Flag); in buildInstr()