Lines Matching defs:MIB
92 MachineIRBuilder MIB(MF);
94 GR->getOrCreateSPIRVType(Const->getType(), MIB);
169 MachineIRBuilder MIB) {
172 static_cast<const SPIRVSubtarget *>(&MIB.getMF().getSubtarget());
180 MIB.setInsertPt(*MI.getParent(), MI);
183 MIB.buildBitcast(MI.getOperand(0).getReg(), MI.getOperand(2).getReg());
189 SPIRVType *BaseTy = GR->getOrCreateSPIRVType(ElemTy, MIB);
198 if (MachineInstr *AssignMI = findAssignTypeInstr(Def, MIB.getMRI()))
200 MIB.getMRI()->replaceRegWith(Def, Source);
203 MIB.buildBitcast(Def, Source);
227 MachineIRBuilder &MIB) {
236 MIB.setInsertPt(*MI->getParent(), MI);
238 SpirvTy = GR->getOrCreateSPIRVType(Ty, MIB);
242 MIB.setInsertPt(*MI->getParent(), MI);
247 SpirvTy = GR->getOrCreateSPIRVType(Ty, MIB);
256 if (SPIRVType *Def = propagateSPIRVType(DefInstr, GR, MRI, MIB)) {
261 SpirvTy = GR->getOrCreateSPIRVIntegerType(ExpectedBW, MIB);
264 GR->getOrCreateSPIRVVectorType(SpirvTy, NumElements, MIB);
272 MRI.getType(Reg).getScalarSizeInBits(), MIB);
281 SpirvTy = propagateSPIRVType(Def, GR, MRI, MIB);
288 GR->assignSPIRVTypeToVReg(SpirvTy, Reg, MIB.getMF());
372 SPIRVGlobalRegistry *GR, MachineIRBuilder &MIB,
376 MIB.setInsertPt(*Def->getParent(),
379 SpirvTy = SpirvTy ? SpirvTy : GR->getOrCreateSPIRVType(Ty, MIB);
387 GR->assignSPIRVTypeToVReg(SpirvTy, Reg, MIB.getMF());
390 GR->assignSPIRVTypeToVReg(SpirvTy, NewReg, MIB.getMF());
394 MIB.buildInstr(SPIRV::ASSIGN_TYPE)
403 void processInstr(MachineInstr &MI, MachineIRBuilder &MIB,
412 MIB.setInsertPt(*MI.getParent(),
419 MIB.buildInstr(IdOpInfo.second).addDef(IdOpInfo.first).addUse(Op.getReg());
427 MachineIRBuilder MIB,
431 static_cast<const SPIRVSubtarget *>(&MIB.getMF().getSubtarget());
454 MIB.setInsertPt(*MI.getParent(), MI.getIterator());
456 SPIRVType *BaseTy = GR->getOrCreateSPIRVType(ElementTy, MIB);
465 insertAssignInstr(Reg, nullptr, AssignedPtrType, GR, MIB,
476 insertAssignInstr(Reg, Ty, nullptr, GR, MIB, MF.getRegInfo());
533 insertAssignInstr(Reg, Ty, nullptr, GR, MIB, MRI);
535 propagateSPIRVType(&MI, GR, MRI, MIB);
563 propagateSPIRVType(&MI, GR, MRI, MIB);
575 MachineIRBuilder MIB) {
580 processInstr(MI, MIB, MRI, GR);
735 static void insertSpirvDecorations(MachineFunction &MF, MachineIRBuilder MIB) {
741 MIB.setInsertPt(*MI.getParent(), MI);
742 buildOpSpirvDecorations(MI.getOperand(1).getReg(), MIB,
754 MachineIRBuilder MIB) {
859 MachineIRBuilder MIB) {
868 MIB.setInsertPt(MBB, MBB.end());
869 MIB.buildBr(**MBB.successors().begin());
878 MachineIRBuilder MIB(MF);
885 insertBitcasts(MF, GR, MIB);
886 generateAssignInstrs(MF, GR, MIB, TargetExtConstTypes);
887 processSwitches(MF, GR, MIB);
888 processInstrsWithTypeFolding(MF, GR, MIB);
889 removeImplicitFallthroughs(MF, MIB);
890 insertSpirvDecorations(MF, MIB);
891 insertInlineAsm(MF, GR, ST, MIB);