OSDN Git Service

* config/h8300/h8300.md (define_constants): New.
authorkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 27 Jan 2002 06:44:53 +0000 (06:44 +0000)
committerkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 27 Jan 2002 06:44:53 +0000 (06:44 +0000)
(anonymous patterns) Use defined constants appropriately.

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

gcc/ChangeLog
gcc/config/h8300/h8300.md

index 1da14d9..8ce5613 100644 (file)
@@ -1,5 +1,10 @@
 2002-01-27  Kazu Hirata  <kazu@hxi.com>
 
+       * config/h8300/h8300.md (define_constants): New.
+       (anonymous patterns) Use defined constants appropriately.
+
+2002-01-27  Kazu Hirata  <kazu@hxi.com>
+
        * config/h8300/h8300.c (function_arg): Remove redundant code.
 
 2002-01-26  Richard Henderson  <rth@redhat.com>
index f94778b..36c23d1 100644 (file)
 ;; ??? Implement remaining bit ops available on the h8300
 
 ;; ----------------------------------------------------------------------
+;; CONSTANTS
+;; ----------------------------------------------------------------------
+
+(define_constants
+  [(SP_REG     7)])
+
+;; ----------------------------------------------------------------------
 ;; ATTRIBUTES
 ;; ----------------------------------------------------------------------
 
 ;; movqi
 
 (define_insn "pushqi1_h8300"
-  [(parallel [(set (reg:HI 7)
-                   (plus:HI (reg:HI 7) (const_int -2)))
-              (set (mem:QI (plus:HI (reg:HI 7) (const_int -1)))
+  [(parallel [(set (reg:HI SP_REG)
+                   (plus:HI (reg:HI SP_REG) (const_int -2)))
+              (set (mem:QI (plus:HI (reg:HI SP_REG) (const_int -1)))
                    (match_operand:QI 0 "register_operand" "r"))])]
   "TARGET_H8300"
   "mov.w\\t%T0,@-r7"
    (set_attr "cc" "clobber")])
 
 (define_insn "pushqi1_h8300hs"
-  [(parallel [(set (reg:SI 7)
-                   (plus:SI (reg:SI 7) (const_int -4)))
-              (set (mem:QI (plus:SI (reg:SI 7) (const_int -3)))
+  [(parallel [(set (reg:SI SP_REG)
+                   (plus:SI (reg:SI SP_REG) (const_int -4)))
+              (set (mem:QI (plus:SI (reg:SI SP_REG) (const_int -3)))
                    (match_operand:QI 0 "register_operand" "r"))])]
   "TARGET_H8300H || TARGET_H8300S"
   "mov.l\\t%S0,@-er7"
 ;; movhi
 
 (define_expand "pushhi1_h8300"
-  [(set (mem:QI (pre_dec:HI (reg:HI 7)))
+  [(set (mem:QI (pre_dec:HI (reg:HI SP_REG)))
         (match_operand:QI 0 "register_operand" ""))]
   "TARGET_H8300"
   "")
 
 (define_insn "pushhi1_h8300hs"
-  [(parallel [(set (reg:SI 7)
-                   (plus:SI (reg:SI 7) (const_int -4)))
-              (set (mem:HI (plus:SI (reg:SI 7) (const_int -2)))
+  [(parallel [(set (reg:SI SP_REG)
+                   (plus:SI (reg:SI SP_REG) (const_int -4)))
+              (set (mem:HI (plus:SI (reg:SI SP_REG) (const_int -2)))
                    (match_operand:HI 0 "register_operand" "r"))])]
   "TARGET_H8300H || TARGET_H8300S"
   "mov.l\\t%S0,@-er7"