Lines Matching refs:rs2
485 def : Pat<(brcond (i32 (setne mGPR:$rs1, uimm5:$rs2)), bb:$offset),
486 (BT16 (CMPNEI16 mGPR:$rs1, uimm5:$rs2), bb:$offset)>;
487 def : Pat<(brcond (i32 (seteq mGPR:$rs1, uimm5:$rs2)), bb:$offset),
488 (BF16 (CMPNEI16 mGPR:$rs1, uimm5:$rs2), bb:$offset)>;
489 def : Pat<(brcond (i32 (setuge mGPR:$rs1, oimm5:$rs2)), bb:$offset),
490 (BT16 (CMPHSI16 mGPR:$rs1, oimm5:$rs2), bb:$offset)>;
491 def : Pat<(brcond (i32 (setult mGPR:$rs1, oimm5:$rs2)), bb:$offset),
492 (BF16 (CMPHSI16 mGPR:$rs1, oimm5:$rs2), bb:$offset)>;
493 def : Pat<(brcond (i32 (setlt mGPR:$rs1, oimm5:$rs2)), bb:$offset),
494 (BT16 (CMPLTI16 mGPR:$rs1, oimm5:$rs2), bb:$offset)>;
495 def : Pat<(brcond (i32 (setge mGPR:$rs1, oimm5:$rs2)), bb:$offset),
496 (BF16 (CMPLTI16 mGPR:$rs1, oimm5:$rs2), bb:$offset)>;
498 def : Pat<(brcond (i32 (setne sGPR:$rs1, sGPR:$rs2)), bb:$offset),
499 (BT16 (CMPNE16 sGPR:$rs1, sGPR:$rs2), bb:$offset)>;
500 def : Pat<(brcond (i32 (seteq sGPR:$rs1, sGPR:$rs2)), bb:$offset),
501 (BF16 (CMPNE16 sGPR:$rs1, sGPR:$rs2), bb:$offset)>;
502 def : Pat<(brcond (i32 (setuge sGPR:$rs1, sGPR:$rs2)), bb:$offset),
503 (BT16 (CMPHS16 sGPR:$rs1, sGPR:$rs2), bb:$offset)>;
504 def : Pat<(brcond (i32 (setule sGPR:$rs1, sGPR:$rs2)), bb:$offset),
505 (BT16 (CMPHS16 sGPR:$rs2, sGPR:$rs1), bb:$offset)>;
506 def : Pat<(brcond (i32 (setult sGPR:$rs1, sGPR:$rs2)), bb:$offset),
507 (BF16 (CMPHS16 sGPR:$rs1, sGPR:$rs2), bb:$offset)>;
508 def : Pat<(brcond (i32 (setugt sGPR:$rs1, sGPR:$rs2)), bb:$offset),
509 (BF16 (CMPHS16 sGPR:$rs2, sGPR:$rs1), bb:$offset)>;
510 def : Pat<(brcond (i32 (setlt sGPR:$rs1, sGPR:$rs2)), bb:$offset),
511 (BT16 (CMPLT16 sGPR:$rs1, sGPR:$rs2), bb:$offset)>;
512 def : Pat<(brcond (i32 (setgt sGPR:$rs1, sGPR:$rs2)), bb:$offset),
513 (BT16 (CMPLT16 sGPR:$rs2, sGPR:$rs1), bb:$offset)>;
514 def : Pat<(brcond (i32 (setge sGPR:$rs1, sGPR:$rs2)), bb:$offset),
515 (BF16 (CMPLT16 sGPR:$rs1, sGPR:$rs2), bb:$offset)>;
516 def : Pat<(brcond (i32 (setle sGPR:$rs1, sGPR:$rs2)), bb:$offset),
517 (BF16 (CMPLT16 sGPR:$rs2, sGPR:$rs1), bb:$offset)>;
520 def : Pat<(setne sGPR:$rs1, sGPR:$rs2),
521 (SUBU16XZ (MOVI16 1), (MVCV16 (CMPNE16 sGPR:$rs1, sGPR:$rs2)))>;
522 def : Pat<(seteq sGPR:$rs1, sGPR:$rs2),
523 (MVCV16 (CMPNE16 sGPR:$rs1, sGPR:$rs2))>;
524 def : Pat<(setuge sGPR:$rs1, sGPR:$rs2),
525 (SUBU16XZ (MOVI16 1), (MVCV16 (CMPHS16 sGPR:$rs1, sGPR:$rs2)))>;
526 def : Pat<(setule sGPR:$rs1, sGPR:$rs2),
527 (SUBU16XZ (MOVI16 1), (MVCV16 (CMPHS16 sGPR:$rs2, sGPR:$rs1)))>;
528 def : Pat<(setult sGPR:$rs1, sGPR:$rs2),
529 (MVCV16 (CMPHS16 sGPR:$rs1, sGPR:$rs2))>;
530 def : Pat<(setugt sGPR:$rs1, sGPR:$rs2),
531 (MVCV16 (CMPHS16 sGPR:$rs2, sGPR:$rs1))>;
532 def : Pat<(setlt sGPR:$rs1, sGPR:$rs2),
533 (SUBU16XZ (MOVI16 1), (MVCV16 (CMPLT16 sGPR:$rs1, sGPR:$rs2)))>;
534 def : Pat<(setgt sGPR:$rs1, sGPR:$rs2),
535 (SUBU16XZ (MOVI16 1), (MVCV16 (CMPLT16 sGPR:$rs2, sGPR:$rs1)))>;
536 def : Pat<(setge sGPR:$rs1, sGPR:$rs2),
537 (MVCV16 (CMPLT16 sGPR:$rs1, sGPR:$rs2))>;
538 def : Pat<(setle sGPR:$rs1, sGPR:$rs2),
539 (MVCV16 (CMPLT16 sGPR:$rs2, sGPR:$rs1))>;
542 def : Pat<(setne mGPR:$rs1, uimm5:$rs2),
543 (SUBU16XZ (MOVI16 1), (MVCV16 (CMPNEI16 mGPR:$rs1, uimm5:$rs2)))>;
544 def : Pat<(seteq mGPR:$rs1, uimm5:$rs2),
545 (MVCV16 (CMPNEI16 mGPR:$rs1, uimm5:$rs2))>;
546 def : Pat<(setuge mGPR:$rs1, oimm5:$rs2),
547 (SUBU16XZ (MOVI16 1), (MVCV16 (CMPHSI16 mGPR:$rs1, oimm5:$rs2)))>;
548 def : Pat<(setult mGPR:$rs1, oimm5:$rs2),
549 (MVCV16 (CMPHSI16 mGPR:$rs1, oimm5:$rs2))>;
550 def : Pat<(setlt mGPR:$rs1, oimm5:$rs2),
551 (SUBU16XZ (MOVI16 1), (MVCV16 (CMPLTI16 mGPR:$rs1, oimm5:$rs2)))>;
552 def : Pat<(setge mGPR:$rs1, oimm5:$rs2),
553 (MVCV16 (CMPLTI16 mGPR:$rs1, oimm5:$rs2))>;
560 def : Pat<(rotl sGPR:$rs1, sGPR:$rs2),
561 (ROTL16 sGPR:$rs1, (AND16 sGPR:$rs2, (MOVI16 0x1f)))>;
580 def : CompressPat<(ADDU32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
581 (ADDU16XZ sGPR:$rd, sGPR:$rs2)>;
584 def : CompressPat<(ADDU32 mGPR:$rd, mGPR:$rs1, mGPR:$rs2),
585 (ADDU16 mGPR:$rd, mGPR:$rs1, mGPR:$rs2)>;
586 def : CompressPat<(SUBU32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
587 (SUBU16XZ sGPR:$rd, sGPR:$rs2)>;
588 def : CompressPat<(SUBU32 mGPR:$rd, mGPR:$rs1, mGPR:$rs2),
589 (SUBU16 mGPR:$rd, mGPR:$rs1, mGPR:$rs2)>;
592 (ADDC32 sGPR:$rd, CARRY:$cout, sGPR:$rd, sGPR:$rs2, CARRY:$cout),
593 (ADDC16 sGPR:$rd, CARRY:$cout, sGPR:$rs2, CARRY:$cout)
596 (SUBC32 sGPR:$rd, CARRY:$cout, sGPR:$rd, sGPR:$rs2, CARRY:$cout),
597 (SUBC16 sGPR:$rd, CARRY:$cout, sGPR:$rs2, CARRY:$cout)
618 def : CompressPat<(MULT32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
619 (MULT16 sGPR:$rd, sGPR:$rs2)>;
622 def : CompressPat<(AND32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
623 (AND16 sGPR:$rd, sGPR:$rs2)>;
626 def : CompressPat<(OR32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
627 (OR16 sGPR:$rd, sGPR:$rs2)>;
630 def : CompressPat<(XOR32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
631 (XOR16 sGPR:$rd, sGPR:$rs2)>;
635 def : CompressPat<(ANDN32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
636 (ANDN16 sGPR:$rd, sGPR:$rs2)>;
637 def : CompressPat<(NOR32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
638 (NOR16 sGPR:$rd, sGPR:$rs2)>;
639 def : CompressPat<(LSL32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
640 (LSL16 sGPR:$rd, sGPR:$rs2)>;
641 def : CompressPat<(LSR32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
642 (LSR16 sGPR:$rd, sGPR:$rs2)>;
643 def : CompressPat<(ASR32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
644 (ASR16 sGPR:$rd, sGPR:$rs2)>;
645 def : CompressPat<(ROTL32 sGPR:$rd, sGPR:$rd, sGPR:$rs2),
646 (ROTL16 sGPR:$rd, sGPR:$rs2)>;
662 def : CompressPat<(CMPHS32 CARRY:$ca, sGPR:$rs1, sGPR:$rs2),
663 (CMPHS16 CARRY:$ca, sGPR:$rs1, sGPR:$rs2)>;
664 def : CompressPat<(CMPLT32 CARRY:$ca, sGPR:$rs1, sGPR:$rs2),
665 (CMPLT16 CARRY:$ca, sGPR:$rs1, sGPR:$rs2)>;
666 def : CompressPat<(CMPNE32 CARRY:$ca, sGPR:$rs1, sGPR:$rs2),
667 (CMPNE16 CARRY:$ca, sGPR:$rs1, sGPR:$rs2)>;