http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58020

--- Comment #21 from richard.koolhans at gmail dot com ---

I'm not really an expert on any architecture.  But there is an important point
that I think should not be missed.  According to Van Snyder, a long-time member
of the Fortran standards committee, if there is no support for the IEEE
exceptions, a module must be provided that enables a program to query whether
such support is provided.  I strongly recommend that such an intrinsic module
be provided for architectures that are not supported.  

In the test driver I've attempted to have full coverage.  In particular the
status flags from the FPU and SSE units are "or-ed" or “and-ed” together to
catch or clear exceptions that may occur in either place.  Since there are no
64 bit status registers, I don't see any difference in code for 32 vs 64-bit. 
Little use of the FPU is made in the machine code these days.  But this feature
was important because an assembly code could use the FPU, have an exception,
and only dealing with the SSE flags would miss it.

Your question in 2. was not answered, but I don’t understand  these issues. 
There is a document IEEE.pdf in the distributed package that has some
discussion about decisions made to deal with threads.

Richard J. Hanson

Reply via email to