S390: Fp comparison are now raising FE_INVALID with gcc 10.

The s390 gcc bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77918
"S390: Floating point comparisons don't raise invalid for unordered operands."
is fixed with gcc 10. Thus we conditionally set FIX_COMPARE_INVALID
to 0 or 1.
This commit is contained in:
Stefan Liebler 2019-11-06 08:07:40 +01:00
parent f2e30cc0f8
commit 64bca76f42
1 changed files with 7 additions and 5 deletions

View File

@ -27,10 +27,12 @@
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77918>.
There exists an equivalent gcc bugzilla for Intel:
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52451>.
Once the s390 gcc bug is fixed, the definition of FIX_COMPARE_INVALID
should have a __GNUC_PREREQ conditional added so that e.g. the workaround
to call feraiseexcept (FE_INVALID) in math/s_iseqsig_template.c can be
avoided. */
#define FIX_COMPARE_INVALID 1
This s390 gcc bug is fixed with gcc 10, thus we don't need the workaround
to call feraiseexcept (FE_INVALID) in math/s_iseqsig_template.c. */
#if __GNUC_PREREQ (10, 0)
# define FIX_COMPARE_INVALID 0
#else
# define FIX_COMPARE_INVALID 1
#endif
#endif /* fix-fp-int-compare-invalid.h */