This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Add generic HAVE_RM_CTX implementation
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Wilco <wdijkstr at arm dot com>
- Cc: 'Siddhesh Poyarekar' <siddhesh dot poyarekar at gmail dot com>, 'Siddhesh Poyarekar' <siddhesh at redhat dot com>, 'GNU C Library' <libc-alpha at sourceware dot org>
- Date: Thu, 22 May 2014 15:08:58 +0000
- Subject: Re: [PATCH] Add generic HAVE_RM_CTX implementation
- Authentication-results: sourceware.org; auth=none
- References: <000101cf7419$96b36f60$c41a4e20$ at com>
On Tue, 20 May 2014, Wilco wrote:
> Ping
>
> As for an additional reviewer, Joseph could you please have a look?
OK, although my comments in
<https://sourceware.org/ml/libc-alpha/2014-03/msg00267.html> apply. All
these macros / functions need careful review and refactoring; the present
set makes it far from obvious that required invariants hold such as "if
the function used at the start of a fixed-rounding-mode block has the
feholdexcept effects of disabling traps or clearing existing set
exceptions, then the function at the end of that block must have the
reverse effects of restoring previously enabled traps and set exceptions
(possibly with new exceptions merged in, depending on the semantics of the
function at the end)". I suspect things might be clearer if the functions
/ macros had extra arguments for such things as "clearing exceptions
permitted / required / not permitted" or "new exceptions must be merged
into the previous set / may be merged in / must be discarded", rather than
having so many macros with similar names but different semantics.
--
Joseph S. Myers
joseph@codesourcery.com