Date: Thu, 18 Sep 2014 22:21:35 +0300 From: Sergey Dmitrouk <sdmitrouk@...esssoftek.com> To: "musl@...ts.openwall.com" <musl@...ts.openwall.com> Subject: Re: [PATCH] Make musl math depend less on libgcc builtins On Thu, Sep 18, 2014 at 10:55:47AM -0700, Szabolcs Nagy wrote: > i think it is clear: there are tables showing all the predicates > and to which "traditional names and symbols" they should map. "EQ" predicate appearing in both 5.1 and 5.2 tables confused me, I missed that "=" in 5.1 and no "=" in 5.2 means binding to actual operation. > table 5.1 shows ==, != as quiet comparisions, table 5.2 shows > <,> operations as signaling and the text mentions that the quiet > operations in table 5.3 are for applications which want to > explicitly handle quiet nans that way > > the text in iso C F.3 is not very detailed about the mapping but > gives hints: > > The relational and equality operators provide IEC 60559 comparisons. > IEC 60559 identifies a need for additional comparison predicates to > facilitate writing code that accounts for NaNs. The comparison macros > (isgreater, isgreaterequal, isless, islessequal, islessgreater, and > isunordered) in <math.h> supplement the language operators to address > this need. The islessgreater and isunordered macros provide respectively > a quiet version of the <> predicate and the unordered predicate > recommended in the Appendix to IEC 60559. > > the <,> predicates need a quiet version because the default is not quiet, > but == and != dont since they are already quiet > > the precise mapping will be spelled out in more detail in TS 18661, > http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1778.pdf > see "table - 1 operation binding" > (the latest version seems to be password protected, sigh..) Thanks for the explanation.
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.