From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2153) id 0E9093858D37; Wed, 2 Mar 2022 09:41:26 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 0E9093858D37 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Jakub Jelinek To: gcc-cvs@gcc.gnu.org Subject: [gcc r12-7446] testsuite: Add testcases for already fixed PR [PR100541] X-Act-Checkin: gcc X-Git-Author: Jakub Jelinek X-Git-Refname: refs/heads/master X-Git-Oldrev: 31702fe9694e7ebeab91805e7121a1a757c108bd X-Git-Newrev: 5f2e72db8c03c960d8330305c1e92986373198ca Message-Id: <20220302094126.0E9093858D37@sourceware.org> Date: Wed, 2 Mar 2022 09:41:26 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Mar 2022 09:41:26 -0000 https://gcc.gnu.org/g:5f2e72db8c03c960d8330305c1e92986373198ca commit r12-7446-g5f2e72db8c03c960d8330305c1e92986373198ca Author: Jakub Jelinek Date: Wed Mar 2 10:38:39 2022 +0100 testsuite: Add testcases for already fixed PR [PR100541] These testcases started failing with r12-630 and one of them got fixed with r12-4531 (aka PR102764 fix and r12-4616 further improved the fix) and the other went latent in r12-2591 (i.e. threader changes) and I believe was fixed for real by the PR102764 fix too. 2022-03-02 Jakub Jelinek PR debug/100541 * g++.dg/opt/pr100541-1.C: New test. * g++.dg/opt/pr100541-2.C: New test. Diff: --- gcc/testsuite/g++.dg/opt/pr100541-1.C | 24 ++++++++++++++++++++++++ gcc/testsuite/g++.dg/opt/pr100541-2.C | 25 +++++++++++++++++++++++++ 2 files changed, 49 insertions(+) diff --git a/gcc/testsuite/g++.dg/opt/pr100541-1.C b/gcc/testsuite/g++.dg/opt/pr100541-1.C new file mode 100644 index 00000000000..9a73e15f98b --- /dev/null +++ b/gcc/testsuite/g++.dg/opt/pr100541-1.C @@ -0,0 +1,24 @@ +// PR debug/100541 +// { dg-do compile } +// { dg-options "-O3 -fno-expensive-optimizations -fno-tree-dce -fno-tree-dominator-opts -fcompare-debug" } + +int a, b, i, x, y; + +int +foo () +{ + int rcmd = 0; + switch (x) { + case 0: + if (i) + rcmd = 6; + if (y % 3) + int &m1 = rcmd = rcmd | 5; + break; + case 1: + rcmd = b; + } + if (rcmd != 7) + return rcmd; + return a; +} diff --git a/gcc/testsuite/g++.dg/opt/pr100541-2.C b/gcc/testsuite/g++.dg/opt/pr100541-2.C new file mode 100644 index 00000000000..35624814ed4 --- /dev/null +++ b/gcc/testsuite/g++.dg/opt/pr100541-2.C @@ -0,0 +1,25 @@ +// PR debug/100541 +// { dg-do compile { target c++11 } } +// { dg-options "-O2 -fno-tree-dce -fno-tree-dominator-opts -fcompare-debug" } + +int INVALID_TILE; +void GetSlopePixelZ(); +long RUNWAY_IN_block; +struct Airport { + long flags; +}; +struct Station { + Airport airport; +} * HandleCrashedAircraft_st; +short HandleCrashedAircraft_v_0; +void HandleCrashedAircraft() { + Station *__trans_tmp_1 = INVALID_TILE ? nullptr : HandleCrashedAircraft_st, + *st; + if (HandleCrashedAircraft_v_0 && __trans_tmp_1 == nullptr && + HandleCrashedAircraft_v_0 % 3) + GetSlopePixelZ(); + if (HandleCrashedAircraft_v_0) + GetSlopePixelZ(); + if (__trans_tmp_1) + st->airport.flags &= RUNWAY_IN_block; +}