Patch for h8300 port

graham stott grahams@redhat.com
Mon Oct 9 08:13:00 GMT 2000


Will

Will Cohen wrote:
> 
> I have made some revisions in the patch based on your comments.
> 
> I found that the pattern generated for the sign extend and
> zero extend may have memory references.  If the predicates
> were registers, then the compiler would fail when building
> the libraries. I have made the predicates general_operand
> and then use the constraints to get the values in the
> correct registers. Is this a reasonable approach?
> 
> -Will
> 
> Richard Henderson wrote:
> 
> > You've reduced the number of alternatives to 1, which
> > means that you should no longer use the @ format for
> > the output template.  So just write "exts.w %T0".
> >
> > The input operand has a matching constraint on the
> > output operand.  That implies that the input operand
> > should be using the same predicate.  I.e. use
> >
> >   (sign_extend:HI (match_operand:QI 1 "register_operand" "0"))
> >
> > r~
> 
>  

I think you should use "nonimmediate_operand" for output operands, don't
forget general_operand allows almost anything. Didn't you get lots of new
"warning: destination operand 0 allows non-lvalue" warnings from genrecog.

Graham


More information about the Gcc-patches mailing list