h8300.md: Remove an unnecessary sign_extend expander that is used when not optimizing.
2000-10-18 Kazu Hirata <kazu@hxi.com> * config/h8300/h8300.md: Remove an unnecessary sign_extend expander that is used when not optimizing. Output a tab after each assembly insns. From-SVN: r36925
This commit is contained in:
parent
15edc0cb96
commit
b054460b55
|
@ -1,3 +1,9 @@
|
|||
2000-10-18 Kazu Hirata <kazu@hxi.com>
|
||||
|
||||
* config/h8300/h8300.md: Remove an unnecessary sign_extend
|
||||
expander that is used when not optimizing. Output a tab after
|
||||
each assembly insns.
|
||||
|
||||
2000-10-17 Joern Rennecke <amylaar@redhat.co.uk>
|
||||
|
||||
* reload1.c (move2add_note_store): Check for simple
|
||||
|
|
|
@ -623,7 +623,7 @@
|
|||
subs %G2,%A0
|
||||
add.b %s2,%s0\;addx %t2,%t0
|
||||
add.w %T2,%T0
|
||||
mov.w %T1,%T0\;add.w %T2,%T0"
|
||||
mov.w %T1,%T0\;add.w %T2,%T0"
|
||||
[(set_attr "length" "2,2,4,2,6")
|
||||
(set_attr "cc" "none_0hit,none_0hit,clobber,set_zn,set_zn")])
|
||||
|
||||
|
@ -980,7 +980,7 @@
|
|||
return \"\";
|
||||
}
|
||||
if (TARGET_H8300H || TARGET_H8300S)
|
||||
return \"and.w %T2,%T0\";
|
||||
return \"and.w %T2,%T0\";
|
||||
return \"and %s2,%s0\;and %t2,%t0;\";
|
||||
}"
|
||||
[(set_attr "length" "4")
|
||||
|
@ -1625,8 +1625,8 @@
|
|||
(zero_extend:SI (match_operand:QI 1 "general_operand_src" "0,g>")))]
|
||||
"TARGET_H8300"
|
||||
"@
|
||||
mov.b #0,%x0\;sub.w %e0,%e0
|
||||
mov.b %R1,%w0\;mov.b #0,%x0\;sub.w %e0,%e0"
|
||||
mov.b #0,%x0\;sub.w %e0,%e0
|
||||
mov.b %R1,%w0\;mov.b #0,%x0\;sub.w %e0,%e0"
|
||||
[(set_attr "length" "4,6")
|
||||
(set_attr "cc" "clobber,clobber")])
|
||||
|
||||
|
@ -1688,7 +1688,7 @@
|
|||
"TARGET_H8300"
|
||||
"@
|
||||
bld #7,%w0\;subx %x0,%x0\;subx %y0,%y0\;subx %z0,%z0
|
||||
mov.b %R1,%w0\;bld #7,%w0\;subx %x0,%x0\;subx %y0,%y0\;subx %z0,%z0"
|
||||
mov.b %R1,%w0\;bld #7,%w0\;subx %x0,%x0\;subx %y0,%y0\;subx %z0,%z0"
|
||||
[(set_attr "length" "8,10")
|
||||
(set_attr "cc" "clobber,clobber")])
|
||||
|
||||
|
@ -1696,24 +1696,6 @@
|
|||
[(set (match_operand:SI 0 "register_operand" "")
|
||||
(sign_extend:SI (match_operand:HI 1 "register_operand" "")))]
|
||||
""
|
||||
"
|
||||
{
|
||||
if (TARGET_H8300
|
||||
&& GET_CODE (operands[1]) != CONST_INT
|
||||
&& !optimize)
|
||||
{
|
||||
emit_insn (gen_extendhisi2_h8300 (operands[0], operands[1]));
|
||||
DONE;
|
||||
}
|
||||
}")
|
||||
|
||||
;; This is used when not optimizing. It avoids severe code explosion
|
||||
;; due to poor register allocation.
|
||||
(define_expand "extendhisi2_h8300"
|
||||
[(set (reg:HI 1) (match_operand:HI 1 "general_operand" ""))
|
||||
(set (reg:SI 0) (sign_extend:SI (reg:HI 1)))
|
||||
(set (match_operand:SI 0 "general_operand" "") (reg:SI 0))]
|
||||
"TARGET_H8300"
|
||||
"")
|
||||
|
||||
(define_insn ""
|
||||
|
|
Loading…
Reference in New Issue