mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-09 03:29:02 +08:00
h8300.md (*insv_si_8_8): New.
* config/h8300/h8300.md (*insv_si_8_8): New. (*insv_si_8_8_lshiftrt_8): Likewise. (a peephole2): Likewise. From-SVN: r65018
This commit is contained in:
parent
60ef8bddd7
commit
d4048ff603
@ -1,3 +1,9 @@
|
||||
2003-03-29 Kazu Hirata <kazu@cs.umass.edu>
|
||||
|
||||
* config/h8300/h8300.md (*insv_si_8_8): New.
|
||||
(*insv_si_8_8_lshiftrt_8): Likewise.
|
||||
(a peephole2): Likewise.
|
||||
|
||||
2003-03-29 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||||
|
||||
* doc/contrib.texi: Add Eric Botcazou and Roger Sayle.
|
||||
|
@ -2681,6 +2681,27 @@
|
||||
[(set_attr "cc" "clobber")
|
||||
(set_attr "length" "6")])
|
||||
|
||||
(define_insn "*insv_si_8_8"
|
||||
[(set (zero_extract:SI (match_operand:SI 0 "register_operand" "+r")
|
||||
(const_int 8)
|
||||
(const_int 8))
|
||||
(match_operand:SI 1 "register_operand" "r"))]
|
||||
"TARGET_H8300H || TARGET_H8300S"
|
||||
"mov.b\\t%w1,%x0"
|
||||
[(set_attr "cc" "clobber")
|
||||
(set_attr "length" "2")])
|
||||
|
||||
(define_insn "*insv_si_8_8_lshiftrt_8"
|
||||
[(set (zero_extract:SI (match_operand:SI 0 "register_operand" "+r")
|
||||
(const_int 8)
|
||||
(const_int 8))
|
||||
(lshiftrt:SI (match_operand:SI 1 "register_operand" "r")
|
||||
(const_int 8)))]
|
||||
"TARGET_H8300H || TARGET_H8300S"
|
||||
"mov.b\\t%x1,%x0"
|
||||
[(set_attr "cc" "clobber")
|
||||
(set_attr "length" "2")])
|
||||
|
||||
;; extzv:SI
|
||||
|
||||
(define_insn "*extzv_8_8"
|
||||
@ -3844,6 +3865,23 @@
|
||||
operands[5] = gen_lowpart (QImode, operands[1]);
|
||||
operands[6] = GEN_INT (~0xff | INTVAL (operands[3]));")
|
||||
|
||||
(define_peephole2
|
||||
[(set (match_operand:SI 0 "register_operand" "")
|
||||
(match_operand:SI 1 "register_operand" ""))
|
||||
(set (match_dup 0)
|
||||
(and:SI (match_dup 0)
|
||||
(const_int 65280)))]
|
||||
"(TARGET_H8300H || TARGET_H8300S)
|
||||
&& !reg_overlap_mentioned_p (operands[0], operands[1])"
|
||||
[(set (match_dup 0)
|
||||
(const_int 0))
|
||||
(set (zero_extract:SI (match_dup 0)
|
||||
(const_int 8)
|
||||
(const_int 8))
|
||||
(lshiftrt:SI (match_dup 1)
|
||||
(const_int 8)))]
|
||||
"")
|
||||
|
||||
(define_peephole2
|
||||
[(set (match_operand:SI 0 "register_operand" "")
|
||||
(match_operand:SI 1 "memory_operand" ""))
|
||||
|
Loading…
Reference in New Issue
Block a user