[Bug ports/14909] New: MIPS setjmp/longjmp wrongly save/restore floating-point flags

jsm28 at gcc dot gnu.org sourceware-bugzilla@sourceware.org
Mon Dec 3 17:46:00 GMT 2012


http://sourceware.org/bugzilla/show_bug.cgi?id=14909

             Bug #: 14909
           Summary: MIPS setjmp/longjmp wrongly save/restore
                    floating-point flags
           Product: glibc
           Version: 2.16
            Status: NEW
          Severity: normal
          Priority: P2
         Component: ports
        AssignedTo: unassigned@sourceware.org
        ReportedBy: jsm28@gcc.gnu.org
                CC: carlos@systemhalted.org, roland@gnu.org
    Classification: Unclassified


The MIPS implementations of setjmp and longjmp wrongly save and restores fcsr -
but saving and restoring floating-point exceptions and rounding modes is
contrary to the requirements of C99 and C11.  fcsr should not be saved and
restored, and there should be an architecture-independent testcase to verify
that exceptions and rounding modes are the same on the second return from
setjmp as they were when longjmp was called, not the same as on the original
call to setjmp.  (Bug 14908 is the corresponding ARM bug.)

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the Glibc-bugs mailing list