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