mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Paul Zimmermann <>
To: Rich Felker <>
Subject: Re: [musl] correctly rounded mathematical functions
Date: Tue, 04 Jan 2022 15:19:48 +0100	[thread overview]
Message-ID: <> (raw)
In-Reply-To: <> (message from Rich Felker on Mon, 3 Jan 2022 21:29:05 -0500)

       Hi Rich,

> License: should be licensed under something permissive and
> MIT-compatible, preferably explicitly MIT if you'll be
> dual-/multi-licensing anyway.

ok, we'll consider multi-licensing with MIT.

> Table size: main consideration is that tables need to be pure
> shareable rodata, so no runtime generation of contents or pointers in
> contents. Failure to follow this would produce significant cost in
> *all processes* even ones that don't use the cr_* functions. I would
> hope they'd also fit in a few tens of kB of rodata, but I don't know
> how realistic that is.

tables so far are "static const"

> Allowed operations: I'm not sure what the scope of this question is.
> Are you asking if things like changing rounding mode would be okay? Or
> something else. musl implements C11 and hopefully future versions of
> the language library, but is implemented in C99 (+ very minimal set of
> common/"GNU C" extensions), so code to be included in musl shouldn't
> depend on new language features or compiler extensions not already
> used (at least without checking on them first). We also have
> softfloat-only targets and targets with excess precision, so code
> should be compatible with those (which means not depending on changing
> fenv; see commit 4f3d346bffdf9ed2b1803653643dc31242490944 for an
> example of where this came up).

we avoid playing with fesetround/fegetround since in general this makes
the code slower

> > We have started to work on two functions (cbrt and acos), for which we
> > provide presumably correctly rounded implementations (up to the knowledge
> > of hard-to-round cases) [2].
> > 
> > Christoph Lauter
> > Jean-Michel Muller
> > Alexei Sibidanov
> > Paul Zimmermann
> > 
> > [1]
> > [2]
> Is there a standalone version of the code where it can be read in full
> not as a patch to glibc? Is the code being developed in such a way
> that it's not potentially a derivative work of the glibc versions?

yes there are several standalone versions of the code (entries marked "full"

Best regards,

  reply	other threads:[~2022-01-04 14:20 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-03 13:07 Paul Zimmermann
2022-01-04  0:04 ` Damian McGuckin
2022-01-04  2:29 ` Rich Felker
2022-01-04 14:19   ` Paul Zimmermann [this message]
2022-01-04 21:12     ` Szabolcs Nagy
2022-01-06  8:55       ` Paul Zimmermann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \
    --cc=Jean-Michel.Muller@ENS-LYON.FR \ \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).