h8300.md (anonymous patterns): Check that operands are registers before using REGNO on them.

* config/h8300/h8300.md (anonymous patterns): Check that
	operands are registers before using REGNO on them.

From-SVN: r48545
This commit is contained in:
Kazu Hirata 2002-01-04 22:08:24 +00:00 committed by Kazu Hirata
parent 54c1bf7801
commit 96eb115797
2 changed files with 29 additions and 8 deletions

View File

@ -1,3 +1,8 @@
2002-01-04 Kazu Hirata <kazu@hxi.com>
* config/h8300/h8300.md (anonymous patterns): Check that
operands are registers before using REGNO on them.
2002-01-03 Roland McGrath <roland@frob.com>
* doc/invoke.texi (RS/6000 and PowerPC Options): Add -mcall-gnu.

View File

@ -2267,7 +2267,9 @@
(ior:HI
(zero_extend:HI (match_operand:QI 1 "register_operand" "r"))
(match_operand:HI 2 "register_operand" "0")))]
"REGNO (operands[0]) != REGNO (operands[1])"
"REG_P (operands[0])
&& REG_P (operands[1])
&& REGNO (operands[0]) != REGNO (operands[1])"
"or\\t%X1,%s0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])
@ -2278,7 +2280,9 @@
(zero_extend:SI (match_operand:HI 1 "register_operand" "r"))
(match_operand:SI 2 "register_operand" "0")))]
"(TARGET_H8300H || TARGET_H8300S)
&& (REGNO (operands[0]) != REGNO (operands[1]))"
&& REG_P (operands[0])
&& REG_P (operands[1])
&& (REGNO (operands[0]) != REGNO (operands[1]))"
"or.w\\t%T1,%f0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])
@ -2288,7 +2292,9 @@
(ior:SI
(zero_extend:SI (match_operand:QI 1 "register_operand" "r"))
(match_operand:SI 2 "register_operand" "0")))]
"REGNO (operands[0]) != REGNO (operands[1])"
"REG_P (operands[0])
&& REG_P (operands[1])
&& REGNO (operands[0]) != REGNO (operands[1])"
"or\\t%X1,%s0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])
@ -2298,7 +2304,9 @@
(xor:HI
(zero_extend:HI (match_operand:QI 1 "register_operand" "r"))
(match_operand:HI 2 "register_operand" "0")))]
"REGNO (operands[0]) != REGNO (operands[1])"
"REG_P (operands[0])
&& REG_P (operands[1])
&& REGNO (operands[0]) != REGNO (operands[1])"
"xor\\t%X1,%s0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])
@ -2309,7 +2317,9 @@
(zero_extend:SI (match_operand:HI 1 "register_operand" "r"))
(match_operand:SI 2 "register_operand" "0")))]
"(TARGET_H8300H || TARGET_H8300S)
&& (REGNO (operands[0]) != REGNO (operands[1]))"
&& REG_P (operands[0])
&& REG_P (operands[1])
&& (REGNO (operands[0]) != REGNO (operands[1]))"
"xor.w\\t%T1,%f0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])
@ -2319,7 +2329,9 @@
(xor:SI
(zero_extend:SI (match_operand:QI 1 "register_operand" "r"))
(match_operand:SI 2 "register_operand" "0")))]
"REGNO (operands[0]) != REGNO (operands[1])"
"REG_P (operands[0])
&& REG_P (operands[1])
&& REGNO (operands[0]) != REGNO (operands[1])"
"xor\\t%X1,%s0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])
@ -2330,7 +2342,9 @@
(zero_extend:HI (match_operand:QI 1 "register_operand" "0"))
(ashift:HI (match_operand:HI 2 "register_operand" "r")
(const_int 8))))]
"REGNO (operands[0]) != REGNO (operands[2])"
"REG_P (operands[0])
&& REG_P (operands[2])
&& REGNO (operands[0]) != REGNO (operands[2])"
"mov.b\\t%s2,%t0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])
@ -2342,7 +2356,9 @@
(ashift:SI (match_operand:SI 2 "register_operand" "r")
(const_int 16))))]
"(TARGET_H8300H || TARGET_H8300S)
&& (REGNO (operands[0]) != REGNO (operands[2]))"
&& REG_P (operands[0])
&& REG_P (operands[2])
&& (REGNO (operands[0]) != REGNO (operands[2]))"
"mov.w\\t%f2,%e0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])