From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 4DD2E3858C54; Fri, 21 Jul 2023 06:56:41 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4DD2E3858C54 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1689922601; bh=FT62Ap7+nnZZ4PBqGdWbTZ5Q99yx9Jn53FdiJk3lUFE=; h=From:To:Subject:Date:In-Reply-To:References:From; b=qu+Vx5Sh8doldPAXQ119diH/YvN4FzZXCcCiRdgAH6fZR3uywFoqRboQh7sJ3vq+D O0RaCooYXEhwIyJ3V8B+vkAwCp9CRw5dTre8TEcGA9oxVDBu3bt1LFfq6ldn8idvPK XR1LN1ZcVFhlo1MrLKJ9ObXf7ZxxaX7+9D4EhkF4= From: "rguenth at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/110755] [13/14 Regression] Wrong optimization of fabs on ppc64el at -O1 Date: Fri, 21 Jul 2023 06:56:41 +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.1.0 X-Bugzilla-Keywords: needs-bisection, wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: rguenth at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 13.2 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc priority cf_gcctarget 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=3D110755 Richard Biener changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |aldyh at gcc dot gnu.org, | |jakub at gcc dot gnu.org, | |rguenth at gcc dot gnu.org Priority|P3 |P2 Target| |powerpc64le --- Comment #4 from Richard Biener --- if (in.0_1 > 0.0) goto ; [59.00%] else goto ; [41.00%] [local count: 633507681]: # RANGE [frange] float [8.388608e+6 (0x0.8p+24), +Inf] r_8 =3D in.0_1 + 8.388608e+6; # RANGE [frange] float [0.0 (0x0.0p+0), +Inf] r_9 =3D r_8 - 8.388608e+6; # RANGE [frange] float [0.0 (0x0.0p+0), +Inf] r_10 =3D ABS_EXPR ; looks like we mishandle signed zeros somehow.=