+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
{
if (val == (val & 0xff)
|| val == (val & 0xff00))
- return -6;
+ return 4 - 6;
- if (val == -4 || val == -2 || val == -1)
- return -6;
+ switch (val & 0xffffffff)
+ {
+ case 0xffffffff:
+ case 0xfffffffe:
+ case 0xfffffffc:
+ case 0x0000ffff:
+ case 0x0000fffe:
+ case 0xffff0000:
+ case 0xfffe0000:
+ case 0x00010000:
+ case 0x00020000:
+ return 4 - 6;
+ }
}
}
}
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")])
(define_insn "movsf_h8300h"