Subject: Re: casting double to unsigned long will round values
To: Martin Husemann <martin@duskware.de>
From: Andrey Petrov <petrov@netbsd.org>
List: tech-toolchain
Date: 05/01/2004 12:57:47
On Sat, May 01, 2004 at 09:36:22PM +0200, Martin Husemann wrote:
> On Sat, May 01, 2004 at 12:20:06PM -0700, Andrey Petrov wrote:
> > I think it's fixed in more recent (than 3.3) gcc versions.
> 
> Looks like the changeset that included sparc.md rev 1.199 fixes this.
> I'll test and pull that into our tree, unless we are going to see a newer
> gcc imported soon.
> 

2004-02-26  Eric Botcazou  <ebotcazou@act-europe.fr>

        * config/sparc/sparc-protos.h (sparc_emit_floatunsdi): Add 'mode'.
        (sparc_emit_fixunsdi): New prototype.
        * config/sparc/sparc.c (sparc_emit_floatunsdi): Use 'mode' argument.
        (sparc_emit_fixunsdi): New function.
        * config/sparc/sparc.md (floatunsdisf2): Use 'general_operand' for
        operand 1.  Pass SFmode to sparc_emit_floatunsdi.
        (floatunsdidf2): Use 'general_operand' for operand 1.  Pass DFmode
        to sparc_emit_floatunsdi.
        (fixuns_truncsfdi2): New expander.
        (fixuns_truncdfdi2): Likewise.


That's from mainline, it wasn't pulled into 3.3.

	Andrey