Lines Matching refs:getOperand

160   ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask();  in matchREV()
161 Register Dst = MI.getOperand(0).getReg(); in matchREV()
162 Register Src = MI.getOperand(1).getReg(); in matchREV()
197 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); in matchTRN()
198 Register Dst = MI.getOperand(0).getReg(); in matchTRN()
203 Register V1 = MI.getOperand(1).getReg(); in matchTRN()
204 Register V2 = MI.getOperand(2).getReg(); in matchTRN()
218 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); in matchUZP()
219 Register Dst = MI.getOperand(0).getReg(); in matchUZP()
224 Register V1 = MI.getOperand(1).getReg(); in matchUZP()
225 Register V2 = MI.getOperand(2).getReg(); in matchUZP()
234 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); in matchZip()
235 Register Dst = MI.getOperand(0).getReg(); in matchZip()
240 Register V1 = MI.getOperand(1).getReg(); in matchZip()
241 Register V2 = MI.getOperand(2).getReg(); in matchZip()
269 MI.getOperand(1).getReg(), MRI); in matchDupFromInsertVectorElt()
273 if (!getOpcodeDef(TargetOpcode::G_IMPLICIT_DEF, InsMI->getOperand(1).getReg(), in matchDupFromInsertVectorElt()
278 if (!mi_match(InsMI->getOperand(3).getReg(), MRI, m_ZeroInt())) in matchDupFromInsertVectorElt()
281 MatchInfo = ShuffleVectorPseudo(AArch64::G_DUP, MI.getOperand(0).getReg(), in matchDupFromInsertVectorElt()
282 {InsMI->getOperand(2).getReg()}); in matchDupFromInsertVectorElt()
294 MI.getOperand(1).getReg(), MRI); in matchDupFromBuildVector()
297 Register Reg = BuildVecMI->getOperand(Lane + 1).getReg(); in matchDupFromBuildVector()
299 ShuffleVectorPseudo(AArch64::G_DUP, MI.getOperand(0).getReg(), {Reg}); in matchDupFromBuildVector()
352 Register Dst = MI.getOperand(0).getReg(); in matchEXT()
354 Register V1 = MI.getOperand(1).getReg(); in matchEXT()
355 Register V2 = MI.getOperand(2).getReg(); in matchEXT()
356 auto Mask = MI.getOperand(3).getShuffleMask(); in matchEXT()
409 getIConstantVRegValWithLookThrough(MI.getOperand(3).getReg(), MRI); in matchNonConstInsert()
433 Builder.buildStore(Insert.getOperand(1), StackTemp, PtrInfo, Align(8)); in applyNonConstInsert()
468 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); in matchINS()
469 Register Dst = MI.getOperand(0).getReg(); in matchINS()
477 Register Left = MI.getOperand(1).getReg(); in matchINS()
478 Register Right = MI.getOperand(2).getReg(); in matchINS()
496 Register Dst = MI.getOperand(0).getReg(); in applyINS()
528 LLT Ty = MRI.getType(MI.getOperand(1).getReg()); in matchVAshrLshrImm()
531 return isVShiftRImm(MI.getOperand(2).getReg(), MRI, Ty, Imm); in matchVAshrLshrImm()
542 MIB.buildInstr(NewOpc, {MI.getOperand(0)}, {MI.getOperand(1), ImmDef}); in applyVAshrLshrImm()
666 Register RHS = MI.getOperand(3).getReg(); in matchAdjustICmpImmAndPred()
667 auto Pred = static_cast<CmpInst::Predicate>(MI.getOperand(1).getPredicate()); in matchAdjustICmpImmAndPred()
679 MachineOperand &RHS = MI.getOperand(3); in applyAdjustICmpImmAndPred()
684 RHS.setReg(Cst->getOperand(0).getReg()); in applyAdjustICmpImmAndPred()
685 MI.getOperand(1).setPredicate(MatchInfo.second); in applyAdjustICmpImmAndPred()
692 Register Src1Reg = MI.getOperand(1).getReg(); in matchDupLane()
694 const LLT DstTy = MRI.getType(MI.getOperand(0).getReg()); in matchDupLane()
748 Register Src1Reg = MI.getOperand(1).getReg(); in applyDupLane()
754 Register DupSrc = MI.getOperand(1).getReg(); in applyDupLane()
763 B.buildInstr(MatchInfo.first, {MI.getOperand(0).getReg()}, {DupSrc, Lane}); in applyDupLane()
807 B.buildInstr(AArch64::G_DUP, {MI.getOperand(0).getReg()}, in applyBuildVectorToDup()
808 {MI.getOperand(1).getReg()}); in applyBuildVectorToDup()
826 getIConstantVRegValWithLookThrough(MI.getOperand(2).getReg(), MRI); in getCmpOperandFoldingProfit()
843 getIConstantVRegValWithLookThrough(Def->getOperand(2).getReg(), MRI); in getCmpOperandFoldingProfit()
848 getDefIgnoringCopies(Def->getOperand(1).getReg(), MRI); in getCmpOperandFoldingProfit()
856 LLT Ty = MRI.getType(Def->getOperand(0).getReg()); in getCmpOperandFoldingProfit()
881 Register RHS = MI.getOperand(3).getReg(); in trySwapICmpOperands()
886 Register LHS = MI.getOperand(2).getReg(); in trySwapICmpOperands()
887 auto Pred = static_cast<CmpInst::Predicate>(MI.getOperand(1).getPredicate()); in trySwapICmpOperands()
890 return isCMN(Def, Pred, MRI) ? Def->getOperand(2).getReg() : Reg; in trySwapICmpOperands()
905 auto Pred = static_cast<CmpInst::Predicate>(MI.getOperand(1).getPredicate()); in applySwapICmpOperands()
906 Register LHS = MI.getOperand(2).getReg(); in applySwapICmpOperands()
907 Register RHS = MI.getOperand(3).getReg(); in applySwapICmpOperands()
909 MI.getOperand(1).setPredicate(CmpInst::getSwappedPredicate(Pred)); in applySwapICmpOperands()
910 MI.getOperand(2).setReg(RHS); in applySwapICmpOperands()
911 MI.getOperand(3).setReg(LHS); in applySwapICmpOperands()
979 Register Dst = MI.getOperand(0).getReg(); in matchLowerVectorFCMP()
983 Register LHS = MI.getOperand(2).getReg(); in matchLowerVectorFCMP()
1054 Register DstReg = MI.getOperand(0).getReg(); in matchFormTruncstore()
1069 MI.getOperand(0).setReg(SrcReg); in applyFormTruncstore()
1078 Register DstReg = MI.getOperand(0).getReg(); in matchVectorSextInReg()
1109 Register ExtSrc1 = Ext->getOperand(1).getReg(); in matchUnmergeExtToUnmerge()
1110 Register ExtSrc2 = Ext->getOperand(2).getReg(); in matchUnmergeExtToUnmerge()
1112 getIConstantVRegValWithLookThrough(Ext->getOperand(3).getReg(), MRI); in matchUnmergeExtToUnmerge()
1128 Register Dst1 = MI.getOperand(0).getReg(); in applyUnmergeExtToUnmerge()
1129 MI.getOperand(0).setReg(MI.getOperand(1).getReg()); in applyUnmergeExtToUnmerge()
1130 MI.getOperand(1).setReg(Dst1); in applyUnmergeExtToUnmerge()
1131 MI.getOperand(2).setReg(SrcReg); in applyUnmergeExtToUnmerge()
1142 LLT DstTy = MRI.getType(MI.getOperand(0).getReg()); in matchExtMulToMULL()
1143 MachineInstr *I1 = getDefIgnoringCopies(MI.getOperand(1).getReg(), MRI); in matchExtMulToMULL()
1144 MachineInstr *I2 = getDefIgnoringCopies(MI.getOperand(2).getReg(), MRI); in matchExtMulToMULL()
1152 (MRI.getType(I1->getOperand(0).getReg()).getScalarSizeInBits() == in matchExtMulToMULL()
1153 MRI.getType(I1->getOperand(1).getReg()).getScalarSizeInBits() * 2) && in matchExtMulToMULL()
1154 (MRI.getType(I2->getOperand(0).getReg()).getScalarSizeInBits() == in matchExtMulToMULL()
1155 MRI.getType(I2->getOperand(1).getReg()).getScalarSizeInBits() * 2)) { in matchExtMulToMULL()
1172 LLT DstTy = MRI.getType(MI.getOperand(0).getReg()); in applyExtMulToMULL()
1173 MachineInstr *I1 = getDefIgnoringCopies(MI.getOperand(1).getReg(), MRI); in applyExtMulToMULL()
1174 MachineInstr *I2 = getDefIgnoringCopies(MI.getOperand(2).getReg(), MRI); in applyExtMulToMULL()
1181 (MRI.getType(I1->getOperand(0).getReg()).getScalarSizeInBits() == in applyExtMulToMULL()
1182 MRI.getType(I1->getOperand(1).getReg()).getScalarSizeInBits() * 2) && in applyExtMulToMULL()
1183 (MRI.getType(I2->getOperand(0).getReg()).getScalarSizeInBits() == in applyExtMulToMULL()
1184 MRI.getType(I2->getOperand(1).getReg()).getScalarSizeInBits() * 2)) { in applyExtMulToMULL()
1189 {MI.getOperand(0).getReg()}, in applyExtMulToMULL()
1190 {I1->getOperand(1).getReg(), I2->getOperand(1).getReg()}); in applyExtMulToMULL()