Lines Matching refs:MatchInfo

158               ShuffleVectorPseudo &MatchInfo) {  in matchREV()  argument
183 MatchInfo = ShuffleVectorPseudo(Opcode, Dst, {Src}); in matchREV()
194 ShuffleVectorPseudo &MatchInfo) { in matchTRN() argument
205 MatchInfo = ShuffleVectorPseudo(Opc, Dst, {V1, V2}); in matchTRN()
215 ShuffleVectorPseudo &MatchInfo) { in matchUZP() argument
226 MatchInfo = ShuffleVectorPseudo(Opc, Dst, {V1, V2}); in matchUZP()
231 ShuffleVectorPseudo &MatchInfo) { in matchZip() argument
242 MatchInfo = ShuffleVectorPseudo(Opc, Dst, {V1, V2}); in matchZip()
249 ShuffleVectorPseudo &MatchInfo) { in matchDupFromInsertVectorElt() argument
281 MatchInfo = ShuffleVectorPseudo(AArch64::G_DUP, MI.getOperand(0).getReg(), in matchDupFromInsertVectorElt()
289 ShuffleVectorPseudo &MatchInfo) { in matchDupFromBuildVector() argument
298 MatchInfo = in matchDupFromBuildVector()
304 ShuffleVectorPseudo &MatchInfo) { in matchDup() argument
313 if (matchDupFromInsertVectorElt(Lane, MI, MRI, MatchInfo)) in matchDup()
315 if (matchDupFromBuildVector(Lane, MI, MRI, MatchInfo)) in matchDup()
350 ShuffleVectorPseudo &MatchInfo) { in matchEXT() argument
367 MatchInfo = ShuffleVectorPseudo(AArch64::G_EXT, Dst, {V1, V1, Imm}); in matchEXT()
375 MatchInfo = ShuffleVectorPseudo(AArch64::G_EXT, Dst, {V1, V2, Imm}); in matchEXT()
382 ShuffleVectorPseudo &MatchInfo) { in applyShuffleVectorPseudo() argument
384 MIRBuilder.buildInstr(MatchInfo.Opc, {MatchInfo.Dst}, MatchInfo.SrcOps); in applyShuffleVectorPseudo()
391 void applyEXT(MachineInstr &MI, ShuffleVectorPseudo &MatchInfo) { in applyEXT() argument
393 if (MatchInfo.SrcOps[2].getImm() == 0) in applyEXT()
394 MIRBuilder.buildCopy(MatchInfo.Dst, MatchInfo.SrcOps[0]); in applyEXT()
398 MIRBuilder.buildConstant(LLT::scalar(32), MatchInfo.SrcOps[2].getImm()); in applyEXT()
399 MIRBuilder.buildInstr(MatchInfo.Opc, {MatchInfo.Dst}, in applyEXT()
400 {MatchInfo.SrcOps[0], MatchInfo.SrcOps[1], Cst}); in applyEXT()
466 std::tuple<Register, int, Register, int> &MatchInfo) { in matchINS() argument
488 MatchInfo = std::make_tuple(DstVec, DstLane, SrcVec, SrcLane); in matchINS()
494 std::tuple<Register, int, Register, int> &MatchInfo) { in applyINS() argument
500 std::tie(DstVec, DstLane, SrcVec, SrcLane) = MatchInfo; in applyINS()
664 std::pair<uint64_t, CmpInst::Predicate> &MatchInfo) { in matchAdjustICmpImmAndPred() argument
669 MatchInfo = *MaybeNewImmAndPred; in matchAdjustICmpImmAndPred()
676 MachineInstr &MI, std::pair<uint64_t, CmpInst::Predicate> &MatchInfo, in applyAdjustICmpImmAndPred() argument
682 MatchInfo.first); in applyAdjustICmpImmAndPred()
685 MI.getOperand(1).setPredicate(MatchInfo.second); in applyAdjustICmpImmAndPred()
690 std::pair<unsigned, int> &MatchInfo) { in matchDupLane() argument
740 MatchInfo.first = Opc; in matchDupLane()
741 MatchInfo.second = *LaneIdx; in matchDupLane()
746 MachineIRBuilder &B, std::pair<unsigned, int> &MatchInfo) { in applyDupLane() argument
752 auto Lane = B.buildConstant(LLT::scalar(64), MatchInfo.second); in applyDupLane()
763 B.buildInstr(MatchInfo.first, {MI.getOperand(0).getReg()}, {DupSrc, Lane}); in applyDupLane()
1094 Register &MatchInfo) { in matchUnmergeExtToUnmerge() argument
1119 MatchInfo = ExtSrc1; in matchUnmergeExtToUnmerge()