From 60f469fa1e6a1aa6f950b68aaef78cf5f5ae0c9e Mon Sep 17 00:00:00 2001 From: Kazu Hirata Date: Fri, 14 Feb 2003 16:22:03 +0000 Subject: [PATCH] * config/h8300/h8300.md (a peephole2): New. From-SVN: r62900 --- gcc/ChangeLog | 5 +++++ gcc/config/h8300/h8300.md | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9de0cb47907..e52dce214a7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,4 +1,9 @@ +2003-02-14 Kazu Hirata + + * config/h8300/h8300.md (*iorsi2_and_1_lshiftrt_1): New. + 2003-02-13 Adam Nemet + PR opt/2391 * combine.c: Fix spelling in comment. (cached_nonzero_bits): New function. diff --git a/gcc/config/h8300/h8300.md b/gcc/config/h8300/h8300.md index 8796dc03d00..7144b6e587f 100644 --- a/gcc/config/h8300/h8300.md +++ b/gcc/config/h8300/h8300.md @@ -2878,6 +2878,17 @@ (match_dup 0)))] "operands[3] = gen_rtx_REG (HImode, REGNO (operands[2]));") +(define_insn "*iorsi2_and_1_lshiftrt_1" + [(set (match_operand:SI 0 "register_operand" "=r") + (ior:SI (and:SI (match_operand:SI 1 "register_operand" "0") + (const_int 1)) + (lshiftrt:SI (match_dup 1) + (const_int 1))))] + "TARGET_H8300H || TARGET_H8300S" + "shlr.l\\t%S0\;bor\\t#0,%w0\;bst\\t#0,%w0" + [(set_attr "length" "6") + (set_attr "cc" "clobber")]) + ;; Used to add the exponent of a float. (define_insn "*addsi3_shift" -- 2.30.2