bpo-37474: Don't call fedisableexcept() on FreeBSD (GH-16515)

On FreeBSD, Python no longer calls fedisableexcept() at startup to
control the floating point control mode. The call became useless
since FreeBSD 6: it became the default mode.
This commit is contained in:
Victor Stinner 2019-10-01 13:12:29 +02:00 committed by GitHub
parent 2f90261280
commit 5e0ea7540f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 13 deletions

View File

@ -0,0 +1,3 @@
On FreeBSD, Python no longer calls ``fedisableexcept()`` at startup to
control the floating point control mode. The call became useless since
FreeBSD 6: it became the default mode.

View File

@ -6,10 +6,6 @@
#include "pycore_pymem.h"
#include "pycore_pystate.h"
#ifdef __FreeBSD__
# include <fenv.h> /* fedisableexcept() */
#endif
/* Includes for exit_sigint() */
#include <stdio.h> /* perror() */
#ifdef HAVE_SIGNAL_H
@ -43,15 +39,6 @@ pymain_init(const _PyArgv *args)
return status;
}
/* 754 requires that FP exceptions run in "no stop" mode by default,
* and until C vendors implement C99's ways to control FP exceptions,
* Python requires non-stop mode. Alas, some platforms enable FP
* exceptions by default. Here we disable them.
*/
#ifdef __FreeBSD__
fedisableexcept(FE_OVERFLOW);
#endif
PyPreConfig preconfig;
PyPreConfig_InitPythonConfig(&preconfig);