[PATCH] Cygwin: fegetenv() in winsup/cygwin/fenv.cc should not disable exceptions!

Houder houder@xs4all.nl
Fri Aug 3 09:39:00 GMT 2018


On 2018-08-03 11:27, Houder wrote:
> I discovered a difference in behaviour between the x87 FPU and SSE.
> 
> When an exception is masked, a "default action" is carried out when
> an exception occurs. At the same time the associated status flag is
> set.
> (the manual speaks about a "reasonable" default action, an action
>  that is "sufficient" most of the times)
> 
> When the exception is enabled again, SSE is not bothered. However
> the next _FPU_ statement will notice the status flag set, and will
> set the "Exception Summary Bit" (in the FPU's status register).

To clarify:

SSE has a "control and status register". The x87 FPU has a control
register and a status register.

Flags are only set in x87 FPU's status register when FPU statements
are executed.

(the FPU is not "interested" in SSE's control and status register)

Henri



More information about the Cygwin-patches mailing list