Lines Matching full:setcc
2495 // match setcc on i1 variables.
2496 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETLT)),
2498 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETULT)),
2500 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETLE)),
2502 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETULE)),
2504 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETEQ)),
2506 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETGE)),
2508 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETUGE)),
2510 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETGT)),
2512 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETUGT)),
2514 def : Pat<(i1 (setcc i1:$s1, i1:$s2, SETNE)),
2517 // match setcc on non-i1 (non-vector) variables. Note that SETUEQ, SETOGE,
2551 // extended SETCC.
2579 (setcc $in, 0, $cc)>,
2587 (setcc $in, 0, $cc)>,
2595 (setcc $in, 0, $cc)>,
2603 (setcc $in, 0, $cc)>,
2611 (setcc $in, 0, $cc)>,
2619 (setcc $in, 0, $cc)>,
2627 (setcc $in, -1, $cc)>,
2635 (setcc $in, -1, $cc)>,
2643 (setcc $in, -1, $cc)>,
2651 (setcc $in, -1, $cc)>,
2657 // SETCC for i32.
2658 def : Pat<(i1 (setcc i32:$s1, immZExt16:$imm, SETULT)),
2660 def : Pat<(i1 (setcc i32:$s1, imm32SExt16:$imm, SETLT)),
2662 def : Pat<(i1 (setcc i32:$s1, immZExt16:$imm, SETUGT)),
2664 def : Pat<(i1 (setcc i32:$s1, imm32SExt16:$imm, SETGT)),
2666 def : Pat<(i1 (setcc i32:$s1, imm32SExt16:$imm, SETEQ)),
2668 def : Pat<(i1 (setcc i32:$s1, immZExt16:$imm, SETEQ)),
2682 def : Pat<(i1 (setcc i32:$s1, imm:$imm, SETEQ)),
2686 defm : CRNotPat<(i1 (setcc i32:$s1, immZExt16:$imm, SETUGE)),
2688 defm : CRNotPat<(i1 (setcc i32:$s1, imm32SExt16:$imm, SETGE)),
2690 defm : CRNotPat<(i1 (setcc i32:$s1, immZExt16:$imm, SETULE)),
2692 defm : CRNotPat<(i1 (setcc i32:$s1, imm32SExt16:$imm, SETLE)),
2694 defm : CRNotPat<(i1 (setcc i32:$s1, imm32SExt16:$imm, SETNE)),
2696 defm : CRNotPat<(i1 (setcc i32:$s1, immZExt16:$imm, SETNE)),
2699 defm : CRNotPat<(i1 (setcc i32:$s1, imm:$imm, SETNE)),
2703 def : Pat<(i1 (setcc i32:$s1, i32:$s2, SETULT)),
2705 def : Pat<(i1 (setcc i32:$s1, i32:$s2, SETLT)),
2707 def : Pat<(i1 (setcc i32:$s1, i32:$s2, SETUGT)),
2709 def : Pat<(i1 (setcc i32:$s1, i32:$s2, SETGT)),
2711 def : Pat<(i1 (setcc i32:$s1, i32:$s2, SETEQ)),
2714 defm : CRNotPat<(i1 (setcc i32:$s1, i32:$s2, SETUGE)),
2716 defm : CRNotPat<(i1 (setcc i32:$s1, i32:$s2, SETGE)),
2718 defm : CRNotPat<(i1 (setcc i32:$s1, i32:$s2, SETULE)),
2720 defm : CRNotPat<(i1 (setcc i32:$s1, i32:$s2, SETLE)),
2722 defm : CRNotPat<(i1 (setcc i32:$s1, i32:$s2, SETNE)),
2725 // SETCC for i64.
2726 def : Pat<(i1 (setcc i64:$s1, immZExt16:$imm, SETULT)),
2728 def : Pat<(i1 (setcc i64:$s1, imm64SExt16:$imm, SETLT)),
2730 def : Pat<(i1 (setcc i64:$s1, immZExt16:$imm, SETUGT)),
2732 def : Pat<(i1 (setcc i64:$s1, imm64SExt16:$imm, SETGT)),
2734 def : Pat<(i1 (setcc i64:$s1, imm64SExt16:$imm, SETEQ)),
2736 def : Pat<(i1 (setcc i64:$s1, immZExt16:$imm, SETEQ)),
2750 def : Pat<(i1 (setcc i64:$s1, imm64ZExt32:$imm, SETEQ)),
2754 defm : CRNotPat<(i1 (setcc i64:$s1, immZExt16:$imm, SETUGE)),
2756 defm : CRNotPat<(i1 (setcc i64:$s1, imm64SExt16:$imm, SETGE)),
2758 defm : CRNotPat<(i1 (setcc i64:$s1, immZExt16:$imm, SETULE)),
2760 defm : CRNotPat<(i1 (setcc i64:$s1, imm64SExt16:$imm, SETLE)),
2762 defm : CRNotPat<(i1 (setcc i64:$s1, imm64SExt16:$imm, SETNE)),
2764 defm : CRNotPat<(i1 (setcc i64:$s1, immZExt16:$imm, SETNE)),
2767 defm : CRNotPat<(i1 (setcc i64:$s1, imm64ZExt32:$imm, SETNE)),
2771 def : Pat<(i1 (setcc i64:$s1, i64:$s2, SETULT)),
2773 def : Pat<(i1 (setcc i64:$s1, i64:$s2, SETLT)),
2775 def : Pat<(i1 (setcc i64:$s1, i64:$s2, SETUGT)),
2777 def : Pat<(i1 (setcc i64:$s1, i64:$s2, SETGT)),
2779 def : Pat<(i1 (setcc i64:$s1, i64:$s2, SETEQ)),
2782 defm : CRNotPat<(i1 (setcc i64:$s1, i64:$s2, SETUGE)),
2784 defm : CRNotPat<(i1 (setcc i64:$s1, i64:$s2, SETGE)),
2786 defm : CRNotPat<(i1 (setcc i64:$s1, i64:$s2, SETULE)),
2788 defm : CRNotPat<(i1 (setcc i64:$s1, i64:$s2, SETLE)),
2790 defm : CRNotPat<(i1 (setcc i64:$s1, i64:$s2, SETNE)),
2793 // SETCC for f32.
2794 def : Pat<(i1 (setcc f32:$s1, f32:$s2, SETOLT)),
2796 def : Pat<(i1 (setcc f32:$s1, f32:$s2, SETLT)),
2798 def : Pat<(i1 (setcc f32:$s1, f32:$s2, SETOGT)),
2800 def : Pat<(i1 (setcc f32:$s1, f32:$s2, SETGT)),
2802 def : Pat<(i1 (setcc f32:$s1, f32:$s2, SETOEQ)),
2804 def : Pat<(i1 (setcc f32:$s1, f32:$s2, SETEQ)),
2806 def : Pat<(i1 (setcc f32:$s1, f32:$s2, SETUO)),
2809 defm : CRNotPat<(i1 (setcc f32:$s1, f32:$s2, SETUGE)),
2811 defm : CRNotPat<(i1 (setcc f32:$s1, f32:$s2, SETGE)),
2813 defm : CRNotPat<(i1 (setcc f32:$s1, f32:$s2, SETULE)),
2815 defm : CRNotPat<(i1 (setcc f32:$s1, f32:$s2, SETLE)),
2817 defm : CRNotPat<(i1 (setcc f32:$s1, f32:$s2, SETUNE)),
2819 defm : CRNotPat<(i1 (setcc f32:$s1, f32:$s2, SETNE)),
2821 defm : CRNotPat<(i1 (setcc f32:$s1, f32:$s2, SETO)),
2824 // SETCC for f64.
2825 def : Pat<(i1 (setcc f64:$s1, f64:$s2, SETOLT)),
2827 def : Pat<(i1 (setcc f64:$s1, f64:$s2, SETLT)),
2829 def : Pat<(i1 (setcc f64:$s1, f64:$s2, SETOGT)),
2831 def : Pat<(i1 (setcc f64:$s1, f64:$s2, SETGT)),
2833 def : Pat<(i1 (setcc f64:$s1, f64:$s2, SETOEQ)),
2835 def : Pat<(i1 (setcc f64:$s1, f64:$s2, SETEQ)),
2837 def : Pat<(i1 (setcc f64:$s1, f64:$s2, SETUO)),
2840 defm : CRNotPat<(i1 (setcc f64:$s1, f64:$s2, SETUGE)),
2842 defm : CRNotPat<(i1 (setcc f64:$s1, f64:$s2, SETGE)),
2844 defm : CRNotPat<(i1 (setcc f64:$s1, f64:$s2, SETULE)),
2846 defm : CRNotPat<(i1 (setcc f64:$s1, f64:$s2, SETLE)),
2848 defm : CRNotPat<(i1 (setcc f64:$s1, f64:$s2, SETUNE)),
2850 defm : CRNotPat<(i1 (setcc f64:$s1, f64:$s2, SETNE)),
2852 defm : CRNotPat<(i1 (setcc f64:$s1, f64:$s2, SETO)),