• Home
  • Raw
  • Download

Lines Matching refs:MVT

105   bool isTypeLegal(Type *Ty, MVT &VT);
106 bool isTypeSupported(Type *Ty, MVT &VT);
107 bool isLoadTypeLegal(Type *Ty, MVT &VT);
114 bool emitLoad(MVT VT, unsigned &ResultReg, Address &Addr,
116 bool emitStore(MVT VT, unsigned SrcReg, Address Addr,
118 bool emitStore(MVT VT, unsigned SrcReg, Address &Addr,
120 unsigned emitIntExt(MVT SrcVT, unsigned SrcReg, MVT DestVT, bool isZExt);
121 bool emitIntExt(MVT SrcVT, unsigned SrcReg, MVT DestVT, unsigned DestReg,
124 bool emitIntZExt(MVT SrcVT, unsigned SrcReg, MVT DestVT, unsigned DestReg);
126 bool emitIntSExt(MVT SrcVT, unsigned SrcReg, MVT DestVT, unsigned DestReg);
127 bool emitIntSExt32r1(MVT SrcVT, unsigned SrcReg, MVT DestVT,
129 bool emitIntSExt32r2(MVT SrcVT, unsigned SrcReg, MVT DestVT,
134 unsigned emitLogicalOp(unsigned ISDOpc, MVT RetVT, const Value *LHS,
137 unsigned materializeFP(const ConstantFP *CFP, MVT VT);
138 unsigned materializeGV(const GlobalValue *GV, MVT VT);
139 unsigned materializeInt(const Constant *C, MVT VT);
169 bool processCallArgs(CallLoweringInfo &CLI, SmallVectorImpl<MVT> &ArgVTs,
171 bool finishCall(CallLoweringInfo &CLI, MVT RetVT, unsigned NumBytes);
196 static bool CC_Mips(unsigned ValNo, MVT ValVT, MVT LocVT,
200 static bool CC_MipsO32_FP32(unsigned ValNo, MVT ValVT, MVT LocVT, in CC_MipsO32_FP32()
206 static bool CC_MipsO32_FP64(unsigned ValNo, MVT ValVT, MVT LocVT, in CC_MipsO32_FP64()
218 unsigned MipsFastISel::emitLogicalOp(unsigned ISDOpc, MVT RetVT, in emitLogicalOp()
244 RHSReg = materializeInt(C, MVT::i32); in emitLogicalOp()
255 unsigned MipsFastISel::materializeInt(const Constant *C, MVT VT) { in materializeInt()
256 if (VT != MVT::i32 && VT != MVT::i16 && VT != MVT::i8 && VT != MVT::i1) in materializeInt()
261 if ((VT != MVT::i1) && CI->isNegative()) in materializeInt()
293 unsigned MipsFastISel::materializeFP(const ConstantFP *CFP, MVT VT) { in materializeFP()
297 if (VT == MVT::f32) { in materializeFP()
303 } else if (VT == MVT::f64) { in materializeFP()
315 unsigned MipsFastISel::materializeGV(const GlobalValue *GV, MVT VT) { in materializeGV()
317 if (VT != MVT::i32) in materializeGV()
348 MVT VT = CEVT.getSimpleVT(); in fastMaterializeConstant()
454 bool MipsFastISel::isTypeLegal(Type *Ty, MVT &VT) { in isTypeLegal()
457 if (evt == MVT::Other || !evt.isSimple()) in isTypeLegal()
466 bool MipsFastISel::isTypeSupported(Type *Ty, MVT &VT) { in isTypeSupported()
475 if (VT == MVT::i1 || VT == MVT::i8 || VT == MVT::i16) in isTypeSupported()
481 bool MipsFastISel::isLoadTypeLegal(Type *Ty, MVT &VT) { in isLoadTypeLegal()
487 if (VT == MVT::i8 || VT == MVT::i16) in isLoadTypeLegal()
618 bool MipsFastISel::emitLoad(MVT VT, unsigned &ResultReg, Address &Addr, in emitLoad()
625 case MVT::i32: { in emitLoad()
630 case MVT::i16: { in emitLoad()
635 case MVT::i8: { in emitLoad()
640 case MVT::f32: { in emitLoad()
647 case MVT::f64: { in emitLoad()
679 bool MipsFastISel::emitStore(MVT VT, unsigned SrcReg, Address &Addr, in emitStore()
686 case MVT::i8: in emitStore()
689 case MVT::i16: in emitStore()
692 case MVT::i32: in emitStore()
695 case MVT::f32: in emitStore()
700 case MVT::f64: in emitStore()
732 MVT VT; in selectLogicalOp()
764 MVT VT; in selectLoad()
789 MVT VT; in selectStore()
857 if (SrcVT != MVT::f32 || DestVT != MVT::f64) in selectFPExt()
880 if (SrcVT != MVT::f64 || DestVT != MVT::f32) in selectFPTrunc()
900 MVT DstVT, SrcVT; in selectFPToInt()
908 if (DstVT != MVT::i32) in selectFPToInt()
916 if (SrcVT != MVT::f32 && SrcVT != MVT::f64) in selectFPToInt()
929 if (SrcVT == MVT::f32) in selectFPToInt()
944 SmallVectorImpl<MVT> &OutVTs, in processCallArgs()
958 MVT firstMVT; in processCallArgs()
962 MVT ArgVT = OutVTs[VA.getValNo()]; in processCallArgs()
966 if (ArgVT == MVT::f32) { in processCallArgs()
968 } else if (ArgVT == MVT::f64) { in processCallArgs()
972 if ((firstMVT == MVT::f32) || (firstMVT == MVT::f64)) { in processCallArgs()
973 if (ArgVT == MVT::f32) { in processCallArgs()
975 } else if (ArgVT == MVT::f64) { in processCallArgs()
980 if (((ArgVT == MVT::i32) || (ArgVT == MVT::f32)) && VA.isMemLoc()) { in processCallArgs()
1008 MVT DestVT = VA.getLocVT(); in processCallArgs()
1009 MVT SrcVT = ArgVT; in processCallArgs()
1016 MVT DestVT = VA.getLocVT(); in processCallArgs()
1017 MVT SrcVT = ArgVT; in processCallArgs()
1075 bool MipsFastISel::finishCall(CallLoweringInfo &CLI, MVT RetVT, in finishCall()
1079 if (RetVT != MVT::isVoid) { in finishCall()
1088 MVT CopyVT = RVLocs[0].getValVT(); in finishCall()
1090 if (RetVT == MVT::i1 || RetVT == MVT::i8 || RetVT == MVT::i16) in finishCall()
1091 CopyVT = MVT::i32; in finishCall()
1121 MVT RetVT; in fastLowerCall()
1123 RetVT = MVT::isVoid; in fastLowerCall()
1132 SmallVector<MVT, 16> OutVTs; in fastLowerCall()
1136 MVT VT; in fastLowerCall()
1138 !(VT == MVT::i1 || VT == MVT::i8 || VT == MVT::i16)) in fastLowerCall()
1158 unsigned DestAddress = materializeGV(Addr.getGlobalValue(), MVT::i32); in fastLowerCall()
1232 MVT RVVT = RVEVT.getSimpleVT(); in selectRet()
1233 if (RVVT == MVT::f128) in selectRet()
1236 MVT DestVT = VA.getValVT(); in selectRet()
1239 if (RVVT != MVT::i1 && RVVT != MVT::i8 && RVVT != MVT::i16) in selectRet()
1273 if (SrcVT != MVT::i32 && SrcVT != MVT::i16 && SrcVT != MVT::i8) in selectTrunc()
1275 if (DestVT != MVT::i16 && DestVT != MVT::i8 && DestVT != MVT::i1) in selectTrunc()
1305 MVT SrcVT = SrcEVT.getSimpleVT(); in selectIntExt()
1306 MVT DestVT = DestEVT.getSimpleVT(); in selectIntExt()
1314 bool MipsFastISel::emitIntSExt32r1(MVT SrcVT, unsigned SrcReg, MVT DestVT, in emitIntSExt32r1()
1320 case MVT::i8: in emitIntSExt32r1()
1323 case MVT::i16: in emitIntSExt32r1()
1333 bool MipsFastISel::emitIntSExt32r2(MVT SrcVT, unsigned SrcReg, MVT DestVT, in emitIntSExt32r2()
1338 case MVT::i8: in emitIntSExt32r2()
1341 case MVT::i16: in emitIntSExt32r2()
1348 bool MipsFastISel::emitIntSExt(MVT SrcVT, unsigned SrcReg, MVT DestVT, in emitIntSExt()
1350 if ((DestVT != MVT::i32) && (DestVT != MVT::i16)) in emitIntSExt()
1357 bool MipsFastISel::emitIntZExt(MVT SrcVT, unsigned SrcReg, MVT DestVT, in emitIntZExt()
1362 case MVT::i1: in emitIntZExt()
1365 case MVT::i8: in emitIntZExt()
1368 case MVT::i16: in emitIntZExt()
1375 bool MipsFastISel::emitIntExt(MVT SrcVT, unsigned SrcReg, MVT DestVT, in emitIntExt()
1382 unsigned MipsFastISel::emitIntExt(MVT SrcVT, unsigned SrcReg, MVT DestVT, in emitIntExt()
1432 MVT VMVT = TLI.getValueType(V->getType(), true).getSimpleVT(); in getRegEnsuringSimpleIntegerWidening()
1433 if ((VMVT == MVT::i8) || (VMVT == MVT::i16)) { in getRegEnsuringSimpleIntegerWidening()
1435 if (!emitIntExt(VMVT, VReg, MVT::i32, TempReg, IsUnsigned)) in getRegEnsuringSimpleIntegerWidening()