diff options
author | Kazu Hirata <kazu@cs.umass.edu> | 2003-03-21 20:01:34 +0000 |
---|---|---|
committer | Kazu Hirata <kazu@gcc.gnu.org> | 2003-03-21 20:01:34 +0000 |
commit | 5c1c25f0db9ac99d65a53f2d9f64379be305afd3 (patch) | |
tree | 6f69ebf9c936af3df3a5d424bdb612a1a3db0631 | |
parent | 6b13641dc3ee3388b96bfb9479ced64c5127e838 (diff) | |
download | gcc-5c1c25f0db9ac99d65a53f2d9f64379be305afd3.zip gcc-5c1c25f0db9ac99d65a53f2d9f64379be305afd3.tar.gz gcc-5c1c25f0db9ac99d65a53f2d9f64379be305afd3.tar.bz2 |
* config/h8300/h8300.md (*insv_si_1_n_lshiftrt_16): New.
From-SVN: r64677
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/h8300/h8300.md | 12 |
2 files changed, 16 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3985860..55e15d3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2003-03-21 Kazu Hirata <kazu@cs.umass.edu> + + * config/h8300/h8300.md (*insv_si_1_n_lshiftrt_16): New. + 2003-03-21 Dale Johannesen <dalej@apple.com> * config/rs6000/rs6000.h (REG_ALLOC_ORDER): Increase diff --git a/gcc/config/h8300/h8300.md b/gcc/config/h8300/h8300.md index 4179754..5499421 100644 --- a/gcc/config/h8300/h8300.md +++ b/gcc/config/h8300/h8300.md @@ -2669,6 +2669,18 @@ [(set_attr "cc" "clobber") (set_attr "length" "4")]) +(define_insn "*insv_si_1_n_lshiftrt_16" + [(set (zero_extract:SI (match_operand:SI 0 "register_operand" "+r") + (const_int 1) + (match_operand:SI 1 "const_int_operand" "n")) + (lshiftrt:SI (match_operand:SI 2 "register_operand" "r") + (const_int 16)))] + "(TARGET_H8300H || TARGET_H8300S) + && INTVAL (operands[1]) < 16" + "rotr.w\\t%e2\;rotl.w\\t%e2\;bst\\t%Z1,%Y0" + [(set_attr "cc" "clobber") + (set_attr "length" "6")]) + ;; extzv:SI (define_insn "*extzv_8_8" |