h8300.md (*andsi3_lshift_n_sb): New.
* config/h8300/h8300.md (*andsi3_lshift_n_sb): New. (*iorsi3_and_lshiftrt_n_sb): Likewise. From-SVN: r61251
This commit is contained in:
parent
c226b80339
commit
98dc53e3af
|
@ -1,3 +1,8 @@
|
|||
2003-01-13 Kazu Hirata <kazu@cs.umass.edu>
|
||||
|
||||
* config/h8300/h8300.md (*andsi3_lshift_n_sb): New.
|
||||
(*iorsi3_and_lshiftrt_n_sb): Likewise.
|
||||
|
||||
2003-01-12 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
PR c++/9264
|
||||
|
|
|
@ -2598,6 +2598,24 @@
|
|||
(clobber (scratch:QI))])]
|
||||
"")
|
||||
|
||||
;; Accept (A >> 30) & 2 and the like.
|
||||
|
||||
(define_insn "*andsi3_lshiftrt_n_sb"
|
||||
[(set (match_operand:SI 0 "register_operand" "=r")
|
||||
(and:SI (lshiftrt:SI (match_operand:SI 1 "register_operand" "0")
|
||||
(match_operand:SI 2 "const_int_operand" "n"))
|
||||
(match_operand:SI 3 "single_one_operand" "n")))]
|
||||
"(TARGET_H8300H || TARGET_H8300S)
|
||||
&& exact_log2 (INTVAL (operands[3])) < 16
|
||||
&& INTVAL (operands[2]) + exact_log2 (INTVAL (operands[3])) == 31"
|
||||
"*
|
||||
{
|
||||
operands[3] = GEN_INT (exact_log2 (INTVAL (operands[3])));
|
||||
return \"shll.l\\t%S0\;xor.l\\t%S0,%S0\;bst\\t%Z3,%Y0\";
|
||||
}"
|
||||
[(set_attr "length" "8")
|
||||
(set_attr "cc" "clobber")])
|
||||
|
||||
;; plus:SI
|
||||
|
||||
(define_insn "*addsi3_upper"
|
||||
|
@ -2711,6 +2729,17 @@
|
|||
[(set_attr "length" "6")
|
||||
(set_attr "cc" "set_znv")])
|
||||
|
||||
(define_insn "*iorsi3_and_lshiftrt_n_sb"
|
||||
[(set (match_operand:SI 0 "register_operand" "=r")
|
||||
(ior:SI (and:SI (lshiftrt:SI (match_operand:SI 1 "register_operand" "r")
|
||||
(const_int 30))
|
||||
(const_int 2))
|
||||
(match_operand:SI 2 "register_operand" "0")))]
|
||||
"(TARGET_H8300H || TARGET_H8300S)"
|
||||
"rotl.l\\t%S1\;rotr.l\\t%S1\;bor\\t#1,%w0\;bst\\t#1,%w0"
|
||||
[(set_attr "length" "8")
|
||||
(set_attr "cc" "clobber")])
|
||||
|
||||
;; Used to OR the exponent of a float.
|
||||
|
||||
(define_insn "*iorsi3_shift"
|
||||
|
|
Loading…
Reference in New Issue