From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from esa2.mentor.iphmx.com (esa2.mentor.iphmx.com [68.232.141.98]) by sourceware.org (Postfix) with ESMTPS id 5A0D83857351 for ; Fri, 23 Sep 2022 15:24:29 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 5A0D83857351 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=mentor.com X-IronPort-AV: E=Sophos;i="5.93,339,1654588800"; d="diff'?scan'208,217";a="83588064" Received: from orw-gwy-02-in.mentorg.com ([192.94.38.167]) by esa2.mentor.iphmx.com with ESMTP; 23 Sep 2022 07:24:27 -0800 IronPort-SDR: 4kJ3hvmI38WIUqAW2aRGDeJGsyScssHNB0zM2ua/nBElZJLky73P6ffvBqa4AKPcNxLv0Xk6jo bmdsUUATMTkgdYfbvexIwt5txr8VEvcit1+cbT1Uj9J+lApLUpBh5oOOHUPUGPiSq3J1zICiLD 7nRebLKnEC8nhLQxCvFYVCMXoe9bqhQthSX8EgLQxDbfWv6eV23PUQaysTOig3v7qchVKLrm5h 8vzDu0ez7TVH8s5cCJxX0V+k51EuSSuG8jCZppp+Ycju/j8wGXoH3SIUz+BXiqb94gJ4hi9bti D/k= Content-Type: multipart/mixed; boundary="------------nQR1u2FxJmJjrfOhXS6a0mOf" Message-ID: Date: Fri, 23 Sep 2022 17:24:23 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.3.0 Content-Language: en-US To: gcc-patches , Thomas Schwinge From: Tobias Burnus Subject: [Patch] OpenACC: Fix reduction tree-sharing issue [PR106982] X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-11.mgc.mentorg.com (139.181.222.11) To svr-ies-mbx-12.mgc.mentorg.com (139.181.222.12) X-Spam-Status: No, score=-11.4 required=5.0 tests=BAYES_00,GIT_PATCH_0,HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,KAM_DMARC_STATUS,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --------------nQR1u2FxJmJjrfOhXS6a0mOf Content-Type: multipart/alternative; boundary="------------HSPuSDLD20cvKKLIsg6bJMmx" --------------HSPuSDLD20cvKKLIsg6bJMmx Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: quoted-printable This fixes a tree-sharing ICE. It seems as if all unshare_expr I added were required in this case. The first long testcase is based on the real testcase from the OpenACC testsuite, the second one is what reduction produced - but I thought some nested reduction might be interesting as well; hence, I included both tests. Bootstrapped and regtested on x86-64-gnu-linux w/o offloading. OK for mainline and GCC 12? (It gives an ICE with GCC 10 but not with GCC 9; thus, more regression-fix backporting would be possible, if someone cares.) Tobias ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstra=C3=9Fe 201= , 80634 M=C3=BCnchen; Gesellschaft mit beschr=C3=A4nkter Haftung; Gesch=C3= =A4ftsf=C3=BChrer: Thomas Heurung, Frank Th=C3=BCrauf; Sitz der Gesellschaf= t: M=C3=BCnchen; Registergericht M=C3=BCnchen, HRB 106955 --------------HSPuSDLD20cvKKLIsg6bJMmx-- --------------nQR1u2FxJmJjrfOhXS6a0mOf Content-Type: text/x-patch; charset="UTF-8"; name="oacc-reduction.diff" Content-Disposition: attachment; filename="oacc-reduction.diff" Content-Transfer-Encoding: base64 T3BlbkFDQzogRml4IHJlZHVjdGlvbiB0cmVlLXNoYXJpbmcgaXNzdWUgW1BS MTA2OTgyXQoKVGhlIHRyZWUgZm9yIHZhciA9PSBpbmNvbWluZyA9PSBvdXRn b3VuZCB3YXMKJ01FTSA8ZG91YmxlWzVdPiBbKGRvdWJsZSAqKSZyZWR1Y2Vk XScgd2hpY2ggY2F1c2VkIHRoZSBJQ0UKImluY29ycmVjdCBzaGFyaW5nIG9m IHRyZWUgbm9kZXMiLgoKCVBSIG1pZGRsZS1lbmQvMTA2OTgyCgpnY2MvQ2hh bmdlTG9nOgoKCSogb21wLWxvdy5jYyAobG93ZXJfb2FjY19yZWR1Y3Rpb25z KTogQWRkIHNvbWUgdW5zaGFyZV9leHByLgoKZ2NjL3Rlc3RzdWl0ZS9DaGFu Z2VMb2c6CgoJKiBjLWMrKy1jb21tb24vZ29hY2MvcmVkdWN0aW9uLTcuYzog TmV3IHRlc3QuCgkqIGMtYysrLWNvbW1vbi9nb2FjYy9yZWR1Y3Rpb24tOC5j OiBOZXcgdGVzdC4KCiBnY2Mvb21wLWxvdy5jYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgMTcgKysrKysrKysrKysrLS0tLS0KIGdjYy90 ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL3JlZHVjdGlvbi03LmMgfCAy MiArKysrKysrKysrKysrKysrKysrKysrCiBnY2MvdGVzdHN1aXRlL2MtYysr LWNvbW1vbi9nb2FjYy9yZWR1Y3Rpb24tOC5jIHwgMTIgKysrKysrKysrKysr CiAzIGZpbGVzIGNoYW5nZWQsIDQ2IGluc2VydGlvbnMoKyksIDUgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZ2NjL29tcC1sb3cuY2MgYi9nY2Mvb21w LWxvdy5jYwppbmRleCBmMDQ2OWQyMGIzZC4uOGUwN2ZiNWQ4YTggMTAwNjQ0 Ci0tLSBhL2djYy9vbXAtbG93LmNjCisrKyBiL2djYy9vbXAtbG93LmNjCkBA IC03NjMxLDcgKzc2MzEsMTIgQEAgbG93ZXJfb2FjY19yZWR1Y3Rpb25zIChs b2NhdGlvbl90IGxvYywgdHJlZSBjbGF1c2VzLCB0cmVlIGxldmVsLCBib29s IGlubmVyLAogCSAgICAgIGluY29taW5nID0gYnVpbGRfc2ltcGxlX21lbV9y ZWYgKGluY29taW5nKTsKIAkgIH0KIAllbHNlCi0JICB2MSA9IHYyID0gdjMg PSB2YXI7CisJICB7CisJICAgIHYxID0gdW5zaGFyZV9leHByICh2YXIpOwor CSAgICB2MiA9IHVuc2hhcmVfZXhwciAodmFyKTsKKwkgICAgdjMgPSB1bnNo YXJlX2V4cHIgKHZhcik7CisJICAgIG91dGdvaW5nID0gdW5zaGFyZV9leHBy IChvdXRnb2luZyk7CisJICB9CiAKIAkvKiBEZXRlcm1pbmUgcG9zaXRpb24g aW4gcmVkdWN0aW9uIGJ1ZmZlciwgd2hpY2ggbWF5IGJlIHVzZWQKIAkgICBi eSB0YXJnZXQuICBUaGUgcGFyc2VyIGhhcyBlbnN1cmVkIHRoYXQgdGhpcyBp cyBub3QgYQpAQCAtNzY1OSwyMSArNzY2NCwyMyBAQCBsb3dlcl9vYWNjX3Jl ZHVjdGlvbnMgKGxvY2F0aW9uX3QgbG9jLCB0cmVlIGNsYXVzZXMsIHRyZWUg bGV2ZWwsIGJvb2wgaW5uZXIsCiAJICA9IGJ1aWxkX2NhbGxfZXhwcl9pbnRl cm5hbF9sb2MgKGxvYywgSUZOX0dPQUNDX1JFRFVDVElPTiwKIAkJCQkJICBU UkVFX1RZUEUgKHZhciksIDYsIHNldHVwX2NvZGUsCiAJCQkJCSAgdW5zaGFy ZV9leHByIChyZWZfdG9fcmVzKSwKLQkJCQkJICBpbmNvbWluZywgbGV2ZWws IG9wLCBvZmYpOworCQkJCQkgIHVuc2hhcmVfZXhwciAoaW5jb21pbmcpLCBs ZXZlbCwKKwkJCQkJICBvcCwgb2ZmKTsKIAl0cmVlIGluaXRfY2FsbAogCSAg PSBidWlsZF9jYWxsX2V4cHJfaW50ZXJuYWxfbG9jIChsb2MsIElGTl9HT0FD Q19SRURVQ1RJT04sCiAJCQkJCSAgVFJFRV9UWVBFICh2YXIpLCA2LCBpbml0 X2NvZGUsCiAJCQkJCSAgdW5zaGFyZV9leHByIChyZWZfdG9fcmVzKSwKLQkJ CQkJICB2MSwgbGV2ZWwsIG9wLCBvZmYpOworCQkJCQkgIHVuc2hhcmVfZXhw ciAodjEpLCBsZXZlbCwgb3AsIG9mZik7CiAJdHJlZSBmaW5pX2NhbGwKIAkg ID0gYnVpbGRfY2FsbF9leHByX2ludGVybmFsX2xvYyAobG9jLCBJRk5fR09B Q0NfUkVEVUNUSU9OLAogCQkJCQkgIFRSRUVfVFlQRSAodmFyKSwgNiwgZmlu aV9jb2RlLAogCQkJCQkgIHVuc2hhcmVfZXhwciAocmVmX3RvX3JlcyksCi0J CQkJCSAgdjIsIGxldmVsLCBvcCwgb2ZmKTsKKwkJCQkJICB1bnNoYXJlX2V4 cHIgKHYyKSwgbGV2ZWwsIG9wLCBvZmYpOwogCXRyZWUgdGVhcmRvd25fY2Fs bAogCSAgPSBidWlsZF9jYWxsX2V4cHJfaW50ZXJuYWxfbG9jIChsb2MsIElG Tl9HT0FDQ19SRURVQ1RJT04sCiAJCQkJCSAgVFJFRV9UWVBFICh2YXIpLCA2 LCB0ZWFyZG93bl9jb2RlLAotCQkJCQkgIHJlZl90b19yZXMsIHYzLCBsZXZl bCwgb3AsIG9mZik7CisJCQkJCSAgcmVmX3RvX3JlcywgdW5zaGFyZV9leHBy ICh2MyksCisJCQkJCSAgbGV2ZWwsIG9wLCBvZmYpOwogCiAJZ2ltcGxpZnlf YXNzaWduICh2MSwgc2V0dXBfY2FsbCwgJmJlZm9yZV9mb3JrKTsKIAlnaW1w bGlmeV9hc3NpZ24gKHYyLCBpbml0X2NhbGwsICZhZnRlcl9mb3JrKTsKZGlm ZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL3Jl ZHVjdGlvbi03LmMgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2Fj Yy9yZWR1Y3Rpb24tNy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwLi40ODJiMGFiMTk4NAotLS0gL2Rldi9udWxsCisrKyBiL2dj Yy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL3JlZHVjdGlvbi03LmMK QEAgLTAsMCArMSwyMiBAQAorLyogeyBkZy1kbyBjb21waWxlIH0gKi8KKwor LyogUFIgbWlkZGxlLWVuZC8xMDY5ODIgKi8KKworbG9uZyBsb25nIG4gPSAx MDA7CitpbnQgbXVsdGlwbGljaXRpdmVfbiA9IDEyODsKKwordm9pZCB0ZXN0 MShkb3VibGUgKnJhbmQsIGRvdWJsZSAqYSwgZG91YmxlICpiLCBkb3VibGUg KmMpCit7CisjcHJhZ21hIGFjYyBkYXRhIGNvcHlpbihhWzA6MTAqbXVsdGlw bGljaXRpdmVfbl0sIGJbMDoxMCptdWx0aXBsaWNpdGl2ZV9uXSkgY29weW91 dChjWzA6MTBdKQorICAgIHsKKyNwcmFnbWEgYWNjIHBhcmFsbGVsIGxvb3AK KyAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCAxMDsgKytpKQorICAgICAg ICB7CisgICAgICAgIGRvdWJsZSB0ZW1wID0gMS4wOworI3ByYWdtYSBhY2Mg bG9vcCB2ZWN0b3IgcmVkdWN0aW9uKCo6dGVtcCkKKyAgICAgICAgZm9yIChp bnQgaiA9IDA7IGogPCBtdWx0aXBsaWNpdGl2ZV9uOyArK2opCisgICAgICAg ICAgdGVtcCAqPSBhWyhpICogbXVsdGlwbGljaXRpdmVfbikgKyBqXSArIGJb KGkgKiBtdWx0aXBsaWNpdGl2ZV9uKSArIGpdOworICAgICAgICBjW2ldID0g dGVtcDsKKyAgICAgICAgfQorICAgIH0KK30KZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL3JlZHVjdGlvbi04LmMgYi9n Y2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9yZWR1Y3Rpb24tOC5j Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4yYzNl ZDQ5OWQ1YgotLS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvYy1j KystY29tbW9uL2dvYWNjL3JlZHVjdGlvbi04LmMKQEAgLTAsMCArMSwxMiBA QAorLyogeyBkZy1kbyBjb21waWxlIH0gKi8KKworLyogUFIgbWlkZGxlLWVu ZC8xMDY5ODIgKi8KKwordm9pZCB0ZXN0MShkb3VibGUgKmMpCit7CisgICAg ZG91YmxlIHJlZHVjZWRbNV07CisjcHJhZ21hIGFjYyBwYXJhbGxlbCBsb29w IGdhbmcgcHJpdmF0ZShyZWR1Y2VkKQorICAgIGZvciAoaW50IHggPSAwOyB4 IDwgNTsgKyt4KQorI3ByYWdtYSBhY2MgbG9vcCB3b3JrZXIgcmVkdWN0aW9u KCo6cmVkdWNlZCkKKyAgICAgIGZvciAoaW50IHkgPSAwOyB5IDwgNTsgKyt5 KSB7IH0KK30K --------------nQR1u2FxJmJjrfOhXS6a0mOf--