diff options
author | Kazu Hirata <kazu@cs.umass.edu> | 2003-03-29 03:14:09 +0000 |
---|---|---|
committer | Kazu Hirata <kazu@gcc.gnu.org> | 2003-03-29 03:14:09 +0000 |
commit | 12f76820b4639161d29368a37fcec3b6283605b0 (patch) | |
tree | 00daa9234f0fb9f129d578f1091a08618dc4d644 | |
parent | 4544c3f3876680fb79824d6c7628e850cff334e7 (diff) | |
download | gcc-12f76820b4639161d29368a37fcec3b6283605b0.zip gcc-12f76820b4639161d29368a37fcec3b6283605b0.tar.gz gcc-12f76820b4639161d29368a37fcec3b6283605b0.tar.bz2 |
h8300.md (*addsi3_and_r_1): Put under plus:SI section of h8300.md
* config/h8300/h8300.md (*addsi3_and_r_1): Put under plus:SI
section of h8300.md
(*addsi3_and_nor_r_1): Likewise.
From-SVN: r65008
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/h8300/h8300.md | 92 |
2 files changed, 52 insertions, 46 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2209c43..59c8e6c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-03-28 Kazu Hirata <kazu@cs.umass.edu> + + * config/h8300/h8300.md (*addsi3_and_r_1): Put under plus:SI + section of h8300.md + (*addsi3_and_nor_r_1): Likewise. + 2003-03-29 Ulrich Weigand <uweigand@de.ibm.com> * config/s390/s390.c (s390_emit_prologoue): Make sure backchain is diff --git a/gcc/config/h8300/h8300.md b/gcc/config/h8300/h8300.md index b9a6094..8e46ec1 100644 --- a/gcc/config/h8300/h8300.md +++ b/gcc/config/h8300/h8300.md @@ -2837,6 +2837,52 @@ [(set_attr "cc" "clobber") (set_attr "length" "6")]) +(define_insn_and_split "*addsi3_and_r_1" + [(set (match_operand:SI 0 "register_operand" "=r") + (plus:SI (and:SI (match_operand:SI 1 "register_operand" "r") + (const_int 1)) + (match_operand:SI 2 "register_operand" "0")))] + "(TARGET_H8300H || TARGET_H8300S)" + "#" + "&& reload_completed" + [(set (cc0) + (zero_extract:SI (match_dup 1) + (const_int 1) + (const_int 0))) + (set (pc) + (if_then_else (eq (cc0) + (const_int 0)) + (label_ref (match_dup 3)) + (pc))) + (set (match_dup 2) + (plus:SI (match_dup 2) + (const_int 1))) + (match_dup 3)] + "operands[3] = gen_label_rtx ();") + +(define_insn_and_split "*addsi3_and_not_r_1" + [(set (match_operand:SI 0 "register_operand" "=r") + (plus:SI (and:SI (not:SI (match_operand:SI 1 "register_operand" "r")) + (const_int 1)) + (match_operand:SI 2 "register_operand" "0")))] + "(TARGET_H8300H || TARGET_H8300S)" + "#" + "&& reload_completed" + [(set (cc0) + (zero_extract:SI (match_dup 1) + (const_int 1) + (const_int 0))) + (set (pc) + (if_then_else (ne (cc0) + (const_int 0)) + (label_ref (match_dup 3)) + (pc))) + (set (match_dup 2) + (plus:SI (match_dup 2) + (const_int 1))) + (match_dup 3)] + "operands[3] = gen_label_rtx ();") + ;; [ix]or:HI (define_insn "*ixorhi3_zext" @@ -2893,52 +2939,6 @@ [(set_attr "cc" "clobber") (set_attr "length" "2")]) -(define_insn_and_split "*addsi3_and_r_1" - [(set (match_operand:SI 0 "register_operand" "=r") - (plus:SI (and:SI (match_operand:SI 1 "register_operand" "r") - (const_int 1)) - (match_operand:SI 2 "register_operand" "0")))] - "(TARGET_H8300H || TARGET_H8300S)" - "#" - "&& reload_completed" - [(set (cc0) - (zero_extract:SI (match_dup 1) - (const_int 1) - (const_int 0))) - (set (pc) - (if_then_else (eq (cc0) - (const_int 0)) - (label_ref (match_dup 3)) - (pc))) - (set (match_dup 2) - (plus:SI (match_dup 2) - (const_int 1))) - (match_dup 3)] - "operands[3] = gen_label_rtx ();") - -(define_insn_and_split "*addsi3_and_not_r_1" - [(set (match_operand:SI 0 "register_operand" "=r") - (plus:SI (and:SI (not:SI (match_operand:SI 1 "register_operand" "r")) - (const_int 1)) - (match_operand:SI 2 "register_operand" "0")))] - "(TARGET_H8300H || TARGET_H8300S)" - "#" - "&& reload_completed" - [(set (cc0) - (zero_extract:SI (match_dup 1) - (const_int 1) - (const_int 0))) - (set (pc) - (if_then_else (ne (cc0) - (const_int 0)) - (label_ref (match_dup 3)) - (pc))) - (set (match_dup 2) - (plus:SI (match_dup 2) - (const_int 1))) - (match_dup 3)] - "operands[3] = gen_label_rtx ();") - ;; ior:HI (define_insn "*iorhi3_ashift_8" |