math: Fix test-fenv.c feupdateenv tests

The feupdateenv tests added by 802aef27b2 do not restore the floating
point mask, which might keep some floating point exception enabled and
thus make the feupdateenv_single_test raise an unexpected signal.

Checked on x86_64-linux-gnu and aarch64-linux-gnu (on Apple M1 trapping
is supported).
Reviewed-by: Szabolcs Nagy <szabolcs.nagy@arm.com>
This commit is contained in:
Adhemerval Zanella 2024-01-09 16:40:33 -03:00
parent 1eae989cb7
commit 497e4d5030

View File

@ -659,6 +659,7 @@ static void
feupdate_single_test (const char *flag_name, int fe_exc) feupdate_single_test (const char *flag_name, int fe_exc)
{ {
feenv_nomask_test (flag_name, fe_exc, feupdateenv); feenv_nomask_test (flag_name, fe_exc, feupdateenv);
fesetenv (FE_DFL_ENV);
feenv_mask_test (flag_name, fe_exc, feupdateenv); feenv_mask_test (flag_name, fe_exc, feupdateenv);
} }
#endif #endif