From patchwork Tue Oct 29 10:09:25 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Liebler X-Patchwork-Id: 35407 Received: (qmail 32570 invoked by alias); 29 Oct 2019 10:09:34 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 32556 invoked by uid 89); 29 Oct 2019 10:09:33 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-22.7 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_SHORT, RCVD_IN_DNSWL_LOW, SPF_PASS autolearn=ham version=3.3.1 spammy=raising, UD:fix-fp-int-compare-invalid.h, sk:fix-fp-, sk:fix_com X-HELO: mx0a-001b2d01.pphosted.com To: GNU C Library Cc: "Joseph S. Myers" From: Stefan Liebler Subject: [PATCH] S390: Fp comparison are now raising FE_INVALID with gcc 10. Date: Tue, 29 Oct 2019 11:09:25 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 x-cbid: 19102910-0020-0000-0000-000003808EEE X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 19102910-0021-0000-0000-000021D69701 Message-Id: Hi, 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. Bye, Stefan commit 43006a3776e57515be633f7858438b7638b047db Author: Stefan Liebler Date: Tue Oct 29 09:12:19 2019 +0100 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. diff --git a/sysdeps/s390/fpu/fix-fp-int-compare-invalid.h b/sysdeps/s390/fpu/fix-fp-int-compare-invalid.h index dc2450cf83..440b3d0036 100644 --- a/sysdeps/s390/fpu/fix-fp-int-compare-invalid.h +++ b/sysdeps/s390/fpu/fix-fp-int-compare-invalid.h @@ -27,10 +27,12 @@ . There exists an equivalent gcc bugzilla for Intel: . - 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 */