From patchwork Mon Nov 15 13:51:03 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jakub Jelinek X-Patchwork-Id: 47675 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 1A1C43858003 for ; Mon, 15 Nov 2021 13:51:41 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1A1C43858003 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1636984301; bh=3XBuur2yrE4dloRI+totPF0240LGYKaxm9GNIlJf75I=; h=Date:To:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=rvOyJSn7NN0Cf7hOi8N9R0tTG7E3OrwamcQsCKi5Esq8x2/7rB7Ff9y6S57KpHGLB QYIbQOrDuLADykx0raCmPK9kZn6reh3jlswU2sW2yU5YCr6hsBrflBQXjWAWQYpZRv SY7CYj3ZMBPS6jU5dp6N+K1h3WxgOjP4FtlnLTn8= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id 828ED3858031 for ; Mon, 15 Nov 2021 13:51:09 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 828ED3858031 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-122-EwXJFJFOPeeOOcSghg_tbg-1; Mon, 15 Nov 2021 08:51:08 -0500 X-MC-Unique: EwXJFJFOPeeOOcSghg_tbg-1 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 2624F10168C3 for ; Mon, 15 Nov 2021 13:51:07 +0000 (UTC) Received: from tucnak.zalov.cz (unknown [10.39.192.54]) by smtp.corp.redhat.com (Postfix) with ESMTPS id C7FE2101F6D4 for ; Mon, 15 Nov 2021 13:51:06 +0000 (UTC) Received: from tucnak.zalov.cz (localhost [127.0.0.1]) by tucnak.zalov.cz (8.16.1/8.16.1) with ESMTPS id 1AFDp4lY2693117 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT) for ; Mon, 15 Nov 2021 14:51:04 +0100 Received: (from jakub@localhost) by tucnak.zalov.cz (8.16.1/8.16.1/Submit) id 1AFDp3Td2693116 for gcc-patches@gcc.gnu.org; Mon, 15 Nov 2021 14:51:03 +0100 Date: Mon, 15 Nov 2021 14:51:03 +0100 To: gcc-patches@gcc.gnu.org Subject: [committed] testsuite: Add testcase for already fixed PR [PR100469] Message-ID: <20211115135103.GX2710@tucnak> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline X-Spam-Status: No, score=-5.7 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) 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-Patchwork-Original-From: Jakub Jelinek via Gcc-patches From: Jakub Jelinek Reply-To: Jakub Jelinek Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" Hi! This bug introduced in r11-7448-gff92ede8d269375f800e1b347a48f4698874b4a3 has been fixed already by r12-1354-g2d2ed777b23ab6503027039e0adbfe1162f52b2f aka PR100852 fix. Regtested on x86_64-linux -m32/-m64, committed to trunk (so far) as obvious. 2021-11-15 Jakub Jelinek PR debug/100469 * g++.dg/opt/pr100469.C: New test. Jakub --- gcc/testsuite/g++.dg/opt/pr100469.C.jj 2021-11-15 14:44:46.796604198 +0100 +++ gcc/testsuite/g++.dg/opt/pr100469.C 2021-11-15 14:44:38.662715051 +0100 @@ -0,0 +1,32 @@ +// PR debug/100469 +// { dg-do compile } +// { dg-options "-O2 -fcompare-debug -fno-tree-dse -fno-tree-forwprop -fno-tree-tail-merge --param=sccvn-max-alias-queries-per-access=0" } + +struct S +{ + long m; + S (const S &s) + { + m = s.m; + } + S (long l) + { + m = l; + } + bool operatorX (const S &s) + { + return m >= s.m; + } +}; + +static inline S +bar (S a, S b) +{ + return a.operatorX (b) ? a : b; +} + +S +foo (S s) +{ + return bar (s, (S) 0); +}