Thread Links | Date Links | ||||
---|---|---|---|---|---|
Thread Prev | Thread Next | Thread Index | Date Prev | Date Next | Date Index |
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
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 |