Lines Matching refs:setOperationAction
187 setOperationAction(ISD::BITREVERSE, MVT::i32, Legal); in PPCTargetLowering()
188 setOperationAction(ISD::BITREVERSE, MVT::i64, Legal); in PPCTargetLowering()
191 setOperationAction(ISD::ATOMIC_CMP_SWAP, MVT::i32, Custom); in PPCTargetLowering()
194 setOperationAction(ISD::INLINEASM, MVT::Other, Custom); in PPCTargetLowering()
195 setOperationAction(ISD::INLINEASM_BR, MVT::Other, Custom); in PPCTargetLowering()
211 setOperationAction(ISD::FP16_TO_FP, MVT::f64, Expand); in PPCTargetLowering()
212 setOperationAction(ISD::FP_TO_FP16, MVT::f64, Expand); in PPCTargetLowering()
214 setOperationAction(ISD::FP16_TO_FP, MVT::f32, Expand); in PPCTargetLowering()
215 setOperationAction(ISD::FP_TO_FP16, MVT::f32, Expand); in PPCTargetLowering()
243 setOperationAction(ISD::ADDC, VT, Legal); in PPCTargetLowering()
244 setOperationAction(ISD::ADDE, VT, Legal); in PPCTargetLowering()
245 setOperationAction(ISD::SUBC, VT, Legal); in PPCTargetLowering()
246 setOperationAction(ISD::SUBE, VT, Legal); in PPCTargetLowering()
250 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i1, Expand); in PPCTargetLowering()
253 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
256 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
260 setOperationAction(ISD::SINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
263 setOperationAction(ISD::UINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
267 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i1, Promote); in PPCTargetLowering()
270 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i1, Promote); in PPCTargetLowering()
274 setOperationAction(ISD::FP_TO_SINT, MVT::i1, Promote); in PPCTargetLowering()
277 setOperationAction(ISD::FP_TO_UINT, MVT::i1, Promote); in PPCTargetLowering()
281 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
282 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
283 setOperationAction(ISD::SINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
284 setOperationAction(ISD::UINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
288 setOperationAction(ISD::LOAD, MVT::i1, Custom); in PPCTargetLowering()
289 setOperationAction(ISD::STORE, MVT::i1, Custom); in PPCTargetLowering()
293 setOperationAction(ISD::TRUNCATE, MVT::i1, Custom); in PPCTargetLowering()
306 setOperationAction(ISD::FP_TO_SINT, MVT::ppcf128, Custom); in PPCTargetLowering()
307 setOperationAction(ISD::FP_TO_UINT, MVT::ppcf128, Custom); in PPCTargetLowering()
308 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::ppcf128, Custom); in PPCTargetLowering()
309 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::ppcf128, Custom); in PPCTargetLowering()
312 setOperationAction(ISD::FFLOOR, MVT::ppcf128, Expand); in PPCTargetLowering()
313 setOperationAction(ISD::FCEIL, MVT::ppcf128, Expand); in PPCTargetLowering()
314 setOperationAction(ISD::FTRUNC, MVT::ppcf128, Expand); in PPCTargetLowering()
315 setOperationAction(ISD::FRINT, MVT::ppcf128, Expand); in PPCTargetLowering()
316 setOperationAction(ISD::FNEARBYINT, MVT::ppcf128, Expand); in PPCTargetLowering()
317 setOperationAction(ISD::FREM, MVT::ppcf128, Expand); in PPCTargetLowering()
327 setOperationAction(ISD::SREM, MVT::i32, Legal); in PPCTargetLowering()
328 setOperationAction(ISD::UREM, MVT::i32, Legal); in PPCTargetLowering()
329 setOperationAction(ISD::SREM, MVT::i64, Legal); in PPCTargetLowering()
330 setOperationAction(ISD::UREM, MVT::i64, Legal); in PPCTargetLowering()
332 setOperationAction(ISD::SREM, MVT::i32, Expand); in PPCTargetLowering()
333 setOperationAction(ISD::UREM, MVT::i32, Expand); in PPCTargetLowering()
334 setOperationAction(ISD::SREM, MVT::i64, Expand); in PPCTargetLowering()
335 setOperationAction(ISD::UREM, MVT::i64, Expand); in PPCTargetLowering()
339 setOperationAction(ISD::UMUL_LOHI, MVT::i32, Expand); in PPCTargetLowering()
340 setOperationAction(ISD::SMUL_LOHI, MVT::i32, Expand); in PPCTargetLowering()
341 setOperationAction(ISD::UMUL_LOHI, MVT::i64, Expand); in PPCTargetLowering()
342 setOperationAction(ISD::SMUL_LOHI, MVT::i64, Expand); in PPCTargetLowering()
343 setOperationAction(ISD::UDIVREM, MVT::i32, Expand); in PPCTargetLowering()
344 setOperationAction(ISD::SDIVREM, MVT::i32, Expand); in PPCTargetLowering()
345 setOperationAction(ISD::UDIVREM, MVT::i64, Expand); in PPCTargetLowering()
346 setOperationAction(ISD::SDIVREM, MVT::i64, Expand); in PPCTargetLowering()
350 setOperationAction(ISD::STRICT_FADD, MVT::f32, Legal); in PPCTargetLowering()
351 setOperationAction(ISD::STRICT_FSUB, MVT::f32, Legal); in PPCTargetLowering()
352 setOperationAction(ISD::STRICT_FMUL, MVT::f32, Legal); in PPCTargetLowering()
353 setOperationAction(ISD::STRICT_FDIV, MVT::f32, Legal); in PPCTargetLowering()
354 setOperationAction(ISD::STRICT_FP_ROUND, MVT::f32, Legal); in PPCTargetLowering()
356 setOperationAction(ISD::STRICT_FADD, MVT::f64, Legal); in PPCTargetLowering()
357 setOperationAction(ISD::STRICT_FSUB, MVT::f64, Legal); in PPCTargetLowering()
358 setOperationAction(ISD::STRICT_FMUL, MVT::f64, Legal); in PPCTargetLowering()
359 setOperationAction(ISD::STRICT_FDIV, MVT::f64, Legal); in PPCTargetLowering()
362 setOperationAction(ISD::STRICT_FMA, MVT::f32, Legal); in PPCTargetLowering()
363 setOperationAction(ISD::STRICT_FMA, MVT::f64, Legal); in PPCTargetLowering()
367 setOperationAction(ISD::STRICT_FRINT, MVT::f32, Legal); in PPCTargetLowering()
368 setOperationAction(ISD::STRICT_FRINT, MVT::f64, Legal); in PPCTargetLowering()
372 setOperationAction(ISD::STRICT_FSQRT, MVT::f32, Legal); in PPCTargetLowering()
373 setOperationAction(ISD::STRICT_FSQRT, MVT::f64, Legal); in PPCTargetLowering()
377 setOperationAction(ISD::STRICT_FFLOOR, MVT::f32, Legal); in PPCTargetLowering()
378 setOperationAction(ISD::STRICT_FCEIL, MVT::f32, Legal); in PPCTargetLowering()
379 setOperationAction(ISD::STRICT_FTRUNC, MVT::f32, Legal); in PPCTargetLowering()
380 setOperationAction(ISD::STRICT_FROUND, MVT::f32, Legal); in PPCTargetLowering()
382 setOperationAction(ISD::STRICT_FFLOOR, MVT::f64, Legal); in PPCTargetLowering()
383 setOperationAction(ISD::STRICT_FCEIL, MVT::f64, Legal); in PPCTargetLowering()
384 setOperationAction(ISD::STRICT_FTRUNC, MVT::f64, Legal); in PPCTargetLowering()
385 setOperationAction(ISD::STRICT_FROUND, MVT::f64, Legal); in PPCTargetLowering()
389 setOperationAction(ISD::FSIN , MVT::f64, Expand); in PPCTargetLowering()
390 setOperationAction(ISD::FCOS , MVT::f64, Expand); in PPCTargetLowering()
391 setOperationAction(ISD::FSINCOS, MVT::f64, Expand); in PPCTargetLowering()
392 setOperationAction(ISD::FREM , MVT::f64, Expand); in PPCTargetLowering()
393 setOperationAction(ISD::FPOW , MVT::f64, Expand); in PPCTargetLowering()
394 setOperationAction(ISD::FSIN , MVT::f32, Expand); in PPCTargetLowering()
395 setOperationAction(ISD::FCOS , MVT::f32, Expand); in PPCTargetLowering()
396 setOperationAction(ISD::FSINCOS, MVT::f32, Expand); in PPCTargetLowering()
397 setOperationAction(ISD::FREM , MVT::f32, Expand); in PPCTargetLowering()
398 setOperationAction(ISD::FPOW , MVT::f32, Expand); in PPCTargetLowering()
403 setOperationAction(ISD::FSIN , MVT::f64, Custom); in PPCTargetLowering()
404 setOperationAction(ISD::FCOS , MVT::f64, Custom); in PPCTargetLowering()
405 setOperationAction(ISD::FPOW , MVT::f64, Custom); in PPCTargetLowering()
406 setOperationAction(ISD::FLOG, MVT::f64, Custom); in PPCTargetLowering()
407 setOperationAction(ISD::FLOG10, MVT::f64, Custom); in PPCTargetLowering()
408 setOperationAction(ISD::FEXP, MVT::f64, Custom); in PPCTargetLowering()
409 setOperationAction(ISD::FSIN , MVT::f32, Custom); in PPCTargetLowering()
410 setOperationAction(ISD::FCOS , MVT::f32, Custom); in PPCTargetLowering()
411 setOperationAction(ISD::FPOW , MVT::f32, Custom); in PPCTargetLowering()
412 setOperationAction(ISD::FLOG, MVT::f32, Custom); in PPCTargetLowering()
413 setOperationAction(ISD::FLOG10, MVT::f32, Custom); in PPCTargetLowering()
414 setOperationAction(ISD::FEXP, MVT::f32, Custom); in PPCTargetLowering()
418 setOperationAction(ISD::FMA , MVT::f64, Expand); in PPCTargetLowering()
419 setOperationAction(ISD::FMA , MVT::f32, Expand); in PPCTargetLowering()
421 setOperationAction(ISD::FMA , MVT::f64, Legal); in PPCTargetLowering()
422 setOperationAction(ISD::FMA , MVT::f32, Legal); in PPCTargetLowering()
428 setOperationAction(ISD::GET_ROUNDING, MVT::i32, Custom); in PPCTargetLowering()
434 setOperationAction(ISD::FSQRT, MVT::f64, Expand); in PPCTargetLowering()
439 setOperationAction(ISD::FSQRT, MVT::f32, Expand); in PPCTargetLowering()
442 setOperationAction(ISD::FCOPYSIGN, MVT::f64, Legal); in PPCTargetLowering()
443 setOperationAction(ISD::FCOPYSIGN, MVT::f32, Legal); in PPCTargetLowering()
445 setOperationAction(ISD::FCOPYSIGN, MVT::f64, Expand); in PPCTargetLowering()
446 setOperationAction(ISD::FCOPYSIGN, MVT::f32, Expand); in PPCTargetLowering()
450 setOperationAction(ISD::FFLOOR, MVT::f64, Legal); in PPCTargetLowering()
451 setOperationAction(ISD::FCEIL, MVT::f64, Legal); in PPCTargetLowering()
452 setOperationAction(ISD::FTRUNC, MVT::f64, Legal); in PPCTargetLowering()
453 setOperationAction(ISD::FROUND, MVT::f64, Legal); in PPCTargetLowering()
455 setOperationAction(ISD::FFLOOR, MVT::f32, Legal); in PPCTargetLowering()
456 setOperationAction(ISD::FCEIL, MVT::f32, Legal); in PPCTargetLowering()
457 setOperationAction(ISD::FTRUNC, MVT::f32, Legal); in PPCTargetLowering()
458 setOperationAction(ISD::FROUND, MVT::f32, Legal); in PPCTargetLowering()
464 setOperationAction(ISD::BSWAP, MVT::i32, Legal); in PPCTargetLowering()
465 setOperationAction(ISD::BSWAP, MVT::i64, Legal); in PPCTargetLowering()
467 setOperationAction(ISD::BSWAP, MVT::i32, Expand); in PPCTargetLowering()
468 setOperationAction( in PPCTargetLowering()
475 setOperationAction(ISD::CTTZ , MVT::i32 , Legal); in PPCTargetLowering()
476 setOperationAction(ISD::CTTZ , MVT::i64 , Legal); in PPCTargetLowering()
478 setOperationAction(ISD::CTTZ , MVT::i32 , Expand); in PPCTargetLowering()
479 setOperationAction(ISD::CTTZ , MVT::i64 , Expand); in PPCTargetLowering()
483 setOperationAction(ISD::CTPOP, MVT::i32 , Legal); in PPCTargetLowering()
484 setOperationAction(ISD::CTPOP, MVT::i64 , Legal); in PPCTargetLowering()
486 setOperationAction(ISD::CTPOP, MVT::i32 , Expand); in PPCTargetLowering()
487 setOperationAction(ISD::CTPOP, MVT::i64 , Expand); in PPCTargetLowering()
491 setOperationAction(ISD::ROTR, MVT::i32 , Expand); in PPCTargetLowering()
492 setOperationAction(ISD::ROTR, MVT::i64 , Expand); in PPCTargetLowering()
496 setOperationAction(ISD::SELECT, MVT::i32, Expand); in PPCTargetLowering()
497 setOperationAction(ISD::SELECT, MVT::i64, Expand); in PPCTargetLowering()
498 setOperationAction(ISD::SELECT, MVT::f32, Expand); in PPCTargetLowering()
499 setOperationAction(ISD::SELECT, MVT::f64, Expand); in PPCTargetLowering()
503 setOperationAction(ISD::SELECT_CC, MVT::f32, Custom); in PPCTargetLowering()
504 setOperationAction(ISD::SELECT_CC, MVT::f64, Custom); in PPCTargetLowering()
508 setOperationAction(ISD::SETCC, MVT::i32, Custom); in PPCTargetLowering()
511 setOperationAction(ISD::STRICT_FSETCC, MVT::f32, Legal); in PPCTargetLowering()
512 setOperationAction(ISD::STRICT_FSETCC, MVT::f64, Legal); in PPCTargetLowering()
513 setOperationAction(ISD::STRICT_FSETCC, MVT::f128, Legal); in PPCTargetLowering()
515 setOperationAction(ISD::STRICT_FSETCCS, MVT::f32, Legal); in PPCTargetLowering()
516 setOperationAction(ISD::STRICT_FSETCCS, MVT::f64, Legal); in PPCTargetLowering()
517 setOperationAction(ISD::STRICT_FSETCCS, MVT::f128, Legal); in PPCTargetLowering()
522 setOperationAction(ISD::BRCOND, MVT::Other, Expand); in PPCTargetLowering()
524 setOperationAction(ISD::BR_JT, MVT::Other, Expand); in PPCTargetLowering()
528 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i32, Legal); in PPCTargetLowering()
529 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
530 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
531 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Legal); in PPCTargetLowering()
532 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
533 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
536 setOperationAction(ISD::STRICT_FSETCCS, MVT::f32, Legal); in PPCTargetLowering()
537 setOperationAction(ISD::STRICT_FSETCCS, MVT::f64, Legal); in PPCTargetLowering()
540 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
541 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
544 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
545 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
546 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
547 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
551 setOperationAction(ISD::BITCAST, MVT::f32, Legal); in PPCTargetLowering()
552 setOperationAction(ISD::BITCAST, MVT::i32, Legal); in PPCTargetLowering()
553 setOperationAction(ISD::BITCAST, MVT::i64, Legal); in PPCTargetLowering()
554 setOperationAction(ISD::BITCAST, MVT::f64, Legal); in PPCTargetLowering()
556 setOperationAction(ISD::LRINT, MVT::f64, Legal); in PPCTargetLowering()
557 setOperationAction(ISD::LRINT, MVT::f32, Legal); in PPCTargetLowering()
558 setOperationAction(ISD::LLRINT, MVT::f64, Legal); in PPCTargetLowering()
559 setOperationAction(ISD::LLRINT, MVT::f32, Legal); in PPCTargetLowering()
560 setOperationAction(ISD::LROUND, MVT::f64, Legal); in PPCTargetLowering()
561 setOperationAction(ISD::LROUND, MVT::f32, Legal); in PPCTargetLowering()
562 setOperationAction(ISD::LLROUND, MVT::f64, Legal); in PPCTargetLowering()
563 setOperationAction(ISD::LLROUND, MVT::f32, Legal); in PPCTargetLowering()
566 setOperationAction(ISD::BITCAST, MVT::f32, Expand); in PPCTargetLowering()
567 setOperationAction(ISD::BITCAST, MVT::i32, Expand); in PPCTargetLowering()
568 setOperationAction(ISD::BITCAST, MVT::i64, Expand); in PPCTargetLowering()
569 setOperationAction(ISD::BITCAST, MVT::f64, Expand); in PPCTargetLowering()
573 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i1, Expand); in PPCTargetLowering()
581 setOperationAction(ISD::EH_SJLJ_SETJMP, MVT::i32, Custom); in PPCTargetLowering()
582 setOperationAction(ISD::EH_SJLJ_LONGJMP, MVT::Other, Custom); in PPCTargetLowering()
586 setOperationAction(ISD::GlobalAddress, MVT::i32, Custom); in PPCTargetLowering()
587 setOperationAction(ISD::GlobalTLSAddress, MVT::i32, Custom); in PPCTargetLowering()
588 setOperationAction(ISD::BlockAddress, MVT::i32, Custom); in PPCTargetLowering()
589 setOperationAction(ISD::ConstantPool, MVT::i32, Custom); in PPCTargetLowering()
590 setOperationAction(ISD::JumpTable, MVT::i32, Custom); in PPCTargetLowering()
591 setOperationAction(ISD::GlobalAddress, MVT::i64, Custom); in PPCTargetLowering()
592 setOperationAction(ISD::GlobalTLSAddress, MVT::i64, Custom); in PPCTargetLowering()
593 setOperationAction(ISD::BlockAddress, MVT::i64, Custom); in PPCTargetLowering()
594 setOperationAction(ISD::ConstantPool, MVT::i64, Custom); in PPCTargetLowering()
595 setOperationAction(ISD::JumpTable, MVT::i64, Custom); in PPCTargetLowering()
598 setOperationAction(ISD::TRAP, MVT::Other, Legal); in PPCTargetLowering()
601 setOperationAction(ISD::INIT_TRAMPOLINE, MVT::Other, Custom); in PPCTargetLowering()
602 setOperationAction(ISD::ADJUST_TRAMPOLINE, MVT::Other, Custom); in PPCTargetLowering()
605 setOperationAction(ISD::VASTART , MVT::Other, Custom); in PPCTargetLowering()
609 setOperationAction(ISD::VAARG, MVT::i1, Promote); in PPCTargetLowering()
611 setOperationAction(ISD::VAARG, MVT::i8, Promote); in PPCTargetLowering()
613 setOperationAction(ISD::VAARG, MVT::i16, Promote); in PPCTargetLowering()
615 setOperationAction(ISD::VAARG, MVT::i32, Promote); in PPCTargetLowering()
617 setOperationAction(ISD::VAARG, MVT::Other, Expand); in PPCTargetLowering()
620 setOperationAction(ISD::VAARG, MVT::Other, Custom); in PPCTargetLowering()
621 setOperationAction(ISD::VAARG, MVT::i64, Custom); in PPCTargetLowering()
623 setOperationAction(ISD::VAARG, MVT::Other, Expand); in PPCTargetLowering()
627 setOperationAction(ISD::VACOPY , MVT::Other, Custom); in PPCTargetLowering()
629 setOperationAction(ISD::VACOPY , MVT::Other, Expand); in PPCTargetLowering()
632 setOperationAction(ISD::VAEND , MVT::Other, Expand); in PPCTargetLowering()
633 setOperationAction(ISD::STACKSAVE , MVT::Other, Expand); in PPCTargetLowering()
634 setOperationAction(ISD::STACKRESTORE , MVT::Other, Custom); in PPCTargetLowering()
635 setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i32 , Custom); in PPCTargetLowering()
636 setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i64 , Custom); in PPCTargetLowering()
637 setOperationAction(ISD::GET_DYNAMIC_AREA_OFFSET, MVT::i32, Custom); in PPCTargetLowering()
638 setOperationAction(ISD::GET_DYNAMIC_AREA_OFFSET, MVT::i64, Custom); in PPCTargetLowering()
639 setOperationAction(ISD::EH_DWARF_CFA, MVT::i32, Custom); in PPCTargetLowering()
640 setOperationAction(ISD::EH_DWARF_CFA, MVT::i64, Custom); in PPCTargetLowering()
643 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::Other, Custom); in PPCTargetLowering()
644 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::f64, Custom); in PPCTargetLowering()
645 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::ppcf128, Custom); in PPCTargetLowering()
646 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::v4f32, Custom); in PPCTargetLowering()
647 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::v2f64, Custom); in PPCTargetLowering()
650 setOperationAction(ISD::INTRINSIC_W_CHAIN, MVT::i1, Custom); in PPCTargetLowering()
652 setOperationAction(ISD::INTRINSIC_VOID, MVT::i8, Custom); in PPCTargetLowering()
653 setOperationAction(ISD::INTRINSIC_VOID, MVT::i16, Custom); in PPCTargetLowering()
654 setOperationAction(ISD::INTRINSIC_VOID, MVT::i32, Custom); in PPCTargetLowering()
655 setOperationAction(ISD::INTRINSIC_VOID, MVT::Other, Custom); in PPCTargetLowering()
677 setOperationAction(ISD::STRICT_FP_EXTEND, MVT::f32, Legal); in PPCTargetLowering()
678 setOperationAction(ISD::STRICT_FP_EXTEND, MVT::f64, Legal); in PPCTargetLowering()
682 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
683 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i64, Expand); in PPCTargetLowering()
684 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
685 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i64, Expand); in PPCTargetLowering()
686 setOperationAction(ISD::FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
687 setOperationAction(ISD::FP_TO_UINT, MVT::i64, Expand); in PPCTargetLowering()
688 setOperationAction(ISD::SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
689 setOperationAction(ISD::UINT_TO_FP, MVT::i64, Expand); in PPCTargetLowering()
692 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
693 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
696 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
697 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
702 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i32, Legal); in PPCTargetLowering()
703 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Legal); in PPCTargetLowering()
705 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i32, Expand); in PPCTargetLowering()
706 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Expand); in PPCTargetLowering()
713 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
714 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i64, Custom); in PPCTargetLowering()
715 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
716 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
717 setOperationAction(ISD::FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
718 setOperationAction(ISD::FP_TO_UINT, MVT::i64, Custom); in PPCTargetLowering()
719 setOperationAction(ISD::SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
720 setOperationAction(ISD::UINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
723 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
724 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
725 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
726 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
727 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
728 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
729 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
730 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
737 setOperationAction(ISD::BUILD_PAIR, MVT::i64, Expand); in PPCTargetLowering()
739 setOperationAction(ISD::SHL_PARTS, MVT::i64, Custom); in PPCTargetLowering()
740 setOperationAction(ISD::SRA_PARTS, MVT::i64, Custom); in PPCTargetLowering()
741 setOperationAction(ISD::SRL_PARTS, MVT::i64, Custom); in PPCTargetLowering()
744 setOperationAction(ISD::SHL_PARTS, MVT::i32, Custom); in PPCTargetLowering()
745 setOperationAction(ISD::SRA_PARTS, MVT::i32, Custom); in PPCTargetLowering()
746 setOperationAction(ISD::SRL_PARTS, MVT::i32, Custom); in PPCTargetLowering()
752 setOperationAction(ISD::FSHL, MVT::i64, Custom); in PPCTargetLowering()
753 setOperationAction(ISD::FSHR, MVT::i64, Custom); in PPCTargetLowering()
755 setOperationAction(ISD::FSHL, MVT::i32, Custom); in PPCTargetLowering()
756 setOperationAction(ISD::FSHR, MVT::i32, Custom); in PPCTargetLowering()
759 setOperationAction(ISD::FMAXNUM_IEEE, MVT::f64, Legal); in PPCTargetLowering()
760 setOperationAction(ISD::FMAXNUM_IEEE, MVT::f32, Legal); in PPCTargetLowering()
761 setOperationAction(ISD::FMINNUM_IEEE, MVT::f64, Legal); in PPCTargetLowering()
762 setOperationAction(ISD::FMINNUM_IEEE, MVT::f32, Legal); in PPCTargetLowering()
767 setOperationAction(ISD::SADDSAT, VT, Legal); in PPCTargetLowering()
768 setOperationAction(ISD::SSUBSAT, VT, Legal); in PPCTargetLowering()
769 setOperationAction(ISD::UADDSAT, VT, Legal); in PPCTargetLowering()
770 setOperationAction(ISD::USUBSAT, VT, Legal); in PPCTargetLowering()
776 setOperationAction(ISD::ADD, VT, Legal); in PPCTargetLowering()
777 setOperationAction(ISD::SUB, VT, Legal); in PPCTargetLowering()
782 setOperationAction(ISD::SMAX, VT, Legal); in PPCTargetLowering()
783 setOperationAction(ISD::SMIN, VT, Legal); in PPCTargetLowering()
784 setOperationAction(ISD::UMAX, VT, Legal); in PPCTargetLowering()
785 setOperationAction(ISD::UMIN, VT, Legal); in PPCTargetLowering()
788 setOperationAction(ISD::SMAX, VT, Expand); in PPCTargetLowering()
789 setOperationAction(ISD::SMIN, VT, Expand); in PPCTargetLowering()
790 setOperationAction(ISD::UMAX, VT, Expand); in PPCTargetLowering()
791 setOperationAction(ISD::UMIN, VT, Expand); in PPCTargetLowering()
795 setOperationAction(ISD::FMAXNUM, VT, Legal); in PPCTargetLowering()
796 setOperationAction(ISD::FMINNUM, VT, Legal); in PPCTargetLowering()
801 setOperationAction(ISD::CTPOP, VT, Legal); in PPCTargetLowering()
802 setOperationAction(ISD::CTLZ, VT, Legal); in PPCTargetLowering()
805 setOperationAction(ISD::CTPOP, VT, Expand); in PPCTargetLowering()
806 setOperationAction(ISD::CTLZ, VT, Expand); in PPCTargetLowering()
811 setOperationAction(ISD::CTTZ, VT, Legal); in PPCTargetLowering()
813 setOperationAction(ISD::CTTZ, VT, Expand); in PPCTargetLowering()
816 setOperationAction(ISD::VECTOR_SHUFFLE, VT, Promote); in PPCTargetLowering()
820 setOperationAction(ISD::AND , VT, Promote); in PPCTargetLowering()
822 setOperationAction(ISD::OR , VT, Promote); in PPCTargetLowering()
824 setOperationAction(ISD::XOR , VT, Promote); in PPCTargetLowering()
826 setOperationAction(ISD::LOAD , VT, Promote); in PPCTargetLowering()
828 setOperationAction(ISD::SELECT, VT, Promote); in PPCTargetLowering()
830 setOperationAction(ISD::VSELECT, VT, Legal); in PPCTargetLowering()
831 setOperationAction(ISD::SELECT_CC, VT, Promote); in PPCTargetLowering()
833 setOperationAction(ISD::STORE, VT, Promote); in PPCTargetLowering()
837 setOperationAction(ISD::MUL , VT, Expand); in PPCTargetLowering()
838 setOperationAction(ISD::SDIV, VT, Expand); in PPCTargetLowering()
839 setOperationAction(ISD::SREM, VT, Expand); in PPCTargetLowering()
840 setOperationAction(ISD::UDIV, VT, Expand); in PPCTargetLowering()
841 setOperationAction(ISD::UREM, VT, Expand); in PPCTargetLowering()
842 setOperationAction(ISD::FDIV, VT, Expand); in PPCTargetLowering()
843 setOperationAction(ISD::FREM, VT, Expand); in PPCTargetLowering()
844 setOperationAction(ISD::FNEG, VT, Expand); in PPCTargetLowering()
845 setOperationAction(ISD::FSQRT, VT, Expand); in PPCTargetLowering()
846 setOperationAction(ISD::FLOG, VT, Expand); in PPCTargetLowering()
847 setOperationAction(ISD::FLOG10, VT, Expand); in PPCTargetLowering()
848 setOperationAction(ISD::FLOG2, VT, Expand); in PPCTargetLowering()
849 setOperationAction(ISD::FEXP, VT, Expand); in PPCTargetLowering()
850 setOperationAction(ISD::FEXP2, VT, Expand); in PPCTargetLowering()
851 setOperationAction(ISD::FSIN, VT, Expand); in PPCTargetLowering()
852 setOperationAction(ISD::FCOS, VT, Expand); in PPCTargetLowering()
853 setOperationAction(ISD::FABS, VT, Expand); in PPCTargetLowering()
854 setOperationAction(ISD::FFLOOR, VT, Expand); in PPCTargetLowering()
855 setOperationAction(ISD::FCEIL, VT, Expand); in PPCTargetLowering()
856 setOperationAction(ISD::FTRUNC, VT, Expand); in PPCTargetLowering()
857 setOperationAction(ISD::FRINT, VT, Expand); in PPCTargetLowering()
858 setOperationAction(ISD::FLDEXP, VT, Expand); in PPCTargetLowering()
859 setOperationAction(ISD::FNEARBYINT, VT, Expand); in PPCTargetLowering()
860 setOperationAction(ISD::EXTRACT_VECTOR_ELT, VT, Expand); in PPCTargetLowering()
861 setOperationAction(ISD::INSERT_VECTOR_ELT, VT, Expand); in PPCTargetLowering()
862 setOperationAction(ISD::BUILD_VECTOR, VT, Expand); in PPCTargetLowering()
863 setOperationAction(ISD::MULHU, VT, Expand); in PPCTargetLowering()
864 setOperationAction(ISD::MULHS, VT, Expand); in PPCTargetLowering()
865 setOperationAction(ISD::UMUL_LOHI, VT, Expand); in PPCTargetLowering()
866 setOperationAction(ISD::SMUL_LOHI, VT, Expand); in PPCTargetLowering()
867 setOperationAction(ISD::UDIVREM, VT, Expand); in PPCTargetLowering()
868 setOperationAction(ISD::SDIVREM, VT, Expand); in PPCTargetLowering()
869 setOperationAction(ISD::SCALAR_TO_VECTOR, VT, Expand); in PPCTargetLowering()
870 setOperationAction(ISD::FPOW, VT, Expand); in PPCTargetLowering()
871 setOperationAction(ISD::BSWAP, VT, Expand); in PPCTargetLowering()
872 setOperationAction(ISD::SIGN_EXTEND_INREG, VT, Expand); in PPCTargetLowering()
873 setOperationAction(ISD::ROTL, VT, Expand); in PPCTargetLowering()
874 setOperationAction(ISD::ROTR, VT, Expand); in PPCTargetLowering()
883 setOperationAction(ISD::SELECT_CC, MVT::v4i32, Expand); in PPCTargetLowering()
885 setOperationAction(ISD::SMAX, MVT::v2i64, Expand); in PPCTargetLowering()
886 setOperationAction(ISD::SMIN, MVT::v2i64, Expand); in PPCTargetLowering()
887 setOperationAction(ISD::UMAX, MVT::v2i64, Expand); in PPCTargetLowering()
888 setOperationAction(ISD::UMIN, MVT::v2i64, Expand); in PPCTargetLowering()
893 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v16i8, Custom); in PPCTargetLowering()
897 setOperationAction(ISD::TRUNCATE, MVT::v8i8, Custom); in PPCTargetLowering()
898 setOperationAction(ISD::TRUNCATE, MVT::v4i8, Custom); in PPCTargetLowering()
899 setOperationAction(ISD::TRUNCATE, MVT::v2i8, Custom); in PPCTargetLowering()
900 setOperationAction(ISD::TRUNCATE, MVT::v4i16, Custom); in PPCTargetLowering()
901 setOperationAction(ISD::TRUNCATE, MVT::v2i16, Custom); in PPCTargetLowering()
903 setOperationAction(ISD::AND , MVT::v4i32, Legal); in PPCTargetLowering()
904 setOperationAction(ISD::OR , MVT::v4i32, Legal); in PPCTargetLowering()
905 setOperationAction(ISD::XOR , MVT::v4i32, Legal); in PPCTargetLowering()
906 setOperationAction(ISD::LOAD , MVT::v4i32, Legal); in PPCTargetLowering()
907 setOperationAction(ISD::SELECT, MVT::v4i32, in PPCTargetLowering()
909 setOperationAction(ISD::STORE , MVT::v4i32, Legal); in PPCTargetLowering()
910 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::v4i32, Legal); in PPCTargetLowering()
911 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::v4i32, Legal); in PPCTargetLowering()
912 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
913 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
914 setOperationAction(ISD::FP_TO_SINT, MVT::v4i32, Legal); in PPCTargetLowering()
915 setOperationAction(ISD::FP_TO_UINT, MVT::v4i32, Legal); in PPCTargetLowering()
916 setOperationAction(ISD::SINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
917 setOperationAction(ISD::UINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
918 setOperationAction(ISD::FFLOOR, MVT::v4f32, Legal); in PPCTargetLowering()
919 setOperationAction(ISD::FCEIL, MVT::v4f32, Legal); in PPCTargetLowering()
920 setOperationAction(ISD::FTRUNC, MVT::v4f32, Legal); in PPCTargetLowering()
921 setOperationAction(ISD::FNEARBYINT, MVT::v4f32, Legal); in PPCTargetLowering()
924 setOperationAction(ISD::ROTL, MVT::v1i128, Custom); in PPCTargetLowering()
928 setOperationAction(ISD::ROTL, VT, Legal); in PPCTargetLowering()
931 setOperationAction(ISD::ROTL, MVT::v2i64, Legal); in PPCTargetLowering()
938 setOperationAction(ISD::MUL, MVT::v4f32, Legal); in PPCTargetLowering()
939 setOperationAction(ISD::FMA, MVT::v4f32, Legal); in PPCTargetLowering()
942 setOperationAction(ISD::FDIV, MVT::v4f32, Legal); in PPCTargetLowering()
943 setOperationAction(ISD::FSQRT, MVT::v4f32, Legal); in PPCTargetLowering()
944 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v2f64, Custom); in PPCTargetLowering()
948 setOperationAction(ISD::MUL, MVT::v4i32, Legal); in PPCTargetLowering()
950 setOperationAction(ISD::MUL, MVT::v4i32, Custom); in PPCTargetLowering()
953 setOperationAction(ISD::MUL, MVT::v2i64, Legal); in PPCTargetLowering()
954 setOperationAction(ISD::MULHS, MVT::v2i64, Legal); in PPCTargetLowering()
955 setOperationAction(ISD::MULHU, MVT::v2i64, Legal); in PPCTargetLowering()
956 setOperationAction(ISD::MULHS, MVT::v4i32, Legal); in PPCTargetLowering()
957 setOperationAction(ISD::MULHU, MVT::v4i32, Legal); in PPCTargetLowering()
958 setOperationAction(ISD::UDIV, MVT::v2i64, Legal); in PPCTargetLowering()
959 setOperationAction(ISD::SDIV, MVT::v2i64, Legal); in PPCTargetLowering()
960 setOperationAction(ISD::UDIV, MVT::v4i32, Legal); in PPCTargetLowering()
961 setOperationAction(ISD::SDIV, MVT::v4i32, Legal); in PPCTargetLowering()
962 setOperationAction(ISD::UREM, MVT::v2i64, Legal); in PPCTargetLowering()
963 setOperationAction(ISD::SREM, MVT::v2i64, Legal); in PPCTargetLowering()
964 setOperationAction(ISD::UREM, MVT::v4i32, Legal); in PPCTargetLowering()
965 setOperationAction(ISD::SREM, MVT::v4i32, Legal); in PPCTargetLowering()
966 setOperationAction(ISD::UREM, MVT::v1i128, Legal); in PPCTargetLowering()
967 setOperationAction(ISD::SREM, MVT::v1i128, Legal); in PPCTargetLowering()
968 setOperationAction(ISD::UDIV, MVT::v1i128, Legal); in PPCTargetLowering()
969 setOperationAction(ISD::SDIV, MVT::v1i128, Legal); in PPCTargetLowering()
970 setOperationAction(ISD::ROTL, MVT::v1i128, Legal); in PPCTargetLowering()
973 setOperationAction(ISD::MUL, MVT::v8i16, Legal); in PPCTargetLowering()
974 setOperationAction(ISD::MUL, MVT::v16i8, Custom); in PPCTargetLowering()
976 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Custom); in PPCTargetLowering()
977 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4i32, Custom); in PPCTargetLowering()
979 setOperationAction(ISD::BUILD_VECTOR, MVT::v16i8, Custom); in PPCTargetLowering()
980 setOperationAction(ISD::BUILD_VECTOR, MVT::v8i16, Custom); in PPCTargetLowering()
981 setOperationAction(ISD::BUILD_VECTOR, MVT::v4i32, Custom); in PPCTargetLowering()
982 setOperationAction(ISD::BUILD_VECTOR, MVT::v4f32, Custom); in PPCTargetLowering()
991 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v2f64, Legal); in PPCTargetLowering()
992 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2f64, Legal); in PPCTargetLowering()
994 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Legal); in PPCTargetLowering()
995 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4f32, Legal); in PPCTargetLowering()
998 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v16i8, Legal); in PPCTargetLowering()
999 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v8i16, Legal); in PPCTargetLowering()
1000 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4i32, Legal); in PPCTargetLowering()
1001 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v2i64, Legal); in PPCTargetLowering()
1002 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v16i8, Legal); in PPCTargetLowering()
1003 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v8i16, Legal); in PPCTargetLowering()
1004 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4i32, Legal); in PPCTargetLowering()
1005 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2i64, Legal); in PPCTargetLowering()
1007 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2f64, Legal); in PPCTargetLowering()
1012 setOperationAction(ISD::FNEARBYINT, MVT::f64, Legal); in PPCTargetLowering()
1013 setOperationAction(ISD::FNEARBYINT, MVT::f32, Legal); in PPCTargetLowering()
1016 setOperationAction(ISD::FFLOOR, MVT::v2f64, Legal); in PPCTargetLowering()
1017 setOperationAction(ISD::FCEIL, MVT::v2f64, Legal); in PPCTargetLowering()
1018 setOperationAction(ISD::FTRUNC, MVT::v2f64, Legal); in PPCTargetLowering()
1019 setOperationAction(ISD::FNEARBYINT, MVT::v2f64, Legal); in PPCTargetLowering()
1020 setOperationAction(ISD::FRINT, MVT::v2f64, Legal); in PPCTargetLowering()
1021 setOperationAction(ISD::FROUND, MVT::v2f64, Legal); in PPCTargetLowering()
1022 setOperationAction(ISD::FROUND, MVT::f64, Legal); in PPCTargetLowering()
1023 setOperationAction(ISD::FRINT, MVT::f64, Legal); in PPCTargetLowering()
1025 setOperationAction(ISD::FNEARBYINT, MVT::v4f32, Legal); in PPCTargetLowering()
1026 setOperationAction(ISD::FRINT, MVT::v4f32, Legal); in PPCTargetLowering()
1027 setOperationAction(ISD::FROUND, MVT::v4f32, Legal); in PPCTargetLowering()
1028 setOperationAction(ISD::FROUND, MVT::f32, Legal); in PPCTargetLowering()
1029 setOperationAction(ISD::FRINT, MVT::f32, Legal); in PPCTargetLowering()
1031 setOperationAction(ISD::MUL, MVT::v2f64, Legal); in PPCTargetLowering()
1032 setOperationAction(ISD::FMA, MVT::v2f64, Legal); in PPCTargetLowering()
1034 setOperationAction(ISD::FDIV, MVT::v2f64, Legal); in PPCTargetLowering()
1035 setOperationAction(ISD::FSQRT, MVT::v2f64, Legal); in PPCTargetLowering()
1043 setOperationAction(ISD::LOAD, MVT::v2f64, Legal); in PPCTargetLowering()
1044 setOperationAction(ISD::STORE, MVT::v2f64, Legal); in PPCTargetLowering()
1046 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2f64, Custom); in PPCTargetLowering()
1058 setOperationAction(ISD::SHL, MVT::v2i64, Legal); in PPCTargetLowering()
1059 setOperationAction(ISD::SRA, MVT::v2i64, Legal); in PPCTargetLowering()
1060 setOperationAction(ISD::SRL, MVT::v2i64, Legal); in PPCTargetLowering()
1066 setOperationAction(ISD::SHL, MVT::v1i128, Expand); in PPCTargetLowering()
1067 setOperationAction(ISD::SRL, MVT::v1i128, Expand); in PPCTargetLowering()
1068 setOperationAction(ISD::SRA, MVT::v1i128, Expand); in PPCTargetLowering()
1070 setOperationAction(ISD::SETCC, MVT::v2i64, Legal); in PPCTargetLowering()
1073 setOperationAction(ISD::SHL, MVT::v2i64, Expand); in PPCTargetLowering()
1074 setOperationAction(ISD::SRA, MVT::v2i64, Expand); in PPCTargetLowering()
1075 setOperationAction(ISD::SRL, MVT::v2i64, Expand); in PPCTargetLowering()
1077 setOperationAction(ISD::SETCC, MVT::v2i64, Custom); in PPCTargetLowering()
1080 setOperationAction(ISD::ADD, MVT::v2i64, Expand); in PPCTargetLowering()
1081 setOperationAction(ISD::SUB, MVT::v2i64, Expand); in PPCTargetLowering()
1085 setOperationAction(ISD::SETCC, MVT::v1i128, Legal); in PPCTargetLowering()
1087 setOperationAction(ISD::SETCC, MVT::v1i128, Expand); in PPCTargetLowering()
1089 setOperationAction(ISD::LOAD, MVT::v2i64, Promote); in PPCTargetLowering()
1091 setOperationAction(ISD::STORE, MVT::v2i64, Promote); in PPCTargetLowering()
1094 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2i64, Custom); in PPCTargetLowering()
1096 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
1097 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
1098 setOperationAction(ISD::STRICT_FP_TO_SINT, MVT::v2i64, Legal); in PPCTargetLowering()
1099 setOperationAction(ISD::STRICT_FP_TO_UINT, MVT::v2i64, Legal); in PPCTargetLowering()
1100 setOperationAction(ISD::SINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
1101 setOperationAction(ISD::UINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
1102 setOperationAction(ISD::FP_TO_SINT, MVT::v2i64, Legal); in PPCTargetLowering()
1103 setOperationAction(ISD::FP_TO_UINT, MVT::v2i64, Legal); in PPCTargetLowering()
1108 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
1109 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
1110 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
1111 setOperationAction(ISD::STRICT_UINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
1112 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
1113 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
1114 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
1115 setOperationAction(ISD::STRICT_SINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
1116 setOperationAction(ISD::UINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
1117 setOperationAction(ISD::UINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
1118 setOperationAction(ISD::UINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
1119 setOperationAction(ISD::UINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
1120 setOperationAction(ISD::SINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
1121 setOperationAction(ISD::SINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
1122 setOperationAction(ISD::SINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
1123 setOperationAction(ISD::SINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
1125 setOperationAction(ISD::FNEG, MVT::v4f32, Legal); in PPCTargetLowering()
1126 setOperationAction(ISD::FNEG, MVT::v2f64, Legal); in PPCTargetLowering()
1127 setOperationAction(ISD::FABS, MVT::v4f32, Legal); in PPCTargetLowering()
1128 setOperationAction(ISD::FABS, MVT::v2f64, Legal); in PPCTargetLowering()
1129 setOperationAction(ISD::FCOPYSIGN, MVT::v4f32, Legal); in PPCTargetLowering()
1130 setOperationAction(ISD::FCOPYSIGN, MVT::v2f64, Legal); in PPCTargetLowering()
1132 setOperationAction(ISD::BUILD_VECTOR, MVT::v2i64, Custom); in PPCTargetLowering()
1133 setOperationAction(ISD::BUILD_VECTOR, MVT::v2f64, Custom); in PPCTargetLowering()
1138 setOperationAction(ISD::STRICT_FADD, MVT::v4f32, Legal); in PPCTargetLowering()
1139 setOperationAction(ISD::STRICT_FSUB, MVT::v4f32, Legal); in PPCTargetLowering()
1140 setOperationAction(ISD::STRICT_FMUL, MVT::v4f32, Legal); in PPCTargetLowering()
1141 setOperationAction(ISD::STRICT_FDIV, MVT::v4f32, Legal); in PPCTargetLowering()
1142 setOperationAction(ISD::STRICT_FMA, MVT::v4f32, Legal); in PPCTargetLowering()
1143 setOperationAction(ISD::STRICT_FSQRT, MVT::v4f32, Legal); in PPCTargetLowering()
1144 setOperationAction(ISD::STRICT_FMAXNUM, MVT::v4f32, Legal); in PPCTargetLowering()
1145 setOperationAction(ISD::STRICT_FMINNUM, MVT::v4f32, Legal); in PPCTargetLowering()
1146 setOperationAction(ISD::STRICT_FRINT, MVT::v4f32, Legal); in PPCTargetLowering()
1147 setOperationAction(ISD::STRICT_FFLOOR, MVT::v4f32, Legal); in PPCTargetLowering()
1148 setOperationAction(ISD::STRICT_FCEIL, MVT::v4f32, Legal); in PPCTargetLowering()
1149 setOperationAction(ISD::STRICT_FTRUNC, MVT::v4f32, Legal); in PPCTargetLowering()
1150 setOperationAction(ISD::STRICT_FROUND, MVT::v4f32, Legal); in PPCTargetLowering()
1152 setOperationAction(ISD::STRICT_FADD, MVT::v2f64, Legal); in PPCTargetLowering()
1153 setOperationAction(ISD::STRICT_FSUB, MVT::v2f64, Legal); in PPCTargetLowering()
1154 setOperationAction(ISD::STRICT_FMUL, MVT::v2f64, Legal); in PPCTargetLowering()
1155 setOperationAction(ISD::STRICT_FDIV, MVT::v2f64, Legal); in PPCTargetLowering()
1156 setOperationAction(ISD::STRICT_FMA, MVT::v2f64, Legal); in PPCTargetLowering()
1157 setOperationAction(ISD::STRICT_FSQRT, MVT::v2f64, Legal); in PPCTargetLowering()
1158 setOperationAction(ISD::STRICT_FMAXNUM, MVT::v2f64, Legal); in PPCTargetLowering()
1159 setOperationAction(ISD::STRICT_FMINNUM, MVT::v2f64, Legal); in PPCTargetLowering()
1160 setOperationAction(ISD::STRICT_FRINT, MVT::v2f64, Legal); in PPCTargetLowering()
1161 setOperationAction(ISD::STRICT_FFLOOR, MVT::v2f64, Legal); in PPCTargetLowering()
1162 setOperationAction(ISD::STRICT_FCEIL, MVT::v2f64, Legal); in PPCTargetLowering()
1163 setOperationAction(ISD::STRICT_FTRUNC, MVT::v2f64, Legal); in PPCTargetLowering()
1164 setOperationAction(ISD::STRICT_FROUND, MVT::v2f64, Legal); in PPCTargetLowering()
1173 setOperationAction(ISD::SELECT, MVT::f128, Expand); in PPCTargetLowering()
1179 setOperationAction(ISD::FSINCOS, MVT::f128, Expand); in PPCTargetLowering()
1180 setOperationAction(ISD::FSIN, MVT::f128, Expand); in PPCTargetLowering()
1181 setOperationAction(ISD::FCOS, MVT::f128, Expand); in PPCTargetLowering()
1182 setOperationAction(ISD::FPOW, MVT::f128, Expand); in PPCTargetLowering()
1183 setOperationAction(ISD::FPOWI, MVT::f128, Expand); in PPCTargetLowering()
1184 setOperationAction(ISD::FREM, MVT::f128, Expand); in PPCTargetLowering()
1193 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4i32, Custom); in PPCTargetLowering()
1194 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4f32, Custom); in PPCTargetLowering()
1198 setOperationAction(ISD::IS_FPCLASS, MVT::f32, Custom); in PPCTargetLowering()
1199 setOperationAction(ISD::IS_FPCLASS, MVT::f64, Custom); in PPCTargetLowering()
1200 setOperationAction(ISD::IS_FPCLASS, MVT::f128, Custom); in PPCTargetLowering()
1206 setOperationAction(ISD::SHL, MVT::v1i128, Legal); in PPCTargetLowering()
1207 setOperationAction(ISD::SRL, MVT::v1i128, Legal); in PPCTargetLowering()
1208 setOperationAction(ISD::SRA, MVT::v1i128, Expand); in PPCTargetLowering()
1210 setOperationAction(ISD::FADD, MVT::f128, Legal); in PPCTargetLowering()
1211 setOperationAction(ISD::FSUB, MVT::f128, Legal); in PPCTargetLowering()
1212 setOperationAction(ISD::FDIV, MVT::f128, Legal); in PPCTargetLowering()
1213 setOperationAction(ISD::FMUL, MVT::f128, Legal); in PPCTargetLowering()
1214 setOperationAction(ISD::FP_EXTEND, MVT::f128, Legal); in PPCTargetLowering()
1216 setOperationAction(ISD::FMA, MVT::f128, Legal); in PPCTargetLowering()
1224 setOperationAction(ISD::FTRUNC, MVT::f128, Legal); in PPCTargetLowering()
1225 setOperationAction(ISD::FRINT, MVT::f128, Legal); in PPCTargetLowering()
1226 setOperationAction(ISD::FFLOOR, MVT::f128, Legal); in PPCTargetLowering()
1227 setOperationAction(ISD::FCEIL, MVT::f128, Legal); in PPCTargetLowering()
1228 setOperationAction(ISD::FNEARBYINT, MVT::f128, Legal); in PPCTargetLowering()
1229 setOperationAction(ISD::FROUND, MVT::f128, Legal); in PPCTargetLowering()
1231 setOperationAction(ISD::FP_ROUND, MVT::f64, Legal); in PPCTargetLowering()
1232 setOperationAction(ISD::FP_ROUND, MVT::f32, Legal); in PPCTargetLowering()
1233 setOperationAction(ISD::BITCAST, MVT::i128, Custom); in PPCTargetLowering()
1236 setOperationAction(ISD::STRICT_FADD, MVT::f128, Legal); in PPCTargetLowering()
1237 setOperationAction(ISD::STRICT_FSUB, MVT::f128, Legal); in PPCTargetLowering()
1238 setOperationAction(ISD::STRICT_FMUL, MVT::f128, Legal); in PPCTargetLowering()
1239 setOperationAction(ISD::STRICT_FDIV, MVT::f128, Legal); in PPCTargetLowering()
1240 setOperationAction(ISD::STRICT_FMA, MVT::f128, Legal); in PPCTargetLowering()
1241 setOperationAction(ISD::STRICT_FSQRT, MVT::f128, Legal); in PPCTargetLowering()
1242 setOperationAction(ISD::STRICT_FP_EXTEND, MVT::f128, Legal); in PPCTargetLowering()
1243 setOperationAction(ISD::STRICT_FP_ROUND, MVT::f64, Legal); in PPCTargetLowering()
1244 setOperationAction(ISD::STRICT_FP_ROUND, MVT::f32, Legal); in PPCTargetLowering()
1245 setOperationAction(ISD::STRICT_FRINT, MVT::f128, Legal); in PPCTargetLowering()
1246 setOperationAction(ISD::STRICT_FNEARBYINT, MVT::f128, Legal); in PPCTargetLowering()
1247 setOperationAction(ISD::STRICT_FFLOOR, MVT::f128, Legal); in PPCTargetLowering()
1248 setOperationAction(ISD::STRICT_FCEIL, MVT::f128, Legal); in PPCTargetLowering()
1249 setOperationAction(ISD::STRICT_FTRUNC, MVT::f128, Legal); in PPCTargetLowering()
1250 setOperationAction(ISD::STRICT_FROUND, MVT::f128, Legal); in PPCTargetLowering()
1251 setOperationAction(ISD::FP_EXTEND, MVT::v2f32, Custom); in PPCTargetLowering()
1252 setOperationAction(ISD::BSWAP, MVT::v8i16, Legal); in PPCTargetLowering()
1253 setOperationAction(ISD::BSWAP, MVT::v4i32, Legal); in PPCTargetLowering()
1254 setOperationAction(ISD::BSWAP, MVT::v2i64, Legal); in PPCTargetLowering()
1255 setOperationAction(ISD::BSWAP, MVT::v1i128, Legal); in PPCTargetLowering()
1257 setOperationAction(ISD::LOAD, MVT::f128, Promote); in PPCTargetLowering()
1258 setOperationAction(ISD::STORE, MVT::f128, Promote); in PPCTargetLowering()
1265 setOperationAction(ISD::FADD, MVT::f128, LibCall); in PPCTargetLowering()
1266 setOperationAction(ISD::FSUB, MVT::f128, LibCall); in PPCTargetLowering()
1268 setOperationAction(ISD::FMUL, MVT::f128, Expand); in PPCTargetLowering()
1269 setOperationAction(ISD::FDIV, MVT::f128, Expand); in PPCTargetLowering()
1270 setOperationAction(ISD::FNEG, MVT::f128, Expand); in PPCTargetLowering()
1271 setOperationAction(ISD::FABS, MVT::f128, Expand); in PPCTargetLowering()
1272 setOperationAction(ISD::FSQRT, MVT::f128, Expand); in PPCTargetLowering()
1273 setOperationAction(ISD::FMA, MVT::f128, Expand); in PPCTargetLowering()
1274 setOperationAction(ISD::FCOPYSIGN, MVT::f128, Expand); in PPCTargetLowering()
1277 setOperationAction(ISD::FP_EXTEND, MVT::f128, Expand); in PPCTargetLowering()
1278 setOperationAction(ISD::STRICT_FP_EXTEND, MVT::f128, Expand); in PPCTargetLowering()
1282 setOperationAction(ISD::FP_ROUND, VT, Custom); in PPCTargetLowering()
1283 setOperationAction(ISD::STRICT_FP_ROUND, VT, Custom); in PPCTargetLowering()
1286 setOperationAction(ISD::SETCC, MVT::f128, Custom); in PPCTargetLowering()
1287 setOperationAction(ISD::STRICT_FSETCC, MVT::f128, Custom); in PPCTargetLowering()
1288 setOperationAction(ISD::STRICT_FSETCCS, MVT::f128, Custom); in PPCTargetLowering()
1289 setOperationAction(ISD::BR_CC, MVT::f128, Expand); in PPCTargetLowering()
1293 setOperationAction(ISD::SELECT_CC, MVT::f128, Custom); in PPCTargetLowering()
1296 setOperationAction(ISD::SELECT_CC, MVT::i32, Custom); in PPCTargetLowering()
1297 setOperationAction(ISD::SELECT_CC, MVT::i64, isPPC64 ? Custom : Expand); in PPCTargetLowering()
1302 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v2i64, Legal); in PPCTargetLowering()
1303 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v8i16, Legal); in PPCTargetLowering()
1304 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v16i8, Legal); in PPCTargetLowering()
1305 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4i32, Legal); in PPCTargetLowering()
1307 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v8i16, Custom); in PPCTargetLowering()
1308 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v16i8, Custom); in PPCTargetLowering()
1310 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v4i8, Legal); in PPCTargetLowering()
1311 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v4i16, Legal); in PPCTargetLowering()
1312 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v4i32, Legal); in PPCTargetLowering()
1313 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v2i8, Legal); in PPCTargetLowering()
1314 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v2i16, Legal); in PPCTargetLowering()
1315 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v2i32, Legal); in PPCTargetLowering()
1316 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::v2i64, Legal); in PPCTargetLowering()
1318 setOperationAction(ISD::ABDU, MVT::v16i8, Legal); in PPCTargetLowering()
1319 setOperationAction(ISD::ABDU, MVT::v8i16, Legal); in PPCTargetLowering()
1320 setOperationAction(ISD::ABDU, MVT::v4i32, Legal); in PPCTargetLowering()
1321 setOperationAction(ISD::ABDS, MVT::v4i32, Legal); in PPCTargetLowering()
1325 setOperationAction(ISD::SELECT_CC, MVT::f128, Custom); in PPCTargetLowering()
1331 setOperationAction(ISD::LOAD, MVT::v256i1, Custom); in PPCTargetLowering()
1332 setOperationAction(ISD::STORE, MVT::v256i1, Custom); in PPCTargetLowering()
1339 setOperationAction(ISD::LOAD, MVT::v512i1, Custom); in PPCTargetLowering()
1340 setOperationAction(ISD::STORE, MVT::v512i1, Custom); in PPCTargetLowering()
1341 setOperationAction(ISD::BUILD_VECTOR, MVT::v512i1, Custom); in PPCTargetLowering()
1345 setOperationAction(ISD::PREFETCH, MVT::Other, Legal); in PPCTargetLowering()
1348 setOperationAction(ISD::SRA, MVT::v1i128, Legal); in PPCTargetLowering()
1350 setOperationAction(ISD::READCYCLECOUNTER, MVT::i64, isPPC64 ? Legal : Custom); in PPCTargetLowering()
1353 setOperationAction(ISD::ATOMIC_LOAD, MVT::i64, Expand); in PPCTargetLowering()
1354 setOperationAction(ISD::ATOMIC_STORE, MVT::i64, Expand); in PPCTargetLowering()
1358 setOperationAction(ISD::ATOMIC_LOAD, MVT::i128, Custom); in PPCTargetLowering()
1359 setOperationAction(ISD::ATOMIC_STORE, MVT::i128, Custom); in PPCTargetLowering()
1360 setOperationAction(ISD::INTRINSIC_VOID, MVT::i128, Custom); in PPCTargetLowering()