Commit 7b7de7c0 by Will Cohen Committed by Kazu Hirata

h8300.md: Remove the memory alternative and correct the insn lengths in the templates for...

2000-10-07  Will Cohen  <wcohen@redhat.com>, Kazu Hirata  <kazu@hxi.com>

	* config/h8300/h8300.md: Remove the memory alternative and correct
	the insn lengths in the templates for sign extention and zero
	extention.

From-SVN: r36787
parent 26770173
2000-10-07 Will Cohen <wcohen@redhat.com>, Kazu Hirata <kazu@hxi.com>
* config/h8300/h8300.md: Remove the memory alternative and correct
the insn lengths in the templates for sign extention and zero
extention.
2000-10-07 Richard Henderson <rth@cygnus.com> 2000-10-07 Richard Henderson <rth@cygnus.com>
* calls.c (expand_call): Disallow sibcalls to noreturn functions. * calls.c (expand_call): Disallow sibcalls to noreturn functions.
......
...@@ -1632,7 +1632,7 @@ ...@@ -1632,7 +1632,7 @@
(define_expand "zero_extendhisi2" (define_expand "zero_extendhisi2"
[(set (match_operand:SI 0 "register_operand" "") [(set (match_operand:SI 0 "register_operand" "")
(zero_extend:SI (match_operand:HI 1 "general_operand" "")))] (zero_extend:SI (match_operand:HI 1 "register_operand" "")))]
"" ""
" "
{ {
...@@ -1667,18 +1667,16 @@ ...@@ -1667,18 +1667,16 @@
(set_attr "cc" "clobber,clobber,clobber")]) (set_attr "cc" "clobber,clobber,clobber")])
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "register_operand" "=r,r") [(set (match_operand:SI 0 "register_operand" "=r")
(zero_extend:SI (match_operand:HI 1 "general_operand_src" "0,g>")))] (zero_extend:SI (match_operand:HI 1 "register_operand" "0")))]
"TARGET_H8300H || TARGET_H8300S" "TARGET_H8300H || TARGET_H8300S"
"@ "extu.l %S0"
extu.l %S0 [(set_attr "length" "2")
mov.w %T1,%T0\;extu.l %S0" (set_attr "cc" "set_znv")])
[(set_attr "length" "2,4")
(set_attr "cc" "set_znv,set_znv")])
(define_expand "extendqihi2" (define_expand "extendqihi2"
[(set (match_operand:HI 0 "register_operand" "") [(set (match_operand:HI 0 "register_operand" "")
(sign_extend:HI (match_operand:QI 1 "general_operand" "")))] (sign_extend:HI (match_operand:QI 1 "register_operand" "")))]
"" ""
"") "")
...@@ -1693,14 +1691,12 @@ ...@@ -1693,14 +1691,12 @@
(set_attr "cc" "clobber,clobber")]) (set_attr "cc" "clobber,clobber")])
(define_insn "" (define_insn ""
[(set (match_operand:HI 0 "register_operand" "=r,r") [(set (match_operand:HI 0 "register_operand" "=r")
(sign_extend:HI (match_operand:QI 1 "general_operand_src" "0,g>")))] (sign_extend:HI (match_operand:QI 1 "register_operand" "0")))]
"TARGET_H8300H || TARGET_H8300S" "TARGET_H8300H || TARGET_H8300S"
"@ "exts.w %T0"
exts.w %T0 [(set_attr "length" "2")
mov.b %R1,%s0\;exts.w %T0" (set_attr "cc" "set_znv")])
[(set_attr "length" "2,4")
(set_attr "cc" "set_znv,set_znv")])
;; The compiler can synthesize a 300H variant of this which is ;; The compiler can synthesize a 300H variant of this which is
;; just as efficient as one that we'd create ;; just as efficient as one that we'd create
...@@ -1716,7 +1712,7 @@ ...@@ -1716,7 +1712,7 @@
(define_expand "extendhisi2" (define_expand "extendhisi2"
[(set (match_operand:SI 0 "register_operand" "") [(set (match_operand:SI 0 "register_operand" "")
(sign_extend:SI (match_operand:HI 1 "general_operand" "")))] (sign_extend:SI (match_operand:HI 1 "register_operand" "")))]
"" ""
" "
{ {
...@@ -1749,14 +1745,12 @@ ...@@ -1749,14 +1745,12 @@
(set_attr "cc" "clobber,clobber")]) (set_attr "cc" "clobber,clobber")])
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "register_operand" "=r,r") [(set (match_operand:SI 0 "register_operand" "=r")
(sign_extend:SI (match_operand:HI 1 "general_operand_src" "0,g>")))] (sign_extend:SI (match_operand:HI 1 "register_operand" "0")))]
"TARGET_H8300H || TARGET_H8300S" "TARGET_H8300H || TARGET_H8300S"
"@ "exts.l %S0"
exts.l %S0 [(set_attr "length" "2")
mov.w %T1,%T0\;exts.l %S0" (set_attr "cc" "set_znv")])
[(set_attr "length" "2,4")
(set_attr "cc" "set_znv,set_znv")])
;; ---------------------------------------------------------------------- ;; ----------------------------------------------------------------------
;; SHIFTS ;; SHIFTS
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment