NetBSD 6.1.5 doesn't have ldexpl in math.h

Hal Murray hmurray at megapathdsl.net
Fri Sep 15 05:49:50 UTC 2017


>> In an earlier post, Mark stated that he preferred to keep NetBSD6 support
>> if possible because it's still recent enough to get security fixes.  If
>> the same criterion is applied to OSX, then 10.10 and 10.11 should be
>> supported.

>I'm absolutely going to count you as a senior dev.  So, you for
>retaining, me and Gary for dropping.  Hal and Matt's positions
>not known.

>Debate still ongoing.  Mark leaning towrds "keep". Noted.

I think we should dump long doubles.  (I'm amazed that you didn't outlaw them 
as soon as Fred reported how screwed up they are.)  That fixes that NetBSD 6 
issue.  (There may be python issues.  It works for me, but I'm running with a 
few hack links and a PYTHONPATH.)


>     sys_residual and step are double and only have 53 bits of
>     precision. But the l_fp needs 64 bits of precision, arguably 65 bits
>     after 2026. Initial steps may be large, such as when a host has no

Yes, l_fp is 64 bits, but the places where doubles are used is only deltas.  
If you have  a delta under 1 second, that's 32 interesting bits in in the 
right half of the l_fp and 0s in the left half.  There is loss of precision 
when converting from double, but it's because the l_fp doesn't have enough 
low bits, not because a double isn't big enough.

If we have 32 bits of fraction, that leaves 21 bits for seconds.  That's 24 
days.  So there is no loss of precision if the delta is less than 24 days.

There is loss of precision if you have a huge delta.  I think the worst case 
is something like setting the time when the system clock hasn't been 
initialized and defaults to 1970.  31 bits of seconds is 67 years.  That 
leaves 22 bits of fraction.  That's better than a microsecond.  The next 
adjustment will have plenty of precision.  The code has been doing that 
forever.  Nobody has complained.  (or probably even noticed)

It's still better than a microsecond if you want 32 bits of seconds.

We can get 67 years from the build date if we use my set-real-early 
suggestion in another thread.



-- 
These are my opinions.  I hate spam.





More information about the devel mailing list