<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Aug 16, 2018, at 12:19 PM, Jim Thomas <<a href="mailto:jaswthomas@sbcglobal.net" class="">jaswthomas@sbcglobal.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">On Jul 26, 2018, at 3:59 PM, Fred J. Tydeman <<a href="mailto:tydeman@tybor.com" class="">tydeman@tybor.com</a>> wrote:<br class=""><br class="">On Wed, 25 Jul 2018 11:24:55 -0500 Rajan Bhakta wrote:<br class=""><blockquote type="cite" class=""><br class=""> Fred: Recheck 'Functions and infinity' issues with 754 draft 238. -<span class="Apple-converted-space"> </span><br class=""><br class=""></blockquote><br class="">IEEE 754 vs 18661 (and C17) for infinity<br class=""><br class="">Possible global issue: 754 uses an unsigned infinity and C uses +/-infinity.<br class="">One such example is: remainder(x,inf) vs remainder(x,+/-inf).<br class="">But, a counter example is: cosh(+/-inf) is +inf<br class=""><br class="">I am assuming that 754's unsigned infinity is the same as +/-infinity.<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">I believe 754 has resolved that it uses unsigned inf when the sign doesn’t matter. Cfp use of +/- seems ok.</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br class="">roundeven - ok<br class="">round - ok<br class="">trunc - ok<br class="">ceil - ok<br class="">floor - ok<br class="">rint - ok<br class=""><br class="">nextup - ok<br class="">nextdown - ok<br class="">remainder - ok<br class="">remquo - ok<br class=""><br class="">quantize - ok<br class="">quantum - CFP has: If x is NaN, the result is NaN.<br class=""> 754 has no mention about NaN.<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">That’s the default behavior. Should we remove the statement from P2?</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br class="">scaleb - ok<br class="">logb - ok<br class=""><br class="">fadd - Do we need to add something to Annex F for fadd(+inf,-inf)?<br class="">fsub - Do we need to add something to Annex F for fsub(+inf,+inf)?<br class="">fmul - Do we need to add something to Annex F for fmul(0,inf)?<span class="Apple-converted-space"> </span><br class="">fdiv - Do we need to add something to Annex F for fdiv(inf,inf), fdiv(0,0)?<br class="">ffma - Do we need to add something to Annex F for ffma(inf,0,z), ffma(+inf,+y,-inf)?<br class="">fsqrt - Do we need to add something to Annex F for fsqrt(-inf)?<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">We cover these implicitly by saying they’re fully specified in 60559. But for consistency in documentation style, with sqrt for example, we would state these cases explicitly. Maybe we could make a general statement that they handle 0 and inf arguments like +, -, *, /, fma, and sqrt, respectively.</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""></div></blockquote><div><br class=""></div><div>Here’s a suggestion:</div><div><br class=""></div><div>To F.10.10a (TS 18661-1), append the paragraph:</div><div><br class=""></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>[2] These functions treat zero and infinite arguments like the corresponding operation or function: +, -, *, /, fma, sqrt.</div><br class=""><blockquote type="cite" class=""><div class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">convertFromInt - ok<br class=""><br class="">convertToInteger...<br class="">fromfp - ok<br class="">ufromfp - ok<br class="">fromfpx - ok<br class="">ufromfpx - ok<br class="">lround - ok<br class=""><br class="">canonicalize - ok<br class=""><br class="">scanf,... - ok<br class="">printf,... - ok<br class=""><br class="">copy - ok<br class="">negate - ok<br class="">fabs - ok<br class="">copysign - ok<br class=""><br class="">encode - ok<br class="">decode - ok<br class=""><br class="">compares - ok<br class="">iseqsig - ok<br class=""><br class="">is754* - ok<br class=""><br class="">fpclassify - ok<br class="">signbit - ok<br class="">isnormal - ok<br class="">isfinite - ok<br class="">iszero - ok<br class="">issubnormal - ok<br class="">isinf - ok<br class="">isnan - ok<br class="">issignaling - ok<br class="">iscanonical - ok<br class="">radix - ok<br class="">totalorder - differ for NaN payloads (but not in change to Std C)<br class="">totalordermag - differ for NaN payloads (but not in change to Std C)<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">I suppose this could be a CR for P1. Is a CR needed?</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">Do we need to change the above two to take pointers to floating types,<br class="">so as to not trigger signaling NaNs?<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">Good question. Seems like yes.</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""></div></blockquote><div><br class=""></div>I think a CR will be need for this one. Suggestion for the change:</div><div><br class=""></div><div><div>In F.10.12.1 (TS 18661-1), change:</div><div><br class=""></div><blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;" class=""><div>int totalorder(double x, double y);</div></blockquote><div><br class=""></div><div>to:</div><div><blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;" class=""><div><br class=""></div><div>int totalorder(double * x, double * y);</div><div><br class=""></div></blockquote>and similarly for the other prototypes in F.10.12.1 and F.10.12.2.</div><div><div><br class=""></div><div>In F.10.12.1 (TS 18661-1), change:</div><div><br class=""></div><blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;" class=""><div>Description<br class=""><br class="">[2] The totalorder functions determine whether the total order relationship, defined by IEC 60559, is true for the ordered pair of its arguments x, y. These functions are fully specified in IEC 60559. These functions are independent of the current rounding direction mode and raise no floating-point exceptions, even if an argument is a signaling NaN.<br class=""><br class="">Returns<br class=""><br class="">[3] The totalorder functions return nonzero if and only if the total order relation is true for the ordered pair of its arguments x, y.</div></blockquote><div><br class=""></div><div>to:</div><div><blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;" class=""><div><br class=""></div><div>Description<br class=""><br class="">[2] The totalorder functions determine whether the total order relationship, defined by IEC 60559, is true for the ordered pair *x, *y. These functions are fully specified in IEC 60559. These functions are independent of the current rounding direction mode and raise no floating-point exceptions, even if *x or *y is a signaling NaN.<br class=""><br class="">Returns<br class=""><br class="">[3] The totalorder functions return nonzero if and only if the total order relation is true for the ordered pair *x, *y.<br class=""><blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;" class=""><div class=""><br class=""></div></blockquote></div></blockquote>and similarly for F.10.12.2.</div></div></div><div><br class=""></div><div><br class=""><blockquote type="cite" class=""><div class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br class="">samequantum - ok; Do we need to worry about signaling NaNs that trigger?<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">Yes, we need to say something else here. Is there any reason samequantum shouldn’t have the default behavior for signaling NaNs? Mike?</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""></div></blockquote><div><br class=""></div>Suggestion:</div><div><br class=""></div><div>In 7.12.11a.2#2 (TS 18661-2), change the last sentence from:</div><div><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div>The samequantumdN functions raise no floating-point exception.</div></blockquote><div><br class=""></div><div>to:</div><div><br class=""></div><div><blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;" class=""><div>The samequantumdN functions raise no floating-point exception if neither argument is a signaling NaN.</div><div class=""><br class=""></div></blockquote></div><div><br class=""><blockquote type="cite" class=""><div class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br class="">*flags - ok<br class=""><br class="">================<br class=""><br class="">exp - ok<br class="">expm1 - ok<br class="">exp2 - ok<br class="">exp2m1 - ok<br class="">exp10 - ok<br class="">exp10m1 - ok<br class="">log - ok<br class="">log2 - ok<br class="">log10 - ok<br class="">logp1 - ok<br class="">log2p1 - ok<br class="">log10p1 - ok<br class="">hypot - ok<br class="">rsqrt - ok<br class="">compound -<span class="Apple-converted-space"> </span><br class="">cfp is missing:<br class=""> 754: compound(+/-0,n) is 1<br class=""> 754: compound(+inf,n) is +inf for n>0<br class=""> 754: compound(+inf,n) is +0 for n<0<br class=""> 754: compound(qNaN,n) is qNaN for n!=0<br class="">rootn -<span class="Apple-converted-space"> </span><br class="">replace cfp rootn(+/-inf,n) with<br class=""></blockquote></div></blockquote><div>I think cfp and 754 agree except for rootn(-inf, n) for even n > 0:</div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div><br class=""></div><div>cfp says it’s the same as rootn(-0, n) for even n < 0 (without div-by-zero), which cfp and 754 both say is +inf.</div><div>754 says it's qNaN with invalid.</div></blockquote><div><br class=""></div><div>We can ask 754 to review/confirm this case. As usual, cfp needs to match 754. If cfp needs to change this case, it seems better to list out the cases for rootn(+/-inf, n) like 754 does, rather than relay on identity with rootn(+/-0, -n) </div><div><br class=""></div><div><blockquote type="cite" class=""><div class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""> 754: rootn(+inf,n) is +inf for n>0<br class=""> 754: rootn(+inf,n) is +0 for n<0<br class=""> 754: rootn(-inf,n) is -inf for odd n>0<br class=""> 754: rootn(-inf,n) is -0 for odd n<0</blockquote></div></blockquote><blockquote type="cite" class=""><div class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""> 754: rootn(-inf,n) is qNaN and "invalid" for even n>0<br class=""> 754: rootn(-inf,n) is qNaN and "invalid" for even n<0<br class="">pown -<span class="Apple-converted-space"> </span><br class="">replace cfp pown(+/-inf,n) with<br class=""> 754: pown(+inf,n) is +inf for n>0<br class=""> 754: pown(+inf,n) is +0 for n<0<br class=""> 754: pown(-inf,n) is -inf for odd n>0<br class=""> 754: pown(-inf,n) is +inf for even n>0<br class=""> 754: pown(-inf,n) is -0 for odd n<0<br class=""> 754: pown(-inf,n) is +0 for even n<0<br class=""></blockquote></div></blockquote>Aren’t cfp and 754 equivalent for pown?</div><div><br class=""><blockquote type="cite" class=""><div class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">pow -<span class="Apple-converted-space"> </span><br class="">754: pow(+/-0,-inf) no exception<br class="">cfp: pow(+/-0,-inf) may raise div-by-zero<br class=""></blockquote></div></blockquote>We’ve already addressed the pow issue with a CR for C (N2271).</div><div><br class=""><blockquote type="cite" class=""></blockquote><blockquote type="cite" class=""><div class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">powr -<span class="Apple-converted-space"> </span><br class="">cfp is missing:<br class=""> powr(x,qNaN) is qNaN for x>=0<br class=""> powr(qNaN,y) is qNaN<br class=""></blockquote></div></blockquote>Why does 754 state these cases? They’re covered by its general specification for NaNs in 9.2. </div><div><br class=""></div><div>- Jim Thomas</div><div><br class=""><blockquote type="cite" class=""><div class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">Looks like we need to add some cases.</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""></div></blockquote><div><br class=""></div><blockquote type="cite" class=""><div class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">sin - ok<br class="">cos - ok<br class="">tan - ok<br class="">sinpi - ok<br class="">cospi - ok<br class="">tanpi - ok<br class="">asin - ok<br class="">acos - ok<br class="">atan - ok<br class="">atan2 - ok<br class="">asinpi - ok<br class="">acospi - ok<br class="">atanpi - ok<br class="">atan2pi - ok<br class="">sinh - ok<br class="">cosh - ok<br class="">tanh - ok<br class="">asinh - ok<br class="">acosh - ok<br class="">atanh - ok<br class=""><br class="">*rounddir - ok<br class="">*modes - ok<br class=""><br class="">For the reduction functions, it appears to me that 754 requires<br class="">intermediate computations to not overflow or underflow. That<br class="">contradicts [1] in 7.12.13b; but matches F.10.10b [2].<br class=""><br class="">reducsum -<span class="Apple-converted-space"> </span><br class="">754 has: A sum of infinities of different signs signals the invalid<br class=""> operation exception.<br class="">CFP has: returns a NaN and raises the "invalid" floating-point<br class=""> exception if any two members of array p are infinities with<br class=""> different signs.<br class="">One reading of 754's requirement is the running sum and an array<br class="">element are the two items in question. So, sum([NaN, +inf, -inf],3)<br class="">when process left to right would NOT raise invalid for 754, but must<br class="">raise invalid for CFP.<br class="">reducdot - same problem as reducsum. Also, once a NaN is found, must<br class="">the remaining vector items be done (which might raise invalid)?<br class="">reducsumsq - ok<br class="">reducsumabs - ok<br class="">scaledprod - same issue as reducsum.<br class="">scaledprodsum - same issue as reducsum.<br class="">scaledproddiff - same issue as reducsum.<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">754 is still discussing these. We’ll need a review, and probably update, when 754 is finalized.</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">- Jim Thomas</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br class="">augadd - ok<br class="">augsub - ok<br class="">augmul - ok<br class=""><br class="">min - ok<br class="">max - ok<br class="">minNum - ok<br class="">maxNum - ok<br class="">minMag - ok<br class="">maxMag - ok<br class="">minMagNum - ok<br class="">maxMagNum - ok<br class=""><br class="">payload - ok<br class=""><br class=""><br class="">---<br class="">Fred J. Tydeman Tydeman Consulting<br class=""><a href="mailto:tydeman@tybor.com" class="">tydeman@tybor.com</a> Testing, numerics, programming<br class="">+1 (702) 608-6093 Vice-chair of PL22.11 (ANSI "C")<br class="">Sample C99+FPCE tests: <a href="http://www.tybor.com" class="">http://www.tybor.com</a><br class="">Savers sleep well, investors eat well, spenders work forever.<br class=""><br class="">_______________________________________________<br class="">Cfp-interest mailing list<br class=""><a href="mailto:Cfp-interest@oakapple.net" class="">Cfp-interest@oakapple.net</a><br class="">http://mailman.oakapple.net/mailman/listinfo/cfp-interest<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">_______________________________________________</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">Cfp-interest mailing list</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><a href="mailto:Cfp-interest@oakapple.net" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;" class="">Cfp-interest@oakapple.net</a><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><a href="http://mailman.oakapple.net/mailman/listinfo/cfp-interest" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;" class="">http://mailman.oakapple.net/mailman/listinfo/cfp-interest</a></div></blockquote></div><br class=""></body></html>