OSDN Git Service

* config/stormy16/stormy16.md (eqbranchsi): Replace a match_dup
authornickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 6 Feb 2008 10:36:33 +0000 (10:36 +0000)
committernickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 6 Feb 2008 10:36:33 +0000 (10:36 +0000)
        inside the clobber with a match_operand and duplicated operand
        number in the constraint.
        (ineqbranchsi): Delete redundant comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@132143 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/stormy16/stormy16.md

index 382d0da..871e6dd 100644 (file)
@@ -1,3 +1,10 @@
+2008-02-06  Nick Clifton  <nickc@redhat.com>
+
+       * config/stormy16/stormy16.md (eqbranchsi): Replace a match_dup
+       inside the clobber with a match_operand and duplicated operand
+       number in the constraint.
+       (ineqbranchsi): Delete redundant comment.
+
 2008-02-06  Ralf Corsepius  <ralf.corsepius@rtems.org>
 
        * config/arm/rtems-elf.h (TARGET_OS_CPP_BUILTINS): Add 
index bd68243..1872085 100644 (file)
@@ -1,5 +1,5 @@
 ;; XSTORMY16 Machine description template
-;; Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005, 2007
+;; Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005, 2007, 2008
 ;; Free Software Foundation, Inc.
 ;; Contributed by Red Hat, Inc.
 
                                       (const_int 0)])
                      (label_ref (match_operand 0 "" ""))
                      (pc)))
-;; Although I would greatly like the 'match_dup' in the following line
-;; to actually be a register constraint, there is (at the time of writing) no
-;; way for reload to insert an output reload on the edges out of a branch.
-;; If reload is fixed to use insert_insn_on_edge, this can be changed.
-   (clobber (match_dup 2))]
+   (clobber (match_operand:SI 3 "register_operand" "=2"))]
   ""
   "*
 {
                                                         "ri")])
                      (label_ref (match_operand 0 "" ""))
                      (pc)))
-   ;; This clobber is problematic.  Too many gcc optimizations will change
-   ;; operand 2 without changing the clobber.  At the time of writing there
-   ;; is no way around this. :-(  For an example try compiling:
-   ;; gcc.c-torture/compile/20000403-1.c -O3 -fomit-frame-pointer -funroll-loops
    (clobber (match_operand:SI 5 "register_operand" "=2"))
    (clobber (match_operand:BI 4 "" "=&y"))]
   ""