From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 9F8F6385840F; Fri, 10 Mar 2023 11:41:09 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 9F8F6385840F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1678448469; bh=ASJNrN1pyuHwaZcddBDdmra7C3zbPX2/j1a61a8ySh8=; h=From:To:Subject:Date:In-Reply-To:References:From; b=M606SgoptzojaNXnFXW6Oc1OZBIQAPeEYwDV0PhLDp3Y6wUlnrnXvYeXAUW72weQU Ak60YS2BnMHow3j6lz3V72PCaeodXqL/qDP+bsCRPu8gXMLbO+UNMHfXWFXdNMicbi 3vzAg+lUExJUgtk88xtGkJESr8MspR0bJT/cUy0Q= From: "cvs-commit at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/109008] [13 Regression] Wrong code in scipy package since r13-3926-gd4c2f1d376da6f Date: Fri, 10 Mar 2023 11:41:07 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Version: 13.0 X-Bugzilla-Keywords: wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: cvs-commit at gcc dot gnu.org X-Bugzilla-Status: RESOLVED X-Bugzilla-Resolution: FIXED X-Bugzilla-Priority: P1 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 13.0 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D109008 --- Comment #49 from CVS Commits --- The master branch has been updated by Jakub Jelinek : https://gcc.gnu.org/g:44f80a370b76fd1564e280f08d6640d0f641d487 commit r13-6580-g44f80a370b76fd1564e280f08d6640d0f641d487 Author: Jakub Jelinek Date: Fri Mar 10 12:40:23 2023 +0100 range-op-float: Extend lhs by 0.5ulp rather than 1ulp if not -frounding-math [PR109008] This patch, incremental to the just posted one, improves the reverse operation ranges significantly by widening just by 0.5ulp in each direction rather than 1ulp. Again, REAL_VALUE_TYPE has both wider exponent range and wider mantissa precision (160 bits) than any supported type, this patch uses the latter property. The patch doesn't do it if -frounding-math, because then the rounding can be +-1ulp in each direction depending on the rounding mode which we don't know, or for IBM double double because that type is just weird and we can't trust in sane properties. I've performed testing of these 2 patches on 300000 random tests as with yesterday's patch, exact numbers are in the PR, but I see very signific= ant improvement in the precision of the ranges while keeping it conservativ= ely correct. 2023-03-10 Jakub Jelinek PR tree-optimization/109008 * range-op-float.cc (float_widen_lhs_range): If not -frounding-math and not IBM double double format, extend lhs range just by 0.5ulp rather than 1ulp in each direction.=