On Fri, 31 Jul 2020, Serge Semin wrote:
Well, originally plans were there to have NaN interlinking implementedRequested by downstream distros, a Kconfig option for defaultThat's what should have been here in the first place. Thanks!
IEEE754 conformance mode allows them to set their mode to
relaxed by default.
and no such mess or desire for hacks like one here would result. Cf.:
<https://gcc.gnu.org/ml/gcc/2015-11/msg00068.html>,
<https://gcc.gnu.org/ml/gcc/2016-05/msg00137.html>,
and then:
<https://lkml.org/lkml/2015/11/16/386>,
<https://sourceware.org/ml/libc-alpha/2015-11/msg00485.html>,
<https://sourceware.org/ml/binutils/2015-11/msg00170.html>,
<https://gcc.gnu.org/ml/gcc-patches/2015-11/msg03241.html>.
You could well pick this work up and complete it if you like. Final
conclusions for further work were made here:
<https://gcc.gnu.org/ml/gcc/2016-11/msg00027.html>,
<https://gcc.gnu.org/ml/gcc/2017-08/msg00260.html>,
<https://gcc.gnu.org/ml/gcc/2017-10/msg00142.html>.
In the relaxed mode math programs may produce wrong results unless you
rebuild all your software for the correct NaN mode for the hardware used
(in which case you don't need the relaxed setting in the first place).
Maciej