|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/CodeGen/BasicTTIImpl.h 893 if (LA != TargetLowering::Legal && LA != TargetLowering::Custom) {
include/llvm/CodeGen/TargetLowering.h 915 if (Action != Legal)
983 (getOperationAction(Op, VT) == Legal ||
992 (getOperationAction(Op, VT) == Legal ||
1001 (getOperationAction(Op, VT) == Legal ||
1089 getOperationAction(Op, VT) == Legal;
1108 return getLoadExtAction(ExtType, ValVT, MemVT) == Legal;
1114 return getLoadExtAction(ExtType, ValVT, MemVT) == Legal ||
1133 return isTypeLegal(ValVT) && getTruncStoreAction(ValVT, MemVT) == Legal;
1140 (getTruncStoreAction(ValVT, MemVT) == Legal ||
1158 (getIndexedLoadAction(IdxMode, VT.getSimpleVT()) == Legal ||
1176 (getIndexedStoreAction(IdxMode, VT.getSimpleVT()) == Legal ||
1198 return getCondCodeAction(CC, VT) == Legal;
1204 return getCondCodeAction(CC, VT) == Legal ||
lib/CodeGen/SelectionDAG/DAGCombiner.cpp13073 TLI.getOperationAction(ISD::FP16_TO_FP, VT) == TargetLowering::Legal)
19989 if (TLI.getOperationAction(ISD::ConstantFP, VT) == TargetLowering::Legal ||
lib/CodeGen/SelectionDAG/LegalizeDAG.cpp 503 case TargetLowering::Legal: {
619 case TargetLowering::Legal: {
679 case TargetLowering::Legal: {
859 case TargetLowering::Legal:
986 TargetLowering::LegalizeAction Action = TargetLowering::Legal;
1035 if (Action == TargetLowering::Legal) {
1069 if (Action == TargetLowering::Legal)
1081 if (Action == TargetLowering::Legal)
1094 Action = TargetLowering::Legal;
1160 Action = TargetLowering::Legal;
1219 case TargetLowering::Legal:
1641 case TargetLowering::Legal:
2819 == TargetLowering::Legal)
2839 == TargetLowering::Legal)
3721 == TargetLowering::Legal)
3732 == TargetLowering::Legal)
lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp 3185 (Action == TargetLowering::Legal && TLI.isTypeLegal(NVT)) ||
lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp 254 case TargetLowering::Legal:
282 case TargetLowering::Legal:
309 TargetLowering::LegalizeAction Action = TargetLowering::Legal;
350 == TargetLowering::Legal) {
355 == TargetLowering::Legal)
356 Action = TargetLowering::Legal;
491 case TargetLowering::Legal:
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp 1164 != TargetLowering::Legal))
lib/Target/AArch64/AArch64ISelLowering.cpp 199 setOperationAction(ISD::BITREVERSE, MVT::i32, Legal);
200 setOperationAction(ISD::BITREVERSE, MVT::i64, Legal);
474 setOperationAction(ISD::FFLOOR, Ty, Legal);
475 setOperationAction(ISD::FNEARBYINT, Ty, Legal);
476 setOperationAction(ISD::FCEIL, Ty, Legal);
477 setOperationAction(ISD::FRINT, Ty, Legal);
478 setOperationAction(ISD::FTRUNC, Ty, Legal);
479 setOperationAction(ISD::FROUND, Ty, Legal);
480 setOperationAction(ISD::FMINNUM, Ty, Legal);
481 setOperationAction(ISD::FMAXNUM, Ty, Legal);
482 setOperationAction(ISD::FMINIMUM, Ty, Legal);
483 setOperationAction(ISD::FMAXIMUM, Ty, Legal);
484 setOperationAction(ISD::LROUND, Ty, Legal);
485 setOperationAction(ISD::LLROUND, Ty, Legal);
486 setOperationAction(ISD::LRINT, Ty, Legal);
487 setOperationAction(ISD::LLRINT, Ty, Legal);
491 setOperationAction(ISD::FNEARBYINT, MVT::f16, Legal);
492 setOperationAction(ISD::FFLOOR, MVT::f16, Legal);
493 setOperationAction(ISD::FCEIL, MVT::f16, Legal);
494 setOperationAction(ISD::FRINT, MVT::f16, Legal);
495 setOperationAction(ISD::FTRUNC, MVT::f16, Legal);
496 setOperationAction(ISD::FROUND, MVT::f16, Legal);
497 setOperationAction(ISD::FMINNUM, MVT::f16, Legal);
498 setOperationAction(ISD::FMAXNUM, MVT::f16, Legal);
499 setOperationAction(ISD::FMINIMUM, MVT::f16, Legal);
500 setOperationAction(ISD::FMAXIMUM, MVT::f16, Legal);
516 setOperationAction(ISD::READCYCLECOUNTER, MVT::i64, Legal);
531 setOperationAction(ISD::ConstantFP, MVT::f32, Legal);
532 setOperationAction(ISD::ConstantFP, MVT::f64, Legal);
560 setIndexedLoadAction(im, MVT::i8, Legal);
561 setIndexedLoadAction(im, MVT::i16, Legal);
562 setIndexedLoadAction(im, MVT::i32, Legal);
563 setIndexedLoadAction(im, MVT::i64, Legal);
564 setIndexedLoadAction(im, MVT::f64, Legal);
565 setIndexedLoadAction(im, MVT::f32, Legal);
566 setIndexedLoadAction(im, MVT::f16, Legal);
567 setIndexedStoreAction(im, MVT::i8, Legal);
568 setIndexedStoreAction(im, MVT::i16, Legal);
569 setIndexedStoreAction(im, MVT::i32, Legal);
570 setIndexedStoreAction(im, MVT::i64, Legal);
571 setIndexedStoreAction(im, MVT::f64, Legal);
572 setIndexedStoreAction(im, MVT::f32, Legal);
573 setIndexedStoreAction(im, MVT::f16, Legal);
577 setOperationAction(ISD::TRAP, MVT::Other, Legal);
579 setOperationAction(ISD::DEBUGTRAP, MVT::Other, Legal);
752 setOperationAction(ISD::ANY_EXTEND, MVT::v4i32, Legal);
760 setOperationAction(ISD::MULHS, VT, Legal);
761 setOperationAction(ISD::MULHU, VT, Legal);
782 setOperationAction(ISD::FFLOOR, Ty, Legal);
783 setOperationAction(ISD::FNEARBYINT, Ty, Legal);
784 setOperationAction(ISD::FCEIL, Ty, Legal);
785 setOperationAction(ISD::FRINT, Ty, Legal);
786 setOperationAction(ISD::FTRUNC, Ty, Legal);
787 setOperationAction(ISD::FROUND, Ty, Legal);
792 setOperationAction(ISD::FFLOOR, Ty, Legal);
793 setOperationAction(ISD::FNEARBYINT, Ty, Legal);
794 setOperationAction(ISD::FCEIL, Ty, Legal);
795 setOperationAction(ISD::FRINT, Ty, Legal);
796 setOperationAction(ISD::FTRUNC, Ty, Legal);
797 setOperationAction(ISD::FROUND, Ty, Legal);
851 setOperationAction(ISD::CONCAT_VECTORS, VT, Legal);
873 setOperationAction(ISD::ABS, VT, Legal);
878 setOperationAction(Opcode, VT, Legal);
885 setOperationAction(Opcode, VT, Legal);
890 setIndexedLoadAction(im, VT, Legal);
891 setIndexedStoreAction(im, VT, Legal);
lib/Target/AMDGPU/AMDGPUISelLowering.cpp 119 setLoadExtAction(ISD::SEXTLOAD, VT, MVT::i8, Legal);
120 setLoadExtAction(ISD::SEXTLOAD, VT, MVT::i16, Legal);
124 setLoadExtAction(ISD::ZEXTLOAD, VT, MVT::i8, Legal);
125 setLoadExtAction(ISD::ZEXTLOAD, VT, MVT::i16, Legal);
129 setLoadExtAction(ISD::EXTLOAD, VT, MVT::i8, Legal);
130 setLoadExtAction(ISD::EXTLOAD, VT, MVT::i16, Legal);
237 setOperationAction(ISD::Constant, MVT::i32, Legal);
238 setOperationAction(ISD::Constant, MVT::i64, Legal);
239 setOperationAction(ISD::ConstantFP, MVT::f32, Legal);
240 setOperationAction(ISD::ConstantFP, MVT::f64, Legal);
250 setOperationAction(ISD::FCEIL, MVT::f32, Legal);
251 setOperationAction(ISD::FEXP2, MVT::f32, Legal);
252 setOperationAction(ISD::FPOW, MVT::f32, Legal);
253 setOperationAction(ISD::FLOG2, MVT::f32, Legal);
254 setOperationAction(ISD::FABS, MVT::f32, Legal);
255 setOperationAction(ISD::FFLOOR, MVT::f32, Legal);
256 setOperationAction(ISD::FRINT, MVT::f32, Legal);
257 setOperationAction(ISD::FTRUNC, MVT::f32, Legal);
258 setOperationAction(ISD::FMINNUM, MVT::f32, Legal);
259 setOperationAction(ISD::FMAXNUM, MVT::f32, Legal);
326 setOperationAction(ISD::ADDC, VT, Legal);
327 setOperationAction(ISD::SUBC, VT, Legal);
328 setOperationAction(ISD::ADDE, VT, Legal);
329 setOperationAction(ISD::SUBE, VT, Legal);
346 setOperationAction(ISD::SMIN, MVT::i32, Legal);
347 setOperationAction(ISD::UMIN, MVT::i32, Legal);
348 setOperationAction(ISD::SMAX, MVT::i32, Legal);
349 setOperationAction(ISD::UMAX, MVT::i32, Legal);
lib/Target/AMDGPU/R600ISelLowering.cpp 197 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i32, Legal);
229 setOperationAction(ISD::FMAD, MVT::f32, Legal);
lib/Target/AMDGPU/SIISelLowering.cpp 232 setOperationAction(ISD::UADDO, MVT::i32, Legal);
233 setOperationAction(ISD::USUBO, MVT::i32, Legal);
235 setOperationAction(ISD::ADDCARRY, MVT::i32, Legal);
236 setOperationAction(ISD::SUBCARRY, MVT::i32, Legal);
352 setOperationAction(ISD::BSWAP, MVT::i32, Legal);
353 setOperationAction(ISD::BITREVERSE, MVT::i32, Legal);
356 setOperationAction(ISD::READCYCLECOUNTER, MVT::i64, Legal);
368 setOperationAction(ISD::FMAD, MVT::f32, Legal);
408 setOperationAction(ISD::FMINNUM_IEEE, MVT::f32, Legal);
409 setOperationAction(ISD::FMAXNUM_IEEE, MVT::f32, Legal);
410 setOperationAction(ISD::FMINNUM_IEEE, MVT::f64, Legal);
411 setOperationAction(ISD::FMAXNUM_IEEE, MVT::f64, Legal);
415 setOperationAction(ISD::FTRUNC, MVT::f64, Legal);
416 setOperationAction(ISD::FCEIL, MVT::f64, Legal);
417 setOperationAction(ISD::FRINT, MVT::f64, Legal);
425 setOperationAction(ISD::FFLOOR, MVT::f64, Legal);
433 setOperationAction(ISD::Constant, MVT::i16, Legal);
435 setOperationAction(ISD::SMIN, MVT::i16, Legal);
436 setOperationAction(ISD::SMAX, MVT::i16, Legal);
438 setOperationAction(ISD::UMIN, MVT::i16, Legal);
439 setOperationAction(ISD::UMAX, MVT::i16, Legal);
480 setOperationAction(ISD::ConstantFP, MVT::f16, Legal);
505 setOperationAction(ISD::FMA, MVT::f16, Legal);
507 setOperationAction(ISD::FMAD, MVT::f16, Legal);
533 setOperationAction(ISD::Constant, MVT::v2i16, Legal);
534 setOperationAction(ISD::ConstantFP, MVT::v2f16, Legal);
536 setOperationAction(ISD::UNDEF, MVT::v2i16, Legal);
537 setOperationAction(ISD::UNDEF, MVT::v2f16, Legal);
580 setOperationAction(ISD::FNEG, MVT::v2f16, Legal);
583 setOperationAction(ISD::FABS, MVT::v2f16, Legal);
587 setOperationAction(ISD::FMAXNUM_IEEE, MVT::f16, Legal);
588 setOperationAction(ISD::FMINNUM_IEEE, MVT::f16, Legal);
598 setOperationAction(ISD::ADD, MVT::v2i16, Legal);
599 setOperationAction(ISD::SUB, MVT::v2i16, Legal);
600 setOperationAction(ISD::MUL, MVT::v2i16, Legal);
601 setOperationAction(ISD::SHL, MVT::v2i16, Legal);
602 setOperationAction(ISD::SRL, MVT::v2i16, Legal);
603 setOperationAction(ISD::SRA, MVT::v2i16, Legal);
604 setOperationAction(ISD::SMIN, MVT::v2i16, Legal);
605 setOperationAction(ISD::UMIN, MVT::v2i16, Legal);
606 setOperationAction(ISD::SMAX, MVT::v2i16, Legal);
607 setOperationAction(ISD::UMAX, MVT::v2i16, Legal);
609 setOperationAction(ISD::FADD, MVT::v2f16, Legal);
610 setOperationAction(ISD::FMUL, MVT::v2f16, Legal);
611 setOperationAction(ISD::FMA, MVT::v2f16, Legal);
613 setOperationAction(ISD::FMINNUM_IEEE, MVT::v2f16, Legal);
614 setOperationAction(ISD::FMAXNUM_IEEE, MVT::v2f16, Legal);
616 setOperationAction(ISD::FCANONICALIZE, MVT::v2f16, Legal);
lib/Target/ARC/ARCISelLowering.cpp 94 setOperationAction(ISD::ADD, MVT::i32, Legal);
95 setOperationAction(ISD::SUB, MVT::i32, Legal);
96 setOperationAction(ISD::AND, MVT::i32, Legal);
97 setOperationAction(ISD::SMAX, MVT::i32, Legal);
98 setOperationAction(ISD::SMIN, MVT::i32, Legal);
101 setOperationAction(ISD::SHL, MVT::i32, Legal);
102 setOperationAction(ISD::SRA, MVT::i32, Legal);
103 setOperationAction(ISD::SRL, MVT::i32, Legal);
104 setOperationAction(ISD::ROTR, MVT::i32, Legal);
106 setOperationAction(ISD::Constant, MVT::i32, Legal);
107 setOperationAction(ISD::UNDEF, MVT::i32, Legal);
110 setOperationAction(ISD::MUL, MVT::i32, Legal);
111 setOperationAction(ISD::MULHS, MVT::i32, Legal);
112 setOperationAction(ISD::MULHU, MVT::i32, Legal);
113 setOperationAction(ISD::LOAD, MVT::i32, Legal);
114 setOperationAction(ISD::STORE, MVT::i32, Legal);
123 setOperationAction(ISD::FRAMEADDR, MVT::i32, Legal);
lib/Target/ARM/ARMISelLowering.cpp 178 setOperationAction(ISD::CONCAT_VECTORS, VT, Legal);
179 setOperationAction(ISD::EXTRACT_SUBVECTOR, VT, Legal);
211 setOperationAction(Opcode, VT, Legal);
231 setOperationAction(ISD::BITCAST, VT, Legal);
232 setOperationAction(ISD::LOAD, VT, Legal);
233 setOperationAction(ISD::STORE, VT, Legal);
234 setOperationAction(ISD::UNDEF, VT, Legal);
256 setOperationAction(ISD::SMIN, VT, Legal);
257 setOperationAction(ISD::SMAX, VT, Legal);
258 setOperationAction(ISD::UMIN, VT, Legal);
259 setOperationAction(ISD::UMAX, VT, Legal);
260 setOperationAction(ISD::ABS, VT, Legal);
263 setOperationAction(ISD::MSTORE, VT, Legal);
264 setOperationAction(ISD::CTLZ, VT, Legal);
266 setOperationAction(ISD::BITREVERSE, VT, Legal);
267 setOperationAction(ISD::BSWAP, VT, Legal);
268 setOperationAction(ISD::SADDSAT, VT, Legal);
269 setOperationAction(ISD::UADDSAT, VT, Legal);
270 setOperationAction(ISD::SSUBSAT, VT, Legal);
271 setOperationAction(ISD::USUBSAT, VT, Legal);
281 setOperationAction(ISD::VECREDUCE_ADD, VT, Legal);
282 setOperationAction(ISD::VECREDUCE_SMAX, VT, Legal);
283 setOperationAction(ISD::VECREDUCE_UMAX, VT, Legal);
284 setOperationAction(ISD::VECREDUCE_SMIN, VT, Legal);
285 setOperationAction(ISD::VECREDUCE_UMIN, VT, Legal);
297 setIndexedLoadAction(im, VT, Legal);
298 setIndexedStoreAction(im, VT, Legal);
315 setOperationAction(ISD::SCALAR_TO_VECTOR, VT, Legal);
318 setOperationAction(ISD::MSTORE, VT, Legal);
323 setIndexedLoadAction(im, VT, Legal);
324 setIndexedStoreAction(im, VT, Legal);
328 setOperationAction(ISD::FMINNUM, VT, Legal);
329 setOperationAction(ISD::FMAXNUM, VT, Legal);
330 setOperationAction(ISD::FROUND, VT, Legal);
360 setOperationAction(ISD::AND, MVT::v2i64, Legal);
361 setOperationAction(ISD::OR, MVT::v2i64, Legal);
362 setOperationAction(ISD::XOR, MVT::v2i64, Legal);
365 addAllExtLoads(MVT::v8i16, MVT::v8i8, Legal);
366 addAllExtLoads(MVT::v4i32, MVT::v4i16, Legal);
367 addAllExtLoads(MVT::v4i32, MVT::v4i8, Legal);
370 setTruncStoreAction(MVT::v4i32, MVT::v4i16, Legal);
371 setTruncStoreAction(MVT::v4i32, MVT::v4i8, Legal);
372 setTruncStoreAction(MVT::v8i16, MVT::v8i8, Legal);
377 setIndexedLoadAction(im, MVT::v8i8, Legal);
378 setIndexedStoreAction(im, MVT::v8i8, Legal);
379 setIndexedLoadAction(im, MVT::v4i8, Legal);
380 setIndexedStoreAction(im, MVT::v4i8, Legal);
381 setIndexedLoadAction(im, MVT::v4i16, Legal);
382 setIndexedStoreAction(im, MVT::v4i16, Legal);
707 setOperationAction(ISD::FMINNUM, MVT::f16, Legal);
708 setOperationAction(ISD::FMAXNUM, MVT::f16, Legal);
914 setLoadExtAction(ISD::EXTLOAD, VT, Ty, Legal);
915 setLoadExtAction(ISD::ZEXTLOAD, VT, Ty, Legal);
916 setLoadExtAction(ISD::SEXTLOAD, VT, Ty, Legal);
1002 setIndexedLoadAction(im, MVT::i1, Legal);
1003 setIndexedLoadAction(im, MVT::i8, Legal);
1004 setIndexedLoadAction(im, MVT::i16, Legal);
1005 setIndexedLoadAction(im, MVT::i32, Legal);
1006 setIndexedStoreAction(im, MVT::i1, Legal);
1007 setIndexedStoreAction(im, MVT::i8, Legal);
1008 setIndexedStoreAction(im, MVT::i16, Legal);
1009 setIndexedStoreAction(im, MVT::i32, Legal);
1013 setIndexedLoadAction(ISD::POST_INC, MVT::i32, Legal);
1014 setIndexedStoreAction(ISD::POST_INC, MVT::i32, Legal);
1031 setOperationAction(ISD::SADDSAT, MVT::i32, Legal);
1032 setOperationAction(ISD::SSUBSAT, MVT::i32, Legal);
1067 setOperationAction(ISD::BITREVERSE, MVT::i32, Legal);
1182 setOperationAction(ISD::TRAP, MVT::Other, Legal);
1183 setOperationAction(ISD::DEBUGTRAP, MVT::Other, Legal);
1343 setOperationAction(ISD::FFLOOR, MVT::f32, Legal);
1344 setOperationAction(ISD::FCEIL, MVT::f32, Legal);
1345 setOperationAction(ISD::FROUND, MVT::f32, Legal);
1346 setOperationAction(ISD::FTRUNC, MVT::f32, Legal);
1347 setOperationAction(ISD::FNEARBYINT, MVT::f32, Legal);
1348 setOperationAction(ISD::FRINT, MVT::f32, Legal);
1349 setOperationAction(ISD::FMINNUM, MVT::f32, Legal);
1350 setOperationAction(ISD::FMAXNUM, MVT::f32, Legal);
1352 setOperationAction(ISD::FMINNUM, MVT::v2f32, Legal);
1353 setOperationAction(ISD::FMAXNUM, MVT::v2f32, Legal);
1354 setOperationAction(ISD::FMINNUM, MVT::v4f32, Legal);
1355 setOperationAction(ISD::FMAXNUM, MVT::v4f32, Legal);
1359 setOperationAction(ISD::FFLOOR, MVT::f64, Legal);
1360 setOperationAction(ISD::FCEIL, MVT::f64, Legal);
1361 setOperationAction(ISD::FROUND, MVT::f64, Legal);
1362 setOperationAction(ISD::FTRUNC, MVT::f64, Legal);
1363 setOperationAction(ISD::FNEARBYINT, MVT::f64, Legal);
1364 setOperationAction(ISD::FRINT, MVT::f64, Legal);
1365 setOperationAction(ISD::FMINNUM, MVT::f64, Legal);
1366 setOperationAction(ISD::FMAXNUM, MVT::f64, Legal);
1385 setOperationAction(ISD::FROUND, MVT::f16, Legal);
1391 setOperationAction(ISD::FMINIMUM, MVT::f16, Legal);
1392 setOperationAction(ISD::FMAXIMUM, MVT::f16, Legal);
1393 setOperationAction(ISD::FMINIMUM, MVT::f32, Legal);
1394 setOperationAction(ISD::FMAXIMUM, MVT::f32, Legal);
1395 setOperationAction(ISD::FMINIMUM, MVT::v2f32, Legal);
1396 setOperationAction(ISD::FMAXIMUM, MVT::v2f32, Legal);
1397 setOperationAction(ISD::FMINIMUM, MVT::v4f32, Legal);
1398 setOperationAction(ISD::FMAXIMUM, MVT::v4f32, Legal);
1401 setOperationAction(ISD::FMINNUM, MVT::v4f16, Legal);
1402 setOperationAction(ISD::FMAXNUM, MVT::v4f16, Legal);
1403 setOperationAction(ISD::FMINNUM, MVT::v8f16, Legal);
1404 setOperationAction(ISD::FMAXNUM, MVT::v8f16, Legal);
1406 setOperationAction(ISD::FMINIMUM, MVT::v4f16, Legal);
1407 setOperationAction(ISD::FMAXIMUM, MVT::v4f16, Legal);
1408 setOperationAction(ISD::FMINIMUM, MVT::v8f16, Legal);
1409 setOperationAction(ISD::FMAXIMUM, MVT::v8f16, Legal);
lib/Target/AVR/AVRISelLowering.cpp 68 setOperationAction(ISD::ADDC, VT, Legal);
69 setOperationAction(ISD::SUBC, VT, Legal);
70 setOperationAction(ISD::ADDE, VT, Legal);
71 setOperationAction(ISD::SUBE, VT, Legal);
116 setIndexedLoadAction(ISD::POST_INC, MVT::i8, Legal);
117 setIndexedLoadAction(ISD::POST_INC, MVT::i16, Legal);
118 setIndexedLoadAction(ISD::PRE_DEC, MVT::i8, Legal);
119 setIndexedLoadAction(ISD::PRE_DEC, MVT::i16, Legal);
120 setIndexedStoreAction(ISD::POST_INC, MVT::i8, Legal);
121 setIndexedStoreAction(ISD::POST_INC, MVT::i16, Legal);
122 setIndexedStoreAction(ISD::PRE_DEC, MVT::i8, Legal);
123 setIndexedStoreAction(ISD::PRE_DEC, MVT::i16, Legal);
lib/Target/Hexagon/HexagonISelLowering.cpp 1292 setOperationAction(ISD::ConstantFP, MVT::f32, Legal);
1293 setOperationAction(ISD::ConstantFP, MVT::f64, Legal);
1294 setOperationAction(ISD::TRAP, MVT::Other, Legal);
1336 setOperationAction(ISD::ABS, MVT::i32, Legal);
1337 setOperationAction(ISD::ABS, MVT::i64, Legal);
1361 setOperationAction(ISD::CTPOP, MVT::i64, Legal);
1363 setOperationAction(ISD::BITREVERSE, MVT::i32, Legal);
1364 setOperationAction(ISD::BITREVERSE, MVT::i64, Legal);
1365 setOperationAction(ISD::BSWAP, MVT::i32, Legal);
1366 setOperationAction(ISD::BSWAP, MVT::i64, Legal);
1368 setOperationAction(ISD::FSHL, MVT::i32, Legal);
1369 setOperationAction(ISD::FSHL, MVT::i64, Legal);
1370 setOperationAction(ISD::FSHR, MVT::i32, Legal);
1371 setOperationAction(ISD::FSHR, MVT::i64, Legal);
1469 setLoadExtAction(ISD::EXTLOAD, MVT::v2i16, MVT::v2i8, Legal);
1470 setLoadExtAction(ISD::ZEXTLOAD, MVT::v2i16, MVT::v2i8, Legal);
1471 setLoadExtAction(ISD::SEXTLOAD, MVT::v2i16, MVT::v2i8, Legal);
1472 setLoadExtAction(ISD::EXTLOAD, MVT::v4i16, MVT::v4i8, Legal);
1473 setLoadExtAction(ISD::ZEXTLOAD, MVT::v4i16, MVT::v4i8, Legal);
1474 setLoadExtAction(ISD::SEXTLOAD, MVT::v4i16, MVT::v4i8, Legal);
1486 setOperationAction(ISD::ADD, NativeVT, Legal);
1487 setOperationAction(ISD::SUB, NativeVT, Legal);
1488 setOperationAction(ISD::MUL, NativeVT, Legal);
1489 setOperationAction(ISD::AND, NativeVT, Legal);
1490 setOperationAction(ISD::OR, NativeVT, Legal);
1491 setOperationAction(ISD::XOR, NativeVT, Legal);
1530 setOperationAction(ISD::FMINNUM, MVT::f32, Legal);
1531 setOperationAction(ISD::FMAXNUM, MVT::f32, Legal);
1550 setIndexedLoadAction(ISD::POST_INC, VT, Legal);
1551 setIndexedStoreAction(ISD::POST_INC, VT, Legal);
1557 setOperationAction(ISD::ROTL, MVT::i32, Legal);
1558 setOperationAction(ISD::ROTL, MVT::i64, Legal);
1559 setOperationAction(ISD::ROTR, MVT::i32, Legal);
1560 setOperationAction(ISD::ROTR, MVT::i64, Legal);
1563 setOperationAction(ISD::FADD, MVT::f64, Legal);
1564 setOperationAction(ISD::FSUB, MVT::f64, Legal);
lib/Target/Hexagon/HexagonISelLoweringHVX.cpp 69 setOperationAction(ISD::VECTOR_SHUFFLE, ByteV, Legal);
70 setOperationAction(ISD::VECTOR_SHUFFLE, ByteW, Legal);
73 setIndexedLoadAction(ISD::POST_INC, T, Legal);
74 setIndexedStoreAction(ISD::POST_INC, T, Legal);
76 setOperationAction(ISD::AND, T, Legal);
77 setOperationAction(ISD::OR, T, Legal);
78 setOperationAction(ISD::XOR, T, Legal);
79 setOperationAction(ISD::ADD, T, Legal);
80 setOperationAction(ISD::SUB, T, Legal);
81 setOperationAction(ISD::CTPOP, T, Legal);
82 setOperationAction(ISD::CTLZ, T, Legal);
84 setOperationAction(ISD::SIGN_EXTEND_VECTOR_INREG, T, Legal);
85 setOperationAction(ISD::ZERO_EXTEND_VECTOR_INREG, T, Legal);
86 setOperationAction(ISD::BSWAP, T, Legal);
139 setOperationAction(ISD::SIGN_EXTEND_VECTOR_INREG, T, Legal);
140 setOperationAction(ISD::ZERO_EXTEND_VECTOR_INREG, T, Legal);
148 setOperationAction(ISD::ADD, T, Legal);
149 setOperationAction(ISD::SUB, T, Legal);
192 setOperationAction(ISD::AND, BoolV, Legal);
193 setOperationAction(ISD::OR, BoolV, Legal);
194 setOperationAction(ISD::XOR, BoolV, Legal);
lib/Target/Lanai/LanaiISelLowering.cpp 126 setOperationAction(ISD::CTPOP, MVT::i32, Legal);
127 setOperationAction(ISD::CTLZ, MVT::i32, Legal);
128 setOperationAction(ISD::CTTZ, MVT::i32, Legal);
lib/Target/MSP430/MSP430ISelLowering.cpp 57 setIndexedLoadAction(ISD::POST_INC, MVT::i8, Legal);
58 setIndexedLoadAction(ISD::POST_INC, MVT::i16, Legal);
lib/Target/Mips/MipsISelLowering.cpp 417 setOperationAction(ISD::CTPOP, MVT::i32, Legal);
418 setOperationAction(ISD::CTPOP, MVT::i64, Legal);
498 setOperationAction(ISD::TRAP, MVT::Other, Legal);
lib/Target/Mips/MipsSEISelLowering.cpp 94 setOperationAction(ISD::ADD, VecTys[i], Legal);
95 setOperationAction(ISD::SUB, VecTys[i], Legal);
96 setOperationAction(ISD::LOAD, VecTys[i], Legal);
97 setOperationAction(ISD::STORE, VecTys[i], Legal);
98 setOperationAction(ISD::BITCAST, VecTys[i], Legal);
108 setOperationAction(ISD::ADDC, MVT::i32, Legal);
109 setOperationAction(ISD::ADDE, MVT::i32, Legal);
114 setOperationAction(ISD::MUL, MVT::v2i16, Legal);
188 setOperationAction(ISD::MUL, MVT::i64, Legal);
231 setOperationAction(ISD::MUL, MVT::i32, Legal);
232 setOperationAction(ISD::MULHS, MVT::i32, Legal);
233 setOperationAction(ISD::MULHU, MVT::i32, Legal);
239 setOperationAction(ISD::SDIV, MVT::i32, Legal);
240 setOperationAction(ISD::UDIV, MVT::i32, Legal);
241 setOperationAction(ISD::SREM, MVT::i32, Legal);
242 setOperationAction(ISD::UREM, MVT::i32, Legal);
246 setOperationAction(ISD::SETCC, MVT::i32, Legal);
247 setOperationAction(ISD::SELECT, MVT::i32, Legal);
250 setOperationAction(ISD::SETCC, MVT::f32, Legal);
251 setOperationAction(ISD::SELECT, MVT::f32, Legal);
255 setOperationAction(ISD::SETCC, MVT::f64, Legal);
259 setOperationAction(ISD::BRCOND, MVT::Other, Legal);
278 setOperationAction(ISD::MUL, MVT::i64, Legal);
279 setOperationAction(ISD::MULHS, MVT::i64, Legal);
280 setOperationAction(ISD::MULHU, MVT::i64, Legal);
286 setOperationAction(ISD::SDIV, MVT::i64, Legal);
287 setOperationAction(ISD::UDIV, MVT::i64, Legal);
288 setOperationAction(ISD::SREM, MVT::i64, Legal);
289 setOperationAction(ISD::UREM, MVT::i64, Legal);
293 setOperationAction(ISD::SETCC, MVT::i64, Legal);
294 setOperationAction(ISD::SELECT, MVT::i64, Legal);
324 setOperationAction(ISD::BITCAST, Ty, Legal);
325 setOperationAction(ISD::LOAD, Ty, Legal);
326 setOperationAction(ISD::STORE, Ty, Legal);
328 setOperationAction(ISD::INSERT_VECTOR_ELT, Ty, Legal);
330 setOperationAction(ISD::UNDEF, Ty, Legal);
332 setOperationAction(ISD::ADD, Ty, Legal);
333 setOperationAction(ISD::AND, Ty, Legal);
334 setOperationAction(ISD::CTLZ, Ty, Legal);
335 setOperationAction(ISD::CTPOP, Ty, Legal);
336 setOperationAction(ISD::MUL, Ty, Legal);
337 setOperationAction(ISD::OR, Ty, Legal);
338 setOperationAction(ISD::SDIV, Ty, Legal);
339 setOperationAction(ISD::SREM, Ty, Legal);
340 setOperationAction(ISD::SHL, Ty, Legal);
341 setOperationAction(ISD::SRA, Ty, Legal);
342 setOperationAction(ISD::SRL, Ty, Legal);
343 setOperationAction(ISD::SUB, Ty, Legal);
344 setOperationAction(ISD::SMAX, Ty, Legal);
345 setOperationAction(ISD::SMIN, Ty, Legal);
346 setOperationAction(ISD::UDIV, Ty, Legal);
347 setOperationAction(ISD::UREM, Ty, Legal);
348 setOperationAction(ISD::UMAX, Ty, Legal);
349 setOperationAction(ISD::UMIN, Ty, Legal);
351 setOperationAction(ISD::VSELECT, Ty, Legal);
352 setOperationAction(ISD::XOR, Ty, Legal);
355 setOperationAction(ISD::FP_TO_SINT, Ty, Legal);
356 setOperationAction(ISD::FP_TO_UINT, Ty, Legal);
357 setOperationAction(ISD::SINT_TO_FP, Ty, Legal);
358 setOperationAction(ISD::UINT_TO_FP, Ty, Legal);
361 setOperationAction(ISD::SETCC, Ty, Legal);
378 setOperationAction(ISD::LOAD, Ty, Legal);
379 setOperationAction(ISD::STORE, Ty, Legal);
380 setOperationAction(ISD::BITCAST, Ty, Legal);
381 setOperationAction(ISD::EXTRACT_VECTOR_ELT, Ty, Legal);
382 setOperationAction(ISD::INSERT_VECTOR_ELT, Ty, Legal);
386 setOperationAction(ISD::FABS, Ty, Legal);
387 setOperationAction(ISD::FADD, Ty, Legal);
388 setOperationAction(ISD::FDIV, Ty, Legal);
389 setOperationAction(ISD::FEXP2, Ty, Legal);
390 setOperationAction(ISD::FLOG2, Ty, Legal);
391 setOperationAction(ISD::FMA, Ty, Legal);
392 setOperationAction(ISD::FMUL, Ty, Legal);
393 setOperationAction(ISD::FRINT, Ty, Legal);
394 setOperationAction(ISD::FSQRT, Ty, Legal);
395 setOperationAction(ISD::FSUB, Ty, Legal);
396 setOperationAction(ISD::VSELECT, Ty, Legal);
398 setOperationAction(ISD::SETCC, Ty, Legal);
lib/Target/NVPTX/NVPTXISelLowering.cpp 385 setOperationAction(ISD::SINT_TO_FP, MVT::f16, Legal);
386 setOperationAction(ISD::FP_TO_SINT, MVT::f16, Legal);
392 setFP16OperationAction(ISD::SETCC, MVT::f16, Legal, Promote);
393 setFP16OperationAction(ISD::SETCC, MVT::v2f16, Legal, Expand);
404 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i64, Legal);
405 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i32, Legal);
406 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i16, Legal);
407 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i8 , Legal);
417 setOperationAction(ISD::BITREVERSE, MVT::i32, Legal);
418 setOperationAction(ISD::BITREVERSE, MVT::i64, Legal);
423 setOperationAction(ISD::ROTL, MVT::i64, Legal);
424 setOperationAction(ISD::ROTR, MVT::i64, Legal);
425 setOperationAction(ISD::ROTL, MVT::i32, Legal);
426 setOperationAction(ISD::ROTR, MVT::i32, Legal);
475 setOperationAction(ISD::ConstantFP, MVT::f64, Legal);
476 setOperationAction(ISD::ConstantFP, MVT::f32, Legal);
477 setOperationAction(ISD::ConstantFP, MVT::f16, Legal);
480 setOperationAction(ISD::TRAP, MVT::Other, Legal);
495 setOperationAction(ISD::ABS, Ty, Legal);
496 setOperationAction(ISD::SMIN, Ty, Legal);
497 setOperationAction(ISD::SMAX, Ty, Legal);
498 setOperationAction(ISD::UMIN, Ty, Legal);
499 setOperationAction(ISD::UMAX, Ty, Legal);
501 setOperationAction(ISD::CTPOP, Ty, Legal);
502 setOperationAction(ISD::CTLZ, Ty, Legal);
537 setFP16OperationAction(Op, MVT::f16, Legal, Promote);
538 setFP16OperationAction(Op, MVT::v2f16, Legal, Expand);
550 setOperationAction(Op, MVT::f16, Legal);
551 setOperationAction(Op, MVT::f32, Legal);
552 setOperationAction(Op, MVT::f64, Legal);
574 setOperationAction(Op, MVT::f32, Legal);
575 setOperationAction(Op, MVT::f64, Legal);
lib/Target/PowerPC/PPCISelLowering.cpp 157 setOperationAction(ISD::BITREVERSE, MVT::i32, Legal);
158 setOperationAction(ISD::BITREVERSE, MVT::i64, Legal);
172 setIndexedLoadAction(ISD::PRE_INC, MVT::i1, Legal);
173 setIndexedLoadAction(ISD::PRE_INC, MVT::i8, Legal);
174 setIndexedLoadAction(ISD::PRE_INC, MVT::i16, Legal);
175 setIndexedLoadAction(ISD::PRE_INC, MVT::i32, Legal);
176 setIndexedLoadAction(ISD::PRE_INC, MVT::i64, Legal);
177 setIndexedStoreAction(ISD::PRE_INC, MVT::i1, Legal);
178 setIndexedStoreAction(ISD::PRE_INC, MVT::i8, Legal);
179 setIndexedStoreAction(ISD::PRE_INC, MVT::i16, Legal);
180 setIndexedStoreAction(ISD::PRE_INC, MVT::i32, Legal);
181 setIndexedStoreAction(ISD::PRE_INC, MVT::i64, Legal);
183 setIndexedLoadAction(ISD::PRE_INC, MVT::f32, Legal);
184 setIndexedLoadAction(ISD::PRE_INC, MVT::f64, Legal);
185 setIndexedStoreAction(ISD::PRE_INC, MVT::f32, Legal);
186 setIndexedStoreAction(ISD::PRE_INC, MVT::f64, Legal);
192 setOperationAction(ISD::ADDC, VT, Legal);
193 setOperationAction(ISD::ADDE, VT, Legal);
194 setOperationAction(ISD::SUBC, VT, Legal);
195 setOperationAction(ISD::SUBE, VT, Legal);
286 setOperationAction(ISD::FMA , MVT::f64, Legal);
287 setOperationAction(ISD::FMA , MVT::f32, Legal);
304 setOperationAction(ISD::FCOPYSIGN, MVT::f64, Legal);
305 setOperationAction(ISD::FCOPYSIGN, MVT::f32, Legal);
312 setOperationAction(ISD::FFLOOR, MVT::f64, Legal);
313 setOperationAction(ISD::FCEIL, MVT::f64, Legal);
314 setOperationAction(ISD::FTRUNC, MVT::f64, Legal);
315 setOperationAction(ISD::FROUND, MVT::f64, Legal);
317 setOperationAction(ISD::FFLOOR, MVT::f32, Legal);
318 setOperationAction(ISD::FCEIL, MVT::f32, Legal);
319 setOperationAction(ISD::FTRUNC, MVT::f32, Legal);
320 setOperationAction(ISD::FROUND, MVT::f32, Legal);
332 setOperationAction(ISD::CTTZ , MVT::i32 , Legal);
333 setOperationAction(ISD::CTTZ , MVT::i64 , Legal);
340 setOperationAction(ISD::CTPOP, MVT::i32 , Legal);
341 setOperationAction(ISD::CTPOP, MVT::i64 , Legal);
375 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Legal);
376 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Legal);
377 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Legal);
388 setOperationAction(ISD::BITCAST, MVT::f32, Legal);
389 setOperationAction(ISD::BITCAST, MVT::i32, Legal);
390 setOperationAction(ISD::BITCAST, MVT::i64, Legal);
391 setOperationAction(ISD::BITCAST, MVT::f64, Legal);
425 setOperationAction(ISD::TRAP, MVT::Other, Legal);
515 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Legal);
552 setOperationAction(ISD::FMAXNUM_IEEE, MVT::f64, Legal);
553 setOperationAction(ISD::FMAXNUM_IEEE, MVT::f32, Legal);
554 setOperationAction(ISD::FMINNUM_IEEE, MVT::f64, Legal);
555 setOperationAction(ISD::FMINNUM_IEEE, MVT::f32, Legal);
563 setOperationAction(ISD::ADD, VT, Legal);
564 setOperationAction(ISD::SUB, VT, Legal);
569 setOperationAction(ISD::SMAX, VT, Legal);
570 setOperationAction(ISD::SMIN, VT, Legal);
571 setOperationAction(ISD::UMAX, VT, Legal);
572 setOperationAction(ISD::UMIN, VT, Legal);
582 setOperationAction(ISD::FMAXNUM, VT, Legal);
583 setOperationAction(ISD::FMINNUM, VT, Legal);
588 setOperationAction(ISD::CTPOP, VT, Legal);
589 setOperationAction(ISD::CTLZ, VT, Legal);
598 setOperationAction(ISD::CTTZ, VT, Legal);
617 setOperationAction(ISD::VSELECT, VT, Legal);
691 setOperationAction(ISD::AND , MVT::v4i32, Legal);
692 setOperationAction(ISD::OR , MVT::v4i32, Legal);
693 setOperationAction(ISD::XOR , MVT::v4i32, Legal);
694 setOperationAction(ISD::LOAD , MVT::v4i32, Legal);
696 Subtarget.useCRBits() ? Legal : Expand);
697 setOperationAction(ISD::STORE , MVT::v4i32, Legal);
698 setOperationAction(ISD::FP_TO_SINT, MVT::v4i32, Legal);
699 setOperationAction(ISD::FP_TO_UINT, MVT::v4i32, Legal);
700 setOperationAction(ISD::SINT_TO_FP, MVT::v4i32, Legal);
701 setOperationAction(ISD::UINT_TO_FP, MVT::v4i32, Legal);
702 setOperationAction(ISD::FFLOOR, MVT::v4f32, Legal);
703 setOperationAction(ISD::FCEIL, MVT::v4f32, Legal);
704 setOperationAction(ISD::FTRUNC, MVT::v4f32, Legal);
705 setOperationAction(ISD::FNEARBYINT, MVT::v4f32, Legal);
717 setOperationAction(ISD::MUL, MVT::v4f32, Legal);
718 setOperationAction(ISD::FMA, MVT::v4f32, Legal);
721 setOperationAction(ISD::FDIV, MVT::v4f32, Legal);
722 setOperationAction(ISD::FSQRT, MVT::v4f32, Legal);
726 setOperationAction(ISD::MUL, MVT::v4i32, Legal);
748 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v2f64, Legal);
749 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2f64, Legal);
751 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Legal);
752 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4f32, Legal);
755 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v16i8, Legal);
756 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v8i16, Legal);
757 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4i32, Legal);
758 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v2i64, Legal);
759 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v16i8, Legal);
760 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v8i16, Legal);
761 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4i32, Legal);
762 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2i64, Legal);
764 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2f64, Legal);
766 setOperationAction(ISD::FFLOOR, MVT::v2f64, Legal);
767 setOperationAction(ISD::FCEIL, MVT::v2f64, Legal);
768 setOperationAction(ISD::FTRUNC, MVT::v2f64, Legal);
769 setOperationAction(ISD::FNEARBYINT, MVT::v2f64, Legal);
770 setOperationAction(ISD::FROUND, MVT::v2f64, Legal);
772 setOperationAction(ISD::FROUND, MVT::v4f32, Legal);
774 setOperationAction(ISD::MUL, MVT::v2f64, Legal);
775 setOperationAction(ISD::FMA, MVT::v2f64, Legal);
777 setOperationAction(ISD::FDIV, MVT::v2f64, Legal);
778 setOperationAction(ISD::FSQRT, MVT::v2f64, Legal);
786 setOperationAction(ISD::LOAD, MVT::v2f64, Legal);
787 setOperationAction(ISD::STORE, MVT::v2f64, Legal);
789 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2f64, Legal);
801 setOperationAction(ISD::SHL, MVT::v2i64, Legal);
802 setOperationAction(ISD::SRA, MVT::v2i64, Legal);
803 setOperationAction(ISD::SRL, MVT::v2i64, Legal);
813 setOperationAction(ISD::SETCC, MVT::v2i64, Legal);
832 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2i64, Legal);
834 setOperationAction(ISD::SINT_TO_FP, MVT::v2i64, Legal);
835 setOperationAction(ISD::UINT_TO_FP, MVT::v2i64, Legal);
836 setOperationAction(ISD::FP_TO_SINT, MVT::v2i64, Legal);
837 setOperationAction(ISD::FP_TO_UINT, MVT::v2i64, Legal);
851 setOperationAction(ISD::FNEG, MVT::v4f32, Legal);
852 setOperationAction(ISD::FNEG, MVT::v2f64, Legal);
853 setOperationAction(ISD::FABS, MVT::v4f32, Legal);
854 setOperationAction(ISD::FABS, MVT::v2f64, Legal);
855 setOperationAction(ISD::FCOPYSIGN, MVT::v4f32, Legal);
856 setOperationAction(ISD::FCOPYSIGN, MVT::v2f64, Legal);
877 setOperationAction(ISD::SHL, MVT::v1i128, Legal);
878 setOperationAction(ISD::SRL, MVT::v1i128, Legal);
883 setOperationAction(ISD::FADD, MVT::f128, Legal);
884 setOperationAction(ISD::FSUB, MVT::f128, Legal);
885 setOperationAction(ISD::FDIV, MVT::f128, Legal);
886 setOperationAction(ISD::FMUL, MVT::f128, Legal);
887 setOperationAction(ISD::FP_EXTEND, MVT::f128, Legal);
891 setOperationAction(ISD::FMA, MVT::f128, Legal);
899 setOperationAction(ISD::FTRUNC, MVT::f128, Legal);
900 setOperationAction(ISD::FRINT, MVT::f128, Legal);
901 setOperationAction(ISD::FFLOOR, MVT::f128, Legal);
902 setOperationAction(ISD::FCEIL, MVT::f128, Legal);
903 setOperationAction(ISD::FNEARBYINT, MVT::f128, Legal);
904 setOperationAction(ISD::FROUND, MVT::f128, Legal);
907 setOperationAction(ISD::FP_ROUND, MVT::f64, Legal);
908 setOperationAction(ISD::FP_ROUND, MVT::f32, Legal);
930 setOperationAction(ISD::FADD, MVT::v4f64, Legal);
931 setOperationAction(ISD::FSUB, MVT::v4f64, Legal);
932 setOperationAction(ISD::FMUL, MVT::v4f64, Legal);
935 setOperationAction(ISD::FCOPYSIGN, MVT::v4f64, Legal);
946 setOperationAction(ISD::VSELECT, MVT::v4f64, Legal);
948 setOperationAction(ISD::EXTRACT_VECTOR_ELT , MVT::v4f64, Legal);
953 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f64, Legal);
956 setOperationAction(ISD::FP_TO_SINT , MVT::v4f64, Legal);
959 setOperationAction(ISD::FP_ROUND , MVT::v4f32, Legal);
960 setOperationAction(ISD::FP_EXTEND, MVT::v4f64, Legal);
962 setOperationAction(ISD::FNEG , MVT::v4f64, Legal);
963 setOperationAction(ISD::FABS , MVT::v4f64, Legal);
973 setOperationAction(ISD::FMINNUM, MVT::v4f64, Legal);
974 setOperationAction(ISD::FMAXNUM, MVT::v4f64, Legal);
976 setIndexedLoadAction(ISD::PRE_INC, MVT::v4f64, Legal);
977 setIndexedStoreAction(ISD::PRE_INC, MVT::v4f64, Legal);
981 setOperationAction(ISD::FADD, MVT::v4f32, Legal);
982 setOperationAction(ISD::FSUB, MVT::v4f32, Legal);
983 setOperationAction(ISD::FMUL, MVT::v4f32, Legal);
986 setOperationAction(ISD::FCOPYSIGN, MVT::v4f32, Legal);
994 setOperationAction(ISD::VSELECT, MVT::v4f32, Legal);
996 setOperationAction(ISD::EXTRACT_VECTOR_ELT , MVT::v4f32, Legal);
1001 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Legal);
1004 setOperationAction(ISD::FP_TO_SINT , MVT::v4f32, Legal);
1007 setOperationAction(ISD::FNEG , MVT::v4f32, Legal);
1008 setOperationAction(ISD::FABS , MVT::v4f32, Legal);
1018 setOperationAction(ISD::FMINNUM, MVT::v4f32, Legal);
1019 setOperationAction(ISD::FMAXNUM, MVT::v4f32, Legal);
1021 setIndexedLoadAction(ISD::PRE_INC, MVT::v4f32, Legal);
1022 setIndexedStoreAction(ISD::PRE_INC, MVT::v4f32, Legal);
1026 setOperationAction(ISD::AND , MVT::v4i1, Legal);
1027 setOperationAction(ISD::OR , MVT::v4i1, Legal);
1028 setOperationAction(ISD::XOR , MVT::v4i1, Legal);
1032 setOperationAction(ISD::VSELECT, MVT::v4i1, Legal);
1050 setOperationAction(ISD::FFLOOR, MVT::v4f64, Legal);
1051 setOperationAction(ISD::FCEIL, MVT::v4f64, Legal);
1052 setOperationAction(ISD::FTRUNC, MVT::v4f64, Legal);
1053 setOperationAction(ISD::FROUND, MVT::v4f64, Legal);
1055 setOperationAction(ISD::FFLOOR, MVT::v4f32, Legal);
1056 setOperationAction(ISD::FCEIL, MVT::v4f32, Legal);
1057 setOperationAction(ISD::FTRUNC, MVT::v4f32, Legal);
1058 setOperationAction(ISD::FROUND, MVT::v4f32, Legal);
1068 setOperationAction(ISD::FDIV, MVT::v4f64, Legal);
1069 setOperationAction(ISD::FSQRT, MVT::v4f64, Legal);
1071 setOperationAction(ISD::FDIV, MVT::v4f32, Legal);
1072 setOperationAction(ISD::FSQRT, MVT::v4f32, Legal);
1083 setOperationAction(ISD::PREFETCH, MVT::Other, Legal);
1085 setOperationAction(ISD::READCYCLECOUNTER, MVT::i64, isPPC64 ? Legal : Custom);
lib/Target/RISCV/RISCVISelLowering.cpp 153 setOperationAction(ISD::FMINNUM, MVT::f32, Legal);
154 setOperationAction(ISD::FMAXNUM, MVT::f32, Legal);
170 setOperationAction(ISD::FMINNUM, MVT::f64, Legal);
171 setOperationAction(ISD::FMAXNUM, MVT::f64, Legal);
194 Subtarget.is64Bit() ? Legal : Custom);
196 setOperationAction(ISD::TRAP, MVT::Other, Legal);
197 setOperationAction(ISD::DEBUGTRAP, MVT::Other, Legal);
lib/Target/Sparc/SparcISelLowering.cpp 1454 setOperationAction(ISD::LOAD, MVT::v2i32, Legal);
1455 setOperationAction(ISD::STORE, MVT::v2i32, Legal);
1456 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2i32, Legal);
1457 setOperationAction(ISD::BUILD_VECTOR, MVT::v2i32, Legal);
1566 Subtarget->usePopc() ? Legal : Expand);
1588 setOperationAction(ISD::ATOMIC_SWAP, MVT::i32, Legal);
1590 setOperationAction(ISD::ATOMIC_FENCE, MVT::Other, Legal);
1597 setOperationAction(ISD::ATOMIC_CMP_SWAP, MVT::i64, Legal);
1598 setOperationAction(ISD::ATOMIC_SWAP, MVT::i64, Legal);
1687 setOperationAction(ISD::TRAP , MVT::Other, Legal);
1688 setOperationAction(ISD::DEBUGTRAP , MVT::Other, Legal);
1700 Subtarget->usePopc() ? Legal : Expand);
1703 setOperationAction(ISD::LOAD, MVT::f128, Legal);
1704 setOperationAction(ISD::STORE, MVT::f128, Legal);
1711 setOperationAction(ISD::FADD, MVT::f128, Legal);
1712 setOperationAction(ISD::FSUB, MVT::f128, Legal);
1713 setOperationAction(ISD::FMUL, MVT::f128, Legal);
1714 setOperationAction(ISD::FDIV, MVT::f128, Legal);
1715 setOperationAction(ISD::FSQRT, MVT::f128, Legal);
1716 setOperationAction(ISD::FP_EXTEND, MVT::f128, Legal);
1717 setOperationAction(ISD::FP_ROUND, MVT::f64, Legal);
1719 setOperationAction(ISD::FNEG, MVT::f128, Legal);
1720 setOperationAction(ISD::FABS, MVT::f128, Legal);
lib/Target/SystemZ/SystemZISelLowering.cpp 212 setOperationAction(ISD::STRICT_FP_TO_SINT, VT, Legal);
214 setOperationAction(ISD::STRICT_FP_TO_UINT, VT, Legal);
247 setOperationAction(ISD::TRAP, MVT::Other, Legal);
259 setOperationAction(ISD::CTLZ, MVT::i64, Legal);
264 setOperationAction(ISD::CTPOP, MVT::i64, Legal);
306 if (getOperationAction(Opcode, VT) == Legal)
322 setOperationAction(ISD::LOAD, VT, Legal);
323 setOperationAction(ISD::STORE, VT, Legal);
324 setOperationAction(ISD::VSELECT, VT, Legal);
325 setOperationAction(ISD::BITCAST, VT, Legal);
326 setOperationAction(ISD::UNDEF, VT, Legal);
339 setOperationAction(ISD::EXTRACT_VECTOR_ELT, VT, Legal);
340 setOperationAction(ISD::INSERT_VECTOR_ELT, VT, Legal);
341 setOperationAction(ISD::ADD, VT, Legal);
342 setOperationAction(ISD::SUB, VT, Legal);
344 setOperationAction(ISD::MUL, VT, Legal);
345 setOperationAction(ISD::AND, VT, Legal);
346 setOperationAction(ISD::OR, VT, Legal);
347 setOperationAction(ISD::XOR, VT, Legal);
349 setOperationAction(ISD::CTPOP, VT, Legal);
352 setOperationAction(ISD::CTTZ, VT, Legal);
353 setOperationAction(ISD::CTLZ, VT, Legal);
382 setOperationAction(ISD::FP_TO_SINT, MVT::v2i64, Legal);
383 setOperationAction(ISD::FP_TO_SINT, MVT::v2f64, Legal);
384 setOperationAction(ISD::FP_TO_UINT, MVT::v2i64, Legal);
385 setOperationAction(ISD::FP_TO_UINT, MVT::v2f64, Legal);
386 setOperationAction(ISD::SINT_TO_FP, MVT::v2i64, Legal);
387 setOperationAction(ISD::SINT_TO_FP, MVT::v2f64, Legal);
388 setOperationAction(ISD::UINT_TO_FP, MVT::v2i64, Legal);
389 setOperationAction(ISD::UINT_TO_FP, MVT::v2f64, Legal);
391 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::v2i64, Legal);
392 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::v2f64, Legal);
393 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::v2i64, Legal);
394 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::v2f64, Legal);
398 setOperationAction(ISD::FP_TO_SINT, MVT::v4i32, Legal);
399 setOperationAction(ISD::FP_TO_SINT, MVT::v4f32, Legal);
400 setOperationAction(ISD::FP_TO_UINT, MVT::v4i32, Legal);
401 setOperationAction(ISD::FP_TO_UINT, MVT::v4f32, Legal);
402 setOperationAction(ISD::SINT_TO_FP, MVT::v4i32, Legal);
403 setOperationAction(ISD::SINT_TO_FP, MVT::v4f32, Legal);
404 setOperationAction(ISD::UINT_TO_FP, MVT::v4i32, Legal);
405 setOperationAction(ISD::UINT_TO_FP, MVT::v4f32, Legal);
407 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::v4i32, Legal);
408 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::v4f32, Legal);
409 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::v4i32, Legal);
410 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::v4f32, Legal);
420 setOperationAction(ISD::FRINT, VT, Legal);
424 setOperationAction(ISD::FNEARBYINT, VT, Legal);
425 setOperationAction(ISD::FFLOOR, VT, Legal);
426 setOperationAction(ISD::FCEIL, VT, Legal);
427 setOperationAction(ISD::FTRUNC, VT, Legal);
428 setOperationAction(ISD::FROUND, VT, Legal);
439 setOperationAction(ISD::STRICT_FADD, VT, Legal);
440 setOperationAction(ISD::STRICT_FSUB, VT, Legal);
441 setOperationAction(ISD::STRICT_FMUL, VT, Legal);
442 setOperationAction(ISD::STRICT_FDIV, VT, Legal);
443 setOperationAction(ISD::STRICT_FMA, VT, Legal);
444 setOperationAction(ISD::STRICT_FSQRT, VT, Legal);
445 setOperationAction(ISD::STRICT_FRINT, VT, Legal);
446 setOperationAction(ISD::STRICT_FP_ROUND, VT, Legal);
447 setOperationAction(ISD::STRICT_FP_EXTEND, VT, Legal);
449 setOperationAction(ISD::STRICT_FNEARBYINT, VT, Legal);
450 setOperationAction(ISD::STRICT_FFLOOR, VT, Legal);
451 setOperationAction(ISD::STRICT_FCEIL, VT, Legal);
452 setOperationAction(ISD::STRICT_FROUND, VT, Legal);
453 setOperationAction(ISD::STRICT_FTRUNC, VT, Legal);
461 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Legal);
462 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v2f64, Legal);
472 setOperationAction(ISD::FADD, MVT::v2f64, Legal);
473 setOperationAction(ISD::FNEG, MVT::v2f64, Legal);
474 setOperationAction(ISD::FSUB, MVT::v2f64, Legal);
475 setOperationAction(ISD::FMUL, MVT::v2f64, Legal);
476 setOperationAction(ISD::FMA, MVT::v2f64, Legal);
477 setOperationAction(ISD::FDIV, MVT::v2f64, Legal);
478 setOperationAction(ISD::FABS, MVT::v2f64, Legal);
479 setOperationAction(ISD::FSQRT, MVT::v2f64, Legal);
480 setOperationAction(ISD::FRINT, MVT::v2f64, Legal);
481 setOperationAction(ISD::FNEARBYINT, MVT::v2f64, Legal);
482 setOperationAction(ISD::FFLOOR, MVT::v2f64, Legal);
483 setOperationAction(ISD::FCEIL, MVT::v2f64, Legal);
484 setOperationAction(ISD::FTRUNC, MVT::v2f64, Legal);
485 setOperationAction(ISD::FROUND, MVT::v2f64, Legal);
488 setOperationAction(ISD::STRICT_FADD, MVT::v2f64, Legal);
489 setOperationAction(ISD::STRICT_FSUB, MVT::v2f64, Legal);
490 setOperationAction(ISD::STRICT_FMUL, MVT::v2f64, Legal);
491 setOperationAction(ISD::STRICT_FMA, MVT::v2f64, Legal);
492 setOperationAction(ISD::STRICT_FDIV, MVT::v2f64, Legal);
493 setOperationAction(ISD::STRICT_FSQRT, MVT::v2f64, Legal);
494 setOperationAction(ISD::STRICT_FRINT, MVT::v2f64, Legal);
495 setOperationAction(ISD::STRICT_FNEARBYINT, MVT::v2f64, Legal);
496 setOperationAction(ISD::STRICT_FFLOOR, MVT::v2f64, Legal);
497 setOperationAction(ISD::STRICT_FCEIL, MVT::v2f64, Legal);
498 setOperationAction(ISD::STRICT_FTRUNC, MVT::v2f64, Legal);
499 setOperationAction(ISD::STRICT_FROUND, MVT::v2f64, Legal);
504 setOperationAction(ISD::FADD, MVT::v4f32, Legal);
505 setOperationAction(ISD::FNEG, MVT::v4f32, Legal);
506 setOperationAction(ISD::FSUB, MVT::v4f32, Legal);
507 setOperationAction(ISD::FMUL, MVT::v4f32, Legal);
508 setOperationAction(ISD::FMA, MVT::v4f32, Legal);
509 setOperationAction(ISD::FDIV, MVT::v4f32, Legal);
510 setOperationAction(ISD::FABS, MVT::v4f32, Legal);
511 setOperationAction(ISD::FSQRT, MVT::v4f32, Legal);
512 setOperationAction(ISD::FRINT, MVT::v4f32, Legal);
513 setOperationAction(ISD::FNEARBYINT, MVT::v4f32, Legal);
514 setOperationAction(ISD::FFLOOR, MVT::v4f32, Legal);
515 setOperationAction(ISD::FCEIL, MVT::v4f32, Legal);
516 setOperationAction(ISD::FTRUNC, MVT::v4f32, Legal);
517 setOperationAction(ISD::FROUND, MVT::v4f32, Legal);
519 setOperationAction(ISD::FMAXNUM, MVT::f64, Legal);
520 setOperationAction(ISD::FMAXIMUM, MVT::f64, Legal);
521 setOperationAction(ISD::FMINNUM, MVT::f64, Legal);
522 setOperationAction(ISD::FMINIMUM, MVT::f64, Legal);
524 setOperationAction(ISD::FMAXNUM, MVT::v2f64, Legal);
525 setOperationAction(ISD::FMAXIMUM, MVT::v2f64, Legal);
526 setOperationAction(ISD::FMINNUM, MVT::v2f64, Legal);
527 setOperationAction(ISD::FMINIMUM, MVT::v2f64, Legal);
529 setOperationAction(ISD::FMAXNUM, MVT::f32, Legal);
530 setOperationAction(ISD::FMAXIMUM, MVT::f32, Legal);
531 setOperationAction(ISD::FMINNUM, MVT::f32, Legal);
532 setOperationAction(ISD::FMINIMUM, MVT::f32, Legal);
534 setOperationAction(ISD::FMAXNUM, MVT::v4f32, Legal);
535 setOperationAction(ISD::FMAXIMUM, MVT::v4f32, Legal);
536 setOperationAction(ISD::FMINNUM, MVT::v4f32, Legal);
537 setOperationAction(ISD::FMINIMUM, MVT::v4f32, Legal);
539 setOperationAction(ISD::FMAXNUM, MVT::f128, Legal);
540 setOperationAction(ISD::FMAXIMUM, MVT::f128, Legal);
541 setOperationAction(ISD::FMINNUM, MVT::f128, Legal);
542 setOperationAction(ISD::FMINIMUM, MVT::f128, Legal);
545 setOperationAction(ISD::STRICT_FADD, MVT::v4f32, Legal);
546 setOperationAction(ISD::STRICT_FSUB, MVT::v4f32, Legal);
547 setOperationAction(ISD::STRICT_FMUL, MVT::v4f32, Legal);
548 setOperationAction(ISD::STRICT_FMA, MVT::v4f32, Legal);
549 setOperationAction(ISD::STRICT_FDIV, MVT::v4f32, Legal);
550 setOperationAction(ISD::STRICT_FSQRT, MVT::v4f32, Legal);
551 setOperationAction(ISD::STRICT_FRINT, MVT::v4f32, Legal);
552 setOperationAction(ISD::STRICT_FNEARBYINT, MVT::v4f32, Legal);
553 setOperationAction(ISD::STRICT_FFLOOR, MVT::v4f32, Legal);
554 setOperationAction(ISD::STRICT_FCEIL, MVT::v4f32, Legal);
555 setOperationAction(ISD::STRICT_FROUND, MVT::v4f32, Legal);
556 setOperationAction(ISD::STRICT_FTRUNC, MVT::v4f32, Legal);
559 setOperationAction(ISD::STRICT_FMAXNUM, VT, Legal);
560 setOperationAction(ISD::STRICT_FMINNUM, VT, Legal);
565 setOperationAction(ISD::FMA, MVT::f32, Legal);
566 setOperationAction(ISD::FMA, MVT::f64, Legal);
568 setOperationAction(ISD::FMA, MVT::f128, Legal);
lib/Target/WebAssembly/WebAssemblyISelLowering.cpp 86 setOperationAction(ISD::ConstantFP, T, Legal);
99 setOperationAction(Op, T, Legal);
101 setOperationAction(ISD::FMINIMUM, T, Legal);
102 setOperationAction(ISD::FMAXIMUM, T, Legal);
129 setOperationAction(Op, T, Legal);
251 setLoadExtAction(Ext, MVT::v8i16, MVT::v8i8, Legal);
252 setLoadExtAction(Ext, MVT::v4i32, MVT::v4i16, Legal);
253 setLoadExtAction(Ext, MVT::v2i64, MVT::v2i32, Legal);
262 setOperationAction(ISD::TRAP, MVT::Other, Legal);
lib/Target/X86/X86ISelLowering.cpp 326 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i32, Legal);
327 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i16 , Legal);
328 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i8 , Legal);
344 setOperationAction(ISD::CTTZ_ZERO_UNDEF, MVT::i16 , Legal);
345 setOperationAction(ISD::CTTZ_ZERO_UNDEF, MVT::i32 , Legal);
348 setOperationAction(ISD::CTTZ_ZERO_UNDEF, MVT::i64, Legal);
461 setOperationAction(ISD::PREFETCH , MVT::Other, Legal);
496 setOperationAction(ISD::TRAP, MVT::Other, Legal);
497 setOperationAction(ISD::DEBUGTRAP, MVT::Other, Legal);
865 setOperationAction(ISD::MULHU, MVT::v8i16, Legal);
866 setOperationAction(ISD::MULHS, MVT::v8i16, Legal);
867 setOperationAction(ISD::MUL, MVT::v8i16, Legal);
873 setOperationAction(ISD::SMAX, VT, VT == MVT::v8i16 ? Legal : Custom);
874 setOperationAction(ISD::SMIN, VT, VT == MVT::v8i16 ? Legal : Custom);
875 setOperationAction(ISD::UMAX, VT, VT == MVT::v16i8 ? Legal : Custom);
876 setOperationAction(ISD::UMIN, VT, VT == MVT::v16i8 ? Legal : Custom);
879 setOperationAction(ISD::UADDSAT, MVT::v16i8, Legal);
880 setOperationAction(ISD::SADDSAT, MVT::v16i8, Legal);
881 setOperationAction(ISD::USUBSAT, MVT::v16i8, Legal);
882 setOperationAction(ISD::SSUBSAT, MVT::v16i8, Legal);
883 setOperationAction(ISD::UADDSAT, MVT::v8i16, Legal);
884 setOperationAction(ISD::SADDSAT, MVT::v8i16, Legal);
885 setOperationAction(ISD::USUBSAT, MVT::v8i16, Legal);
886 setOperationAction(ISD::SSUBSAT, MVT::v8i16, Legal);
934 setOperationAction(ISD::FP_TO_SINT, MVT::v4i32, Legal);
957 setOperationAction(ISD::SINT_TO_FP, MVT::v4i32, Legal);
1014 setOperationAction(ISD::ABS, MVT::v16i8, Legal);
1015 setOperationAction(ISD::ABS, MVT::v8i16, Legal);
1016 setOperationAction(ISD::ABS, MVT::v4i32, Legal);
1032 setOperationAction(ISD::FFLOOR, RoundedTy, Legal);
1033 setOperationAction(ISD::FCEIL, RoundedTy, Legal);
1034 setOperationAction(ISD::FTRUNC, RoundedTy, Legal);
1035 setOperationAction(ISD::FRINT, RoundedTy, Legal);
1036 setOperationAction(ISD::FNEARBYINT, RoundedTy, Legal);
1039 setOperationAction(ISD::SMAX, MVT::v16i8, Legal);
1040 setOperationAction(ISD::SMAX, MVT::v4i32, Legal);
1041 setOperationAction(ISD::UMAX, MVT::v8i16, Legal);
1042 setOperationAction(ISD::UMAX, MVT::v4i32, Legal);
1043 setOperationAction(ISD::SMIN, MVT::v16i8, Legal);
1044 setOperationAction(ISD::SMIN, MVT::v4i32, Legal);
1045 setOperationAction(ISD::UMIN, MVT::v8i16, Legal);
1046 setOperationAction(ISD::UMIN, MVT::v4i32, Legal);
1049 setOperationAction(ISD::MUL, MVT::v4i32, Legal);
1053 setOperationAction(ISD::VSELECT, MVT::v16i8, Legal);
1058 setOperationAction(ISD::SIGN_EXTEND_VECTOR_INREG, VT, Legal);
1059 setOperationAction(ISD::ZERO_EXTEND_VECTOR_INREG, VT, Legal);
1064 setLoadExtAction(LoadExtOp, MVT::v8i16, MVT::v8i8, Legal);
1065 setLoadExtAction(LoadExtOp, MVT::v4i32, MVT::v4i8, Legal);
1066 setLoadExtAction(LoadExtOp, MVT::v2i64, MVT::v2i8, Legal);
1067 setLoadExtAction(LoadExtOp, MVT::v4i32, MVT::v4i16, Legal);
1068 setLoadExtAction(LoadExtOp, MVT::v2i64, MVT::v2i16, Legal);
1069 setLoadExtAction(LoadExtOp, MVT::v2i64, MVT::v2i32, Legal);
1108 setOperationAction(ISD::FFLOOR, VT, Legal);
1109 setOperationAction(ISD::FCEIL, VT, Legal);
1110 setOperationAction(ISD::FTRUNC, VT, Legal);
1111 setOperationAction(ISD::FRINT, VT, Legal);
1112 setOperationAction(ISD::FNEARBYINT, VT, Legal);
1122 setOperationAction(ISD::FP_TO_SINT, MVT::v8i32, Legal);
1124 setOperationAction(ISD::SINT_TO_FP, MVT::v8i32, Legal);
1184 setOperationAction(ISD::FMA, VT, Legal);
1188 setOperationAction(ISD::ADD, VT, HasInt256 ? Legal : Custom);
1189 setOperationAction(ISD::SUB, VT, HasInt256 ? Legal : Custom);
1193 setOperationAction(ISD::MUL, MVT::v8i32, HasInt256 ? Legal : Custom);
1194 setOperationAction(ISD::MUL, MVT::v16i16, HasInt256 ? Legal : Custom);
1199 setOperationAction(ISD::MULHU, MVT::v16i16, HasInt256 ? Legal : Custom);
1200 setOperationAction(ISD::MULHS, MVT::v16i16, HasInt256 ? Legal : Custom);
1210 setOperationAction(ISD::UADDSAT, MVT::v32i8, HasInt256 ? Legal : Custom);
1211 setOperationAction(ISD::SADDSAT, MVT::v32i8, HasInt256 ? Legal : Custom);
1212 setOperationAction(ISD::USUBSAT, MVT::v32i8, HasInt256 ? Legal : Custom);
1213 setOperationAction(ISD::SSUBSAT, MVT::v32i8, HasInt256 ? Legal : Custom);
1214 setOperationAction(ISD::UADDSAT, MVT::v16i16, HasInt256 ? Legal : Custom);
1215 setOperationAction(ISD::SADDSAT, MVT::v16i16, HasInt256 ? Legal : Custom);
1216 setOperationAction(ISD::USUBSAT, MVT::v16i16, HasInt256 ? Legal : Custom);
1217 setOperationAction(ISD::SSUBSAT, MVT::v16i16, HasInt256 ? Legal : Custom);
1220 setOperationAction(ISD::ABS, VT, HasInt256 ? Legal : Custom);
1221 setOperationAction(ISD::SMAX, VT, HasInt256 ? Legal : Custom);
1222 setOperationAction(ISD::UMAX, VT, HasInt256 ? Legal : Custom);
1223 setOperationAction(ISD::SMIN, VT, HasInt256 ? Legal : Custom);
1224 setOperationAction(ISD::UMIN, VT, HasInt256 ? Legal : Custom);
1239 setLoadExtAction(LoadExtOp, MVT::v16i16, MVT::v16i8, Legal);
1240 setLoadExtAction(LoadExtOp, MVT::v8i32, MVT::v8i8, Legal);
1241 setLoadExtAction(LoadExtOp, MVT::v4i64, MVT::v4i8, Legal);
1242 setLoadExtAction(LoadExtOp, MVT::v8i32, MVT::v8i16, Legal);
1243 setLoadExtAction(LoadExtOp, MVT::v4i64, MVT::v4i16, Legal);
1244 setLoadExtAction(LoadExtOp, MVT::v4i64, MVT::v4i32, Legal);
1250 setOperationAction(ISD::MLOAD, VT, Subtarget.hasVLX() ? Legal : Custom);
1251 setOperationAction(ISD::MSTORE, VT, Legal);
1258 setOperationAction(ISD::EXTRACT_SUBVECTOR, VT, Legal);
1270 setOperationAction(ISD::INSERT_SUBVECTOR, VT, Legal);
1276 setOperationAction(ISD::VSELECT, MVT::v32i8, Legal);
1364 setLoadExtAction(ExtType, MVT::v16i32, MVT::v16i8, Legal);
1365 setLoadExtAction(ExtType, MVT::v16i32, MVT::v16i16, Legal);
1366 setLoadExtAction(ExtType, MVT::v8i64, MVT::v8i8, Legal);
1367 setLoadExtAction(ExtType, MVT::v8i64, MVT::v8i16, Legal);
1368 setLoadExtAction(ExtType, MVT::v8i64, MVT::v8i32, Legal);
1374 setOperationAction(ISD::FMA, VT, Legal);
1378 setOperationAction(ISD::FP_TO_SINT, MVT::v16i32, Legal);
1382 setOperationAction(ISD::FP_TO_UINT, MVT::v16i32, Legal);
1386 setOperationAction(ISD::SINT_TO_FP, MVT::v16i32, Legal);
1387 setOperationAction(ISD::UINT_TO_FP, MVT::v16i32, Legal);
1391 setTruncStoreAction(MVT::v8i64, MVT::v8i8, Legal);
1392 setTruncStoreAction(MVT::v8i64, MVT::v8i16, Legal);
1393 setTruncStoreAction(MVT::v8i64, MVT::v8i32, Legal);
1394 setTruncStoreAction(MVT::v16i32, MVT::v16i8, Legal);
1395 setTruncStoreAction(MVT::v16i32, MVT::v16i16, Legal);
1423 setOperationAction(ISD::FFLOOR, VT, Legal);
1424 setOperationAction(ISD::FCEIL, VT, Legal);
1425 setOperationAction(ISD::FTRUNC, VT, Legal);
1426 setOperationAction(ISD::FRINT, VT, Legal);
1427 setOperationAction(ISD::FNEARBYINT, VT, Legal);
1444 setOperationAction(ISD::MUL, MVT::v16i32, Legal);
1450 setOperationAction(ISD::SMAX, VT, Legal);
1451 setOperationAction(ISD::UMAX, VT, Legal);
1452 setOperationAction(ISD::SMIN, VT, Legal);
1453 setOperationAction(ISD::UMIN, VT, Legal);
1454 setOperationAction(ISD::ABS, VT, Legal);
1471 setOperationAction(ISD::SINT_TO_FP, MVT::v8i64, Legal);
1472 setOperationAction(ISD::UINT_TO_FP, MVT::v8i64, Legal);
1473 setOperationAction(ISD::FP_TO_SINT, MVT::v8i64, Legal);
1474 setOperationAction(ISD::FP_TO_UINT, MVT::v8i64, Legal);
1476 setOperationAction(ISD::MUL, MVT::v8i64, Legal);
1482 setOperationAction(ISD::CTLZ, VT, Legal);
1488 setOperationAction(ISD::CTPOP, VT, Legal);
1496 setOperationAction(ISD::EXTRACT_SUBVECTOR, VT, Legal);
1505 setOperationAction(ISD::INSERT_SUBVECTOR, VT, Legal);
1506 setOperationAction(ISD::MLOAD, VT, Legal);
1507 setOperationAction(ISD::MSTORE, VT, Legal);
1537 setOperationAction(ISD::FP_TO_UINT, MVT::v8i32, Legal);
1538 setOperationAction(ISD::FP_TO_UINT, MVT::v4i32, Legal);
1540 setOperationAction(ISD::UINT_TO_FP, MVT::v8i32, Legal);
1541 setOperationAction(ISD::UINT_TO_FP, MVT::v4i32, Legal);
1544 setOperationAction(ISD::SMAX, VT, Legal);
1545 setOperationAction(ISD::UMAX, VT, Legal);
1546 setOperationAction(ISD::SMIN, VT, Legal);
1547 setOperationAction(ISD::UMIN, VT, Legal);
1548 setOperationAction(ISD::ABS, VT, Legal);
1566 setOperationAction(ISD::SINT_TO_FP, VT, Legal);
1567 setOperationAction(ISD::UINT_TO_FP, VT, Legal);
1568 setOperationAction(ISD::FP_TO_SINT, VT, Legal);
1569 setOperationAction(ISD::FP_TO_UINT, VT, Legal);
1571 setOperationAction(ISD::MUL, VT, Legal);
1577 setOperationAction(ISD::CTLZ, VT, Legal);
1583 setOperationAction(ISD::CTPOP, VT, Legal);
1638 setOperationAction(ISD::MUL, MVT::v32i16, Legal);
1640 setOperationAction(ISD::MULHS, MVT::v32i16, Legal);
1641 setOperationAction(ISD::MULHU, MVT::v32i16, Legal);
1646 setOperationAction(ISD::INSERT_SUBVECTOR, MVT::v32i16, Legal);
1647 setOperationAction(ISD::INSERT_SUBVECTOR, MVT::v64i8, Legal);
1665 setTruncStoreAction(MVT::v32i16, MVT::v32i8, Legal);
1670 setOperationAction(ISD::ABS, VT, Legal);
1674 setOperationAction(ISD::MLOAD, VT, Legal);
1675 setOperationAction(ISD::MSTORE, VT, Legal);
1678 setOperationAction(ISD::SMAX, VT, Legal);
1679 setOperationAction(ISD::UMAX, VT, Legal);
1680 setOperationAction(ISD::SMIN, VT, Legal);
1681 setOperationAction(ISD::UMIN, VT, Legal);
1683 setOperationAction(ISD::UADDSAT, VT, Legal);
1684 setOperationAction(ISD::SADDSAT, VT, Legal);
1685 setOperationAction(ISD::USUBSAT, VT, Legal);
1686 setOperationAction(ISD::SSUBSAT, VT, Legal);
1696 setLoadExtAction(ExtType, MVT::v32i16, MVT::v32i8, Legal);
1701 setOperationAction(ISD::CTPOP, VT, Legal);
1712 setOperationAction(ISD::MLOAD, VT, Subtarget.hasVLX() ? Legal : Custom);
1713 setOperationAction(ISD::MSTORE, VT, Subtarget.hasVLX() ? Legal : Custom);
1722 setOperationAction(ISD::CTPOP, VT, Legal);
1727 setTruncStoreAction(MVT::v4i64, MVT::v4i8, Legal);
1728 setTruncStoreAction(MVT::v4i64, MVT::v4i16, Legal);
1729 setTruncStoreAction(MVT::v4i64, MVT::v4i32, Legal);
1730 setTruncStoreAction(MVT::v8i32, MVT::v8i8, Legal);
1731 setTruncStoreAction(MVT::v8i32, MVT::v8i16, Legal);
1733 setTruncStoreAction(MVT::v2i64, MVT::v2i8, Legal);
1734 setTruncStoreAction(MVT::v2i64, MVT::v2i16, Legal);
1735 setTruncStoreAction(MVT::v2i64, MVT::v2i32, Legal);
1736 setTruncStoreAction(MVT::v4i32, MVT::v4i8, Legal);
1737 setTruncStoreAction(MVT::v4i32, MVT::v4i16, Legal);
1751 setTruncStoreAction(MVT::v16i16, MVT::v16i8, Legal);
1752 setTruncStoreAction(MVT::v8i16, MVT::v8i8, Legal);
lib/Target/XCore/XCoreISelLowering.cpp 110 setOperationAction(ISD::TRAP, MVT::Other, Legal);