i386.md (*jcc_2): Remove insn pattern.
authorUros Bizjak <ubizjak@gmail.com>
Mon, 9 Oct 2017 19:12:53 +0000 (21:12 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Mon, 9 Oct 2017 19:12:53 +0000 (21:12 +0200)
* config/i386/i386.md (*jcc_2): Remove insn pattern.
(*jcc<mode>_0_r_i387): Ditto.
(*jccxf_r_i387): Ditto.
(*jcc<mode>_r_i387): Ditto.
(*jccu<mode>_r_i387): Ditto.
(*jcc<X87MODEF:mode>_<SWI24:mode>_r_i387): Ditto.
(*jcc): Rename from *jcc_1.

From-SVN: r253558

gcc/ChangeLog
gcc/config/i386/i386.md

index cc7186d87f96bb6728417b6e8ffe2de11b83c04a..03ea29f5cfbc27f7fd9503da69cc13974711f818 100644 (file)
@@ -1,3 +1,13 @@
+2017-10-09  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (*jcc_2): Remove insn pattern.
+       (*jcc<mode>_0_r_i387): Ditto.
+       (*jccxf_r_i387): Ditto.
+       (*jcc<mode>_r_i387): Ditto.
+       (*jccu<mode>_r_i387): Ditto.
+       (*jcc<X87MODEF:mode>_<SWI24:mode>_r_i387): Ditto.
+       (*jcc): Rename from *jcc_1.
+
 2017-10-09  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
 
        * config/rs6000/rs6000-p8swap.c (rs6000_analyze_swaps): Process
index 99497a9f65425a4a9a9dfc6b935e027a73f733f5..1a794c0ae06a7dd2216149ecbe198d0ccf848f15 100644 (file)
 ;; Basic conditional jump instructions.
 ;; We ignore the overflow flag for signed branch instructions.
 
-(define_insn "*jcc_1"
+(define_insn "*jcc"
   [(set (pc)
        (if_then_else (match_operator 1 "ix86_comparison_operator"
                                      [(reg FLAGS_REG) (const_int 0)])
          (const_int 6)))
    (set_attr "maybe_prefix_bnd" "1")])
 
-(define_insn "*jcc_2"
-  [(set (pc)
-       (if_then_else (match_operator 1 "ix86_comparison_operator"
-                                     [(reg FLAGS_REG) (const_int 0)])
-                     (pc)
-                     (label_ref (match_operand 0))))]
-  ""
-  "%!%+j%c1\t%l0"
-  [(set_attr "type" "ibr")
-   (set_attr "modrm" "0")
-   (set (attr "length")
-       (if_then_else
-         (and (ge (minus (match_dup 0) (pc))
-                  (const_int -126))
-              (lt (minus (match_dup 0) (pc))
-                  (const_int 128)))
-         (const_int 2)
-         (const_int 6)))
-   (set_attr "maybe_prefix_bnd" "1")])
-
 ;; In general it is not safe to assume too much about CCmode registers,
 ;; so simplify-rtx stops when it sees a second one.  Under certain
 ;; conditions this is safe on x86, so help combine not create
   "TARGET_80387 && !TARGET_CMOVE"
   "#")
 
-(define_insn "*jcc<mode>_0_r_i387"
-  [(set (pc)
-       (if_then_else (match_operator:CCFP 0 "ix86_fp_comparison_operator"
-                       [(match_operand:X87MODEF 1 "register_operand" "f")
-                        (match_operand:X87MODEF 2 "const0_operand")])
-         (pc)
-         (label_ref (match_operand 3))))
-   (clobber (reg:CCFP FPSR_REG))
-   (clobber (reg:CCFP FLAGS_REG))
-   (clobber (match_scratch:HI 4 "=a"))]
-  "TARGET_80387 && !TARGET_CMOVE"
-  "#")
-
 (define_insn "*jccxf_i387"
   [(set (pc)
        (if_then_else (match_operator:CCFP 0 "ix86_fp_comparison_operator"
   "TARGET_80387 && !TARGET_CMOVE"
   "#")
 
-(define_insn "*jccxf_r_i387"
-  [(set (pc)
-       (if_then_else (match_operator:CCFP 0 "ix86_fp_comparison_operator"
-                       [(match_operand:XF 1 "register_operand" "f")
-                        (match_operand:XF 2 "register_operand" "f")])
-         (pc)
-         (label_ref (match_operand 3))))
-   (clobber (reg:CCFP FPSR_REG))
-   (clobber (reg:CCFP FLAGS_REG))
-   (clobber (match_scratch:HI 4 "=a"))]
-  "TARGET_80387 && !TARGET_CMOVE"
-  "#")
-
 (define_insn "*jcc<mode>_i387"
   [(set (pc)
        (if_then_else (match_operator:CCFP 0 "ix86_fp_comparison_operator"
   "TARGET_80387 && !TARGET_CMOVE"
   "#")
 
-(define_insn "*jcc<mode>_r_i387"
-  [(set (pc)
-       (if_then_else (match_operator:CCFP 0 "ix86_fp_comparison_operator"
-                       [(match_operand:MODEF 1 "register_operand" "f")
-                        (match_operand:MODEF 2 "nonimmediate_operand" "fm")])
-         (pc)
-         (label_ref (match_operand 3))))
-   (clobber (reg:CCFP FPSR_REG))
-   (clobber (reg:CCFP FLAGS_REG))
-   (clobber (match_scratch:HI 4 "=a"))]
-  "TARGET_80387 && !TARGET_CMOVE"
-  "#")
-
 (define_insn "*jccu<mode>_i387"
   [(set (pc)
        (if_then_else (match_operator:CCFPU 0 "ix86_fp_comparison_operator"
   "TARGET_80387 && !TARGET_CMOVE"
   "#")
 
-(define_insn "*jccu<mode>_r_i387"
-  [(set (pc)
-       (if_then_else (match_operator:CCFPU 0 "ix86_fp_comparison_operator"
-                       [(match_operand:X87MODEF 1 "register_operand" "f")
-                        (match_operand:X87MODEF 2 "register_operand" "f")])
-         (pc)
-         (label_ref (match_operand 3))))
-   (clobber (reg:CCFP FPSR_REG))
-   (clobber (reg:CCFP FLAGS_REG))
-   (clobber (match_scratch:HI 4 "=a"))]
-  "TARGET_80387 && !TARGET_CMOVE"
-  "#")
-
 (define_split
   [(set (pc)
        (if_then_else (match_operator 0 "ix86_fp_comparison_operator"
        || optimize_function_for_size_p (cfun))"
   "#")
 
-(define_insn "*jcc<X87MODEF:mode>_<SWI24:mode>_r_i387"
-  [(set (pc)
-       (if_then_else
-         (match_operator:CCFP 0 "ix86_swapped_fp_comparison_operator"
-           [(match_operator:X87MODEF 1 "float_operator"
-             [(match_operand:SWI24 2 "nonimmediate_operand" "m")])
-            (match_operand:X87MODEF 3 "register_operand" "f")])
-         (pc)
-         (label_ref (match_operand 4))))
-   (clobber (reg:CCFP FPSR_REG))
-   (clobber (reg:CCFP FLAGS_REG))
-   (clobber (match_scratch:HI 5 "=a"))]
-  "TARGET_80387 && !TARGET_CMOVE
-   && (TARGET_USE_<SWI24:MODE>MODE_FIOP
-       || optimize_function_for_size_p (cfun))"
-  "#")
-
 (define_split
   [(set (pc)
        (if_then_else