h8300.md (define_constants): New.

* config/h8300/h8300.md (define_constants): New.
	(anonymous patterns) Use defined constants appropriately.

From-SVN: r49264
This commit is contained in:
Kazu Hirata 2002-01-27 06:44:53 +00:00 committed by Kazu Hirata
parent 15e0e27547
commit d8fd4914ea
2 changed files with 22 additions and 10 deletions

View File

@ -1,3 +1,8 @@
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.

View File

@ -46,6 +46,13 @@
;; ??? Implement remaining bit ops available on the h8300
;; ----------------------------------------------------------------------
;; CONSTANTS
;; ----------------------------------------------------------------------
(define_constants
[(SP_REG 7)])
;; ----------------------------------------------------------------------
;; ATTRIBUTES
;; ----------------------------------------------------------------------
@ -101,9 +108,9 @@
;; 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"
@ -111,9 +118,9 @@
(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"
@ -195,15 +202,15 @@
;; 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"