Lines Matching refs:setOperationAction
180 setOperationAction(ISD::BITREVERSE, MVT::i32, Legal); in PPCTargetLowering()
181 setOperationAction(ISD::BITREVERSE, MVT::i64, Legal); in PPCTargetLowering()
184 setOperationAction(ISD::ATOMIC_CMP_SWAP, MVT::i32, Custom); in PPCTargetLowering()
187 setOperationAction(ISD::INLINEASM, MVT::Other, Custom); in PPCTargetLowering()
188 setOperationAction(ISD::INLINEASM_BR, MVT::Other, Custom); in PPCTargetLowering()
204 setOperationAction(ISD::FP16_TO_FP, MVT::f64, Expand); in PPCTargetLowering()
205 setOperationAction(ISD::FP_TO_FP16, MVT::f64, Expand); in PPCTargetLowering()
207 setOperationAction(ISD::FP16_TO_FP, MVT::f32, Expand); in PPCTargetLowering()
208 setOperationAction(ISD::FP_TO_FP16, MVT::f32, Expand); in PPCTargetLowering()
236 setOperationAction(ISD::ADDC, VT, Legal); in PPCTargetLowering()
237 setOperationAction(ISD::ADDE, VT, Legal); in PPCTargetLowering()
238 setOperationAction(ISD::SUBC, VT, Legal); in PPCTargetLowering()
239 setOperationAction(ISD::SUBE, VT, Legal); in PPCTargetLowering()
243 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i1, Expand); in PPCTargetLowering()
246 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
249 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
253 setOperationAction(ISD::SINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
256 setOperationAction(ISD::UINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
260 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i1, Promote); in PPCTargetLowering()
263 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i1, Promote); in PPCTargetLowering()
267 setOperationAction(ISD::FP_TO_SINT, MVT::i1, Promote); in PPCTargetLowering()
270 setOperationAction(ISD::FP_TO_UINT, MVT::i1, Promote); in PPCTargetLowering()
274 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
275 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
276 setOperationAction(ISD::SINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
277 setOperationAction(ISD::UINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
281 setOperationAction(ISD::LOAD, MVT::i1, Custom); in PPCTargetLowering()
282 setOperationAction(ISD::STORE, MVT::i1, Custom); in PPCTargetLowering()
286 setOperationAction(ISD::TRUNCATE, MVT::i1, Custom); in PPCTargetLowering()
299 setOperationAction(ISD::FP_TO_SINT, MVT::ppcf128, Custom); in PPCTargetLowering()
300 setOperationAction(ISD::FP_TO_UINT, MVT::ppcf128, Custom); in PPCTargetLowering()
301 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::ppcf128, Custom); in PPCTargetLowering()
302 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::ppcf128, Custom); in PPCTargetLowering()
305 setOperationAction(ISD::FFLOOR, MVT::ppcf128, Expand); in PPCTargetLowering()
306 setOperationAction(ISD::FCEIL, MVT::ppcf128, Expand); in PPCTargetLowering()
307 setOperationAction(ISD::FTRUNC, MVT::ppcf128, Expand); in PPCTargetLowering()
308 setOperationAction(ISD::FRINT, MVT::ppcf128, Expand); in PPCTargetLowering()
309 setOperationAction(ISD::FNEARBYINT, MVT::ppcf128, Expand); in PPCTargetLowering()
310 setOperationAction(ISD::FREM, MVT::ppcf128, Expand); in PPCTargetLowering()
320 setOperationAction(ISD::SREM, MVT::i32, Legal); in PPCTargetLowering()
321 setOperationAction(ISD::UREM, MVT::i32, Legal); in PPCTargetLowering()
322 setOperationAction(ISD::SREM, MVT::i64, Legal); in PPCTargetLowering()
323 setOperationAction(ISD::UREM, MVT::i64, Legal); in PPCTargetLowering()
325 setOperationAction(ISD::SREM, MVT::i32, Expand); in PPCTargetLowering()
326 setOperationAction(ISD::UREM, MVT::i32, Expand); in PPCTargetLowering()
327 setOperationAction(ISD::SREM, MVT::i64, Expand); in PPCTargetLowering()
328 setOperationAction(ISD::UREM, MVT::i64, Expand); in PPCTargetLowering()
332 setOperationAction(ISD::UMUL_LOHI, MVT::i32, Expand); in PPCTargetLowering()
333 setOperationAction(ISD::SMUL_LOHI, MVT::i32, Expand); in PPCTargetLowering()
334 setOperationAction(ISD::UMUL_LOHI, MVT::i64, Expand); in PPCTargetLowering()
335 setOperationAction(ISD::SMUL_LOHI, MVT::i64, Expand); in PPCTargetLowering()
336 setOperationAction(ISD::UDIVREM, MVT::i32, Expand); in PPCTargetLowering()
337 setOperationAction(ISD::SDIVREM, MVT::i32, Expand); in PPCTargetLowering()
338 setOperationAction(ISD::UDIVREM, MVT::i64, Expand); in PPCTargetLowering()
339 setOperationAction(ISD::SDIVREM, MVT::i64, Expand); in PPCTargetLowering()
343 setOperationAction(ISD::STRICT_FADD, MVT::f32, Legal); in PPCTargetLowering()
344 setOperationAction(ISD::STRICT_FSUB, MVT::f32, Legal); in PPCTargetLowering()
345 setOperationAction(ISD::STRICT_FMUL, MVT::f32, Legal); in PPCTargetLowering()
346 setOperationAction(ISD::STRICT_FDIV, MVT::f32, Legal); in PPCTargetLowering()
347 setOperationAction(ISD::STRICT_FP_ROUND, MVT::f32, Legal); in PPCTargetLowering()
349 setOperationAction(ISD::STRICT_FADD, MVT::f64, Legal); in PPCTargetLowering()
350 setOperationAction(ISD::STRICT_FSUB, MVT::f64, Legal); in PPCTargetLowering()
351 setOperationAction(ISD::STRICT_FMUL, MVT::f64, Legal); in PPCTargetLowering()
352 setOperationAction(ISD::STRICT_FDIV, MVT::f64, Legal); in PPCTargetLowering()
355 setOperationAction(ISD::STRICT_FMA, MVT::f32, Legal); in PPCTargetLowering()
356 setOperationAction(ISD::STRICT_FMA, MVT::f64, Legal); in PPCTargetLowering()
360 setOperationAction(ISD::STRICT_FRINT, MVT::f32, Legal); in PPCTargetLowering()
361 setOperationAction(ISD::STRICT_FRINT, MVT::f64, Legal); in PPCTargetLowering()
365 setOperationAction(ISD::STRICT_FSQRT, MVT::f32, Legal); in PPCTargetLowering()
366 setOperationAction(ISD::STRICT_FSQRT, MVT::f64, Legal); in PPCTargetLowering()
370 setOperationAction(ISD::STRICT_FFLOOR, MVT::f32, Legal); in PPCTargetLowering()
371 setOperationAction(ISD::STRICT_FCEIL, MVT::f32, Legal); in PPCTargetLowering()
372 setOperationAction(ISD::STRICT_FTRUNC, MVT::f32, Legal); in PPCTargetLowering()
373 setOperationAction(ISD::STRICT_FROUND, MVT::f32, Legal); in PPCTargetLowering()
375 setOperationAction(ISD::STRICT_FFLOOR, MVT::f64, Legal); in PPCTargetLowering()
376 setOperationAction(ISD::STRICT_FCEIL, MVT::f64, Legal); in PPCTargetLowering()
377 setOperationAction(ISD::STRICT_FTRUNC, MVT::f64, Legal); in PPCTargetLowering()
378 setOperationAction(ISD::STRICT_FROUND, MVT::f64, Legal); in PPCTargetLowering()
382 setOperationAction(ISD::FSIN , MVT::f64, Expand); in PPCTargetLowering()
383 setOperationAction(ISD::FCOS , MVT::f64, Expand); in PPCTargetLowering()
384 setOperationAction(ISD::FSINCOS, MVT::f64, Expand); in PPCTargetLowering()
385 setOperationAction(ISD::FREM , MVT::f64, Expand); in PPCTargetLowering()
386 setOperationAction(ISD::FPOW , MVT::f64, Expand); in PPCTargetLowering()
387 setOperationAction(ISD::FSIN , MVT::f32, Expand); in PPCTargetLowering()
388 setOperationAction(ISD::FCOS , MVT::f32, Expand); in PPCTargetLowering()
389 setOperationAction(ISD::FSINCOS, MVT::f32, Expand); in PPCTargetLowering()
390 setOperationAction(ISD::FREM , MVT::f32, Expand); in PPCTargetLowering()
391 setOperationAction(ISD::FPOW , MVT::f32, Expand); in PPCTargetLowering()
396 setOperationAction(ISD::FSIN , MVT::f64, Custom); in PPCTargetLowering()
397 setOperationAction(ISD::FCOS , MVT::f64, Custom); in PPCTargetLowering()
398 setOperationAction(ISD::FPOW , MVT::f64, Custom); in PPCTargetLowering()
399 setOperationAction(ISD::FLOG, MVT::f64, Custom); in PPCTargetLowering()
400 setOperationAction(ISD::FLOG10, MVT::f64, Custom); in PPCTargetLowering()
401 setOperationAction(ISD::FEXP, MVT::f64, Custom); in PPCTargetLowering()
402 setOperationAction(ISD::FSIN , MVT::f32, Custom); in PPCTargetLowering()
403 setOperationAction(ISD::FCOS , MVT::f32, Custom); in PPCTargetLowering()
404 setOperationAction(ISD::FPOW , MVT::f32, Custom); in PPCTargetLowering()
405 setOperationAction(ISD::FLOG, MVT::f32, Custom); in PPCTargetLowering()
406 setOperationAction(ISD::FLOG10, MVT::f32, Custom); in PPCTargetLowering()
407 setOperationAction(ISD::FEXP, MVT::f32, Custom); in PPCTargetLowering()
411 setOperationAction(ISD::FMA , MVT::f64, Expand); in PPCTargetLowering()
412 setOperationAction(ISD::FMA , MVT::f32, Expand); in PPCTargetLowering()
414 setOperationAction(ISD::FMA , MVT::f64, Legal); in PPCTargetLowering()
415 setOperationAction(ISD::FMA , MVT::f32, Legal); in PPCTargetLowering()
421 setOperationAction(ISD::FLT_ROUNDS_, MVT::i32, Custom); in PPCTargetLowering()
427 setOperationAction(ISD::FSQRT, MVT::f64, Expand); in PPCTargetLowering()
432 setOperationAction(ISD::FSQRT, MVT::f32, Expand); in PPCTargetLowering()
435 setOperationAction(ISD::FCOPYSIGN, MVT::f64, Legal); in PPCTargetLowering()
436 setOperationAction(ISD::FCOPYSIGN, MVT::f32, Legal); in PPCTargetLowering()
438 setOperationAction(ISD::FCOPYSIGN, MVT::f64, Expand); in PPCTargetLowering()
439 setOperationAction(ISD::FCOPYSIGN, MVT::f32, Expand); in PPCTargetLowering()
443 setOperationAction(ISD::FFLOOR, MVT::f64, Legal); in PPCTargetLowering()
444 setOperationAction(ISD::FCEIL, MVT::f64, Legal); in PPCTargetLowering()
445 setOperationAction(ISD::FTRUNC, MVT::f64, Legal); in PPCTargetLowering()
446 setOperationAction(ISD::FROUND, MVT::f64, Legal); in PPCTargetLowering()
448 setOperationAction(ISD::FFLOOR, MVT::f32, Legal); in PPCTargetLowering()
449 setOperationAction(ISD::FCEIL, MVT::f32, Legal); in PPCTargetLowering()
450 setOperationAction(ISD::FTRUNC, MVT::f32, Legal); in PPCTargetLowering()
451 setOperationAction(ISD::FROUND, MVT::f32, Legal); in PPCTargetLowering()
457 setOperationAction(ISD::BSWAP, MVT::i32 , Expand); in PPCTargetLowering()
459 setOperationAction(ISD::BSWAP, MVT::i64 , Custom); in PPCTargetLowering()
461 setOperationAction(ISD::BSWAP, MVT::i64 , Expand); in PPCTargetLowering()
463 setOperationAction(ISD::CTTZ , MVT::i32 , Legal); in PPCTargetLowering()
464 setOperationAction(ISD::CTTZ , MVT::i64 , Legal); in PPCTargetLowering()
466 setOperationAction(ISD::CTTZ , MVT::i32 , Expand); in PPCTargetLowering()
467 setOperationAction(ISD::CTTZ , MVT::i64 , Expand); in PPCTargetLowering()
471 setOperationAction(ISD::CTPOP, MVT::i32 , Legal); in PPCTargetLowering()
472 setOperationAction(ISD::CTPOP, MVT::i64 , Legal); in PPCTargetLowering()
474 setOperationAction(ISD::CTPOP, MVT::i32 , Expand); in PPCTargetLowering()
475 setOperationAction(ISD::CTPOP, MVT::i64 , Expand); in PPCTargetLowering()
479 setOperationAction(ISD::ROTR, MVT::i32 , Expand); in PPCTargetLowering()
480 setOperationAction(ISD::ROTR, MVT::i64 , Expand); in PPCTargetLowering()
484 setOperationAction(ISD::SELECT, MVT::i32, Expand); in PPCTargetLowering()
485 setOperationAction(ISD::SELECT, MVT::i64, Expand); in PPCTargetLowering()
486 setOperationAction(ISD::SELECT, MVT::f32, Expand); in PPCTargetLowering()
487 setOperationAction(ISD::SELECT, MVT::f64, Expand); in PPCTargetLowering()
491 setOperationAction(ISD::SELECT_CC, MVT::f32, Custom); in PPCTargetLowering()
492 setOperationAction(ISD::SELECT_CC, MVT::f64, Custom); in PPCTargetLowering()
496 setOperationAction(ISD::SETCC, MVT::i32, Custom); in PPCTargetLowering()
499 setOperationAction(ISD::STRICT_FSETCC, MVT::f32, Legal); in PPCTargetLowering()
500 setOperationAction(ISD::STRICT_FSETCC, MVT::f64, Legal); in PPCTargetLowering()
501 setOperationAction(ISD::STRICT_FSETCC, MVT::f128, Legal); in PPCTargetLowering()
503 setOperationAction(ISD::STRICT_FSETCCS, MVT::f32, Legal); in PPCTargetLowering()
504 setOperationAction(ISD::STRICT_FSETCCS, MVT::f64, Legal); in PPCTargetLowering()
505 setOperationAction(ISD::STRICT_FSETCCS, MVT::f128, Legal); in PPCTargetLowering()
510 setOperationAction(ISD::BRCOND, MVT::Other, Expand); in PPCTargetLowering()
512 setOperationAction(ISD::BR_JT, MVT::Other, Expand); in PPCTargetLowering()
516 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i32, Legal); in PPCTargetLowering()
517 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
518 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
519 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Legal); in PPCTargetLowering()
520 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
521 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
524 setOperationAction(ISD::STRICT_FSETCCS, MVT::f32, Legal); in PPCTargetLowering()
525 setOperationAction(ISD::STRICT_FSETCCS, MVT::f64, Legal); in PPCTargetLowering()
528 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
529 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
532 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
533 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
534 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
535 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
539 setOperationAction(ISD::BITCAST, MVT::f32, Legal); in PPCTargetLowering()
540 setOperationAction(ISD::BITCAST, MVT::i32, Legal); in PPCTargetLowering()
541 setOperationAction(ISD::BITCAST, MVT::i64, Legal); in PPCTargetLowering()
542 setOperationAction(ISD::BITCAST, MVT::f64, Legal); in PPCTargetLowering()
544 setOperationAction(ISD::LRINT, MVT::f64, Legal); in PPCTargetLowering()
545 setOperationAction(ISD::LRINT, MVT::f32, Legal); in PPCTargetLowering()
546 setOperationAction(ISD::LLRINT, MVT::f64, Legal); in PPCTargetLowering()
547 setOperationAction(ISD::LLRINT, MVT::f32, Legal); in PPCTargetLowering()
548 setOperationAction(ISD::LROUND, MVT::f64, Legal); in PPCTargetLowering()
549 setOperationAction(ISD::LROUND, MVT::f32, Legal); in PPCTargetLowering()
550 setOperationAction(ISD::LLROUND, MVT::f64, Legal); in PPCTargetLowering()
551 setOperationAction(ISD::LLROUND, MVT::f32, Legal); in PPCTargetLowering()
554 setOperationAction(ISD::BITCAST, MVT::f32, Expand); in PPCTargetLowering()
555 setOperationAction(ISD::BITCAST, MVT::i32, Expand); in PPCTargetLowering()
556 setOperationAction(ISD::BITCAST, MVT::i64, Expand); in PPCTargetLowering()
557 setOperationAction(ISD::BITCAST, MVT::f64, Expand); in PPCTargetLowering()
561 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i1, Expand); in PPCTargetLowering()
569 setOperationAction(ISD::EH_SJLJ_SETJMP, MVT::i32, Custom); in PPCTargetLowering()
570 setOperationAction(ISD::EH_SJLJ_LONGJMP, MVT::Other, Custom); in PPCTargetLowering()
574 setOperationAction(ISD::GlobalAddress, MVT::i32, Custom); in PPCTargetLowering()
575 setOperationAction(ISD::GlobalTLSAddress, MVT::i32, Custom); in PPCTargetLowering()
576 setOperationAction(ISD::BlockAddress, MVT::i32, Custom); in PPCTargetLowering()
577 setOperationAction(ISD::ConstantPool, MVT::i32, Custom); in PPCTargetLowering()
578 setOperationAction(ISD::JumpTable, MVT::i32, Custom); in PPCTargetLowering()
579 setOperationAction(ISD::GlobalAddress, MVT::i64, Custom); in PPCTargetLowering()
580 setOperationAction(ISD::GlobalTLSAddress, MVT::i64, Custom); in PPCTargetLowering()
581 setOperationAction(ISD::BlockAddress, MVT::i64, Custom); in PPCTargetLowering()
582 setOperationAction(ISD::ConstantPool, MVT::i64, Custom); in PPCTargetLowering()
583 setOperationAction(ISD::JumpTable, MVT::i64, Custom); in PPCTargetLowering()
586 setOperationAction(ISD::TRAP, MVT::Other, Legal); in PPCTargetLowering()
589 setOperationAction(ISD::INIT_TRAMPOLINE, MVT::Other, Custom); in PPCTargetLowering()
590 setOperationAction(ISD::ADJUST_TRAMPOLINE, MVT::Other, Custom); in PPCTargetLowering()
593 setOperationAction(ISD::VASTART , MVT::Other, Custom); in PPCTargetLowering()
597 setOperationAction(ISD::VAARG, MVT::i1, Promote); in PPCTargetLowering()
599 setOperationAction(ISD::VAARG, MVT::i8, Promote); in PPCTargetLowering()
601 setOperationAction(ISD::VAARG, MVT::i16, Promote); in PPCTargetLowering()
603 setOperationAction(ISD::VAARG, MVT::i32, Promote); in PPCTargetLowering()
605 setOperationAction(ISD::VAARG, MVT::Other, Expand); in PPCTargetLowering()
608 setOperationAction(ISD::VAARG, MVT::Other, Custom); in PPCTargetLowering()
609 setOperationAction(ISD::VAARG, MVT::i64, Custom); in PPCTargetLowering()
611 setOperationAction(ISD::VAARG, MVT::Other, Expand); in PPCTargetLowering()
615 setOperationAction(ISD::VACOPY , MVT::Other, Custom); in PPCTargetLowering()
617 setOperationAction(ISD::VACOPY , MVT::Other, Expand); in PPCTargetLowering()
620 setOperationAction(ISD::VAEND , MVT::Other, Expand); in PPCTargetLowering()
621 setOperationAction(ISD::STACKSAVE , MVT::Other, Expand); in PPCTargetLowering()
622 setOperationAction(ISD::STACKRESTORE , MVT::Other, Custom); in PPCTargetLowering()
623 setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i32 , Custom); in PPCTargetLowering()
624 setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i64 , Custom); in PPCTargetLowering()
625 setOperationAction(ISD::GET_DYNAMIC_AREA_OFFSET, MVT::i32, Custom); in PPCTargetLowering()
626 setOperationAction(ISD::GET_DYNAMIC_AREA_OFFSET, MVT::i64, Custom); in PPCTargetLowering()
627 setOperationAction(ISD::EH_DWARF_CFA, MVT::i32, Custom); in PPCTargetLowering()
628 setOperationAction(ISD::EH_DWARF_CFA, MVT::i64, Custom); in PPCTargetLowering()
631 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::Other, Custom); in PPCTargetLowering()
632 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::f64, Custom); in PPCTargetLowering()
633 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::ppcf128, Custom); in PPCTargetLowering()
634 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::v4f32, Custom); in PPCTargetLowering()
635 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::v2f64, Custom); in PPCTargetLowering()
638 setOperationAction(ISD::INTRINSIC_W_CHAIN, MVT::i1, Custom); in PPCTargetLowering()
640 setOperationAction(ISD::INTRINSIC_VOID, MVT::i8, Custom); in PPCTargetLowering()
641 setOperationAction(ISD::INTRINSIC_VOID, MVT::i16, Custom); in PPCTargetLowering()
642 setOperationAction(ISD::INTRINSIC_VOID, MVT::i32, Custom); in PPCTargetLowering()
643 setOperationAction(ISD::INTRINSIC_VOID, MVT::Other, Custom); in PPCTargetLowering()
665 setOperationAction(ISD::STRICT_FP_EXTEND, MVT::f32, Legal); in PPCTargetLowering()
666 setOperationAction(ISD::STRICT_FP_EXTEND, MVT::f64, Legal); in PPCTargetLowering()
670 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
671 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i64, Expand); in PPCTargetLowering()
672 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
673 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i64, Expand); in PPCTargetLowering()
674 setOperationAction(ISD::FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
675 setOperationAction(ISD::FP_TO_UINT, MVT::i64, Expand); in PPCTargetLowering()
676 setOperationAction(ISD::SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
677 setOperationAction(ISD::UINT_TO_FP, MVT::i64, Expand); in PPCTargetLowering()
680 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
681 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
684 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
685 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
690 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i32, Legal); in PPCTargetLowering()
691 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Legal); in PPCTargetLowering()
693 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i32, Expand); in PPCTargetLowering()
694 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Expand); in PPCTargetLowering()
701 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
702 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i64, Custom); in PPCTargetLowering()
703 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
704 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
705 setOperationAction(ISD::FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
706 setOperationAction(ISD::FP_TO_UINT, MVT::i64, Custom); in PPCTargetLowering()
707 setOperationAction(ISD::SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
708 setOperationAction(ISD::UINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
711 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
712 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
713 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
714 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
715 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
716 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
717 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
718 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
725 setOperationAction(ISD::BUILD_PAIR, MVT::i64, Expand); in PPCTargetLowering()
727 setOperationAction(ISD::SHL_PARTS, MVT::i64, Custom); in PPCTargetLowering()
728 setOperationAction(ISD::SRA_PARTS, MVT::i64, Custom); in PPCTargetLowering()
729 setOperationAction(ISD::SRL_PARTS, MVT::i64, Custom); in PPCTargetLowering()
732 setOperationAction(ISD::SHL_PARTS, MVT::i32, Custom); in PPCTargetLowering()
733 setOperationAction(ISD::SRA_PARTS, MVT::i32, Custom); in PPCTargetLowering()
734 setOperationAction(ISD::SRL_PARTS, MVT::i32, Custom); in PPCTargetLowering()
740 setOperationAction(ISD::FSHL, MVT::i64, Custom); in PPCTargetLowering()
741 setOperationAction(ISD::FSHR, MVT::i64, Custom); in PPCTargetLowering()
743 setOperationAction(ISD::FSHL, MVT::i32, Custom); in PPCTargetLowering()
744 setOperationAction(ISD::FSHR, MVT::i32, Custom); in PPCTargetLowering()
747 setOperationAction(ISD::FMAXNUM_IEEE, MVT::f64, Legal); in PPCTargetLowering()
748 setOperationAction(ISD::FMAXNUM_IEEE, MVT::f32, Legal); in PPCTargetLowering()
749 setOperationAction(ISD::FMINNUM_IEEE, MVT::f64, Legal); in PPCTargetLowering()
750 setOperationAction(ISD::FMINNUM_IEEE, MVT::f32, Legal); in PPCTargetLowering()
755 setOperationAction(ISD::SADDSAT, VT, Legal); in PPCTargetLowering()
756 setOperationAction(ISD::SSUBSAT, VT, Legal); in PPCTargetLowering()
757 setOperationAction(ISD::UADDSAT, VT, Legal); in PPCTargetLowering()
758 setOperationAction(ISD::USUBSAT, VT, Legal); in PPCTargetLowering()
764 setOperationAction(ISD::ADD, VT, Legal); in PPCTargetLowering()
765 setOperationAction(ISD::SUB, VT, Legal); in PPCTargetLowering()
770 setOperationAction(ISD::SMAX, VT, Legal); in PPCTargetLowering()
771 setOperationAction(ISD::SMIN, VT, Legal); in PPCTargetLowering()
772 setOperationAction(ISD::UMAX, VT, Legal); in PPCTargetLowering()
773 setOperationAction(ISD::UMIN, VT, Legal); in PPCTargetLowering()
776 setOperationAction(ISD::SMAX, VT, Expand); in PPCTargetLowering()
777 setOperationAction(ISD::SMIN, VT, Expand); in PPCTargetLowering()
778 setOperationAction(ISD::UMAX, VT, Expand); in PPCTargetLowering()
779 setOperationAction(ISD::UMIN, VT, Expand); in PPCTargetLowering()
783 setOperationAction(ISD::FMAXNUM, VT, Legal); in PPCTargetLowering()
784 setOperationAction(ISD::FMINNUM, VT, Legal); in PPCTargetLowering()
789 setOperationAction(ISD::CTPOP, VT, Legal); in PPCTargetLowering()
790 setOperationAction(ISD::CTLZ, VT, Legal); in PPCTargetLowering()
793 setOperationAction(ISD::CTPOP, VT, Expand); in PPCTargetLowering()
794 setOperationAction(ISD::CTLZ, VT, Expand); in PPCTargetLowering()
799 setOperationAction(ISD::CTTZ, VT, Legal); in PPCTargetLowering()
801 setOperationAction(ISD::CTTZ, VT, Expand); in PPCTargetLowering()
804 setOperationAction(ISD::VECTOR_SHUFFLE, VT, Promote); in PPCTargetLowering()
808 setOperationAction(ISD::AND , VT, Promote); in PPCTargetLowering()
810 setOperationAction(ISD::OR , VT, Promote); in PPCTargetLowering()
812 setOperationAction(ISD::XOR , VT, Promote); in PPCTargetLowering()
814 setOperationAction(ISD::LOAD , VT, Promote); in PPCTargetLowering()
816 setOperationAction(ISD::SELECT, VT, Promote); in PPCTargetLowering()
818 setOperationAction(ISD::VSELECT, VT, Legal); in PPCTargetLowering()
819 setOperationAction(ISD::SELECT_CC, VT, Promote); in PPCTargetLowering()
821 setOperationAction(ISD::STORE, VT, Promote); in PPCTargetLowering()
825 setOperationAction(ISD::MUL , VT, Expand); in PPCTargetLowering()
826 setOperationAction(ISD::SDIV, VT, Expand); in PPCTargetLowering()
827 setOperationAction(ISD::SREM, VT, Expand); in PPCTargetLowering()
828 setOperationAction(ISD::UDIV, VT, Expand); in PPCTargetLowering()
829 setOperationAction(ISD::UREM, VT, Expand); in PPCTargetLowering()
830 setOperationAction(ISD::FDIV, VT, Expand); in PPCTargetLowering()
831 setOperationAction(ISD::FREM, VT, Expand); in PPCTargetLowering()
832 setOperationAction(ISD::FNEG, VT, Expand); in PPCTargetLowering()
833 setOperationAction(ISD::FSQRT, VT, Expand); in PPCTargetLowering()
834 setOperationAction(ISD::FLOG, VT, Expand); in PPCTargetLowering()
835 setOperationAction(ISD::FLOG10, VT, Expand); in PPCTargetLowering()
836 setOperationAction(ISD::FLOG2, VT, Expand); in PPCTargetLowering()
837 setOperationAction(ISD::FEXP, VT, Expand); in PPCTargetLowering()
838 setOperationAction(ISD::FEXP2, VT, Expand); in PPCTargetLowering()
839 setOperationAction(ISD::FSIN, VT, Expand); in PPCTargetLowering()
840 setOperationAction(ISD::FCOS, VT, Expand); in PPCTargetLowering()
841 setOperationAction(ISD::FABS, VT, Expand); in PPCTargetLowering()
842 setOperationAction(ISD::FFLOOR, VT, Expand); in PPCTargetLowering()
843 setOperationAction(ISD::FCEIL, VT, Expand); in PPCTargetLowering()
844 setOperationAction(ISD::FTRUNC, VT, Expand); in PPCTargetLowering()
845 setOperationAction(ISD::FRINT, VT, Expand); in PPCTargetLowering()
846 setOperationAction(ISD::FNEARBYINT, VT, Expand); in PPCTargetLowering()
847 setOperationAction(ISD::EXTRACT_VECTOR_ELT, VT, Expand); in PPCTargetLowering()
848 setOperationAction(ISD::INSERT_VECTOR_ELT, VT, Expand); in PPCTargetLowering()
849 setOperationAction(ISD::BUILD_VECTOR, VT, Expand); in PPCTargetLowering()
850 setOperationAction(ISD::MULHU, VT, Expand); in PPCTargetLowering()
851 setOperationAction(ISD::MULHS, VT, Expand); in PPCTargetLowering()
852 setOperationAction(ISD::UMUL_LOHI, VT, Expand); in PPCTargetLowering()
853 setOperationAction(ISD::SMUL_LOHI, VT, Expand); in PPCTargetLowering()
854 setOperationAction(ISD::UDIVREM, VT, Expand); in PPCTargetLowering()
855 setOperationAction(ISD::SDIVREM, VT, Expand); in PPCTargetLowering()
856 setOperationAction(ISD::SCALAR_TO_VECTOR, VT, Expand); in PPCTargetLowering()
857 setOperationAction(ISD::FPOW, VT, Expand); in PPCTargetLowering()
858 setOperationAction(ISD::BSWAP, VT, Expand); in PPCTargetLowering()
859 setOperationAction(ISD::SIGN_EXTEND_INREG, VT, Expand); in PPCTargetLowering()
860 setOperationAction(ISD::ROTL, VT, Expand); in PPCTargetLowering()
861 setOperationAction(ISD::ROTR, VT, Expand); in PPCTargetLowering()
870 setOperationAction(ISD::SELECT_CC, MVT::v4i32, Expand); in PPCTargetLowering()
872 setOperationAction(ISD::SMAX, MVT::v2i64, Expand); in PPCTargetLowering()
873 setOperationAction(ISD::SMIN, MVT::v2i64, Expand); in PPCTargetLowering()
874 setOperationAction(ISD::UMAX, MVT::v2i64, Expand); in PPCTargetLowering()
875 setOperationAction(ISD::UMIN, MVT::v2i64, Expand); in PPCTargetLowering()
880 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v16i8, Custom); in PPCTargetLowering()
884 setOperationAction(ISD::TRUNCATE, MVT::v8i8, Custom); in PPCTargetLowering()
885 setOperationAction(ISD::TRUNCATE, MVT::v4i8, Custom); in PPCTargetLowering()
886 setOperationAction(ISD::TRUNCATE, MVT::v2i8, Custom); in PPCTargetLowering()
887 setOperationAction(ISD::TRUNCATE, MVT::v4i16, Custom); in PPCTargetLowering()
888 setOperationAction(ISD::TRUNCATE, MVT::v2i16, Custom); in PPCTargetLowering()
890 setOperationAction(ISD::AND , MVT::v4i32, Legal); in PPCTargetLowering()
891 setOperationAction(ISD::OR , MVT::v4i32, Legal); in PPCTargetLowering()
892 setOperationAction(ISD::XOR , MVT::v4i32, Legal); in PPCTargetLowering()
893 setOperationAction(ISD::LOAD , MVT::v4i32, Legal); in PPCTargetLowering()
894 setOperationAction(ISD::SELECT, MVT::v4i32, in PPCTargetLowering()
896 setOperationAction(ISD::STORE , MVT::v4i32, Legal); in PPCTargetLowering()
897 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::v4i32, Legal); in PPCTargetLowering()
898 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::v4i32, Legal); in PPCTargetLowering()
899 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
900 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
901 setOperationAction(ISD::FP_TO_SINT, MVT::v4i32, Legal); in PPCTargetLowering()
902 setOperationAction(ISD::FP_TO_UINT, MVT::v4i32, Legal); in PPCTargetLowering()
903 setOperationAction(ISD::SINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
904 setOperationAction(ISD::UINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
905 setOperationAction(ISD::FFLOOR, MVT::v4f32, Legal); in PPCTargetLowering()
906 setOperationAction(ISD::FCEIL, MVT::v4f32, Legal); in PPCTargetLowering()
907 setOperationAction(ISD::FTRUNC, MVT::v4f32, Legal); in PPCTargetLowering()
908 setOperationAction(ISD::FNEARBYINT, MVT::v4f32, Legal); in PPCTargetLowering()
911 setOperationAction(ISD::ROTL, MVT::v1i128, Custom); in PPCTargetLowering()
915 setOperationAction(ISD::ROTL, VT, Legal); in PPCTargetLowering()
918 setOperationAction(ISD::ROTL, MVT::v2i64, Legal); in PPCTargetLowering()
925 setOperationAction(ISD::MUL, MVT::v4f32, Legal); in PPCTargetLowering()
926 setOperationAction(ISD::FMA, MVT::v4f32, Legal); in PPCTargetLowering()
929 setOperationAction(ISD::FDIV, MVT::v4f32, Legal); in PPCTargetLowering()
930 setOperationAction(ISD::FSQRT, MVT::v4f32, Legal); in PPCTargetLowering()
931 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v2f64, Custom); in PPCTargetLowering()
935 setOperationAction(ISD::MUL, MVT::v4i32, Legal); in PPCTargetLowering()
937 setOperationAction(ISD::MUL, MVT::v4i32, Custom); in PPCTargetLowering()
940 setOperationAction(ISD::MUL, MVT::v2i64, Legal); in PPCTargetLowering()
941 setOperationAction(ISD::MULHS, MVT::v2i64, Legal); in PPCTargetLowering()
942 setOperationAction(ISD::MULHU, MVT::v2i64, Legal); in PPCTargetLowering()
943 setOperationAction(ISD::MULHS, MVT::v4i32, Legal); in PPCTargetLowering()
944 setOperationAction(ISD::MULHU, MVT::v4i32, Legal); in PPCTargetLowering()
945 setOperationAction(ISD::UDIV, MVT::v2i64, Legal); in PPCTargetLowering()
946 setOperationAction(ISD::SDIV, MVT::v2i64, Legal); in PPCTargetLowering()
947 setOperationAction(ISD::UDIV, MVT::v4i32, Legal); in PPCTargetLowering()
948 setOperationAction(ISD::SDIV, MVT::v4i32, Legal); in PPCTargetLowering()
949 setOperationAction(ISD::UREM, MVT::v2i64, Legal); in PPCTargetLowering()
950 setOperationAction(ISD::SREM, MVT::v2i64, Legal); in PPCTargetLowering()
951 setOperationAction(ISD::UREM, MVT::v4i32, Legal); in PPCTargetLowering()
952 setOperationAction(ISD::SREM, MVT::v4i32, Legal); in PPCTargetLowering()
953 setOperationAction(ISD::UREM, MVT::v1i128, Legal); in PPCTargetLowering()
954 setOperationAction(ISD::SREM, MVT::v1i128, Legal); in PPCTargetLowering()
955 setOperationAction(ISD::UDIV, MVT::v1i128, Legal); in PPCTargetLowering()
956 setOperationAction(ISD::SDIV, MVT::v1i128, Legal); in PPCTargetLowering()
957 setOperationAction(ISD::ROTL, MVT::v1i128, Legal); in PPCTargetLowering()
960 setOperationAction(ISD::MUL, MVT::v8i16, Legal); in PPCTargetLowering()
961 setOperationAction(ISD::MUL, MVT::v16i8, Custom); in PPCTargetLowering()
963 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Custom); in PPCTargetLowering()
964 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4i32, Custom); in PPCTargetLowering()
966 setOperationAction(ISD::BUILD_VECTOR, MVT::v16i8, Custom); in PPCTargetLowering()
967 setOperationAction(ISD::BUILD_VECTOR, MVT::v8i16, Custom); in PPCTargetLowering()
968 setOperationAction(ISD::BUILD_VECTOR, MVT::v4i32, Custom); in PPCTargetLowering()
969 setOperationAction(ISD::BUILD_VECTOR, MVT::v4f32, Custom); in PPCTargetLowering()
978 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v2f64, Legal); in PPCTargetLowering()
979 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2f64, Legal); in PPCTargetLowering()
981 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Legal); in PPCTargetLowering()
982 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4f32, Legal); in PPCTargetLowering()
985 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v16i8, Legal); in PPCTargetLowering()
986 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v8i16, Legal); in PPCTargetLowering()
987 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4i32, Legal); in PPCTargetLowering()
988 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v2i64, Legal); in PPCTargetLowering()
989 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v16i8, Legal); in PPCTargetLowering()
990 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v8i16, Legal); in PPCTargetLowering()
991 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4i32, Legal); in PPCTargetLowering()
992 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2i64, Legal); in PPCTargetLowering()
994 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2f64, Legal); in PPCTargetLowering()
999 setOperationAction(ISD::FNEARBYINT, MVT::f64, Legal); in PPCTargetLowering()
1000 setOperationAction(ISD::FNEARBYINT, MVT::f32, Legal); in PPCTargetLowering()
1003 setOperationAction(ISD::FFLOOR, MVT::v2f64, Legal); in PPCTargetLowering()
1004 setOperationAction(ISD::FCEIL, MVT::v2f64, Legal); in PPCTargetLowering()
1005 setOperationAction(ISD::FTRUNC, MVT::v2f64, Legal); in PPCTargetLowering()
1006 setOperationAction(ISD::FNEARBYINT, MVT::v2f64, Legal); in PPCTargetLowering()
1007 setOperationAction(ISD::FRINT, MVT::v2f64, Legal); in PPCTargetLowering()
1008 setOperationAction(ISD::FROUND, MVT::v2f64, Legal); in PPCTargetLowering()
1009 setOperationAction(ISD::FROUND, MVT::f64, Legal); in PPCTargetLowering()
1010 setOperationAction(ISD::FRINT, MVT::f64, Legal); in PPCTargetLowering()
1012 setOperationAction(ISD::FNEARBYINT, MVT::v4f32, Legal); in PPCTargetLowering()
1013 setOperationAction(ISD::FRINT, MVT::v4f32, Legal); in PPCTargetLowering()
1014 setOperationAction(ISD::FROUND, MVT::v4f32, Legal); in PPCTargetLowering()
1015 setOperationAction(ISD::FROUND, MVT::f32, Legal); in PPCTargetLowering()
1016 setOperationAction(ISD::FRINT, MVT::f32, Legal); in PPCTargetLowering()
1018 setOperationAction(ISD::MUL, MVT::v2f64, Legal); in PPCTargetLowering()
1019 setOperationAction(ISD::FMA, MVT::v2f64, Legal); in PPCTargetLowering()
1021 setOperationAction(ISD::FDIV, MVT::v2f64, Legal); in PPCTargetLowering()
1022 setOperationAction(ISD::FSQRT, MVT::v2f64, Legal); in PPCTargetLowering()
1030 setOperationAction(ISD::LOAD, MVT::v2f64, Legal); in PPCTargetLowering()
1031 setOperationAction(ISD::STORE, MVT::v2f64, Legal); in PPCTargetLowering()
1033 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2f64, Custom); in PPCTargetLowering()
1045 setOperationAction(ISD::SHL, MVT::v2i64, Legal); in PPCTargetLowering()
1046 setOperationAction(ISD::SRA, MVT::v2i64, Legal); in PPCTargetLowering()
1047 setOperationAction(ISD::SRL, MVT::v2i64, Legal); in PPCTargetLowering()
1053 setOperationAction(ISD::SHL, MVT::v1i128, Expand); in PPCTargetLowering()
1054 setOperationAction(ISD::SRL, MVT::v1i128, Expand); in PPCTargetLowering()
1055 setOperationAction(ISD::SRA, MVT::v1i128, Expand); in PPCTargetLowering()
1057 setOperationAction(ISD::SETCC, MVT::v2i64, Legal); in PPCTargetLowering()
1060 setOperationAction(ISD::SHL, MVT::v2i64, Expand); in PPCTargetLowering()
1061 setOperationAction(ISD::SRA, MVT::v2i64, Expand); in PPCTargetLowering()
1062 setOperationAction(ISD::SRL, MVT::v2i64, Expand); in PPCTargetLowering()
1064 setOperationAction(ISD::SETCC, MVT::v2i64, Custom); in PPCTargetLowering()
1067 setOperationAction(ISD::ADD, MVT::v2i64, Expand); in PPCTargetLowering()
1068 setOperationAction(ISD::SUB, MVT::v2i64, Expand); in PPCTargetLowering()
1072 setOperationAction(ISD::SETCC, MVT::v1i128, Legal); in PPCTargetLowering()
1074 setOperationAction(ISD::SETCC, MVT::v1i128, Expand); in PPCTargetLowering()
1076 setOperationAction(ISD::LOAD, MVT::v2i64, Promote); in PPCTargetLowering()
1078 setOperationAction(ISD::STORE, MVT::v2i64, Promote); in PPCTargetLowering()
1081 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2i64, Custom); in PPCTargetLowering()
1083 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
1084 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
1085 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::v2i64, Legal); in PPCTargetLowering()
1086 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::v2i64, Legal); in PPCTargetLowering()
1087 setOperationAction(ISD::SINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
1088 setOperationAction(ISD::UINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
1089 setOperationAction(ISD::FP_TO_SINT, MVT::v2i64, Legal); in PPCTargetLowering()
1090 setOperationAction(ISD::FP_TO_UINT, MVT::v2i64, Legal); in PPCTargetLowering()
1095 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
1096 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
1097 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
1098 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
1099 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
1100 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
1101 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
1102 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
1103 setOperationAction(ISD::UINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
1104 setOperationAction(ISD::UINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
1105 setOperationAction(ISD::UINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
1106 setOperationAction(ISD::UINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
1107 setOperationAction(ISD::SINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
1108 setOperationAction(ISD::SINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
1109 setOperationAction(ISD::SINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
1110 setOperationAction(ISD::SINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
1112 setOperationAction(ISD::FNEG, MVT::v4f32, Legal); in PPCTargetLowering()
1113 setOperationAction(ISD::FNEG, MVT::v2f64, Legal); in PPCTargetLowering()
1114 setOperationAction(ISD::FABS, MVT::v4f32, Legal); in PPCTargetLowering()
1115 setOperationAction(ISD::FABS, MVT::v2f64, Legal); in PPCTargetLowering()
1116 setOperationAction(ISD::FCOPYSIGN, MVT::v4f32, Legal); in PPCTargetLowering()
1117 setOperationAction(ISD::FCOPYSIGN, MVT::v2f64, Legal); in PPCTargetLowering()
1119 setOperationAction(ISD::BUILD_VECTOR, MVT::v2i64, Custom); in PPCTargetLowering()
1120 setOperationAction(ISD::BUILD_VECTOR, MVT::v2f64, Custom); in PPCTargetLowering()
1125 setOperationAction(ISD::STRICT_FADD, MVT::v4f32, Legal); in PPCTargetLowering()
1126 setOperationAction(ISD::STRICT_FSUB, MVT::v4f32, Legal); in PPCTargetLowering()
1127 setOperationAction(ISD::STRICT_FMUL, MVT::v4f32, Legal); in PPCTargetLowering()
1128 setOperationAction(ISD::STRICT_FDIV, MVT::v4f32, Legal); in PPCTargetLowering()
1129 setOperationAction(ISD::STRICT_FMA, MVT::v4f32, Legal); in PPCTargetLowering()
1130 setOperationAction(ISD::STRICT_FSQRT, MVT::v4f32, Legal); in PPCTargetLowering()
1131 setOperationAction(ISD::STRICT_FMAXNUM, MVT::v4f32, Legal); in PPCTargetLowering()
1132 setOperationAction(ISD::STRICT_FMINNUM, MVT::v4f32, Legal); in PPCTargetLowering()
1133 setOperationAction(ISD::STRICT_FRINT, MVT::v4f32, Legal); in PPCTargetLowering()
1134 setOperationAction(ISD::STRICT_FFLOOR, MVT::v4f32, Legal); in PPCTargetLowering()
1135 setOperationAction(ISD::STRICT_FCEIL, MVT::v4f32, Legal); in PPCTargetLowering()
1136 setOperationAction(ISD::STRICT_FTRUNC, MVT::v4f32, Legal); in PPCTargetLowering()
1137 setOperationAction(ISD::STRICT_FROUND, MVT::v4f32, Legal); in PPCTargetLowering()
1139 setOperationAction(ISD::STRICT_FADD, MVT::v2f64, Legal); in PPCTargetLowering()
1140 setOperationAction(ISD::STRICT_FSUB, MVT::v2f64, Legal); in PPCTargetLowering()
1141 setOperationAction(ISD::STRICT_FMUL, MVT::v2f64, Legal); in PPCTargetLowering()
1142 setOperationAction(ISD::STRICT_FDIV, MVT::v2f64, Legal); in PPCTargetLowering()
1143 setOperationAction(ISD::STRICT_FMA, MVT::v2f64, Legal); in PPCTargetLowering()
1144 setOperationAction(ISD::STRICT_FSQRT, MVT::v2f64, Legal); in PPCTargetLowering()
1145 setOperationAction(ISD::STRICT_FMAXNUM, MVT::v2f64, Legal); in PPCTargetLowering()
1146 setOperationAction(ISD::STRICT_FMINNUM, MVT::v2f64, Legal); in PPCTargetLowering()
1147 setOperationAction(ISD::STRICT_FRINT, MVT::v2f64, Legal); in PPCTargetLowering()
1148 setOperationAction(ISD::STRICT_FFLOOR, MVT::v2f64, Legal); in PPCTargetLowering()
1149 setOperationAction(ISD::STRICT_FCEIL, MVT::v2f64, Legal); in PPCTargetLowering()
1150 setOperationAction(ISD::STRICT_FTRUNC, MVT::v2f64, Legal); in PPCTargetLowering()
1151 setOperationAction(ISD::STRICT_FROUND, MVT::v2f64, Legal); in PPCTargetLowering()
1160 setOperationAction(ISD::SELECT, MVT::f128, Expand); in PPCTargetLowering()
1166 setOperationAction(ISD::FSIN, MVT::f128, Expand); in PPCTargetLowering()
1167 setOperationAction(ISD::FCOS, MVT::f128, Expand); in PPCTargetLowering()
1168 setOperationAction(ISD::FPOW, MVT::f128, Expand); in PPCTargetLowering()
1169 setOperationAction(ISD::FPOWI, MVT::f128, Expand); in PPCTargetLowering()
1170 setOperationAction(ISD::FREM, MVT::f128, Expand); in PPCTargetLowering()
1179 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4i32, Custom); in PPCTargetLowering()
1180 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4f32, Custom); in PPCTargetLowering()
1185 setOperationAction(ISD::SHL, MVT::v1i128, Legal); in PPCTargetLowering()
1186 setOperationAction(ISD::SRL, MVT::v1i128, Legal); in PPCTargetLowering()
1187 setOperationAction(ISD::SRA, MVT::v1i128, Expand); in PPCTargetLowering()
1189 setOperationAction(ISD::FADD, MVT::f128, Legal); in PPCTargetLowering()
1190 setOperationAction(ISD::FSUB, MVT::f128, Legal); in PPCTargetLowering()
1191 setOperationAction(ISD::FDIV, MVT::f128, Legal); in PPCTargetLowering()
1192 setOperationAction(ISD::FMUL, MVT::f128, Legal); in PPCTargetLowering()
1193 setOperationAction(ISD::FP_EXTEND, MVT::f128, Legal); in PPCTargetLowering()
1195 setOperationAction(ISD::FMA, MVT::f128, Legal); in PPCTargetLowering()
1203 setOperationAction(ISD::FTRUNC, MVT::f128, Legal); in PPCTargetLowering()
1204 setOperationAction(ISD::FRINT, MVT::f128, Legal); in PPCTargetLowering()
1205 setOperationAction(ISD::FFLOOR, MVT::f128, Legal); in PPCTargetLowering()
1206 setOperationAction(ISD::FCEIL, MVT::f128, Legal); in PPCTargetLowering()
1207 setOperationAction(ISD::FNEARBYINT, MVT::f128, Legal); in PPCTargetLowering()
1208 setOperationAction(ISD::FROUND, MVT::f128, Legal); in PPCTargetLowering()
1210 setOperationAction(ISD::FP_ROUND, MVT::f64, Legal); in PPCTargetLowering()
1211 setOperationAction(ISD::FP_ROUND, MVT::f32, Legal); in PPCTargetLowering()
1212 setOperationAction(ISD::BITCAST, MVT::i128, Custom); in PPCTargetLowering()
1215 setOperationAction(ISD::STRICT_FADD, MVT::f128, Legal); in PPCTargetLowering()
1216 setOperationAction(ISD::STRICT_FSUB, MVT::f128, Legal); in PPCTargetLowering()
1217 setOperationAction(ISD::STRICT_FMUL, MVT::f128, Legal); in PPCTargetLowering()
1218 setOperationAction(ISD::STRICT_FDIV, MVT::f128, Legal); in PPCTargetLowering()
1219 setOperationAction(ISD::STRICT_FMA, MVT::f128, Legal); in PPCTargetLowering()
1220 setOperationAction(ISD::STRICT_FSQRT, MVT::f128, Legal); in PPCTargetLowering()
1221 setOperationAction(ISD::STRICT_FP_EXTEND, MVT::f128, Legal); in PPCTargetLowering()
1222 setOperationAction(ISD::STRICT_FP_ROUND, MVT::f64, Legal); in PPCTargetLowering()
1223 setOperationAction(ISD::STRICT_FP_ROUND, MVT::f32, Legal); in PPCTargetLowering()
1224 setOperationAction(ISD::STRICT_FRINT, MVT::f128, Legal); in PPCTargetLowering()
1225 setOperationAction(ISD::STRICT_FNEARBYINT, MVT::f128, Legal); in PPCTargetLowering()
1226 setOperationAction(ISD::STRICT_FFLOOR, MVT::f128, Legal); in PPCTargetLowering()
1227 setOperationAction(ISD::STRICT_FCEIL, MVT::f128, Legal); in PPCTargetLowering()
1228 setOperationAction(ISD::STRICT_FTRUNC, MVT::f128, Legal); in PPCTargetLowering()
1229 setOperationAction(ISD::STRICT_FROUND, MVT::f128, Legal); in PPCTargetLowering()
1230 setOperationAction(ISD::FP_EXTEND, MVT::v2f32, Custom); in PPCTargetLowering()
1231 setOperationAction(ISD::BSWAP, MVT::v8i16, Legal); in PPCTargetLowering()
1232 setOperationAction(ISD::BSWAP, MVT::v4i32, Legal); in PPCTargetLowering()
1233 setOperationAction(ISD::BSWAP, MVT::v2i64, Legal); in PPCTargetLowering()
1234 setOperationAction(ISD::BSWAP, MVT::v1i128, Legal); in PPCTargetLowering()
1236 setOperationAction(ISD::LOAD, MVT::f128, Promote); in PPCTargetLowering()
1237 setOperationAction(ISD::STORE, MVT::f128, Promote); in PPCTargetLowering()
1244 setOperationAction(ISD::FADD, MVT::f128, LibCall); in PPCTargetLowering()
1245 setOperationAction(ISD::FSUB, MVT::f128, LibCall); in PPCTargetLowering()
1247 setOperationAction(ISD::FMUL, MVT::f128, Expand); in PPCTargetLowering()
1248 setOperationAction(ISD::FDIV, MVT::f128, Expand); in PPCTargetLowering()
1249 setOperationAction(ISD::FNEG, MVT::f128, Expand); in PPCTargetLowering()
1250 setOperationAction(ISD::FABS, MVT::f128, Expand); in PPCTargetLowering()
1251 setOperationAction(ISD::FSQRT, MVT::f128, Expand); in PPCTargetLowering()
1252 setOperationAction(ISD::FMA, MVT::f128, Expand); in PPCTargetLowering()
1253 setOperationAction(ISD::FCOPYSIGN, MVT::f128, Expand); in PPCTargetLowering()
1256 setOperationAction(ISD::FP_EXTEND, MVT::f128, Expand); in PPCTargetLowering()
1257 setOperationAction(ISD::STRICT_FP_EXTEND, MVT::f128, Expand); in PPCTargetLowering()
1261 setOperationAction(ISD::FP_ROUND, VT, Custom); in PPCTargetLowering()
1262 setOperationAction(ISD::STRICT_FP_ROUND, VT, Custom); in PPCTargetLowering()
1265 setOperationAction(ISD::SETCC, MVT::f128, Custom); in PPCTargetLowering()
1266 setOperationAction(ISD::STRICT_FSETCC, MVT::f128, Custom); in PPCTargetLowering()
1267 setOperationAction(ISD::STRICT_FSETCCS, MVT::f128, Custom); in PPCTargetLowering()
1268 setOperationAction(ISD::BR_CC, MVT::f128, Expand); in PPCTargetLowering()
1272 setOperationAction(ISD::SELECT_CC, MVT::f128, Custom); in PPCTargetLowering()
1275 setOperationAction(ISD::SELECT_CC, MVT::i32, Custom); in PPCTargetLowering()
1276 setOperationAction(ISD::SELECT_CC, MVT::i64, isPPC64 ? Custom : Expand); in PPCTargetLowering()
1281 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v2i64, Legal); in PPCTargetLowering()
1282 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v8i16, Legal); in PPCTargetLowering()
1283 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v16i8, Legal); in PPCTargetLowering()
1284 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4i32, Legal); in PPCTargetLowering()
1286 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v8i16, Custom); in PPCTargetLowering()
1287 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v16i8, Custom); in PPCTargetLowering()
1289 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v4i8, Legal); in PPCTargetLowering()
1290 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v4i16, Legal); in PPCTargetLowering()
1291 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v4i32, Legal); in PPCTargetLowering()
1292 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v2i8, Legal); in PPCTargetLowering()
1293 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v2i16, Legal); in PPCTargetLowering()
1294 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v2i32, Legal); in PPCTargetLowering()
1295 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v2i64, Legal); in PPCTargetLowering()
1299 setOperationAction(ISD::SELECT_CC, MVT::f128, Custom); in PPCTargetLowering()
1305 setOperationAction(ISD::LOAD, MVT::v256i1, Custom); in PPCTargetLowering()
1306 setOperationAction(ISD::STORE, MVT::v256i1, Custom); in PPCTargetLowering()
1310 setOperationAction(ISD::LOAD, MVT::v512i1, Custom); in PPCTargetLowering()
1311 setOperationAction(ISD::STORE, MVT::v512i1, Custom); in PPCTargetLowering()
1312 setOperationAction(ISD::BUILD_VECTOR, MVT::v512i1, Custom); in PPCTargetLowering()
1316 setOperationAction(ISD::PREFETCH, MVT::Other, Legal); in PPCTargetLowering()
1319 setOperationAction(ISD::SRA, MVT::v1i128, Legal); in PPCTargetLowering()
1321 setOperationAction(ISD::READCYCLECOUNTER, MVT::i64, isPPC64 ? Legal : Custom); in PPCTargetLowering()
1324 setOperationAction(ISD::ATOMIC_LOAD, MVT::i64, Expand); in PPCTargetLowering()
1325 setOperationAction(ISD::ATOMIC_STORE, MVT::i64, Expand); in PPCTargetLowering()
1329 setOperationAction(ISD::ATOMIC_LOAD, MVT::i128, Custom); in PPCTargetLowering()
1330 setOperationAction(ISD::ATOMIC_STORE, MVT::i128, Custom); in PPCTargetLowering()
1331 setOperationAction(ISD::INTRINSIC_VOID, MVT::i128, Custom); in PPCTargetLowering()