Lines Matching +full:1 +full:mib
128 MachineInstrBuilder CSEMIRBuilder::memoizeMI(MachineInstrBuilder MIB, in memoizeMI() argument
130 assert(canPerformCSEForOpc(MIB->getOpcode()) && in memoizeMI()
132 MachineInstr *MIBInstr = MIB; in memoizeMI()
134 return MIB; in memoizeMI()
138 if (DstOps.size() == 1) in checkCopyToDefsPossible()
139 return true; // always possible to emit copy to just 1 vreg. in checkCopyToDefsPossible()
149 MachineInstrBuilder &MIB) { in generateCopiesIfRequired() argument
151 "Impossible return a single MIB with copies to multiple defs"); in generateCopiesIfRequired()
152 if (DstOps.size() == 1) { in generateCopiesIfRequired()
155 return buildCopy(Op.getReg(), MIB.getReg(0)); in generateCopiesIfRequired()
165 Observer->changingInstr(*MIB); in generateCopiesIfRequired()
166 MIB->setDebugLoc( in generateCopiesIfRequired()
167 DILocation::getMergedLocation(MIB->getDebugLoc(), getDebugLoc())); in generateCopiesIfRequired()
169 Observer->changedInstr(*MIB); in generateCopiesIfRequired()
172 return MIB; in generateCopiesIfRequired()
184 assert(DstOps.size() == 1 && "Invalid dsts"); in buildInstr()
185 LLT SrcTy = SrcOps[1].getLLTTy(*getMRI()); in buildInstr()
188 ConstantFoldICmp(SrcOps[0].getPredicate(), SrcOps[1].getReg(), in buildInstr()
216 assert(DstOps.size() == 1 && "Invalid dsts"); in buildInstr()
226 Opc, SrcOps[0].getReg(), SrcOps[1].getReg(), *getMRI()); in buildInstr()
233 Opc, SrcOps[0].getReg(), SrcOps[1].getReg(), *getMRI())) in buildInstr()
251 assert(DstOps.size() == 1 && "Invalid dsts"); in buildInstr()
253 Opc, SrcOps[0].getReg(), SrcOps[1].getReg(), *getMRI())) in buildInstr()
258 assert(DstOps.size() == 1 && "Invalid dst ops"); in buildInstr()
262 const SrcOp &Src1 = SrcOps[1]; in buildInstr()
271 assert(SrcOps.size() == 1 && "Invalid sources"); in buildInstr()
272 assert(DstOps.size() == 1 && "Invalid dsts"); in buildInstr()
280 assert(SrcOps.size() == 1 && "Expected one source"); in buildInstr()
281 assert(DstOps.size() == 1 && "Expected one dest"); in buildInstr()
290 if (MaybeCsts->size() == 1) in buildInstr()
307 auto MIB = MachineIRBuilder::buildInstr(Opc, DstOps, SrcOps, Flag); in buildInstr() local
310 getCSEInfo()->handleRemoveInst(&*MIB); in buildInstr()
311 return MIB; in buildInstr()
317 MachineInstrBuilder MIB = getDominatingInstrForID(ID, InsertPos); in buildInstr() local
318 if (MIB) { in buildInstr()
320 return generateCopiesIfRequired(DstOps, MIB); in buildInstr()
345 MachineInstrBuilder MIB = getDominatingInstrForID(ID, InsertPos); in buildConstant() local
346 if (MIB) { in buildConstant()
348 return generateCopiesIfRequired({Res}, MIB); in buildConstant()
372 MachineInstrBuilder MIB = getDominatingInstrForID(ID, InsertPos); in buildFConstant() local
373 if (MIB) { in buildFConstant()
375 return generateCopiesIfRequired({Res}, MIB); in buildFConstant()