Lines Matching refs:setOperationAction
150 setOperationAction(ISD::BITREVERSE, MVT::i32, Legal); in PPCTargetLowering()
151 setOperationAction(ISD::BITREVERSE, MVT::i64, Legal); in PPCTargetLowering()
154 setOperationAction(ISD::ATOMIC_CMP_SWAP, MVT::i32, Custom); in PPCTargetLowering()
185 setOperationAction(ISD::ADDC, VT, Legal); in PPCTargetLowering()
186 setOperationAction(ISD::ADDE, VT, Legal); in PPCTargetLowering()
187 setOperationAction(ISD::SUBC, VT, Legal); in PPCTargetLowering()
188 setOperationAction(ISD::SUBE, VT, Legal); in PPCTargetLowering()
192 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i1, Expand); in PPCTargetLowering()
195 setOperationAction(ISD::SINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
198 setOperationAction(ISD::UINT_TO_FP, MVT::i1, Promote); in PPCTargetLowering()
202 setOperationAction(ISD::SINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
203 setOperationAction(ISD::UINT_TO_FP, MVT::i1, Custom); in PPCTargetLowering()
207 setOperationAction(ISD::LOAD, MVT::i1, Custom); in PPCTargetLowering()
208 setOperationAction(ISD::STORE, MVT::i1, Custom); in PPCTargetLowering()
212 setOperationAction(ISD::TRUNCATE, MVT::i1, Custom); in PPCTargetLowering()
225 setOperationAction(ISD::FP_TO_SINT, MVT::ppcf128, Custom); in PPCTargetLowering()
226 setOperationAction(ISD::FP_TO_UINT, MVT::ppcf128, Custom); in PPCTargetLowering()
229 setOperationAction(ISD::FFLOOR, MVT::ppcf128, Expand); in PPCTargetLowering()
230 setOperationAction(ISD::FCEIL, MVT::ppcf128, Expand); in PPCTargetLowering()
231 setOperationAction(ISD::FTRUNC, MVT::ppcf128, Expand); in PPCTargetLowering()
232 setOperationAction(ISD::FRINT, MVT::ppcf128, Expand); in PPCTargetLowering()
233 setOperationAction(ISD::FNEARBYINT, MVT::ppcf128, Expand); in PPCTargetLowering()
234 setOperationAction(ISD::FREM, MVT::ppcf128, Expand); in PPCTargetLowering()
243 setOperationAction(ISD::SREM, MVT::i32, Custom); in PPCTargetLowering()
244 setOperationAction(ISD::UREM, MVT::i32, Custom); in PPCTargetLowering()
245 setOperationAction(ISD::SREM, MVT::i64, Custom); in PPCTargetLowering()
246 setOperationAction(ISD::UREM, MVT::i64, Custom); in PPCTargetLowering()
248 setOperationAction(ISD::SREM, MVT::i32, Expand); in PPCTargetLowering()
249 setOperationAction(ISD::UREM, MVT::i32, Expand); in PPCTargetLowering()
250 setOperationAction(ISD::SREM, MVT::i64, Expand); in PPCTargetLowering()
251 setOperationAction(ISD::UREM, MVT::i64, Expand); in PPCTargetLowering()
255 setOperationAction(ISD::UMUL_LOHI, MVT::i32, Expand); in PPCTargetLowering()
256 setOperationAction(ISD::SMUL_LOHI, MVT::i32, Expand); in PPCTargetLowering()
257 setOperationAction(ISD::UMUL_LOHI, MVT::i64, Expand); in PPCTargetLowering()
258 setOperationAction(ISD::SMUL_LOHI, MVT::i64, Expand); in PPCTargetLowering()
259 setOperationAction(ISD::UDIVREM, MVT::i32, Expand); in PPCTargetLowering()
260 setOperationAction(ISD::SDIVREM, MVT::i32, Expand); in PPCTargetLowering()
261 setOperationAction(ISD::UDIVREM, MVT::i64, Expand); in PPCTargetLowering()
262 setOperationAction(ISD::SDIVREM, MVT::i64, Expand); in PPCTargetLowering()
265 setOperationAction(ISD::FSIN , MVT::f64, Expand); in PPCTargetLowering()
266 setOperationAction(ISD::FCOS , MVT::f64, Expand); in PPCTargetLowering()
267 setOperationAction(ISD::FSINCOS, MVT::f64, Expand); in PPCTargetLowering()
268 setOperationAction(ISD::FREM , MVT::f64, Expand); in PPCTargetLowering()
269 setOperationAction(ISD::FPOW , MVT::f64, Expand); in PPCTargetLowering()
270 setOperationAction(ISD::FSIN , MVT::f32, Expand); in PPCTargetLowering()
271 setOperationAction(ISD::FCOS , MVT::f32, Expand); in PPCTargetLowering()
272 setOperationAction(ISD::FSINCOS, MVT::f32, Expand); in PPCTargetLowering()
273 setOperationAction(ISD::FREM , MVT::f32, Expand); in PPCTargetLowering()
274 setOperationAction(ISD::FPOW , MVT::f32, Expand); in PPCTargetLowering()
276 setOperationAction(ISD::FMA , MVT::f64, Expand); in PPCTargetLowering()
277 setOperationAction(ISD::FMA , MVT::f32, Expand); in PPCTargetLowering()
279 setOperationAction(ISD::FMA , MVT::f64, Legal); in PPCTargetLowering()
280 setOperationAction(ISD::FMA , MVT::f32, Legal); in PPCTargetLowering()
283 setOperationAction(ISD::FLT_ROUNDS_, MVT::i32, Custom); in PPCTargetLowering()
289 setOperationAction(ISD::FSQRT, MVT::f64, Expand); in PPCTargetLowering()
294 setOperationAction(ISD::FSQRT, MVT::f32, Expand); in PPCTargetLowering()
297 setOperationAction(ISD::FCOPYSIGN, MVT::f64, Legal); in PPCTargetLowering()
298 setOperationAction(ISD::FCOPYSIGN, MVT::f32, Legal); in PPCTargetLowering()
300 setOperationAction(ISD::FCOPYSIGN, MVT::f64, Expand); in PPCTargetLowering()
301 setOperationAction(ISD::FCOPYSIGN, MVT::f32, Expand); in PPCTargetLowering()
305 setOperationAction(ISD::FFLOOR, MVT::f64, Legal); in PPCTargetLowering()
306 setOperationAction(ISD::FCEIL, MVT::f64, Legal); in PPCTargetLowering()
307 setOperationAction(ISD::FTRUNC, MVT::f64, Legal); in PPCTargetLowering()
308 setOperationAction(ISD::FROUND, MVT::f64, Legal); in PPCTargetLowering()
310 setOperationAction(ISD::FFLOOR, MVT::f32, Legal); in PPCTargetLowering()
311 setOperationAction(ISD::FCEIL, MVT::f32, Legal); in PPCTargetLowering()
312 setOperationAction(ISD::FTRUNC, MVT::f32, Legal); in PPCTargetLowering()
313 setOperationAction(ISD::FROUND, MVT::f32, Legal); in PPCTargetLowering()
319 setOperationAction(ISD::BSWAP, MVT::i32 , Expand); in PPCTargetLowering()
321 setOperationAction(ISD::BSWAP, MVT::i64 , Custom); in PPCTargetLowering()
323 setOperationAction(ISD::BSWAP, MVT::i64 , Expand); in PPCTargetLowering()
325 setOperationAction(ISD::CTTZ , MVT::i32 , Legal); in PPCTargetLowering()
326 setOperationAction(ISD::CTTZ , MVT::i64 , Legal); in PPCTargetLowering()
328 setOperationAction(ISD::CTTZ , MVT::i32 , Expand); in PPCTargetLowering()
329 setOperationAction(ISD::CTTZ , MVT::i64 , Expand); in PPCTargetLowering()
333 setOperationAction(ISD::CTPOP, MVT::i32 , Legal); in PPCTargetLowering()
334 setOperationAction(ISD::CTPOP, MVT::i64 , Legal); in PPCTargetLowering()
336 setOperationAction(ISD::CTPOP, MVT::i32 , Expand); in PPCTargetLowering()
337 setOperationAction(ISD::CTPOP, MVT::i64 , Expand); in PPCTargetLowering()
341 setOperationAction(ISD::ROTR, MVT::i32 , Expand); in PPCTargetLowering()
342 setOperationAction(ISD::ROTR, MVT::i64 , Expand); in PPCTargetLowering()
346 setOperationAction(ISD::SELECT, MVT::i32, Expand); in PPCTargetLowering()
347 setOperationAction(ISD::SELECT, MVT::i64, Expand); in PPCTargetLowering()
348 setOperationAction(ISD::SELECT, MVT::f32, Expand); in PPCTargetLowering()
349 setOperationAction(ISD::SELECT, MVT::f64, Expand); in PPCTargetLowering()
353 setOperationAction(ISD::SELECT_CC, MVT::f32, Custom); in PPCTargetLowering()
354 setOperationAction(ISD::SELECT_CC, MVT::f64, Custom); in PPCTargetLowering()
358 setOperationAction(ISD::SETCC, MVT::i32, Custom); in PPCTargetLowering()
362 setOperationAction(ISD::BRCOND, MVT::Other, Expand); in PPCTargetLowering()
364 setOperationAction(ISD::BR_JT, MVT::Other, Expand); in PPCTargetLowering()
368 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Legal); in PPCTargetLowering()
369 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
370 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Legal); in PPCTargetLowering()
373 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
376 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
377 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Expand); in PPCTargetLowering()
381 setOperationAction(ISD::BITCAST, MVT::f32, Legal); in PPCTargetLowering()
382 setOperationAction(ISD::BITCAST, MVT::i32, Legal); in PPCTargetLowering()
383 setOperationAction(ISD::BITCAST, MVT::i64, Legal); in PPCTargetLowering()
384 setOperationAction(ISD::BITCAST, MVT::f64, Legal); in PPCTargetLowering()
386 setOperationAction(ISD::BITCAST, MVT::f32, Expand); in PPCTargetLowering()
387 setOperationAction(ISD::BITCAST, MVT::i32, Expand); in PPCTargetLowering()
388 setOperationAction(ISD::BITCAST, MVT::i64, Expand); in PPCTargetLowering()
389 setOperationAction(ISD::BITCAST, MVT::f64, Expand); in PPCTargetLowering()
393 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i1, Expand); in PPCTargetLowering()
401 setOperationAction(ISD::EH_SJLJ_SETJMP, MVT::i32, Custom); in PPCTargetLowering()
402 setOperationAction(ISD::EH_SJLJ_LONGJMP, MVT::Other, Custom); in PPCTargetLowering()
406 setOperationAction(ISD::GlobalAddress, MVT::i32, Custom); in PPCTargetLowering()
407 setOperationAction(ISD::GlobalTLSAddress, MVT::i32, Custom); in PPCTargetLowering()
408 setOperationAction(ISD::BlockAddress, MVT::i32, Custom); in PPCTargetLowering()
409 setOperationAction(ISD::ConstantPool, MVT::i32, Custom); in PPCTargetLowering()
410 setOperationAction(ISD::JumpTable, MVT::i32, Custom); in PPCTargetLowering()
411 setOperationAction(ISD::GlobalAddress, MVT::i64, Custom); in PPCTargetLowering()
412 setOperationAction(ISD::GlobalTLSAddress, MVT::i64, Custom); in PPCTargetLowering()
413 setOperationAction(ISD::BlockAddress, MVT::i64, Custom); in PPCTargetLowering()
414 setOperationAction(ISD::ConstantPool, MVT::i64, Custom); in PPCTargetLowering()
415 setOperationAction(ISD::JumpTable, MVT::i64, Custom); in PPCTargetLowering()
418 setOperationAction(ISD::TRAP, MVT::Other, Legal); in PPCTargetLowering()
421 setOperationAction(ISD::INIT_TRAMPOLINE, MVT::Other, Custom); in PPCTargetLowering()
422 setOperationAction(ISD::ADJUST_TRAMPOLINE, MVT::Other, Custom); in PPCTargetLowering()
425 setOperationAction(ISD::VASTART , MVT::Other, Custom); in PPCTargetLowering()
430 setOperationAction(ISD::VAARG, MVT::i1, Promote); in PPCTargetLowering()
432 setOperationAction(ISD::VAARG, MVT::i8, Promote); in PPCTargetLowering()
434 setOperationAction(ISD::VAARG, MVT::i16, Promote); in PPCTargetLowering()
436 setOperationAction(ISD::VAARG, MVT::i32, Promote); in PPCTargetLowering()
438 setOperationAction(ISD::VAARG, MVT::Other, Expand); in PPCTargetLowering()
441 setOperationAction(ISD::VAARG, MVT::Other, Custom); in PPCTargetLowering()
442 setOperationAction(ISD::VAARG, MVT::i64, Custom); in PPCTargetLowering()
445 setOperationAction(ISD::VAARG, MVT::Other, Expand); in PPCTargetLowering()
449 setOperationAction(ISD::VACOPY , MVT::Other, Custom); in PPCTargetLowering()
451 setOperationAction(ISD::VACOPY , MVT::Other, Expand); in PPCTargetLowering()
454 setOperationAction(ISD::VAEND , MVT::Other, Expand); in PPCTargetLowering()
455 setOperationAction(ISD::STACKSAVE , MVT::Other, Expand); in PPCTargetLowering()
456 setOperationAction(ISD::STACKRESTORE , MVT::Other, Custom); in PPCTargetLowering()
457 setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i32 , Custom); in PPCTargetLowering()
458 setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i64 , Custom); in PPCTargetLowering()
459 setOperationAction(ISD::GET_DYNAMIC_AREA_OFFSET, MVT::i32, Custom); in PPCTargetLowering()
460 setOperationAction(ISD::GET_DYNAMIC_AREA_OFFSET, MVT::i64, Custom); in PPCTargetLowering()
461 setOperationAction(ISD::EH_DWARF_CFA, MVT::i32, Custom); in PPCTargetLowering()
462 setOperationAction(ISD::EH_DWARF_CFA, MVT::i64, Custom); in PPCTargetLowering()
465 setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::Other, Custom); in PPCTargetLowering()
468 setOperationAction(ISD::INTRINSIC_W_CHAIN, MVT::i1, Custom); in PPCTargetLowering()
470 setOperationAction(ISD::INTRINSIC_VOID, MVT::i8, Custom); in PPCTargetLowering()
471 setOperationAction(ISD::INTRINSIC_VOID, MVT::i16, Custom); in PPCTargetLowering()
472 setOperationAction(ISD::INTRINSIC_VOID, MVT::i32, Custom); in PPCTargetLowering()
473 setOperationAction(ISD::INTRINSIC_VOID, MVT::Other, Custom); in PPCTargetLowering()
497 setOperationAction(ISD::FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
498 setOperationAction(ISD::FP_TO_UINT, MVT::i64, Expand); in PPCTargetLowering()
499 setOperationAction(ISD::SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
500 setOperationAction(ISD::UINT_TO_FP, MVT::i64, Expand); in PPCTargetLowering()
503 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
506 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
510 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Legal); in PPCTargetLowering()
512 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Expand); in PPCTargetLowering()
518 setOperationAction(ISD::FP_TO_SINT, MVT::i64, Custom); in PPCTargetLowering()
519 setOperationAction(ISD::FP_TO_UINT, MVT::i64, Custom); in PPCTargetLowering()
520 setOperationAction(ISD::SINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
521 setOperationAction(ISD::UINT_TO_FP, MVT::i64, Custom); in PPCTargetLowering()
524 setOperationAction(ISD::FP_TO_SINT, MVT::i32, Custom); in PPCTargetLowering()
525 setOperationAction(ISD::FP_TO_UINT, MVT::i32, Custom); in PPCTargetLowering()
526 setOperationAction(ISD::SINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
527 setOperationAction(ISD::UINT_TO_FP, MVT::i32, Custom); in PPCTargetLowering()
534 setOperationAction(ISD::BUILD_PAIR, MVT::i64, Expand); in PPCTargetLowering()
536 setOperationAction(ISD::SHL_PARTS, MVT::i64, Custom); in PPCTargetLowering()
537 setOperationAction(ISD::SRA_PARTS, MVT::i64, Custom); in PPCTargetLowering()
538 setOperationAction(ISD::SRL_PARTS, MVT::i64, Custom); in PPCTargetLowering()
541 setOperationAction(ISD::SHL_PARTS, MVT::i32, Custom); in PPCTargetLowering()
542 setOperationAction(ISD::SRA_PARTS, MVT::i32, Custom); in PPCTargetLowering()
543 setOperationAction(ISD::SRL_PARTS, MVT::i32, Custom); in PPCTargetLowering()
551 setOperationAction(ISD::ADD, VT, Legal); in PPCTargetLowering()
552 setOperationAction(ISD::SUB, VT, Legal); in PPCTargetLowering()
553 setOperationAction(ISD::ABS, VT, Custom); in PPCTargetLowering()
557 setOperationAction(ISD::CTPOP, VT, Legal); in PPCTargetLowering()
558 setOperationAction(ISD::CTLZ, VT, Legal); in PPCTargetLowering()
561 setOperationAction(ISD::CTPOP, VT, Expand); in PPCTargetLowering()
562 setOperationAction(ISD::CTLZ, VT, Expand); in PPCTargetLowering()
567 setOperationAction(ISD::CTTZ, VT, Legal); in PPCTargetLowering()
569 setOperationAction(ISD::CTTZ, VT, Expand); in PPCTargetLowering()
572 setOperationAction(ISD::VECTOR_SHUFFLE, VT, Promote); in PPCTargetLowering()
576 setOperationAction(ISD::AND , VT, Promote); in PPCTargetLowering()
578 setOperationAction(ISD::OR , VT, Promote); in PPCTargetLowering()
580 setOperationAction(ISD::XOR , VT, Promote); in PPCTargetLowering()
582 setOperationAction(ISD::LOAD , VT, Promote); in PPCTargetLowering()
584 setOperationAction(ISD::SELECT, VT, Promote); in PPCTargetLowering()
586 setOperationAction(ISD::VSELECT, VT, Legal); in PPCTargetLowering()
587 setOperationAction(ISD::SELECT_CC, VT, Promote); in PPCTargetLowering()
589 setOperationAction(ISD::STORE, VT, Promote); in PPCTargetLowering()
593 setOperationAction(ISD::MUL , VT, Expand); in PPCTargetLowering()
594 setOperationAction(ISD::SDIV, VT, Expand); in PPCTargetLowering()
595 setOperationAction(ISD::SREM, VT, Expand); in PPCTargetLowering()
596 setOperationAction(ISD::UDIV, VT, Expand); in PPCTargetLowering()
597 setOperationAction(ISD::UREM, VT, Expand); in PPCTargetLowering()
598 setOperationAction(ISD::FDIV, VT, Expand); in PPCTargetLowering()
599 setOperationAction(ISD::FREM, VT, Expand); in PPCTargetLowering()
600 setOperationAction(ISD::FNEG, VT, Expand); in PPCTargetLowering()
601 setOperationAction(ISD::FSQRT, VT, Expand); in PPCTargetLowering()
602 setOperationAction(ISD::FLOG, VT, Expand); in PPCTargetLowering()
603 setOperationAction(ISD::FLOG10, VT, Expand); in PPCTargetLowering()
604 setOperationAction(ISD::FLOG2, VT, Expand); in PPCTargetLowering()
605 setOperationAction(ISD::FEXP, VT, Expand); in PPCTargetLowering()
606 setOperationAction(ISD::FEXP2, VT, Expand); in PPCTargetLowering()
607 setOperationAction(ISD::FSIN, VT, Expand); in PPCTargetLowering()
608 setOperationAction(ISD::FCOS, VT, Expand); in PPCTargetLowering()
609 setOperationAction(ISD::FABS, VT, Expand); in PPCTargetLowering()
610 setOperationAction(ISD::FFLOOR, VT, Expand); in PPCTargetLowering()
611 setOperationAction(ISD::FCEIL, VT, Expand); in PPCTargetLowering()
612 setOperationAction(ISD::FTRUNC, VT, Expand); in PPCTargetLowering()
613 setOperationAction(ISD::FRINT, VT, Expand); in PPCTargetLowering()
614 setOperationAction(ISD::FNEARBYINT, VT, Expand); in PPCTargetLowering()
615 setOperationAction(ISD::EXTRACT_VECTOR_ELT, VT, Expand); in PPCTargetLowering()
616 setOperationAction(ISD::INSERT_VECTOR_ELT, VT, Expand); in PPCTargetLowering()
617 setOperationAction(ISD::BUILD_VECTOR, VT, Expand); in PPCTargetLowering()
618 setOperationAction(ISD::MULHU, VT, Expand); in PPCTargetLowering()
619 setOperationAction(ISD::MULHS, VT, Expand); in PPCTargetLowering()
620 setOperationAction(ISD::UMUL_LOHI, VT, Expand); in PPCTargetLowering()
621 setOperationAction(ISD::SMUL_LOHI, VT, Expand); in PPCTargetLowering()
622 setOperationAction(ISD::UDIVREM, VT, Expand); in PPCTargetLowering()
623 setOperationAction(ISD::SDIVREM, VT, Expand); in PPCTargetLowering()
624 setOperationAction(ISD::SCALAR_TO_VECTOR, VT, Expand); in PPCTargetLowering()
625 setOperationAction(ISD::FPOW, VT, Expand); in PPCTargetLowering()
626 setOperationAction(ISD::BSWAP, VT, Expand); in PPCTargetLowering()
627 setOperationAction(ISD::SIGN_EXTEND_INREG, VT, Expand); in PPCTargetLowering()
628 setOperationAction(ISD::ROTL, VT, Expand); in PPCTargetLowering()
629 setOperationAction(ISD::ROTR, VT, Expand); in PPCTargetLowering()
641 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v16i8, Custom); in PPCTargetLowering()
643 setOperationAction(ISD::AND , MVT::v4i32, Legal); in PPCTargetLowering()
644 setOperationAction(ISD::OR , MVT::v4i32, Legal); in PPCTargetLowering()
645 setOperationAction(ISD::XOR , MVT::v4i32, Legal); in PPCTargetLowering()
646 setOperationAction(ISD::LOAD , MVT::v4i32, Legal); in PPCTargetLowering()
647 setOperationAction(ISD::SELECT, MVT::v4i32, in PPCTargetLowering()
649 setOperationAction(ISD::STORE , MVT::v4i32, Legal); in PPCTargetLowering()
650 setOperationAction(ISD::FP_TO_SINT, MVT::v4i32, Legal); in PPCTargetLowering()
651 setOperationAction(ISD::FP_TO_UINT, MVT::v4i32, Legal); in PPCTargetLowering()
652 setOperationAction(ISD::SINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
653 setOperationAction(ISD::UINT_TO_FP, MVT::v4i32, Legal); in PPCTargetLowering()
654 setOperationAction(ISD::FFLOOR, MVT::v4f32, Legal); in PPCTargetLowering()
655 setOperationAction(ISD::FCEIL, MVT::v4f32, Legal); in PPCTargetLowering()
656 setOperationAction(ISD::FTRUNC, MVT::v4f32, Legal); in PPCTargetLowering()
657 setOperationAction(ISD::FNEARBYINT, MVT::v4f32, Legal); in PPCTargetLowering()
662 setOperationAction(ISD::ABS, MVT::v2i64, Expand); in PPCTargetLowering()
669 setOperationAction(ISD::MUL, MVT::v4f32, Legal); in PPCTargetLowering()
670 setOperationAction(ISD::FMA, MVT::v4f32, Legal); in PPCTargetLowering()
673 setOperationAction(ISD::FDIV, MVT::v4f32, Legal); in PPCTargetLowering()
674 setOperationAction(ISD::FSQRT, MVT::v4f32, Legal); in PPCTargetLowering()
678 setOperationAction(ISD::MUL, MVT::v4i32, Legal); in PPCTargetLowering()
680 setOperationAction(ISD::MUL, MVT::v4i32, Custom); in PPCTargetLowering()
682 setOperationAction(ISD::MUL, MVT::v8i16, Custom); in PPCTargetLowering()
683 setOperationAction(ISD::MUL, MVT::v16i8, Custom); in PPCTargetLowering()
685 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Custom); in PPCTargetLowering()
686 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4i32, Custom); in PPCTargetLowering()
688 setOperationAction(ISD::BUILD_VECTOR, MVT::v16i8, Custom); in PPCTargetLowering()
689 setOperationAction(ISD::BUILD_VECTOR, MVT::v8i16, Custom); in PPCTargetLowering()
690 setOperationAction(ISD::BUILD_VECTOR, MVT::v4i32, Custom); in PPCTargetLowering()
691 setOperationAction(ISD::BUILD_VECTOR, MVT::v4f32, Custom); in PPCTargetLowering()
700 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v2f64, Legal); in PPCTargetLowering()
701 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2f64, Legal); in PPCTargetLowering()
703 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Legal); in PPCTargetLowering()
704 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4f32, Legal); in PPCTargetLowering()
707 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v16i8, Legal); in PPCTargetLowering()
708 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v8i16, Legal); in PPCTargetLowering()
709 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4i32, Legal); in PPCTargetLowering()
710 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v2i64, Legal); in PPCTargetLowering()
711 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v16i8, Legal); in PPCTargetLowering()
712 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v8i16, Legal); in PPCTargetLowering()
713 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4i32, Legal); in PPCTargetLowering()
714 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2i64, Legal); in PPCTargetLowering()
716 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2f64, Legal); in PPCTargetLowering()
718 setOperationAction(ISD::FFLOOR, MVT::v2f64, Legal); in PPCTargetLowering()
719 setOperationAction(ISD::FCEIL, MVT::v2f64, Legal); in PPCTargetLowering()
720 setOperationAction(ISD::FTRUNC, MVT::v2f64, Legal); in PPCTargetLowering()
721 setOperationAction(ISD::FNEARBYINT, MVT::v2f64, Legal); in PPCTargetLowering()
722 setOperationAction(ISD::FROUND, MVT::v2f64, Legal); in PPCTargetLowering()
724 setOperationAction(ISD::FROUND, MVT::v4f32, Legal); in PPCTargetLowering()
726 setOperationAction(ISD::MUL, MVT::v2f64, Legal); in PPCTargetLowering()
727 setOperationAction(ISD::FMA, MVT::v2f64, Legal); in PPCTargetLowering()
729 setOperationAction(ISD::FDIV, MVT::v2f64, Legal); in PPCTargetLowering()
730 setOperationAction(ISD::FSQRT, MVT::v2f64, Legal); in PPCTargetLowering()
738 setOperationAction(ISD::LOAD, MVT::v2f64, Legal); in PPCTargetLowering()
739 setOperationAction(ISD::STORE, MVT::v2f64, Legal); in PPCTargetLowering()
741 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2f64, Legal); in PPCTargetLowering()
753 setOperationAction(ISD::SHL, MVT::v2i64, Legal); in PPCTargetLowering()
754 setOperationAction(ISD::SRA, MVT::v2i64, Legal); in PPCTargetLowering()
755 setOperationAction(ISD::SRL, MVT::v2i64, Legal); in PPCTargetLowering()
761 setOperationAction(ISD::SHL, MVT::v1i128, Expand); in PPCTargetLowering()
762 setOperationAction(ISD::SRL, MVT::v1i128, Expand); in PPCTargetLowering()
763 setOperationAction(ISD::SRA, MVT::v1i128, Expand); in PPCTargetLowering()
765 setOperationAction(ISD::SETCC, MVT::v2i64, Legal); in PPCTargetLowering()
768 setOperationAction(ISD::SHL, MVT::v2i64, Expand); in PPCTargetLowering()
769 setOperationAction(ISD::SRA, MVT::v2i64, Expand); in PPCTargetLowering()
770 setOperationAction(ISD::SRL, MVT::v2i64, Expand); in PPCTargetLowering()
772 setOperationAction(ISD::SETCC, MVT::v2i64, Custom); in PPCTargetLowering()
775 setOperationAction(ISD::ADD, MVT::v2i64, Expand); in PPCTargetLowering()
776 setOperationAction(ISD::SUB, MVT::v2i64, Expand); in PPCTargetLowering()
779 setOperationAction(ISD::LOAD, MVT::v2i64, Promote); in PPCTargetLowering()
781 setOperationAction(ISD::STORE, MVT::v2i64, Promote); in PPCTargetLowering()
784 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2i64, Legal); in PPCTargetLowering()
786 setOperationAction(ISD::SINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
787 setOperationAction(ISD::UINT_TO_FP, MVT::v2i64, Legal); in PPCTargetLowering()
788 setOperationAction(ISD::FP_TO_SINT, MVT::v2i64, Legal); in PPCTargetLowering()
789 setOperationAction(ISD::FP_TO_UINT, MVT::v2i64, Legal); in PPCTargetLowering()
794 setOperationAction(ISD::UINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
795 setOperationAction(ISD::UINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
796 setOperationAction(ISD::UINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
797 setOperationAction(ISD::UINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
798 setOperationAction(ISD::SINT_TO_FP, MVT::v2i8, Custom); in PPCTargetLowering()
799 setOperationAction(ISD::SINT_TO_FP, MVT::v4i8, Custom); in PPCTargetLowering()
800 setOperationAction(ISD::SINT_TO_FP, MVT::v2i16, Custom); in PPCTargetLowering()
801 setOperationAction(ISD::SINT_TO_FP, MVT::v4i16, Custom); in PPCTargetLowering()
803 setOperationAction(ISD::FNEG, MVT::v4f32, Legal); in PPCTargetLowering()
804 setOperationAction(ISD::FNEG, MVT::v2f64, Legal); in PPCTargetLowering()
805 setOperationAction(ISD::FABS, MVT::v4f32, Legal); in PPCTargetLowering()
806 setOperationAction(ISD::FABS, MVT::v2f64, Legal); in PPCTargetLowering()
809 setOperationAction(ISD::BUILD_VECTOR, MVT::v2i64, Custom); in PPCTargetLowering()
810 setOperationAction(ISD::BUILD_VECTOR, MVT::v2f64, Custom); in PPCTargetLowering()
821 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4i32, Custom); in PPCTargetLowering()
822 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4f32, Custom); in PPCTargetLowering()
827 setOperationAction(ISD::SHL, MVT::v1i128, Legal); in PPCTargetLowering()
828 setOperationAction(ISD::SRL, MVT::v1i128, Legal); in PPCTargetLowering()
829 setOperationAction(ISD::SRA, MVT::v1i128, Expand); in PPCTargetLowering()
833 setOperationAction(ISD::FADD, MVT::f128, Legal); in PPCTargetLowering()
834 setOperationAction(ISD::FSUB, MVT::f128, Legal); in PPCTargetLowering()
835 setOperationAction(ISD::FDIV, MVT::f128, Legal); in PPCTargetLowering()
836 setOperationAction(ISD::FMUL, MVT::f128, Legal); in PPCTargetLowering()
837 setOperationAction(ISD::FP_EXTEND, MVT::f128, Legal); in PPCTargetLowering()
841 setOperationAction(ISD::FMA, MVT::f128, Legal); in PPCTargetLowering()
849 setOperationAction(ISD::FTRUNC, MVT::f128, Legal); in PPCTargetLowering()
850 setOperationAction(ISD::FRINT, MVT::f128, Legal); in PPCTargetLowering()
851 setOperationAction(ISD::FFLOOR, MVT::f128, Legal); in PPCTargetLowering()
852 setOperationAction(ISD::FCEIL, MVT::f128, Legal); in PPCTargetLowering()
853 setOperationAction(ISD::FNEARBYINT, MVT::f128, Legal); in PPCTargetLowering()
854 setOperationAction(ISD::FROUND, MVT::f128, Legal); in PPCTargetLowering()
856 setOperationAction(ISD::SELECT, MVT::f128, Expand); in PPCTargetLowering()
857 setOperationAction(ISD::FP_ROUND, MVT::f64, Legal); in PPCTargetLowering()
858 setOperationAction(ISD::FP_ROUND, MVT::f32, Legal); in PPCTargetLowering()
861 setOperationAction(ISD::BITCAST, MVT::i128, Custom); in PPCTargetLowering()
863 setOperationAction(ISD::FSIN , MVT::f128, Expand); in PPCTargetLowering()
864 setOperationAction(ISD::FCOS , MVT::f128, Expand); in PPCTargetLowering()
865 setOperationAction(ISD::FPOW, MVT::f128, Expand); in PPCTargetLowering()
866 setOperationAction(ISD::FPOWI, MVT::f128, Expand); in PPCTargetLowering()
867 setOperationAction(ISD::FREM, MVT::f128, Expand); in PPCTargetLowering()
873 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v8i16, Custom); in PPCTargetLowering()
874 setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v16i8, Custom); in PPCTargetLowering()
879 setOperationAction(ISD::FADD, MVT::v4f64, Legal); in PPCTargetLowering()
880 setOperationAction(ISD::FSUB, MVT::v4f64, Legal); in PPCTargetLowering()
881 setOperationAction(ISD::FMUL, MVT::v4f64, Legal); in PPCTargetLowering()
882 setOperationAction(ISD::FREM, MVT::v4f64, Expand); in PPCTargetLowering()
884 setOperationAction(ISD::FCOPYSIGN, MVT::v4f64, Legal); in PPCTargetLowering()
885 setOperationAction(ISD::FGETSIGN, MVT::v4f64, Expand); in PPCTargetLowering()
887 setOperationAction(ISD::LOAD , MVT::v4f64, Custom); in PPCTargetLowering()
888 setOperationAction(ISD::STORE , MVT::v4f64, Custom); in PPCTargetLowering()
894 setOperationAction(ISD::SELECT, MVT::v4f64, Expand); in PPCTargetLowering()
895 setOperationAction(ISD::VSELECT, MVT::v4f64, Legal); in PPCTargetLowering()
897 setOperationAction(ISD::EXTRACT_VECTOR_ELT , MVT::v4f64, Legal); in PPCTargetLowering()
898 setOperationAction(ISD::INSERT_VECTOR_ELT , MVT::v4f64, Expand); in PPCTargetLowering()
899 setOperationAction(ISD::CONCAT_VECTORS , MVT::v4f64, Expand); in PPCTargetLowering()
900 setOperationAction(ISD::EXTRACT_SUBVECTOR , MVT::v4f64, Expand); in PPCTargetLowering()
901 setOperationAction(ISD::VECTOR_SHUFFLE , MVT::v4f64, Custom); in PPCTargetLowering()
902 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f64, Legal); in PPCTargetLowering()
903 setOperationAction(ISD::BUILD_VECTOR, MVT::v4f64, Custom); in PPCTargetLowering()
905 setOperationAction(ISD::FP_TO_SINT , MVT::v4f64, Legal); in PPCTargetLowering()
906 setOperationAction(ISD::FP_TO_UINT , MVT::v4f64, Expand); in PPCTargetLowering()
908 setOperationAction(ISD::FP_ROUND , MVT::v4f32, Legal); in PPCTargetLowering()
909 setOperationAction(ISD::FP_ROUND_INREG , MVT::v4f32, Expand); in PPCTargetLowering()
910 setOperationAction(ISD::FP_EXTEND, MVT::v4f64, Legal); in PPCTargetLowering()
912 setOperationAction(ISD::FNEG , MVT::v4f64, Legal); in PPCTargetLowering()
913 setOperationAction(ISD::FABS , MVT::v4f64, Legal); in PPCTargetLowering()
914 setOperationAction(ISD::FSIN , MVT::v4f64, Expand); in PPCTargetLowering()
915 setOperationAction(ISD::FCOS , MVT::v4f64, Expand); in PPCTargetLowering()
916 setOperationAction(ISD::FPOW , MVT::v4f64, Expand); in PPCTargetLowering()
917 setOperationAction(ISD::FLOG , MVT::v4f64, Expand); in PPCTargetLowering()
918 setOperationAction(ISD::FLOG2 , MVT::v4f64, Expand); in PPCTargetLowering()
919 setOperationAction(ISD::FLOG10 , MVT::v4f64, Expand); in PPCTargetLowering()
920 setOperationAction(ISD::FEXP , MVT::v4f64, Expand); in PPCTargetLowering()
921 setOperationAction(ISD::FEXP2 , MVT::v4f64, Expand); in PPCTargetLowering()
923 setOperationAction(ISD::FMINNUM, MVT::v4f64, Legal); in PPCTargetLowering()
924 setOperationAction(ISD::FMAXNUM, MVT::v4f64, Legal); in PPCTargetLowering()
931 setOperationAction(ISD::FADD, MVT::v4f32, Legal); in PPCTargetLowering()
932 setOperationAction(ISD::FSUB, MVT::v4f32, Legal); in PPCTargetLowering()
933 setOperationAction(ISD::FMUL, MVT::v4f32, Legal); in PPCTargetLowering()
934 setOperationAction(ISD::FREM, MVT::v4f32, Expand); in PPCTargetLowering()
936 setOperationAction(ISD::FCOPYSIGN, MVT::v4f32, Legal); in PPCTargetLowering()
937 setOperationAction(ISD::FGETSIGN, MVT::v4f32, Expand); in PPCTargetLowering()
939 setOperationAction(ISD::LOAD , MVT::v4f32, Custom); in PPCTargetLowering()
940 setOperationAction(ISD::STORE , MVT::v4f32, Custom); in PPCTargetLowering()
943 setOperationAction(ISD::SELECT, MVT::v4f32, Expand); in PPCTargetLowering()
944 setOperationAction(ISD::VSELECT, MVT::v4f32, Legal); in PPCTargetLowering()
946 setOperationAction(ISD::EXTRACT_VECTOR_ELT , MVT::v4f32, Legal); in PPCTargetLowering()
947 setOperationAction(ISD::INSERT_VECTOR_ELT , MVT::v4f32, Expand); in PPCTargetLowering()
948 setOperationAction(ISD::CONCAT_VECTORS , MVT::v4f32, Expand); in PPCTargetLowering()
949 setOperationAction(ISD::EXTRACT_SUBVECTOR , MVT::v4f32, Expand); in PPCTargetLowering()
950 setOperationAction(ISD::VECTOR_SHUFFLE , MVT::v4f32, Custom); in PPCTargetLowering()
951 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4f32, Legal); in PPCTargetLowering()
952 setOperationAction(ISD::BUILD_VECTOR, MVT::v4f32, Custom); in PPCTargetLowering()
954 setOperationAction(ISD::FP_TO_SINT , MVT::v4f32, Legal); in PPCTargetLowering()
955 setOperationAction(ISD::FP_TO_UINT , MVT::v4f32, Expand); in PPCTargetLowering()
957 setOperationAction(ISD::FNEG , MVT::v4f32, Legal); in PPCTargetLowering()
958 setOperationAction(ISD::FABS , MVT::v4f32, Legal); in PPCTargetLowering()
959 setOperationAction(ISD::FSIN , MVT::v4f32, Expand); in PPCTargetLowering()
960 setOperationAction(ISD::FCOS , MVT::v4f32, Expand); in PPCTargetLowering()
961 setOperationAction(ISD::FPOW , MVT::v4f32, Expand); in PPCTargetLowering()
962 setOperationAction(ISD::FLOG , MVT::v4f32, Expand); in PPCTargetLowering()
963 setOperationAction(ISD::FLOG2 , MVT::v4f32, Expand); in PPCTargetLowering()
964 setOperationAction(ISD::FLOG10 , MVT::v4f32, Expand); in PPCTargetLowering()
965 setOperationAction(ISD::FEXP , MVT::v4f32, Expand); in PPCTargetLowering()
966 setOperationAction(ISD::FEXP2 , MVT::v4f32, Expand); in PPCTargetLowering()
968 setOperationAction(ISD::FMINNUM, MVT::v4f32, Legal); in PPCTargetLowering()
969 setOperationAction(ISD::FMAXNUM, MVT::v4f32, Legal); in PPCTargetLowering()
976 setOperationAction(ISD::AND , MVT::v4i1, Legal); in PPCTargetLowering()
977 setOperationAction(ISD::OR , MVT::v4i1, Legal); in PPCTargetLowering()
978 setOperationAction(ISD::XOR , MVT::v4i1, Legal); in PPCTargetLowering()
981 setOperationAction(ISD::SELECT, MVT::v4i1, Expand); in PPCTargetLowering()
982 setOperationAction(ISD::VSELECT, MVT::v4i1, Legal); in PPCTargetLowering()
984 setOperationAction(ISD::LOAD , MVT::v4i1, Custom); in PPCTargetLowering()
985 setOperationAction(ISD::STORE , MVT::v4i1, Custom); in PPCTargetLowering()
987 setOperationAction(ISD::EXTRACT_VECTOR_ELT , MVT::v4i1, Custom); in PPCTargetLowering()
988 setOperationAction(ISD::INSERT_VECTOR_ELT , MVT::v4i1, Expand); in PPCTargetLowering()
989 setOperationAction(ISD::CONCAT_VECTORS , MVT::v4i1, Expand); in PPCTargetLowering()
990 setOperationAction(ISD::EXTRACT_SUBVECTOR , MVT::v4i1, Expand); in PPCTargetLowering()
991 setOperationAction(ISD::VECTOR_SHUFFLE , MVT::v4i1, Custom); in PPCTargetLowering()
992 setOperationAction(ISD::SCALAR_TO_VECTOR, MVT::v4i1, Expand); in PPCTargetLowering()
993 setOperationAction(ISD::BUILD_VECTOR, MVT::v4i1, Custom); in PPCTargetLowering()
995 setOperationAction(ISD::SINT_TO_FP, MVT::v4i1, Custom); in PPCTargetLowering()
996 setOperationAction(ISD::UINT_TO_FP, MVT::v4i1, Custom); in PPCTargetLowering()
1000 setOperationAction(ISD::FFLOOR, MVT::v4f64, Legal); in PPCTargetLowering()
1001 setOperationAction(ISD::FCEIL, MVT::v4f64, Legal); in PPCTargetLowering()
1002 setOperationAction(ISD::FTRUNC, MVT::v4f64, Legal); in PPCTargetLowering()
1003 setOperationAction(ISD::FROUND, MVT::v4f64, Legal); in PPCTargetLowering()
1005 setOperationAction(ISD::FFLOOR, MVT::v4f32, Legal); in PPCTargetLowering()
1006 setOperationAction(ISD::FCEIL, MVT::v4f32, Legal); in PPCTargetLowering()
1007 setOperationAction(ISD::FTRUNC, MVT::v4f32, Legal); in PPCTargetLowering()
1008 setOperationAction(ISD::FROUND, MVT::v4f32, Legal); in PPCTargetLowering()
1010 setOperationAction(ISD::FNEARBYINT, MVT::v4f64, Expand); in PPCTargetLowering()
1011 setOperationAction(ISD::FNEARBYINT, MVT::v4f32, Expand); in PPCTargetLowering()
1014 setOperationAction(ISD::FRINT, MVT::v4f64, Expand); in PPCTargetLowering()
1015 setOperationAction(ISD::FRINT, MVT::v4f32, Expand); in PPCTargetLowering()
1018 setOperationAction(ISD::FDIV, MVT::v4f64, Legal); in PPCTargetLowering()
1019 setOperationAction(ISD::FSQRT, MVT::v4f64, Legal); in PPCTargetLowering()
1021 setOperationAction(ISD::FDIV, MVT::v4f32, Legal); in PPCTargetLowering()
1022 setOperationAction(ISD::FSQRT, MVT::v4f32, Legal); in PPCTargetLowering()
1024 setOperationAction(ISD::FDIV, MVT::v4f64, Expand); in PPCTargetLowering()
1025 setOperationAction(ISD::FSQRT, MVT::v4f64, Expand); in PPCTargetLowering()
1027 setOperationAction(ISD::FDIV, MVT::v4f32, Expand); in PPCTargetLowering()
1028 setOperationAction(ISD::FSQRT, MVT::v4f32, Expand); in PPCTargetLowering()
1033 setOperationAction(ISD::PREFETCH, MVT::Other, Legal); in PPCTargetLowering()
1035 setOperationAction(ISD::READCYCLECOUNTER, MVT::i64, isPPC64 ? Legal : Custom); in PPCTargetLowering()
1038 setOperationAction(ISD::ATOMIC_LOAD, MVT::i64, Expand); in PPCTargetLowering()
1039 setOperationAction(ISD::ATOMIC_STORE, MVT::i64, Expand); in PPCTargetLowering()