sh.c (sh_expand_t_scc): Use gen_xorsi3_movrt instead of gen_movrt.
authorKaz Kojima <kkojima@gcc.gnu.org>
Thu, 28 May 2009 21:59:39 +0000 (21:59 +0000)
committerKaz Kojima <kkojima@gcc.gnu.org>
Thu, 28 May 2009 21:59:39 +0000 (21:59 +0000)
* config/sh/sh.c (sh_expand_t_scc): Use gen_xorsi3_movrt
instead of gen_movrt.
* config/sh/sh.md (movrt): Remove.

From-SVN: r147961

gcc/ChangeLog
gcc/config/sh/sh.c
gcc/config/sh/sh.md

index a34a875..d8624b0 100644 (file)
@@ -1,3 +1,9 @@
+2009-05-28  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.c (sh_expand_t_scc): Use gen_xorsi3_movrt
+       instead of gen_movrt.
+       * config/sh/sh.md (movrt): Remove.
+
 2009-05-28  Steve Ellcey  <sje@cup.hp.com>
 
        * doc/invoke.texi (IA-64 Options)
index db49b8d..9c9583f 100644 (file)
@@ -11085,7 +11085,7 @@ sh_expand_t_scc (rtx operands[])
     emit_insn (gen_movt (result));
   else if (TARGET_SH2A && ((code == EQ && val == 0)
                            || (code == NE && val == 1)))
-    emit_insn (gen_movrt (result));
+    emit_insn (gen_xorsi3_movrt (result));
   else if ((code == EQ && val == 0) || (code == NE && val == 1))
     {
       emit_clobber (result);
index 6f4d1b2..54e7e30 100644 (file)
@@ -9109,16 +9109,6 @@ mov.l\\t1f,r0\\n\\
   "movt        %0"
   [(set_attr "type" "arith")])
 
-;; complements the T bit and stores the result in a register
-(define_insn "movrt"
-  [(set (match_operand:SI 0 "arith_reg_dest" "=r")
-        (if_then_else (eq:SI (reg:SI T_REG) (const_int 0))
-        (const_int 1)
-        (const_int 0)))]
-  "TARGET_SH2A"
-  "movrt\\t%0"
-   [(set_attr "type" "arith")])
-
 (define_expand "cstore4_media"
   [(set (match_operand:SI 0 "register_operand" "=r")
        (match_operator:SI 1 "sh_float_comparison_operator"