[Hakon.Bugge@scali.com] libc/1739: signal+siglongjmp destroys FP control word on x86

Andreas Jaeger aj@suse.de
Mon May 15 07:27:00 GMT 2000


Hi glibc folks,

We've received the appended bug report about signal/siglongjmp.

Hakon is right, we don't save anything at all about the FPU.

Looking at the description of setjmp in ISO C 1999, I found:

       The environment of a call to the setjmp macro consists of
       information sufficient for a call to the longjmp function to
       return execution to the correct block and invocation of that
       block, were it called recursively.  It does not include the
       state of the floating-point status flags, of open files, or of
       any other component of the abstract machine.

Since siglongjmp is an extension of setjmp/longjmp only with respect
to signal handling, it seems that I can close the bug report with the
comment "You're right - but we're following the ISO C standard which
explictly forbids this".

What do you think?

Andreas




More information about the Libc-alpha mailing list