https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107071
--- Comment #9 from Francois-Xavier Coudert <fxcoudert at gcc dot gnu.org> --- OK so there are three things tested here: - underflow mode - rounding mode - trapping mode For glibc targets, underflow control is only marked as supported for the float and double types on __alpha__. For rounding mode, the code makes incorrect assumptions and I have proposed a prototype patch to support_fpu_rounding_mode(). For trapping modes, it means that support_fpu_trap() needs to perform correct runtime checks. As I understand, this can be done by calling feenableexcept() and checking whether it returns -1 (flag not supported) or something else (flag supported). Then I need to restore the flag with fedisableexcept(), if the flag was not already set prior to the feenableexcept() call. I will write a patch when I have time. Thanks for pointing the issue out to me.