Commit 86039100 by Kazu Hirata Committed by Kazu Hirata

h8300.c (h8300_adjust_insn_length): Correct the length computation of movsi.

	* config/h8300/h8300.c (h8300_adjust_insn_length): Correct the
	length computation of movsi.
	* config/h8300/h8300.md (movsi_h8300hs): Correct the length.

From-SVN: r49728
parent e1429da0
2002-02-13 Kazu Hirata <kazu@hxi.com> 2002-02-13 Kazu Hirata <kazu@hxi.com>
* config/h8300/h8300.c (h8300_adjust_insn_length): Correct the
length computation of movsi.
* config/h8300/h8300.md (movsi_h8300hs): Correct the length.
2002-02-13 Kazu Hirata <kazu@hxi.com>
* config/h8300/h8300.md (subqi3): Tighten the predicate for * config/h8300/h8300.md (subqi3): Tighten the predicate for
operands[2] to register_operand. operands[2] to register_operand.
......
...@@ -3224,10 +3224,21 @@ h8300_adjust_insn_length (insn, length) ...@@ -3224,10 +3224,21 @@ h8300_adjust_insn_length (insn, length)
{ {
if (val == (val & 0xff) if (val == (val & 0xff)
|| val == (val & 0xff00)) || val == (val & 0xff00))
return -6; return 4 - 6;
if (val == -4 || val == -2 || val == -1) switch (val & 0xffffffff)
return -6; {
case 0xffffffff:
case 0xfffffffe:
case 0xfffffffc:
case 0x0000ffff:
case 0x0000fffe:
case 0xffff0000:
case 0xfffe0000:
case 0x00010000:
case 0x00020000:
return 4 - 6;
}
} }
} }
......
...@@ -535,7 +535,7 @@ ...@@ -535,7 +535,7 @@
} }
return \"mov.l %S1,%S0\"; return \"mov.l %S1,%S0\";
}" }"
[(set_attr "length" "2,2,10,10,10,4,4,2,6,4") [(set_attr "length" "2,2,6,10,10,4,4,2,6,4")
(set_attr "cc" "set_zn,set_znv,clobber,set_znv,set_znv,set_znv,set_znv,none_0hit,none_0hit,set_znv")]) (set_attr "cc" "set_zn,set_znv,clobber,set_znv,set_znv,set_znv,set_znv,none_0hit,none_0hit,set_znv")])
(define_insn "movsf_h8300h" (define_insn "movsf_h8300h"
......
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