diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/sh/sh.md | 19 |
2 files changed, 4 insertions, 19 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b2a7a23..0b4ab48 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2016-05-02 Oleg Endo <olegendo@gcc.gnu.org> + + * config/sh/sh.md (*negnegt, *movtt): Remove. + 2016-05-02 Marek Polacek <polacek@redhat.com> Tom de Vries <tom@codesourcery.com> diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index af46acc..da1dfe9 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -8345,16 +8345,6 @@ gcc_unreachable (); }) -;; The *negnegt pattern helps the combine pass to figure out how to fold -;; an explicit double T bit negation. -(define_insn_and_split "*negnegt" - [(set (reg:SI T_REG) - (eq:SI (match_operand 0 "negt_reg_operand" "") (const_int 0)))] - "TARGET_SH1" - "#" - "" - [(const_int 0)]) - ;; Store (negated) T bit as all zeros or ones in a reg. ;; subc Rn,Rn ! Rn = Rn - Rn - T; T = T ;; not Rn,Rn ! Rn = 0 - Rn @@ -8379,15 +8369,6 @@ } [(set_attr "type" "arith")]) -;; The *movtt pattern eliminates redundant T bit to T bit moves / tests. -(define_insn_and_split "*movtt" - [(set (reg:SI T_REG) - (eq:SI (match_operand 0 "t_reg_operand" "") (const_int 1)))] - "TARGET_SH1" - "#" - "" - [(const_int 0)]) - ;; Invert the T bit. ;; On SH2A we can use the nott insn. On anything else this must be done with ;; multiple insns like: |