testprofile on i686
Alan Brown
adbrown at rocketmail.com
Mon Dec 6 09:43:20 PST 2021
Robert Helling <helling at atdotde.de> writes:
>
> depth * 1000.0 / 1000.0 which for a depth of 30m seemed to end up just a tiny bit below 30.
>
> That implies that we (once again) didn't do proper rounding.
>
> I suspect just short-circuiting it for zero helium hides the problem
> rather than fixing it.
>
> Linus
>
> what does the test program on https://www.cplusplus.com/reference/cfenv/fegetround/ produce on your machine? I am a but afraid to explicitly set the rounding mode just to be sure as that
> (according to my understanding of the docs I found) might cause the compiler to think we are doing strange stuff.
The fgetround test produces the following
rounding using to-nearest rounding:
rint (2.3) = 2.0
rint (3.8) = 4.0
rint (-2.3) = -2.0
rint (-3.8) = -4.0
The latest patch fixes the rounding errors on i686. And now it passes
all of the tests for all of the architectures that the build process
tests on.
https://github.com/void-linux/void-packages/pull/34187
I am happy to continue testing things here as well though.
One of the pull request moderators has patched libdivecomputer because
when building for musl some dive computers were showing warnings
--snip--
oceanic_common.h:31: warning: "PAGESIZE" redefined
31 | #define PAGESIZE 0x10
--snip--
regards
Alan
More information about the subsurface
mailing list