-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 03/16/11 09:32, Yoshinori Sato wrote: > Hi All, > > This problem optimize rule missing. > gen_lowpart got invalid operand. > > I attached fix patch. > > diff --git a/gcc/ChangeLog b/gcc/ChangeLog > index ca9398c..9982644 100644 > --- a/gcc/ChangeLog > +++ b/gcc/ChangeLog > @@ -1,3 +1,9 @@ > +2011-03-16 Yoshinori Sato <ys...@users.sourceforge.jp> > + > + PR/target 47998 > + * config/h8300/h8300.md > + (peephole): Add rule.
It appears that you're restricting operands1 to be a REG/SUBREG, if that's what your intention is, then changing the operand predicate seems to be a better solution. Furthermore, you'd need to explain why restricting operand1 to be a REG/SUBREG is the right thing to do. It'd also be helpful to know why this problem does not occur on the trunk or gcc-4.6 branches, which appear to have the same code as the gcc-4.5 branch for the peephole. Jeff -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJNgOO8AAoJEBRtltQi2kC7Od0H/1P3Qp7e8idEu3WLdmHhsA6M R2KL7+UY1ZzLJpF8+cVjIVRfSTRGc+F8URtqIvaYxP3NJB+ZYiiSVE9jPxegSSDy /pqx0fLpQach0e4IcPzxFPg/HQkZBnwhW3bkCjxnUARH6hnbbIjFMxfBjJFAZQn+ QghwaZRutJE6RirbxyqmzEoCzfO76aZ3OJQOxwGYpwsMjoNKFknls0wYXvV6xBBC +vyamc1hN+/g6X8OH7vfWEP6Q3E9rSrtan+2wCYBZvBXFYWjBbFEfZD94yg5VMbZ EFoSlmKZCn+c+bsop0T/jsUMBgy05Tv1orbdjsQ0aXKjsGusWlcboo6Is4Inonk= =Qmwv -----END PGP SIGNATURE-----