From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sourceware.org (Postfix) with ESMTPS id 03CCA385803D for ; Wed, 5 May 2021 11:45:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 03CCA385803D Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=inria.fr Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=marc.glisse@inria.fr IronPort-HdrOrdr: =?us-ascii?q?A9a23=3Ai2VpWKl8eA6oOubEInSYI7foa5jpDfNIiWdD?= =?us-ascii?q?5ilNYBxZY6Wkvui0lvUayhP4zB4NMUtQ2OyoEq+GXH/a6NpJ8ZAcVI3SJDXOlU?= =?us-ascii?q?mJCMVZ7YXkyyD9ACGWzINg/IppbqQWMqyWMXFXlt39+xP9LtBI+qjyzImGnuHb?= =?us-ascii?q?pk0dKD1CTqF78kNQEQybElJ7LTM2S6YRMZqH+45nqz+4EE5nJPiTI3keQqziqr?= =?us-ascii?q?Tw5dnbSDsHHQNizheIgSjA0s+0LzG83g0CFwpI26pKyxmIryXd5r+/98290APW?= =?us-ascii?q?zWXJ759b8eGRh+drIOyppowrJi73igCuDb4RIoGqmDwuuumg5BILvbD30nMdFv?= =?us-ascii?q?1p53ncc22zqxeF4XiWoUATwkTvw1OZnnfvyPaRLFlRZ6Uu5OIpESfx0EY4ucE5?= =?us-ascii?q?7aQj5RPri7NsARTMkD+V3amAazhRikG2rXA++NRj/0B3bI12Us4ykaUi5k9PVL?= =?us-ascii?q?8PECXmgbpXdtVGPYX25OVfdl2TBkqpz1VH8ZiDRXgiGxedXyE5y7eo+gkTuXZ+?= =?us-ascii?q?1iIjtb4it0ZF0ok8RZlC7+GBH4BBr5sLdcMda7lxbd1xAfefOyjqWhLDMGWbJB?= =?us-ascii?q?DcEr0dMX6Ii6ef2sRO2MiaPKcFy5MulI+Eal9CqmIoXErrBaS1reN22yGIe2m7?= =?us-ascii?q?VSng0YVl/pB8kLXhXraDC1z9dHke1/CtpP0DDtaeYe+6PKhdBeTuRFGeZbph7k?= =?us-ascii?q?nEV55bNHUEFPcNstIARlqSrqvwW/DXn92eSvrKOLbrGzpMYBKLPlIzGD/0YM1a?= =?us-ascii?q?5EGqRXOQummYZ0/Q?= X-IronPort-AV: E=Sophos;i="5.82,274,1613430000"; d="scan'208";a="380575624" Received: from 85-171-189-19.rev.numericable.fr (HELO hippo) ([85.171.189.19]) by mail3-relais-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 May 2021 13:45:33 +0200 Date: Wed, 5 May 2021 13:45:29 +0200 (CEST) From: Marc Glisse Reply-To: gcc-patches@gcc.gnu.org To: Jakub Jelinek cc: Richard Biener , Jonathan Wakely , Jason Merrill , gcc-patches@gcc.gnu.org Subject: Re: [PATCH] phiopt: Optimize (x <=> y) cmp z [PR94589] In-Reply-To: <20210504074413.GI1179226@tucnak> Message-ID: References: <20210504074413.GI1179226@tucnak> MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset=US-ASCII X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 May 2021 11:45:38 -0000 On Tue, 4 May 2021, Jakub Jelinek via Gcc-patches wrote: > 2) the pr94589-2.C testcase should be matching just 12 times each, but runs > into operator>=(strong_ordering, unspecified) being defined as > (_M_value&1)==_M_value > rather than _M_value>=0. When not honoring NaNs, the 2 case should be > unreachable and so (_M_value&1)==_M_value is then equivalent to _M_value>=0, > but is not a single use but two uses. I'll need to pattern match that case > specially. Somewhere in RTL (_M_value&1)==_M_value is turned into (_M_value&-2)==0, that could be worth doing already in GIMPLE. -- Marc Glisse