Home | History | Annotate | Download | only in Mips

Lines Matching refs:MVT

34   addRegisterClass(MVT::i32, &Mips::GPR32RegClass);
37 addRegisterClass(MVT::i64, &Mips::GPR64RegClass);
40 MVT::SimpleValueType VecTys[2] = {MVT::v2i16, MVT::v4i8};
57 unsigned FirstVT = (unsigned)MVT::FIRST_VECTOR_VALUETYPE;
58 unsigned LastVT = (unsigned)MVT::LAST_VECTOR_VALUETYPE;
62 setTruncStoreAction((MVT::SimpleValueType)VT0,
63 (MVT::SimpleValueType)VT1, Expand);
65 setLoadExtAction(ISD::SEXTLOAD, (MVT::SimpleValueType)VT0, Expand);
66 setLoadExtAction(ISD::ZEXTLOAD, (MVT::SimpleValueType)VT0, Expand);
67 setLoadExtAction(ISD::EXTLOAD, (MVT::SimpleValueType)VT0, Expand);
78 setOperationAction(ISD::MUL, MVT::v2i16, Legal);
81 addRegisterClass(MVT::f32, &Mips::FGR32RegClass);
86 addRegisterClass(MVT::f64, &Mips::FGR64RegClass);
88 addRegisterClass(MVT::f64, &Mips::AFGR64RegClass);
92 setOperationAction(ISD::SMUL_LOHI, MVT::i32, Custom);
93 setOperationAction(ISD::UMUL_LOHI, MVT::i32, Custom);
94 setOperationAction(ISD::MULHS, MVT::i32, Custom);
95 setOperationAction(ISD::MULHU, MVT::i32, Custom);
98 setOperationAction(ISD::MULHS, MVT::i64, Custom);
99 setOperationAction(ISD::MULHU, MVT::i64, Custom);
100 setOperationAction(ISD::MUL, MVT::i64, Custom);
103 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::i64, Custom);
104 setOperationAction(ISD::INTRINSIC_W_CHAIN, MVT::i64, Custom);
106 setOperationAction(ISD::SDIVREM, MVT::i32, Custom);
107 setOperationAction(ISD::UDIVREM, MVT::i32, Custom);
108 setOperationAction(ISD::SDIVREM, MVT::i64, Custom);
109 setOperationAction(ISD::UDIVREM, MVT::i64, Custom);
110 setOperationAction(ISD::ATOMIC_FENCE, MVT::Other, Custom);
111 setOperationAction(ISD::LOAD, MVT::i32, Custom);
112 setOperationAction(ISD::STORE, MVT::i32, Custom);
129 MVT::SimpleValueType SVT = VT.getSimpleVT().SimpleTy;
132 case MVT::i64:
133 case MVT::i32:
207 SDValue ACCIn = CurDAG->getNode(MipsISD::InsertLOHI, DL, MVT::Untyped,
214 SDValue MAdd = CurDAG->getNode(MultOpc, DL, MVT::Untyped,
221 SDValue LoIdx = CurDAG->getConstant(Mips::sub_lo, MVT::i32);
222 SDValue LoOut = CurDAG->getNode(MipsISD::ExtractLOHI, DL, MVT::i32, MAdd,
227 SDValue HiIdx = CurDAG->getConstant(Mips::sub_hi, MVT::i32);
228 SDValue HiOut = CurDAG->getNode(MipsISD::ExtractLOHI, DL, MVT::i32, MAdd,
283 SDValue ACCIn = CurDAG->getNode(MipsISD::InsertLOHI, DL, MVT::Untyped,
290 SDValue MSub = CurDAG->getNode(MultOpc, DL, MVT::Glue,
297 SDValue LoIdx = CurDAG->getConstant(Mips::sub_lo, MVT::i32);
298 SDValue LoOut = CurDAG->getNode(MipsISD::ExtractLOHI, DL, MVT::i32, MSub,
303 SDValue HiIdx = CurDAG->getConstant(Mips::sub_hi, MVT::i32);
304 SDValue HiOut = CurDAG->getNode(MipsISD::ExtractLOHI, DL, MVT::i32, MSub,
318 if (Subtarget->hasMips32() && N->getValueType(0) == MVT::i32 &&
331 if (Subtarget->hasMips32() && N->getValueType(0) == MVT::i32 &&
407 DAG.getConstant(SplatValue.getZExtValue(), MVT::i32));
415 if ((Ty != MVT::v2i16) && (Ty != MVT::v4i8))
426 if ((Ty != MVT::v2i16) && ((Ty != MVT::v4i8) || !Subtarget->hasDSPR2()))
438 if (((Ty != MVT::v2i16) || !Subtarget->hasDSPR2()) && (Ty != MVT::v4i8))
445 bool IsV216 = (Ty == MVT::v2i16);
465 if ((Ty != MVT::v2i16) && (Ty != MVT::v4i8))
478 if ((Ty != MVT::v2i16) && (Ty != MVT::v4i8))
572 SDValue Mult = DAG.getNode(NewOpc, DL, MVT::Untyped,
578 DAG.getConstant(Mips::sub_lo, MVT::i32));
581 DAG.getConstant(Mips::sub_hi, MVT::i32));
592 SDValue InLo = DAG.getNode(ISD::EXTRACT_ELEMENT, DL, MVT::i32, In,
593 DAG.getConstant(0, MVT::i32));
594 SDValue InHi = DAG.getNode(ISD::EXTRACT_ELEMENT, DL, MVT::i32, In,
595 DAG.getConstant(1, MVT::i32));
596 return DAG.getNode(MipsISD::InsertLOHI, DL, MVT::Untyped, InLo, InHi);
600 SDValue Lo = DAG.getNode(MipsISD::ExtractLOHI, DL, MVT::i32, Op,
601 DAG.getConstant(Mips::sub_lo, MVT::i32));
602 SDValue Hi = DAG.getNode(MipsISD::ExtractLOHI, DL, MVT::i32, Op,
603 DAG.getConstant(Mips::sub_hi, MVT::i32));
604 return DAG.getNode(ISD::BUILD_PAIR, DL, MVT::i64, Lo, Hi);
621 bool HasChainIn = Op->getOperand(0).getValueType() == MVT::Other;
635 if (Opnd.getValueType() == MVT::i64)
653 ResTys.push_back((*I == MVT::i64) ? MVT::Untyped : *I);
657 SDValue Out = (ResTys[0] == MVT::Untyped) ? extractLOHI(Val, DL, DAG) : Val;
662 assert(Val->getValueType(1) == MVT::Other);