Lines Matching defs:SubVecVT
2493 // SubVecVT via subregister indices. Returns the subregister index that
2496 // further inserted/extracted within the register class for SubVecVT.
2499 MVT VecVT, MVT SubVecVT, unsigned InsertExtractIdx,
2506 unsigned SubRegClassID = getRegClassIDForVecVT(SubVecVT);
2509 // RegClass with SubVecVT or SubVecVT is a actually a subvector of the VecVT.
2514 assert(SubVecVT.isScalableVector() &&
2516 assert(getLMUL(VecVT) == getLMUL(SubVecVT) &&
10529 MVT SubVecVT = SubVec.getSimpleValueType();
10544 if (SubVecVT.getVectorElementType() == MVT::i1) {
10546 SubVecVT.getVectorMinNumElements() >= 8) {
10549 SubVecVT.getVectorMinNumElements() % 8 == 0 &&
10552 SubVecVT =
10553 MVT::getVectorVT(MVT::i8, SubVecVT.getVectorMinNumElements() / 8,
10554 SubVecVT.isScalableVector());
10558 SubVec = DAG.getBitcast(SubVecVT, SubVec);
10565 MVT ExtSubVecVT = SubVecVT.changeVectorElementType(MVT::i8);
10581 if (SubVecVT.isFixedLengthVector() && !VLen) {
10596 unsigned EndIndex = OrigIdx + SubVecVT.getVectorNumElements();
10626 MVT ContainerSubVecVT = SubVecVT;
10627 if (SubVecVT.isFixedLengthVector()) {
10628 ContainerSubVecVT = getContainerForFixedLengthVector(SubVecVT);
10637 if (SubVecVT.isFixedLengthVector()) {
10656 Subtarget.expandVScale(SubVecVT.getSizeInBits()).getKnownMinValue()));
10658 Subtarget.expandVScale(SubVecVT.getSizeInBits())
10675 if (SubVecVT.isFixedLengthVector()) {
10704 if (SubVecVT.isFixedLengthVector()) {
10722 ElementCount EndIndex = RemIdx + SubVecVT.getVectorElementCount();
10723 VL = DAG.getElementCount(DL, XLenVT, SubVecVT.getVectorElementCount());
10739 // Construct the vector length corresponding to RemIdx + length(SubVecVT).
10763 MVT SubVecVT = Op.getSimpleValueType();
10781 if (SubVecVT.getVectorElementType() == MVT::i1) {
10783 SubVecVT.getVectorMinNumElements() >= 8) {
10786 SubVecVT.getVectorMinNumElements() % 8 == 0 &&
10789 SubVecVT =
10790 MVT::getVectorVT(MVT::i8, SubVecVT.getVectorMinNumElements() / 8,
10791 SubVecVT.isScalableVector());
10804 MVT ExtSubVecVT = SubVecVT.changeVectorElementType(MVT::i8);
10809 return DAG.getSetCC(DL, SubVecVT, Vec, SplatZero, ISD::SETNE);
10820 if (SubVecVT.isFixedLengthVector() && !VLen) {
10828 unsigned LastIdx = OrigIdx + SubVecVT.getVectorNumElements() - 1;
10840 SDValue VL = DAG.getConstant(SubVecVT.getVectorNumElements(), DL, XLenVT);
10846 Slidedown = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, SubVecVT, Slidedown,
10856 MVT ContainerSubVecVT = SubVecVT;
10857 if (SubVecVT.isFixedLengthVector())
10858 ContainerSubVecVT = getContainerForFixedLengthVector(SubVecVT);
10865 if (SubVecVT.isFixedLengthVector()) {
10887 if (SubVecVT.isFixedLengthVector()) {
10892 return convertFromScalableVector(SubVecVT, Vec, DAG, Subtarget);
10897 // Else SubVecVT is M1 or smaller and may need to be slid down: if SubVecVT
10907 // If VecVT has an LMUL > 1, then SubVecVT should have a smaller LMUL, and
10913 if (SubVecVT.isFixedLengthVector()) {
10926 if (SubVecVT.isFixedLengthVector())
10927 VL = DAG.getConstant(SubVecVT.getVectorNumElements(), DL, XLenVT);
10934 Slidedown = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, SubVecVT, Slidedown,