This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: i387 patterns cleanup
On Sat, Apr 10, 1999 at 09:24:55PM -0700, Richard Henderson wrote:
> On Sat, Apr 10, 1999 at 01:27:02AM +0200, Jan Hubicka wrote:
> > And we can't handle it. So I am refusing FLOAT_EXTENDS of SUBREGs.
> > I am not too happy with this situation.
>
> I don't think that's too unreasonable though.
>
> > + while (GET_CODE (x) == FLOAT_EXTEND
> > + && GET_MODE (x) == mode)
> > + x = XEXP (x, 0), mode = GET_MODE (x), extended = 1;
>
> This is wrong. You only want to compare the mode the first
> time around. Either that or only accept one layer of extend,
> and I would be surprised if combine doesn't merge then anyway.
OK. I will remove this. In the first versions of the patch I was
stripping chain of extends and truncates, so thats purpose for the loop.
Jeff refused to strip the truncates.
>
> > ***************
> > *** 534,542 ****
> > (define_insn ""
> > [(set (cc0)
> > (match_operator 2 "VOIDmode_compare_op"
> > ! [(match_operand:XF 0 "register_operand" "f")
> > ! (float_extend:XF
> > ! (match_operand:SF 1 "nonimmediate_operand" "fm"))]))
> > (clobber (match_scratch:HI 3 "=a"))]
> > "TARGET_80387"
> > "* return output_float_compare (insn, operands);"
> > --- 525,532 ----
> > (define_insn ""
> > [(set (cc0)
> > (match_operator 2 "VOIDmode_compare_op"
> > ! [(match_operand:XF 0 "i387_reg_operand" "f")
> > ! (match_operand:XF 1 "i387_memreg_operand" "fm")]))
> > (clobber (match_scratch:HI 3 "=a"))]
> > "TARGET_80387"
> > "* return output_float_compare (insn, operands);"
>
> Shouldn't you be deleting the old float_extend patterns?
The float extend patterns are still used for bare extension (I didn't touched the
mov patterns yet.) I remember there was some problems with this issue and there
are also John's patches floating around to this area, so I will send this as separate
patch. OK?
Thank you for the review.
Honza
>
>
> r~
--
------------------------------------------------------------------------------
Have you browsed my www pages? Look at:
http://www.paru.cas.cz/~hubicka
Koules-the game for Svgalib,X11 and OS/2, Xonix-the game for X11
czech documentation for linux index, original 2D computer art and
funny 100 years old photos and articles are there!