correctly rounded mathematical functions

Carlos O'Donell carlos@redhat.com
Wed Jan 12 22:17:43 GMT 2022


On 1/5/22 11:03, Paul Zimmermann wrote:
> I see one solution: declare cr_xxx as an alias for xxx for all functions,
> and create corresponding bugzilla issues for those which are not (yet) CR.
> As new CR functions are integrated within glibc, the corresponding bugs
> will be declared as fixed. One could imagine macros like CR_SIN_IS_CR
> to tell the user that the cr_sin function is really correctly rounded.

This isn't a good idea given the expectations that users will have for calling the
cr_* functions. Either they are defined and have the expected semantics or they are
not defined. However, this makes the semantics of the ABI a bit difficult, we would
probably want the ABI to appear as implementations are made available, and that can
be on a per-arch basis.

>> * When you have correctly rounded functions for x86 "extended" (ldbl-96 in 
>> glibc), do those also work properly for the m68k variant of that format 
>> (which handles biased exponent 0 like other biased exponents, so has 
>> normal and subnormal exponent ranges going one exponent smaller), or do 
>> you avoid providing the cr_* functions for that format variant?
> 
> at the moment, unless we get more manpower, we don't plan to provide the
> m68k variants.

In these cases then we would not define the functions, and they would not be available
for use. This poses a porting hazard for the cr_* functions, which is unfortunate, but
not the worst. I'm not opposed to per-arch variations in ABI.

-- 
Cheers,
Carlos.



More information about the Libc-alpha mailing list