NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: port-mips/57680: printf("%.1f") shows wrong results on R3000mipseb
The following reply was made to PR port-mips/57680; it has been noted by GNATS.
From: Izumi Tsutsui <tsutsui%ceres.dti.ne.jp@localhost>
To: rvp%SDF.ORG@localhost
Cc: gnats-bugs%netbsd.org@localhost, tsutsui%ceres.dti.ne.jp@localhost
Subject: Re: port-mips/57680: printf("%.1f") shows wrong results on R3000mipseb
Date: Tue, 7 Nov 2023 00:39:32 +0900
> > It looks these inline functions make gcc optimization confused,
> >
>
> Don't see how...
On mips, fpgetround() is defined in <mips/fenv.h> so it's always
available even without libm. I'm not sure how
'#define fegetround()' line in src/lib/libc/gdtoa/gdtoaimp.h
is handled, though..
> Don't get this either. With both -DHonor_FLT_ROUNDS and -DTrust_FLT_ROUNDS
> defined `int Rounding' should get set to `1'--exactly the same as with
> -DHonor_FLT_ROUNDS alone.
It looks the problem is not a (expected) value of "Rounding",
but unexpected optimization around inlined fegetround().
(but not sure)
---
Izumi Tsutsui
Home |
Main Index |
Thread Index |
Old Index