Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

Re: YES on Motion P1788/M0029.02:Level3-InterfaceOnly



VL> Should sNaN be excluded from the Empty representation? This would
VL> avoid unnecessary exceptions in the computations.

Signaling NaNs aren't widely used, but can be very helpful. One use is in finding uninitialized floating point variables, by asking for auto and/or heap memory to be initialized to Signaling NaNs. (That doesn't work for C/C++ static or extern variables because those languages define static and extern to be initialized to zeros.) I hope that uninitialized interval variables can be detected the same way. Uninitialized variables are one of the worst forms of bugs.

Since Signaling NaNs can only be explicitly created, never the result of some other operation like add, an exception from using one is never unnecessary unless software is creating them for some specific purpose. I can imagine using them for some form of extension to 754; eg, as a representation other than 754 Infinity for an overflow, along with software to support that.

- Ian McIntosh IBM Canada Lab Compiler Back End Support and Development


Inactive hide details for Vincent Lefevre ---01/04/2012 10:39:25 AM---I vote YES on Motion P1788/M0029.02:Level3-InterfaceOnly.Vincent Lefevre ---01/04/2012 10:39:25 AM---I vote YES on Motion P1788/M0029.02:Level3-InterfaceOnly. Here are my comments (mainly for future mo


From:

Vincent Lefevre <vincent@xxxxxxxxxx>

To:

Ian McIntosh/Toronto/IBM@IBMCA

Date:

01/04/2012 10:39 AM

Subject:

YES on Motion P1788/M0029.02:Level3-InterfaceOnly





I vote YES on Motion P1788/M0029.02:Level3-InterfaceOnly.

Here are my comments (mainly for future motions):

Should sNaN be excluded from the Empty representation? This would
avoid unnecessary exceptions in the computations. Now, I don't know
whether such exceptions may be a problem in practice.

One can note that the eventual mapping of bit-string encoding (as
specified at Level 4) to byte-string (platform-level format) is
unspecified by P1788, just as it is by IEEE 754. I think it should
("should", not "must") be implementation defined, when this makes
sense (there are languages that do not provide a way to access the
encoding), otherwise the bit-string encoding isn't much useful.

--
Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <
http://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <
http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)