Lines Matching refs:MVT
235 VT == MVT::f32 ? Call_F32 : in getFPLibCall()
236 VT == MVT::f64 ? Call_F64 : in getFPLibCall()
237 VT == MVT::f80 ? Call_F80 : in getFPLibCall()
238 VT == MVT::f128 ? Call_F128 : in getFPLibCall()
239 VT == MVT::ppcf128 ? Call_PPCF128 : in getFPLibCall()
246 if (OpVT == MVT::f16) { in getFPEXT()
247 if (RetVT == MVT::f32) in getFPEXT()
249 if (RetVT == MVT::f64) in getFPEXT()
251 if (RetVT == MVT::f80) in getFPEXT()
253 if (RetVT == MVT::f128) in getFPEXT()
255 } else if (OpVT == MVT::f32) { in getFPEXT()
256 if (RetVT == MVT::f64) in getFPEXT()
258 if (RetVT == MVT::f128) in getFPEXT()
260 if (RetVT == MVT::ppcf128) in getFPEXT()
262 } else if (OpVT == MVT::f64) { in getFPEXT()
263 if (RetVT == MVT::f128) in getFPEXT()
265 else if (RetVT == MVT::ppcf128) in getFPEXT()
267 } else if (OpVT == MVT::f80) { in getFPEXT()
268 if (RetVT == MVT::f128) in getFPEXT()
278 if (RetVT == MVT::f16) { in getFPROUND()
279 if (OpVT == MVT::f32) in getFPROUND()
281 if (OpVT == MVT::f64) in getFPROUND()
283 if (OpVT == MVT::f80) in getFPROUND()
285 if (OpVT == MVT::f128) in getFPROUND()
287 if (OpVT == MVT::ppcf128) in getFPROUND()
289 } else if (RetVT == MVT::bf16) { in getFPROUND()
290 if (OpVT == MVT::f32) in getFPROUND()
292 if (OpVT == MVT::f64) in getFPROUND()
294 } else if (RetVT == MVT::f32) { in getFPROUND()
295 if (OpVT == MVT::f64) in getFPROUND()
297 if (OpVT == MVT::f80) in getFPROUND()
299 if (OpVT == MVT::f128) in getFPROUND()
301 if (OpVT == MVT::ppcf128) in getFPROUND()
303 } else if (RetVT == MVT::f64) { in getFPROUND()
304 if (OpVT == MVT::f80) in getFPROUND()
306 if (OpVT == MVT::f128) in getFPROUND()
308 if (OpVT == MVT::ppcf128) in getFPROUND()
310 } else if (RetVT == MVT::f80) { in getFPROUND()
311 if (OpVT == MVT::f128) in getFPROUND()
321 if (OpVT == MVT::f16) { in getFPTOSINT()
322 if (RetVT == MVT::i32) in getFPTOSINT()
324 if (RetVT == MVT::i64) in getFPTOSINT()
326 if (RetVT == MVT::i128) in getFPTOSINT()
328 } else if (OpVT == MVT::f32) { in getFPTOSINT()
329 if (RetVT == MVT::i32) in getFPTOSINT()
331 if (RetVT == MVT::i64) in getFPTOSINT()
333 if (RetVT == MVT::i128) in getFPTOSINT()
335 } else if (OpVT == MVT::f64) { in getFPTOSINT()
336 if (RetVT == MVT::i32) in getFPTOSINT()
338 if (RetVT == MVT::i64) in getFPTOSINT()
340 if (RetVT == MVT::i128) in getFPTOSINT()
342 } else if (OpVT == MVT::f80) { in getFPTOSINT()
343 if (RetVT == MVT::i32) in getFPTOSINT()
345 if (RetVT == MVT::i64) in getFPTOSINT()
347 if (RetVT == MVT::i128) in getFPTOSINT()
349 } else if (OpVT == MVT::f128) { in getFPTOSINT()
350 if (RetVT == MVT::i32) in getFPTOSINT()
352 if (RetVT == MVT::i64) in getFPTOSINT()
354 if (RetVT == MVT::i128) in getFPTOSINT()
356 } else if (OpVT == MVT::ppcf128) { in getFPTOSINT()
357 if (RetVT == MVT::i32) in getFPTOSINT()
359 if (RetVT == MVT::i64) in getFPTOSINT()
361 if (RetVT == MVT::i128) in getFPTOSINT()
370 if (OpVT == MVT::f16) { in getFPTOUINT()
371 if (RetVT == MVT::i32) in getFPTOUINT()
373 if (RetVT == MVT::i64) in getFPTOUINT()
375 if (RetVT == MVT::i128) in getFPTOUINT()
377 } else if (OpVT == MVT::f32) { in getFPTOUINT()
378 if (RetVT == MVT::i32) in getFPTOUINT()
380 if (RetVT == MVT::i64) in getFPTOUINT()
382 if (RetVT == MVT::i128) in getFPTOUINT()
384 } else if (OpVT == MVT::f64) { in getFPTOUINT()
385 if (RetVT == MVT::i32) in getFPTOUINT()
387 if (RetVT == MVT::i64) in getFPTOUINT()
389 if (RetVT == MVT::i128) in getFPTOUINT()
391 } else if (OpVT == MVT::f80) { in getFPTOUINT()
392 if (RetVT == MVT::i32) in getFPTOUINT()
394 if (RetVT == MVT::i64) in getFPTOUINT()
396 if (RetVT == MVT::i128) in getFPTOUINT()
398 } else if (OpVT == MVT::f128) { in getFPTOUINT()
399 if (RetVT == MVT::i32) in getFPTOUINT()
401 if (RetVT == MVT::i64) in getFPTOUINT()
403 if (RetVT == MVT::i128) in getFPTOUINT()
405 } else if (OpVT == MVT::ppcf128) { in getFPTOUINT()
406 if (RetVT == MVT::i32) in getFPTOUINT()
408 if (RetVT == MVT::i64) in getFPTOUINT()
410 if (RetVT == MVT::i128) in getFPTOUINT()
419 if (OpVT == MVT::i32) { in getSINTTOFP()
420 if (RetVT == MVT::f16) in getSINTTOFP()
422 if (RetVT == MVT::f32) in getSINTTOFP()
424 if (RetVT == MVT::f64) in getSINTTOFP()
426 if (RetVT == MVT::f80) in getSINTTOFP()
428 if (RetVT == MVT::f128) in getSINTTOFP()
430 if (RetVT == MVT::ppcf128) in getSINTTOFP()
432 } else if (OpVT == MVT::i64) { in getSINTTOFP()
433 if (RetVT == MVT::f16) in getSINTTOFP()
435 if (RetVT == MVT::f32) in getSINTTOFP()
437 if (RetVT == MVT::f64) in getSINTTOFP()
439 if (RetVT == MVT::f80) in getSINTTOFP()
441 if (RetVT == MVT::f128) in getSINTTOFP()
443 if (RetVT == MVT::ppcf128) in getSINTTOFP()
445 } else if (OpVT == MVT::i128) { in getSINTTOFP()
446 if (RetVT == MVT::f16) in getSINTTOFP()
448 if (RetVT == MVT::f32) in getSINTTOFP()
450 if (RetVT == MVT::f64) in getSINTTOFP()
452 if (RetVT == MVT::f80) in getSINTTOFP()
454 if (RetVT == MVT::f128) in getSINTTOFP()
456 if (RetVT == MVT::ppcf128) in getSINTTOFP()
465 if (OpVT == MVT::i32) { in getUINTTOFP()
466 if (RetVT == MVT::f16) in getUINTTOFP()
468 if (RetVT == MVT::f32) in getUINTTOFP()
470 if (RetVT == MVT::f64) in getUINTTOFP()
472 if (RetVT == MVT::f80) in getUINTTOFP()
474 if (RetVT == MVT::f128) in getUINTTOFP()
476 if (RetVT == MVT::ppcf128) in getUINTTOFP()
478 } else if (OpVT == MVT::i64) { in getUINTTOFP()
479 if (RetVT == MVT::f16) in getUINTTOFP()
481 if (RetVT == MVT::f32) in getUINTTOFP()
483 if (RetVT == MVT::f64) in getUINTTOFP()
485 if (RetVT == MVT::f80) in getUINTTOFP()
487 if (RetVT == MVT::f128) in getUINTTOFP()
489 if (RetVT == MVT::ppcf128) in getUINTTOFP()
491 } else if (OpVT == MVT::i128) { in getUINTTOFP()
492 if (RetVT == MVT::f16) in getUINTTOFP()
494 if (RetVT == MVT::f32) in getUINTTOFP()
496 if (RetVT == MVT::f64) in getUINTTOFP()
498 if (RetVT == MVT::f80) in getUINTTOFP()
500 if (RetVT == MVT::f128) in getUINTTOFP()
502 if (RetVT == MVT::ppcf128) in getUINTTOFP()
569 MVT VT) { in getOUTLINE_ATOMIC()
610 RTLIB::Libcall RTLIB::getSYNC(unsigned Opc, MVT VT) { in getSYNC()
616 case MVT::i8: \ in getSYNC()
618 case MVT::i16: \ in getSYNC()
620 case MVT::i32: \ in getSYNC()
622 case MVT::i64: \ in getSYNC()
624 case MVT::i128: \ in getSYNC()
787 for (MVT VT : {MVT::i2, MVT::i4}) in initActions()
790 for (MVT AVT : MVT::all_valuetypes()) { in initActions()
791 for (MVT VT : {MVT::i2, MVT::i4, MVT::v128i2, MVT::v64i4}) { in initActions()
799 for (MVT VT : {MVT::i2, MVT::i4}) { in initActions()
807 for (MVT VT : MVT::fp_valuetypes()) { in initActions()
808 MVT IntVT = MVT::getIntegerVT(VT.getFixedSizeInBits()); in initActions()
816 for (MVT VT : MVT::all_valuetypes()) { in initActions()
922 setOperationAction(ISD::PREFETCH, MVT::Other, Expand); in initActions()
925 setOperationAction(ISD::READCYCLECOUNTER, MVT::i64, Expand); in initActions()
931 {MVT::bf16, MVT::f16, MVT::f32, MVT::f64, MVT::f80, MVT::f128}, in initActions()
939 {MVT::f32, MVT::f64, MVT::f128}, Expand); in initActions()
942 setOperationAction(ISD::TRAP, MVT::Other, Expand); in initActions()
946 setOperationAction(ISD::DEBUGTRAP, MVT::Other, Expand); in initActions()
948 setOperationAction(ISD::UBSANTRAP, MVT::Other, Expand); in initActions()
950 setOperationAction(ISD::GET_FPENV_MEM, MVT::Other, Expand); in initActions()
951 setOperationAction(ISD::SET_FPENV_MEM, MVT::Other, Expand); in initActions()
953 for (MVT VT : {MVT::i8, MVT::i16, MVT::i32, MVT::i64}) { in initActions()
957 setOperationAction(ISD::RESET_FPMODE, MVT::Other, Expand); in initActions()
960 MVT TargetLoweringBase::getScalarShiftAmountTy(const DataLayout &DL, in getScalarShiftAmountTy()
962 return MVT::getIntegerVT(DL.getPointerSizeInBits(0)); in getScalarShiftAmountTy()
970 MVT ShiftVT = in getShiftAmountTy()
975 ShiftVT = MVT::i32; in getShiftAmountTy()
1009 MVT SVT = VT.getSimpleVT(); in getTypeConversion()
1011 MVT NVT = TransformToType[SVT.SimpleTy]; in getTypeConversion()
1098 MVT NVT = MVT::getVectorVT(EltVT.getSimpleVT(), NumElts); in getTypeConversion()
1100 if (NVT != MVT() && ValueTypeActions.getTypeAction(NVT) == TypeLegal) in getTypeConversion()
1121 MVT LargerVector = MVT::getVectorVT(EltVT.getSimpleVT(), NumElts); in getTypeConversion()
1122 if (LargerVector == MVT()) in getTypeConversion()
1145 static unsigned getVectorTypeBreakdownMVT(MVT VT, MVT &IntermediateVT, in getVectorTypeBreakdownMVT()
1147 MVT &RegisterVT, in getVectorTypeBreakdownMVT()
1151 MVT EltTy = VT.getVectorElementType(); in getVectorTypeBreakdownMVT()
1173 !TLI->isTypeLegal(MVT::getVectorVT(EltTy, EC))) { in getVectorTypeBreakdownMVT()
1180 MVT NewVT = MVT::getVectorVT(EltTy, EC); in getVectorTypeBreakdownMVT()
1190 MVT DestVT = TLI->getRegisterType(NewVT); in getVectorTypeBreakdownMVT()
1204 for (const auto *I = TRI.legalclasstypes_begin(RC); *I != MVT::Other; ++I) in isLegalRC()
1307 MVT VT) const { in findRepresentativeClass()
1335 static_assert(MVT::VALUETYPE_SIZE <= MVT::MAX_ALLOWED_VALUETYPE, in computeRegisterProperties()
1339 for (unsigned i = 0; i != MVT::VALUETYPE_SIZE; ++i) { in computeRegisterProperties()
1341 RegisterTypeForVT[i] = TransformToType[i] = (MVT::SimpleValueType)i; in computeRegisterProperties()
1344 NumRegistersForVT[MVT::isVoid] = 0; in computeRegisterProperties()
1347 unsigned LargestIntReg = MVT::LAST_INTEGER_VALUETYPE; in computeRegisterProperties()
1349 assert(LargestIntReg != MVT::i1 && "No integer registers defined!"); in computeRegisterProperties()
1354 ExpandedReg <= MVT::LAST_INTEGER_VALUETYPE; ++ExpandedReg) { in computeRegisterProperties()
1356 RegisterTypeForVT[ExpandedReg] = (MVT::SimpleValueType)LargestIntReg; in computeRegisterProperties()
1357 TransformToType[ExpandedReg] = (MVT::SimpleValueType)(ExpandedReg - 1); in computeRegisterProperties()
1358 ValueTypeActions.setTypeAction((MVT::SimpleValueType)ExpandedReg, in computeRegisterProperties()
1366 IntReg >= (unsigned)MVT::i1; --IntReg) { in computeRegisterProperties()
1367 MVT IVT = (MVT::SimpleValueType)IntReg; in computeRegisterProperties()
1372 (MVT::SimpleValueType)LegalIntReg; in computeRegisterProperties()
1378 if (!isTypeLegal(MVT::ppcf128)) { in computeRegisterProperties()
1379 if (isTypeLegal(MVT::f64)) { in computeRegisterProperties()
1380 NumRegistersForVT[MVT::ppcf128] = 2*NumRegistersForVT[MVT::f64]; in computeRegisterProperties()
1381 RegisterTypeForVT[MVT::ppcf128] = MVT::f64; in computeRegisterProperties()
1382 TransformToType[MVT::ppcf128] = MVT::f64; in computeRegisterProperties()
1383 ValueTypeActions.setTypeAction(MVT::ppcf128, TypeExpandFloat); in computeRegisterProperties()
1385 NumRegistersForVT[MVT::ppcf128] = NumRegistersForVT[MVT::i128]; in computeRegisterProperties()
1386 RegisterTypeForVT[MVT::ppcf128] = RegisterTypeForVT[MVT::i128]; in computeRegisterProperties()
1387 TransformToType[MVT::ppcf128] = MVT::i128; in computeRegisterProperties()
1388 ValueTypeActions.setTypeAction(MVT::ppcf128, TypeSoftenFloat); in computeRegisterProperties()
1394 if (!isTypeLegal(MVT::f128)) { in computeRegisterProperties()
1395 NumRegistersForVT[MVT::f128] = NumRegistersForVT[MVT::i128]; in computeRegisterProperties()
1396 RegisterTypeForVT[MVT::f128] = RegisterTypeForVT[MVT::i128]; in computeRegisterProperties()
1397 TransformToType[MVT::f128] = MVT::i128; in computeRegisterProperties()
1398 ValueTypeActions.setTypeAction(MVT::f128, TypeSoftenFloat); in computeRegisterProperties()
1403 if (!isTypeLegal(MVT::f80)) { in computeRegisterProperties()
1404 NumRegistersForVT[MVT::f80] = 3*NumRegistersForVT[MVT::i32]; in computeRegisterProperties()
1405 RegisterTypeForVT[MVT::f80] = RegisterTypeForVT[MVT::i32]; in computeRegisterProperties()
1406 TransformToType[MVT::f80] = MVT::i32; in computeRegisterProperties()
1407 ValueTypeActions.setTypeAction(MVT::f80, TypeSoftenFloat); in computeRegisterProperties()
1412 if (!isTypeLegal(MVT::f64)) { in computeRegisterProperties()
1413 NumRegistersForVT[MVT::f64] = NumRegistersForVT[MVT::i64]; in computeRegisterProperties()
1414 RegisterTypeForVT[MVT::f64] = RegisterTypeForVT[MVT::i64]; in computeRegisterProperties()
1415 TransformToType[MVT::f64] = MVT::i64; in computeRegisterProperties()
1416 ValueTypeActions.setTypeAction(MVT::f64, TypeSoftenFloat); in computeRegisterProperties()
1421 if (!isTypeLegal(MVT::f32)) { in computeRegisterProperties()
1422 NumRegistersForVT[MVT::f32] = NumRegistersForVT[MVT::i32]; in computeRegisterProperties()
1423 RegisterTypeForVT[MVT::f32] = RegisterTypeForVT[MVT::i32]; in computeRegisterProperties()
1424 TransformToType[MVT::f32] = MVT::i32; in computeRegisterProperties()
1425 ValueTypeActions.setTypeAction(MVT::f32, TypeSoftenFloat); in computeRegisterProperties()
1431 if (!isTypeLegal(MVT::f16)) { in computeRegisterProperties()
1434 NumRegistersForVT[MVT::f16] = NumRegistersForVT[MVT::i16]; in computeRegisterProperties()
1435 RegisterTypeForVT[MVT::f16] = RegisterTypeForVT[MVT::i16]; in computeRegisterProperties()
1436 TransformToType[MVT::f16] = MVT::f32; in computeRegisterProperties()
1437 ValueTypeActions.setTypeAction(MVT::f16, TypeSoftPromoteHalf); in computeRegisterProperties()
1439 NumRegistersForVT[MVT::f16] = NumRegistersForVT[MVT::f32]; in computeRegisterProperties()
1440 RegisterTypeForVT[MVT::f16] = RegisterTypeForVT[MVT::f32]; in computeRegisterProperties()
1441 TransformToType[MVT::f16] = MVT::f32; in computeRegisterProperties()
1442 ValueTypeActions.setTypeAction(MVT::f16, TypePromoteFloat); in computeRegisterProperties()
1449 if (!isTypeLegal(MVT::bf16)) { in computeRegisterProperties()
1450 NumRegistersForVT[MVT::bf16] = NumRegistersForVT[MVT::f32]; in computeRegisterProperties()
1451 RegisterTypeForVT[MVT::bf16] = RegisterTypeForVT[MVT::f32]; in computeRegisterProperties()
1452 TransformToType[MVT::bf16] = MVT::f32; in computeRegisterProperties()
1453 ValueTypeActions.setTypeAction(MVT::bf16, TypeSoftPromoteHalf); in computeRegisterProperties()
1457 for (unsigned i = MVT::FIRST_VECTOR_VALUETYPE; in computeRegisterProperties()
1458 i <= (unsigned)MVT::LAST_VECTOR_VALUETYPE; ++i) { in computeRegisterProperties()
1459 MVT VT = (MVT::SimpleValueType) i; in computeRegisterProperties()
1463 MVT EltVT = VT.getVectorElementType(); in computeRegisterProperties()
1470 MVT::SimpleValueType EndVT = IsScalable ? in computeRegisterProperties()
1471 MVT::LAST_INTEGER_SCALABLE_VECTOR_VALUETYPE : in computeRegisterProperties()
1472 MVT::LAST_INTEGER_FIXEDLEN_VECTOR_VALUETYPE; in computeRegisterProperties()
1476 (MVT::SimpleValueType)nVT <= EndVT; ++nVT) { in computeRegisterProperties()
1477 MVT SVT = (MVT::SimpleValueType) nVT; in computeRegisterProperties()
1498 for (unsigned nVT = i + 1; nVT <= MVT::LAST_VECTOR_VALUETYPE; ++nVT) { in computeRegisterProperties()
1499 MVT SVT = (MVT::SimpleValueType) nVT; in computeRegisterProperties()
1517 MVT NVT = VT.getPow2VectorType(); in computeRegisterProperties()
1530 MVT IntermediateVT; in computeRegisterProperties()
1531 MVT RegisterVT; in computeRegisterProperties()
1540 MVT NVT = VT.getPow2VectorType(); in computeRegisterProperties()
1543 TransformToType[i] = MVT::Other; in computeRegisterProperties()
1570 for (unsigned i = 0; i != MVT::VALUETYPE_SIZE; ++i) { in computeRegisterProperties()
1573 std::tie(RRC, Cost) = findRepresentativeClass(TRI, (MVT::SimpleValueType)i); in computeRegisterProperties()
1585 MVT::SimpleValueType TargetLoweringBase::getCmpLibcallReturnType() const { in getCmpLibcallReturnType()
1586 return MVT::i32; // return the default value in getCmpLibcallReturnType()
1600 MVT &RegisterVT) const { in getVectorTypeBreakdown()
1671 MVT DestVT = getRegisterType(Context, NewVT); in getVectorTypeBreakdown()
1709 MVT TargetLoweringBase::getPreferredSwitchConditionType(LLVMContext &Context, in getPreferredSwitchConditionType()
1741 MVT MinVT = TLI.getRegisterType(MVT::i32); in GetReturnInfo()
1748 MVT PartVT = in GetReturnInfo()
2101 if (VT.getScalarType() == MVT::f64) { in getReciprocalOpName()
2103 } else if (VT.getScalarType() == MVT::f16) { in getReciprocalOpName()
2106 assert(VT.getScalarType() == MVT::f32 && in getReciprocalOpName()
2280 MVT LoadMVT = LoadVT.getSimpleVT(); in isLoadBitCastBeneficial()