+2003-01-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*iorhi3_zext): Relax the condition.
+ (*iorhi3_two_qi): Likewise.
+ (*iorsi3_zexthi): Likewise.
+ (*xorhi3_zextqi): Likewise.
+ (*xorsi3_zexthi): Likewise.
+ (*xorsi3_zextqi): Likewise.
+
2003-01-02 Kazu Hirata <kazu@cs.umass.edu>
* config/h8300/h8300.c (stack_pointer_operand): New.
[(set (match_operand:HI 0 "register_operand" "=r")
(ior:HI (zero_extend:HI (match_operand:QI 1 "register_operand" "r"))
(match_operand:HI 2 "register_operand" "0")))]
- "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")])
(ior:HI (zero_extend:HI (match_operand:QI 1 "register_operand" "0"))
(ashift:HI (match_operand:HI 2 "register_operand" "r")
(const_int 8))))]
- "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")])
[(set (match_operand:SI 0 "register_operand" "=r")
(ior:SI (zero_extend:SI (match_operand:HI 1 "register_operand" "r"))
(match_operand:SI 2 "register_operand" "0")))]
- "(TARGET_H8300H || TARGET_H8300S)
- && REG_P (operands[0])
- && REG_P (operands[1])
- && (REGNO (operands[0]) != REGNO (operands[1]))"
+ "TARGET_H8300H || TARGET_H8300S"
"or.w\\t%T1,%f0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])
[(set (match_operand:HI 0 "register_operand" "=r")
(xor:HI (zero_extend:HI (match_operand:QI 1 "register_operand" "r"))
(match_operand:HI 2 "register_operand" "0")))]
- "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")])
[(set (match_operand:SI 0 "register_operand" "=r")
(xor:SI (zero_extend:SI (match_operand:HI 1 "register_operand" "r"))
(match_operand:SI 2 "register_operand" "0")))]
- "(TARGET_H8300H || TARGET_H8300S)
- && REG_P (operands[0])
- && REG_P (operands[1])
- && (REGNO (operands[0]) != REGNO (operands[1]))"
+ "TARGET_H8300H || TARGET_H8300S"
"xor.w\\t%T1,%f0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])
[(set (match_operand:SI 0 "register_operand" "=r")
(xor:SI (zero_extend:SI (match_operand:QI 1 "register_operand" "r"))
(match_operand:SI 2 "register_operand" "0")))]
- "REG_P (operands[0])
- && REG_P (operands[1])
- && REGNO (operands[0]) != REGNO (operands[1])"
+ ""
"xor\\t%X1,%w0"
[(set_attr "cc" "clobber")
(set_attr "length" "2")])