[Bug target/19379] [4.0 Regression] ICE during build of newlib's e_atan2.c when soft-float

corsepiu at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Wed Jan 12 15:02:00 GMT 2005

------- Additional Comments From corsepiu at gcc dot gnu dot org  2005-01-12 15:02 -------
(In reply to comment #7)
> (In reply to comment #6)

> > > If you are tuly using soft-float, then the results can't be returned in the
> > > non-existent FPU registers so I have never understood from a practical matter
> > > why it didn't already imply avoiding returning values in FPU registers.
> > This is not how i386-gcc-rtems is set up until now.
> Right but there is nothing preventing it from changing and all BSPs with
> recent test reports specify -mno-fp-ret-in-387 flag anyway.

> Unfortunately, I think soft-float doesn't completely eliminate all uses of
> the FPU so you have to add the no-fp-ret-in-387 argument.

True, but ... -msoft-float == -mno-80387

The RTEMS user using the i386dx had proven this not to work on original i386dx
w/o i387.

However, he has proven -msoft-float -mno-fp-ret-in-387 to work for him.

=> IMO, the actual fix would be to merge MASK_FLOAT_RETURNS into MASK_80387 and

> Richard has said RTEMS is
> the only target who cares about soft-float.
I don't agree to his statement.



More information about the Gcc-bugs mailing list