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 31A2E38515FA for ; Mon, 12 Sep 2022 12:02:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 31A2E38515FA 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,310,1654588800"; d="diff'?scan'208,217";a="82914298" Received: from orw-gwy-01-in.mentorg.com ([192.94.38.165]) by esa2.mentor.iphmx.com with ESMTP; 12 Sep 2022 04:02:23 -0800 IronPort-SDR: Uj5UntMkgEtPkljITF9yMUiaC86gRszzY1NMKd3wVNhZHLAxzoVPTJp57/nEm4oFV03yKIgxey qWf23Qt3U+KW6S6uB8mRYaKQy16q1IsxBCYw/DwpD/47g9gstajeKSe2f6W6F8LycDeBDX/Mb4 FpicVmnQwSdNlr11aLUIcDT0LGwGzteT7UIwe0092B8Gznyhzb4rxZCbo7020aAPYXzRsgMcwN FyivgLgaJRP1efEywURhZDZQZOBa5wTFWD0YNhhRdEhQaSGwBXvA/ljVMnyrqTEVDX3K1QYAfM NUk= Content-Type: multipart/mixed; boundary="------------vQattwR40mJoCkrn0wGlSI0j" Message-ID: Date: Mon, 12 Sep 2022 14:02:16 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.1 Subject: [Patch] nvptx/mkoffload.cc: Warn instead of error when reverse offload is not possible (was: Re: [Patch][2/3][v2] nvptx: libgomp+mkoffload.cc: Prepare for reverse offload fn lookup) Content-Language: en-US To: Jakub Jelinek CC: gcc-patches , Tom de Vries References: <40563a1c-49ef-a185-3c01-9f717cd48fc5@codesourcery.com> <8301889b-64f9-8c60-15ca-2fa1fc495791@codesourcery.com> From: Tobias Burnus In-Reply-To: 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,T_SCC_BODY_TEXT_LINE 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: --------------vQattwR40mJoCkrn0wGlSI0j Content-Type: multipart/alternative; boundary="------------Gn4S8L3KEeAhdBMIRQQLblL0" --------------Gn4S8L3KEeAhdBMIRQQLblL0 Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: quoted-printable On 09.09.22 17:36, Jakub Jelinek wrote: Wonder if we instead shouldn't arrange for silent request for no PTX offloading (or one with warning?) if sm_30 and reverse offload is needed. Error might be too harsh, the program can still offload to GCN or host just fine... Attached patch now implements the warning. I think silently failing is not the proper solution. It is too confusing and without telling the user, they may not notice this issue. I also changed the "progname" variable; it seems as if the only user is the diagnostic machinery and it seems to make sense to have: nvptx mkoffload: warning: 'omp requires reverse_offload' requires at least 'sm_35' for '-misa=3D' - disabling offload-code generation for this device = type instead of guessing whether "mkoffload" is for the host, gcn or nvptx. I kn= ow that the common way is to use the binary name ("lto1") or ... but I still think this prefix =E2=80=93 which is the tool_name. Makes sense. (BTW: gcc/config/i386/intelmic-mkoffload.cc uses "mkoffload-intelmic".) I also changed "-misa=3D" in the diagnostic to "-march=3D" as Tom changed t= he default from "-misa=3D" (now an alias) to "-march=3D" in GCC 12 (+plus added -march= -map=3D in addition). I also added a testcase for this =E2=80=93 and updated the testsuite for th= e dg-warning. OK for mainline? Tobias PS: As no code for nvptx is generated, there is no "device present bit not = used" warning with GOMP_DEBUG, but as there is a compile-time warning, I guess that's fin= e. ----------------- 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 --------------Gn4S8L3KEeAhdBMIRQQLblL0-- --------------vQattwR40mJoCkrn0wGlSI0j Content-Type: text/x-patch; charset="UTF-8"; name="nvptx-warn-if-sm-too-old-v3.diff" Content-Disposition: attachment; filename="nvptx-warn-if-sm-too-old-v3.diff" Content-Transfer-Encoding: base64 bnZwdHgvbWtvZmZsb2FkLmNjOiBXYXJuIGluc3RlYWQgb2YgZXJyb3Igd2hl biByZXZlcnNlIG9mZmxvYWQgaXMgbm90IHBvc3NpYmxlCgpSZXZlcnNlIG9m ZmxvYWQgcmVxdWVzdHMgYXQgbGVhc3QgLW1pc2E9c21fMzU7IHdpdGggdGhp cyBwYXRjaCwgYSB3YXJuaW5nCmluc3RlYWQgb2YgYW4gZXJyb3IgaXMgc2hv d24sIHN0aWxsIHBlcm1pdHRpbmcgcmV2ZXJzZSBvZmZsb2FkIGZvciBhbGwK b3RoZXIgY29uZmlndXJlZCBkZXZpY2UgdHlwZXMuIFRoaXMgaXMgYWNoaWV2 ZWQgYnkgbm90IGNhbGxpbmcKR09NUF9vZmZsb2FkX3JlZ2lzdGVyX3ZlciAo YW5kIHN0b3BwaW5nIGdlbmVyYXRpbmcgcG9pbnRsZXNzICdzdGF0aWMgY29u c3QgY2hhcicKdmFyaWFibGVzLCBvbmNlIGtub3duLikKClRoZSB0b29sX25h bWUgYXMgcHJvZ25hbWUgY2hhbmdlcyBhZGRzICJudnB0eCAiIGFuZCAiZ2Nu ICIgdG8gdGhlCiJta29mZmxvYWQ6IHdhcm5pbmcvZXJyb3I6IiBkaWFnbm9z dGljLgoKZ2NjL0NoYW5nZUxvZzoKCgkqIGNvbmZpZy9udnB0eC9ta29mZmxv YWQuY2MgKHByb2Nlc3MpOiBSZXBsYWNlIGEgZmF0YWxfZXJyb3IgYnkKCWEg d2FybmluZyArIG5vdCBlbmFibGluZyBvZmZsb2FkaW5nIGlmIC1taXNhPXNt XzMwIHByZXZlbnRzCglyZXZlcnNlIG9mZmxvYWQuCgkobWFpbik6IFVzZSB0 b29sX25hbWUgYXMgcHJvZ25hbWUgZm9yIGRpYWdub3N0aWMuCgkqIGNvbmZp Zy9nY24vbWtvZmZsb2FkLmNjIChtYWluKTogTGlrZXdpc2UuCgpsaWJnb21w L0NoYW5nZUxvZzoKCgkqIGxpYmdvbXAudGV4aSAoT2ZmbG9hZC1UYXJnZXQg U3BlY2lmaWNzOiBudnB0eCk6IERvY3VtZW50Cgl0aGF0IHJldmVyc2Ugb2Zm bG9hZCByZXF1aXJlcyA+PSAtbWFyY2g9c21fMzUuCgkqIHRlc3RzdWl0ZS9s aWJnb21wLmMtYysrLWNvbW1vbi9yZXF1aXJlcy00LmM6IEJ1aWxkIGZvciBu dnB0eAoJd2l0aCAtbWlzYT1zbV8zNS4KCSogdGVzdHN1aXRlL2xpYmdvbXAu Yy1jKystY29tbW9uL3JlcXVpcmVzLTUuYzogTGlrZXdpc2UuCgkqIHRlc3Rz dWl0ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXF1aXJlcy02LmM6IExpa2V3 aXNlLgoJKiB0ZXN0c3VpdGUvbGliZ29tcC5jLWMrKy1jb21tb24vcmV2ZXJz ZS1vZmZsb2FkLTEuYzogTGlrZXdpc2UuCgkqIHRlc3RzdWl0ZS9saWJnb21w LmZvcnRyYW4vcmV2ZXJzZS1vZmZsb2FkLTEuZjkwOiBMaWtld2lzZS4KCSog dGVzdHN1aXRlL2xpYmdvbXAuYy9yZXZlcnNlLW9mZmxvYWQtc20zMC5jOiBO ZXcgdGVzdC4KCiBnY2MvY29uZmlnL2djbi9ta29mZmxvYWQuY2MgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGdjYy9jb25maWcvbnZw dHgvbWtvZmZsb2FkLmNjICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAx NyArKysrKysrKysrKysrLS0tLQogbGliZ29tcC9saWJnb21wLnRleGkgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAzICsrKwogbGli Z29tcC90ZXN0c3VpdGUvbGliZ29tcC5jLWMrKy1jb21tb24vcmVxdWlyZXMt NC5jICAgICB8ICAxICsKIGxpYmdvbXAvdGVzdHN1aXRlL2xpYmdvbXAuYy1j KystY29tbW9uL3JlcXVpcmVzLTUuYyAgICAgfCAgMSArCiBsaWJnb21wL3Rl c3RzdWl0ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXF1aXJlcy02LmMgICAg IHwgIDIgKysKIC4uLi90ZXN0c3VpdGUvbGliZ29tcC5jLWMrKy1jb21tb24v cmV2ZXJzZS1vZmZsb2FkLTEuYyAgfCAgMSArCiBsaWJnb21wL3Rlc3RzdWl0 ZS9saWJnb21wLmMvcmV2ZXJzZS1vZmZsb2FkLXNtMzAuYyAgICAgIHwgMTUg KysrKysrKysrKysrKysrCiBsaWJnb21wL3Rlc3RzdWl0ZS9saWJnb21wLmZv cnRyYW4vcmV2ZXJzZS1vZmZsb2FkLTEuZjkwIHwgIDEgKwogOSBmaWxlcyBj aGFuZ2VkLCAzOCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2djYy9jb25maWcvZ2NuL21rb2ZmbG9hZC5jYyBiL2djYy9j b25maWcvZ2NuL21rb2ZmbG9hZC5jYwppbmRleCAyNGQzMjczNTVlMy4uNjQw Mzc4MDZhY2YgMTAwNjQ0Ci0tLSBhL2djYy9jb25maWcvZ2NuL21rb2ZmbG9h ZC5jYworKysgYi9nY2MvY29uZmlnL2djbi9ta29mZmxvYWQuY2MKQEAgLTgw NSw3ICs4MDUsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAg IEZJTEUgKmNmaWxlID0gc3Rkb3V0OwogICBjb25zdCBjaGFyICpvdXRuYW1l ID0gMDsKIAotICBwcm9nbmFtZSA9ICJta29mZmxvYWQiOworICBwcm9nbmFt ZSA9IHRvb2xfbmFtZTsKICAgZGlhZ25vc3RpY19pbml0aWFsaXplIChnbG9i YWxfZGMsIDApOwogCiAgIG9ic3RhY2tfaW5pdCAoJmZpbGVzX3RvX2NsZWFu dXApOwpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9udnB0eC9ta29mZmxvYWQu Y2MgYi9nY2MvY29uZmlnL252cHR4L21rb2ZmbG9hZC5jYwppbmRleCA4MzRi MjA1OWFhYy4uNWYzZTA3YWQwNjYgMTAwNjQ0Ci0tLSBhL2djYy9jb25maWcv bnZwdHgvbWtvZmZsb2FkLmNjCisrKyBiL2djYy9jb25maWcvbnZwdHgvbWtv ZmZsb2FkLmNjCkBAIC0zMjQsOSArMzI0LDE4IEBAIHByb2Nlc3MgKEZJTEUg KmluLCBGSUxFICpvdXQsIHVpbnQzMl90IG9tcF9yZXF1aXJlcykKIAl7CiAJ ICBpZiAoc21fdmVyICYmIHNtX3ZlclswXSA9PSAnMycgJiYgc21fdmVyWzFd ID09ICcwJwogCSAgICAgICYmIHNtX3ZlclsyXSA9PSAnXG4nKQotCSAgICBm YXRhbF9lcnJvciAoaW5wdXRfbG9jYXRpb24sCi0JCQkgIiU8b21wIHJlcXVp cmVzIHJldmVyc2Vfb2ZmbG9hZCU+IHJlcXVpcmVzIGF0IGxlYXN0ICIKLQkJ CSAiJTxzbV8zNSU+IGZvciAlPC1taXNhPSU+Iik7CisJICAgIHsKKwkgICAg ICB3YXJuaW5nX2F0IChpbnB1dF9sb2NhdGlvbiwgMCwKKwkJCSAgIiU8b21w IHJlcXVpcmVzIHJldmVyc2Vfb2ZmbG9hZCU+IHJlcXVpcmVzIGF0ICIKKwkJ CSAgImxlYXN0ICU8c21fMzUlPiBmb3IgJTwtbWFyY2g9JT4gLSBkaXNhYmxp bmcgIgorCQkJICAib2ZmbG9hZC1jb2RlIGdlbmVyYXRpb24gZm9yIHRoaXMg ZGV2aWNlIHR5cGUiKTsKKwkgICAgICAvKiBBcyBub3cgYW4gZW1wdHkgZmls ZSBpcyBjb21waWxlZCBhbmQgdGhlcmUgaXMgbm8gY2FsbCB0bworCQkgR09N UF9vZmZsb2FkX3JlZ2lzdGVyX3ZlciwgdGhpcyBkZXZpY2UgdHlwZSBpcyBl ZmZlY3RpdmVseQorCQkgZGlzYWJsZWQuICAqLworCSAgICAgIGZmbHVzaCAo b3V0KTsKKwkgICAgICBmdHJ1bmNhdGUgKGZpbGVubyAob3V0KSwgMCk7CisJ ICAgICAgcmV0dXJuOworCSAgICB9CiAJICBzbV92ZXIyID0gc21fdmVyOwog CSAgdmVyc2lvbjIgPSB2ZXJzaW9uOwogCX0KQEAgLTUyNiw3ICs1MzUsNyBA QCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAgIEZJTEUgKm91dCA9 IHN0ZG91dDsKICAgY29uc3QgY2hhciAqb3V0bmFtZSA9IDA7CiAKLSAgcHJv Z25hbWUgPSAibWtvZmZsb2FkIjsKKyAgcHJvZ25hbWUgPSB0b29sX25hbWU7 CiAgIGRpYWdub3N0aWNfaW5pdGlhbGl6ZSAoZ2xvYmFsX2RjLCAwKTsKIAog ICBpZiAoYXRleGl0IChta29mZmxvYWRfY2xlYW51cCkgIT0gMCkKZGlmZiAt LWdpdCBhL2xpYmdvbXAvbGliZ29tcC50ZXhpIGIvbGliZ29tcC9saWJnb21w LnRleGkKaW5kZXggNGVhYWQ0MzQ4YmIuLjFmNDAyZDZkZjc5IDEwMDY0NAot LS0gYS9saWJnb21wL2xpYmdvbXAudGV4aQorKysgYi9saWJnb21wL2xpYmdv bXAudGV4aQpAQCAtNDM4Niw2ICs0Mzg2LDkgQEAgVGhlIGltcGxlbWVudGF0 aW9uIHJlbWFyazoKIEBpdGVtIEkvTyB3aXRoaW4gT3Blbk1QIHRhcmdldCBy ZWdpb25zIGFuZCBPcGVuQUNDIHBhcmFsbGVsL2tlcm5lbHMgaXMgc3VwcG9y dGVkCiAgICAgICB1c2luZyB0aGUgQyBsaWJyYXJ5IEBjb2Rle3ByaW50Zn0g ZnVuY3Rpb25zIGFuZCB0aGUgRm9ydHJhbgogICAgICAgQGNvZGV7cHJpbnR9 L0Bjb2Rle3dyaXRlfSBzdGF0ZW1lbnRzLgorQGl0ZW0gQ29tcGlsYXRpb24g T3Blbk1QIGNvZGUgdGhhdCBjb250YWlucyBAY29kZXtyZXF1aXJlcyByZXZl cnNlX29mZmxvYWR9CisgICAgICByZXF1aXJlcyBhdCBsZWFzdCBAY29kZXst bWFyY2g9c21fMzV9LCBjb21waWxpbmcgZm9yIEBjb2Rley1tYXJjaD1zbV8z MH0KKyAgICAgIGlzIG5vdCBzdXBwb3J0ZWQuCiBAZW5kIGl0ZW1pemUKIAog CmRpZmYgLS1naXQgYS9saWJnb21wL3Rlc3RzdWl0ZS9saWJnb21wLmMtYysr LWNvbW1vbi9yZXF1aXJlcy00LmMgYi9saWJnb21wL3Rlc3RzdWl0ZS9saWJn b21wLmMtYysrLWNvbW1vbi9yZXF1aXJlcy00LmMKaW5kZXggNmVkNWE1ZjY0 N2EuLjU4ODNlZmYwZDkzIDEwMDY0NAotLS0gYS9saWJnb21wL3Rlc3RzdWl0 ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXF1aXJlcy00LmMKKysrIGIvbGli Z29tcC90ZXN0c3VpdGUvbGliZ29tcC5jLWMrKy1jb21tb24vcmVxdWlyZXMt NC5jCkBAIC0xLDQgKzEsNSBAQAogLyogeyBkZy1hZGRpdGlvbmFsLW9wdGlv bnMgIi1mbHRvIiB9ICovCisvKiB7IGRnLWFkZGl0aW9uYWwtb3B0aW9ucyAi LWZvZmZsb2FkLW9wdGlvbnM9bnZwdHgtbm9uZT0tbWlzYT1zbV8zNSIgeyB0 YXJnZXQgeyBvZmZsb2FkX3RhcmdldF9udnB0eCB9IH0gfSAqLwogLyogeyBk Zy1hZGRpdGlvbmFsLXNvdXJjZXMgcmVxdWlyZXMtNC1hdXguYyB9ICovCiAK IC8qIENoZWNrIG5vIGRpYWdub3N0aWMgYnkgZGV2aWNlLWNvbXBpbGVyJ3Mg b3IgaG9zdCBjb21waWxlcidzIGx0bzEuCmRpZmYgLS1naXQgYS9saWJnb21w L3Rlc3RzdWl0ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXF1aXJlcy01LmMg Yi9saWJnb21wL3Rlc3RzdWl0ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXF1 aXJlcy01LmMKaW5kZXggN2ZlMGM3MzVkMjcuLmQ0M2Q3OGRiNmZhIDEwMDY0 NAotLS0gYS9saWJnb21wL3Rlc3RzdWl0ZS9saWJnb21wLmMtYysrLWNvbW1v bi9yZXF1aXJlcy01LmMKKysrIGIvbGliZ29tcC90ZXN0c3VpdGUvbGliZ29t cC5jLWMrKy1jb21tb24vcmVxdWlyZXMtNS5jCkBAIC0xLDMgKzEsNCBAQAor LyogeyBkZy1hZGRpdGlvbmFsLW9wdGlvbnMgIi1mb2ZmbG9hZC1vcHRpb25z PW52cHR4LW5vbmU9LW1pc2E9c21fMzUiIHsgdGFyZ2V0IHsgb2ZmbG9hZF90 YXJnZXRfbnZwdHggfSB9IH0gKi8KIC8qIHsgZGctYWRkaXRpb25hbC1zb3Vy Y2VzIHJlcXVpcmVzLTUtYXV4LmMgfSAqLwogCiAvKiBEZXBlbmRpbmcgb24g b2ZmbG9hZCBkZXZpY2UgY2FwYWJpbGl0aWVzLCBpdCBtYXkgcHJpbnQgc29t ZXRoaW5nIGxpa2UgdGhlCmRpZmYgLS1naXQgYS9saWJnb21wL3Rlc3RzdWl0 ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXF1aXJlcy02LmMgYi9saWJnb21w L3Rlc3RzdWl0ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXF1aXJlcy02LmMK aW5kZXggYjAwYzc0NTliYmMuLmEyNWI0ZDJkZWRkIDEwMDY0NAotLS0gYS9s aWJnb21wL3Rlc3RzdWl0ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXF1aXJl cy02LmMKKysrIGIvbGliZ29tcC90ZXN0c3VpdGUvbGliZ29tcC5jLWMrKy1j b21tb24vcmVxdWlyZXMtNi5jCkBAIC0xLDMgKzEsNSBAQAorLyogeyBkZy1h ZGRpdGlvbmFsLW9wdGlvbnMgIi1mb2ZmbG9hZC1vcHRpb25zPW52cHR4LW5v bmU9LW1pc2E9c21fMzUiIHsgdGFyZ2V0IHsgb2ZmbG9hZF90YXJnZXRfbnZw dHggfSB9IH0gKi8KKwogI3ByYWdtYSBvbXAgcmVxdWlyZXMgdW5pZmllZF9z aGFyZWRfbWVtb3J5LCB1bmlmaWVkX2FkZHJlc3MsIHJldmVyc2Vfb2ZmbG9h ZAogCiAvKiBUaGUgcmVxdWlyZXMgbGluZSBpcyBub3QgYWN0aXZlIGFzIHRo ZXJlIGlzIG5vbmUgb2Y6CmRpZmYgLS1naXQgYS9saWJnb21wL3Rlc3RzdWl0 ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXZlcnNlLW9mZmxvYWQtMS5jIGIv bGliZ29tcC90ZXN0c3VpdGUvbGliZ29tcC5jLWMrKy1jb21tb24vcmV2ZXJz ZS1vZmZsb2FkLTEuYwppbmRleCA5NzZlMTI5ZjU2MC4uNTJkODI4Y2FmMWMg MTAwNjQ0Ci0tLSBhL2xpYmdvbXAvdGVzdHN1aXRlL2xpYmdvbXAuYy1jKyst Y29tbW9uL3JldmVyc2Utb2ZmbG9hZC0xLmMKKysrIGIvbGliZ29tcC90ZXN0 c3VpdGUvbGliZ29tcC5jLWMrKy1jb21tb24vcmV2ZXJzZS1vZmZsb2FkLTEu YwpAQCAtMSw0ICsxLDUgQEAKIC8qIHsgZGctZG8gcnVuIH0gICovCisvKiB7 IGRnLWFkZGl0aW9uYWwtb3B0aW9ucyAiLWZvZmZsb2FkLW9wdGlvbnM9bnZw dHgtbm9uZT0tbWlzYT1zbV8zNSIgeyB0YXJnZXQgeyBvZmZsb2FkX3Rhcmdl dF9udnB0eCB9IH0gfSAqLwogLyogeyBkZy1hZGRpdGlvbmFsLXNvdXJjZXMg cmV2ZXJzZS1vZmZsb2FkLTEtYXV4LmMgfSAqLwogCiAvKiBDaGVjayB0aGF0 IHJldmVyc2Ugb2ZmbG9hZCB3b3JrcyBpbiBwYXJ0aWN1bGFyOgpkaWZmIC0t Z2l0IGEvbGliZ29tcC90ZXN0c3VpdGUvbGliZ29tcC5jL3JldmVyc2Utb2Zm bG9hZC1zbTMwLmMgYi9saWJnb21wL3Rlc3RzdWl0ZS9saWJnb21wLmMvcmV2 ZXJzZS1vZmZsb2FkLXNtMzAuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMC4uMTRhZWQwMTMyYjcKLS0tIC9kZXYvbnVsbAorKysg Yi9saWJnb21wL3Rlc3RzdWl0ZS9saWJnb21wLmMvcmV2ZXJzZS1vZmZsb2Fk LXNtMzAuYwpAQCAtMCwwICsxLDE1IEBACisvKiB7IGRnLWRvIGxpbmsgeyB0 YXJnZXQgeyBvZmZsb2FkX3RhcmdldF9udnB0eCB9IH0gfSAqLworLyogeyBk Zy1hZGRpdGlvbmFsLW9wdGlvbnMgIi1mb2ZmbG9hZC1vcHRpb25zPW52cHR4 LW5vbmU9LW1hcmNoPXNtXzMwIC1mb2ZmbG9hZD0tbXB0eD1fIiB9ICovCisK KyNwcmFnbWEgb21wIHJlcXVpcmVzIHJldmVyc2Vfb2ZmbG9hZAorCitpbnQK K21haW4gKCkKK3sKKyAgI3ByYWdtYSBvbXAgdGFyZ2V0CisgICAgeworICAg IH0KKyAgcmV0dXJuIDA7Cit9CisKKy8qIHsgZGctd2FybmluZyAiJ29tcCBy ZXF1aXJlcyByZXZlcnNlX29mZmxvYWQnIHJlcXVpcmVzIGF0IGxlYXN0ICdz bV8zNScgZm9yICctbWFyY2g9JyAtIGRpc2FibGluZyBvZmZsb2FkLWNvZGUg Z2VuZXJhdGlvbiBmb3IgdGhpcyBkZXZpY2UgdHlwZSIgIiIgeyB0YXJnZXQg Ki0qLSogfSAwIH0gKi8KZGlmZiAtLWdpdCBhL2xpYmdvbXAvdGVzdHN1aXRl L2xpYmdvbXAuZm9ydHJhbi9yZXZlcnNlLW9mZmxvYWQtMS5mOTAgYi9saWJn b21wL3Rlc3RzdWl0ZS9saWJnb21wLmZvcnRyYW4vcmV2ZXJzZS1vZmZsb2Fk LTEuZjkwCmluZGV4IDdjZmI4YjY1NTJlLi5kZTY4MDExZjhmNyAxMDA2NDQK LS0tIGEvbGliZ29tcC90ZXN0c3VpdGUvbGliZ29tcC5mb3J0cmFuL3JldmVy c2Utb2ZmbG9hZC0xLmY5MAorKysgYi9saWJnb21wL3Rlc3RzdWl0ZS9saWJn b21wLmZvcnRyYW4vcmV2ZXJzZS1vZmZsb2FkLTEuZjkwCkBAIC0xLDQgKzEs NSBAQAogISB7IGRnLWRvIHJ1biB9CishIHsgZGctYWRkaXRpb25hbC1vcHRp b25zICItZm9mZmxvYWQtb3B0aW9ucz1udnB0eC1ub25lPS1taXNhPXNtXzM1 IiB7IHRhcmdldCB7IG9mZmxvYWRfdGFyZ2V0X252cHR4IH0gfSB9CiAhIHsg ZGctYWRkaXRpb25hbC1zb3VyY2VzIHJldmVyc2Utb2ZmbG9hZC0xLWF1eC5m OTAgfQogCiAhIENoZWNrIHRoYXQgcmV2ZXJzZSBvZmZsb2FkIHdvcmtzIGlu IHBhcnRpY3VsYXI6Cg== --------------vQattwR40mJoCkrn0wGlSI0j--