diff options
author | Björn Gustavsson <[email protected]> | 2018-05-09 10:49:16 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2018-05-09 12:48:43 +0200 |
commit | 13bcae1294760339f232f1e06083d168a4e8e3eb (patch) | |
tree | 63ffab1d99af0ddff9a7fa2840d5c98ae4d3ab4a /erts/emulator | |
parent | 837fe8bf4bf3a567c66afec0f0ec3dd70d248cd8 (diff) | |
download | otp-13bcae1294760339f232f1e06083d168a4e8e3eb.tar.gz otp-13bcae1294760339f232f1e06083d168a4e8e3eb.tar.bz2 otp-13bcae1294760339f232f1e06083d168a4e8e3eb.zip |
Disable the use of floating point exceptions
Floating point exceptions has been disabled since 2011 on macOS
(fa0f8d2c29b) and on Linux since 2014 (c7ddafbe6dbc) because
there were unresolved stability issues.
Floating point exceptions are not disabled by default on FreeBSD,
and if OTP is compiled with gcc (as opposed to clang) floating
point exceptions will be used.
81a6adab693a introduced a bug in erts/emulator/Makefile.in which would
cause the building of OTP to fail if floating point exceptions were
enabled. The bug was not noticed because it turns out that none of our
daily build machines has floating point exceptions enabled.
Since floating point exceptions is not tested, we should not expect
them to work reliably on any platform. Therefore, turn off floating
point exceptions unconditionally in erts/configure.in. For the moment
we will keep the code in the runtime system that handles floating
point exceptions.
(This commit also fixes the bug in erts/emulator/Makefile.in, in
case floating point exceptions ever become reliable and enabled.)
https://bugs.erlang.org/browse/ERL-620
Diffstat (limited to 'erts/emulator')
-rw-r--r-- | erts/emulator/Makefile.in | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/erts/emulator/Makefile.in b/erts/emulator/Makefile.in index 5dfa60ee74..221cf84622 100644 --- a/erts/emulator/Makefile.in +++ b/erts/emulator/Makefile.in @@ -570,7 +570,7 @@ $(TTF_DIR)/OPCODES-GENERATED: $(OPCODE_TABLES) utils/beam_makeops -code-model @CODE_MODEL@ \ -outdir $(TTF_DIR) \ -DUSE_VM_PROBES=$(if $(USE_VM_PROBES),1,0) \ - -DNO_FPE_SIGNALS=$(if $filter(unreliable,$(FPE)),1,0) \ + -DNO_FPE_SIGNALS=$(if $(filter unreliable,$(FPE)),1,0) \ -emulator $(OPCODE_TABLES) && echo $? >$(TTF_DIR)/OPCODES-GENERATED GENERATE += $(TTF_DIR)/OPCODES-GENERATED |