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 5EDBC3858283; Wed, 28 Sep 2022 13:47:55 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 5EDBC3858283 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,352,1654588800"; d="scan'208,223";a="83846769" Received: from orw-gwy-01-in.mentorg.com ([192.94.38.165]) by esa2.mentor.iphmx.com with ESMTP; 28 Sep 2022 05:47:53 -0800 IronPort-SDR: xJbI2l0QJ0dnm/9EFbd3VrTwUETUzUDkPN3a7lzEnyfs/eNbiC8ATTodxBF1SXHguX7C28TzXp d9dX2IeQNvOIIn/hW62jBp4nyJ97nocrX+H89Rj3FZ6wyTa1wDWipl3ptsJD4d00/+gWvdnR8i cKmSNztWqQStd8UP+VB7S+fISbb/E6AraMLEu8xdJZAPqM0xH2qETfq1jku+6ZjSoS6jkFLoiT 2DWMxq76xhl3Oc/2zdZhaGNbC0iv0mrJr53uTtMjXzOByZUh49yRuhqxTfOqxt6l80hEw7RxoE CDM= Content-Type: multipart/mixed; boundary="------------zIIonnMB1G2L48RaG6CL7LZ4" Message-ID: <0a5da3ce-7b28-fbd1-a0ba-f27c636e1be0@codesourcery.com> Date: Wed, 28 Sep 2022 15:47:47 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.3.0 Subject: Re: [OG12][PATCH] OpenMP: Fix ICE with OMP metadirectives Content-Language: en-US To: Tobias Burnus , , References: <1696e0a6-52e3-dc61-08a8-eaa26c5c3e1e@codesourcery.com> From: Paul-Antoine Arras In-Reply-To: <1696e0a6-52e3-dc61-08a8-eaa26c5c3e1e@codesourcery.com> X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-10.mgc.mentorg.com (139.181.222.10) To svr-ies-mbx-13.mgc.mentorg.com (139.181.222.13) X-Spam-Status: No, score=-12.3 required=5.0 tests=BAYES_00,GIT_PATCH_0,HEADER_FROM_DIFFERENT_DOMAINS,KAM_DMARC_STATUS,KAM_SHORT,NICE_REPLY_A,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: --------------zIIonnMB1G2L48RaG6CL7LZ4 Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit Hi Tobias, Thanks for your review. Here is a revised patch resulting from your comments. The only issue that I could not easily fix is the following code triggering an ICE: ``` !$OMP begin metadirective & !$OMP when ( user = { condition ( UseDevice ) } & !$OMP : nothing ) & !$OMP default ( parallel ) block call foo() end block call bar() <--- ICE !$omp end metadirective ``` I filed a PR on Bugzilla: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107067 Is it OK for you? -- PA --------------zIIonnMB1G2L48RaG6CL7LZ4 Content-Type: text/plain; charset="UTF-8"; name="0001-OpenMP-Fix-ICE-with-OMP-metadirectives.patch" Content-Disposition: attachment; filename="0001-OpenMP-Fix-ICE-with-OMP-metadirectives.patch" Content-Transfer-Encoding: base64 RnJvbSAwMzQ3NjIxNGJkYTcxYzY1ODFiNzk3OGNmOWZkNWI3MDE4OTZhMDUyIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsLUFudG9pbmUgQXJyYXMgPHBhQGNvZGVzb3Vy Y2VyeS5jb20+CkRhdGU6IFdlZCwgMjEgU2VwIDIwMjIgMTU6NTI6NTYgKzAwMDAKU3ViamVj dDogW1BBVENIXSBPcGVuTVA6IEZpeCBJQ0Ugd2l0aCBPTVAgbWV0YWRpcmVjdGl2ZXMKClBy b2JsZW06IGVuZGluZyBhbiBPcGVuTVAgbWV0YWRpcmVjdGl2ZSBibG9jayB3aXRoIGFuIE9N UCBlbmQgc3RhdGVtZW50CnJlc3VsdHMgaW4gYW4gaW50ZXJuYWwgY29tcGlsZXIgZXJyb3Iu ClNvbHV0aW9uOiByZWplY3QgaW52YWxpZCBlbmQgc3RhdGVtZW50cyBhbmQgaXNzdWUgYSBw cm9wZXIgZGlhZ25vc3RpYy4KClRoaXMgcmV2aXNpb24gYWxzbyBmaXhlcyBhIGNvdXBsZSBv ZiBtaW5vciBtZXRhZGlyZWN0aXZlIGlzc3VlcyBhbmQgYWRkcwpyZWxhdGVkIHRlc3QgY2Fz ZXMuCgpnY2MvZm9ydHJhbi9DaGFuZ2VMb2c6CgoJKiBwYXJzZS5jYyAoZ2ZjX2FzY2lpX3N0 YXRlbWVudCk6IE1pc3NpbmcgJCBpbiAhJE9NUCBFTkQgTUVUQURJUkVDVElWRS4KCShwYXJz ZV9vbXBfc3RydWN0dXJlZF9ibG9jayk6IEZpeCBoYW5kbGluZyBvZiBPTVAgZW5kIG1ldGFk aXJlY3RpdmUuCgkocGFyc2Vfb21wX21ldGFkaXJlY3RpdmVfYm9keSk6IFJlamVjdCBPTVAg ZW5kIHN0YXRlbWVudHMKCWF0IHRoZSBlbmQgb2YgYW4gT01QIG1ldGFkaXJlY3RpdmUuCgpn Y2MvdGVzdHN1aXRlL0NoYW5nZUxvZzoKCgkqIGdmb3J0cmFuLmRnL2dvbXAvbWV0YWRpcmVj dGl2ZS0xLmY5MDogTWF0Y2ggISRPTVAgRU5EIE1FVEFESVJFQ1RJVkUuCgkqIGdmb3J0cmFu LmRnL2dvbXAvbWV0YWRpcmVjdGl2ZS0xMC5mOTA6IE5ldyB0ZXN0LgoJKiBnZm9ydHJhbi5k Zy9nb21wL21ldGFkaXJlY3RpdmUtMTEuZjkwOiBOZXcgeGZhaWwgdGVzdC4KCSogZ2ZvcnRy YW4uZGcvZ29tcC9tZXRhZGlyZWN0aXZlLTkuZjkwOiBOZXcgdGVzdC4KLS0tCiBnY2MvZm9y dHJhbi9DaGFuZ2VMb2cub21wICAgICAgICAgICAgICAgICAgICAgfCAgNyArKysrCiBnY2Mv Zm9ydHJhbi9wYXJzZS5jYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAzMiArKysrKysr KysrLS0tLS0KIGdjYy90ZXN0c3VpdGUvQ2hhbmdlTG9nLm9tcCAgICAgICAgICAgICAgICAg ICB8ICA3ICsrKysKIC4uLi9nZm9ydHJhbi5kZy9nb21wL21ldGFkaXJlY3RpdmUtMS5mOTAg ICAgICB8ICAyICstCiAuLi4vZ2ZvcnRyYW4uZGcvZ29tcC9tZXRhZGlyZWN0aXZlLTEwLmY5 MCAgICAgfCA0MCArKysrKysrKysrKysrKysrKysrCiAuLi4vZ2ZvcnRyYW4uZGcvZ29tcC9t ZXRhZGlyZWN0aXZlLTExLmY5MCAgICAgfCAzMyArKysrKysrKysrKysrKysKIC4uLi9nZm9y dHJhbi5kZy9nb21wL21ldGFkaXJlY3RpdmUtOS5mOTAgICAgICB8IDMwICsrKysrKysrKysr KysrCiA3IGZpbGVzIGNoYW5nZWQsIDE0MSBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMo LSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvbXAv bWV0YWRpcmVjdGl2ZS0xMC5mOTAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRl L2dmb3J0cmFuLmRnL2dvbXAvbWV0YWRpcmVjdGl2ZS0xMS5mOTAKIGNyZWF0ZSBtb2RlIDEw MDY0NCBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvbXAvbWV0YWRpcmVjdGl2ZS05LmY5 MAoKZGlmZiAtLWdpdCBnY2MvZm9ydHJhbi9DaGFuZ2VMb2cub21wIGdjYy9mb3J0cmFuL0No YW5nZUxvZy5vbXAKaW5kZXggOGM4OWNkNWJkNDMuLjE0Zjg5N2U4ZmVjIDEwMDY0NAotLS0g Z2NjL2ZvcnRyYW4vQ2hhbmdlTG9nLm9tcAorKysgZ2NjL2ZvcnRyYW4vQ2hhbmdlTG9nLm9t cApAQCAtMSwzICsxLDEwIEBACisyMDIyLTA5LTIxICBQYXVsLUFudG9pbmUgQXJyYXMgIDxw YUBjb2Rlc291cmNlcnkuY29tPgorCisJKiBwYXJzZS5jYyAoZ2ZjX2FzY2lpX3N0YXRlbWVu dCk6IE1pc3NpbmcgJCBpbiAhJE9NUCBFTkQgTUVUQURJUkVDVElWRS4KKwkocGFyc2Vfb21w X3N0cnVjdHVyZWRfYmxvY2spOiBGaXggaGFuZGxpbmcgb2YgT01QIGVuZCBtZXRhZGlyZWN0 aXZlLgorCShwYXJzZV9vbXBfbWV0YWRpcmVjdGl2ZV9ib2R5KTogUmVqZWN0IE9NUCBlbmQg c3RhdGVtZW50cworCWF0IHRoZSBlbmQgb2YgYW4gT01QIG1ldGFkaXJlY3RpdmUuCisKIDIw MjItMDktMDkgIFRvYmlhcyBCdXJudXMgIDx0b2JpYXNAY29kZXNvdXJjZXJ5LmNvbT4KIAog CUJhY2twb3J0IGZyb20gbWFpbmxpbmU6CmRpZmYgLS1naXQgZ2NjL2ZvcnRyYW4vcGFyc2Uu Y2MgZ2NjL2ZvcnRyYW4vcGFyc2UuY2MKaW5kZXggYjM1ZDc2YTRmNmIuLmZjODgxMTFhN2Fk IDEwMDY0NAotLS0gZ2NjL2ZvcnRyYW4vcGFyc2UuY2MKKysrIGdjYy9mb3J0cmFuL3BhcnNl LmNjCkBAIC0yNTE3LDcgKzI1MTcsNyBAQCBnZmNfYXNjaWlfc3RhdGVtZW50IChnZmNfc3Rh dGVtZW50IHN0KQogICAgICAgcCA9ICIhJE9NUCBFTkQgTUFTVEVSIFRBU0tMT09QIFNJTUQi OwogICAgICAgYnJlYWs7CiAgICAgY2FzZSBTVF9PTVBfRU5EX01FVEFESVJFQ1RJVkU6Ci0g ICAgICBwID0gIiFPTVAgRU5EIE1FVEFESVJFQ1RJVkUiOworICAgICAgcCA9ICIhJE9NUCBF TkQgTUVUQURJUkVDVElWRSI7CiAgICAgICBicmVhazsKICAgICBjYXNlIFNUX09NUF9FTkRf T1JERVJFRDoKICAgICAgIHAgPSAiISRPTVAgRU5EIE9SREVSRUQiOwpAQCAtNTY0Myw5ICs1 NjQzLDE1IEBAIHBhcnNlX29tcF9zdHJ1Y3R1cmVkX2Jsb2NrIChnZmNfc3RhdGVtZW50IG9t cF9zdCwgYm9vbCB3b3Jrc2hhcmVfc3RtdHNfb25seSkKICAgbnAtPmJsb2NrID0gTlVMTDsK IAogICBvbXBfZW5kX3N0ID0gZ2ZjX29tcF9lbmRfc3RtdCAob21wX3N0LCBmYWxzZSwgdHJ1 ZSk7Ci0gIGlmIChvbXBfc3QgPT0gU1RfTk9ORSkKKyAgaWYgKG9tcF9lbmRfc3QgPT0gU1Rf Tk9ORSkKICAgICBnY2NfdW5yZWFjaGFibGUgKCk7CiAKKyAgLyogSWYgaGFuZGxpbmcgYSBt ZXRhZGlyZWN0aXZlIHZhcmlhbnQsIHRyZWF0ICdvbXAgZW5kIG1ldGFkaXJlY3RpdmUnCisg ICAgIGFzIHRoZSBleHBlY3RlZCBlbmQgc3RhdGVtZW50IGZvciB0aGUgY3VycmVudCBjb25z dHJ1Y3QuICAqLworICBpZiAoZ2ZjX3N0YXRlX3N0YWNrLT5wcmV2aW91cyAhPSBOVUxMCisg ICAgICAmJiBnZmNfc3RhdGVfc3RhY2stPnByZXZpb3VzLT5zdGF0ZSA9PSBDT01QX09NUF9C RUdJTl9NRVRBRElSRUNUSVZFKQorICAgIG9tcF9lbmRfc3QgPSBTVF9PTVBfRU5EX01FVEFE SVJFQ1RJVkU7CisKICAgYm9vbCBibG9ja19jb25zdHJ1Y3QgPSBmYWxzZTsKICAgZ2ZjX25h bWVzcGFjZSAqbXlfbnMgPSBOVUxMOwogICBnZmNfbmFtZXNwYWNlICpteV9wYXJlbnQgPSBO VUxMOwpAQCAtNTc0NCwxMyArNTc1MCw2IEBAIHBhcnNlX29tcF9zdHJ1Y3R1cmVkX2Jsb2Nr IChnZmNfc3RhdGVtZW50IG9tcF9zdCwgYm9vbCB3b3Jrc2hhcmVfc3RtdHNfb25seSkKICAg ICAgIGVsc2UKIAlzdCA9IHBhcnNlX2V4ZWN1dGFibGUgKHN0KTsKIAotICAgICAgLyogSWYg aGFuZGxpbmcgYSBtZXRhZGlyZWN0aXZlIHZhcmlhbnQsIHRyZWF0ICdvbXAgZW5kIG1ldGFk aXJlY3RpdmUnCi0JIGFzIHRoZSBleHBlY3RlZCBlbmQgc3RhdGVtZW50IGZvciB0aGUgY3Vy cmVudCBjb25zdHJ1Y3QuICAqLwotICAgICAgaWYgKHN0ID09IFNUX09NUF9FTkRfTUVUQURJ UkVDVElWRQotCSAgJiYgZ2ZjX3N0YXRlX3N0YWNrLT5wcmV2aW91cyAhPSBOVUxMCi0JICAm JiBnZmNfc3RhdGVfc3RhY2stPnByZXZpb3VzLT5zdGF0ZSA9PSBDT01QX09NUF9CRUdJTl9N RVRBRElSRUNUSVZFKQotCXN0ID0gb21wX2VuZF9zdDsKLQogICAgICAgaWYgKHN0ID09IFNU X05PTkUpCiAJdW5leHBlY3RlZF9lb2YgKCk7CiAgICAgICBlbHNlIGlmIChzdCA9PSBTVF9P TVBfU0VDVElPTgpAQCAtNTg2Myw2ICs1ODYyLDIxIEBAIHBhcnNlX29tcF9tZXRhZGlyZWN0 aXZlX2JvZHkgKGdmY19zdGF0ZW1lbnQgb21wX3N0KQogCSAgYnJlYWs7CiAJfQogCisgICAg ICBpZiAoZ2ZjX3N0YXRlX3N0YWNrLT5zdGF0ZSA9PSBDT01QX09NUF9NRVRBRElSRUNUSVZF CisJICAmJiBzdGFydHN3aXRoIChnZmNfYXNjaWlfc3RhdGVtZW50IChzdCksICIhJE9NUCBF TkQgIikpCisJeworCSAgZm9yIChnZmNfc3RhdGVfZGF0YSAqcCA9IGdmY19zdGF0ZV9zdGFj azsgcDsgcCA9IHAtPnByZXZpb3VzKQorCSAgICBpZiAocC0+c3RhdGUgPT0gQ09NUF9PTVBf U1RSVUNUVVJFRF9CTE9DSworCQl8fCBwLT5zdGF0ZSA9PSBDT01QX09NUF9CRUdJTl9NRVRB RElSRUNUSVZFKQorCSAgICAgIGdvdG8gZmluaXNoOworCSAgZ2ZjX2Vycm9yICgKKwkgICAg IlVuZXhwZWN0ZWQgJXMgc3RhdGVtZW50IGluIGFuIE9NUCBNRVRBRElSRUNUSVZFIGJsb2Nr IGF0ICVDIiwKKwkgICAgZ2ZjX2FzY2lpX3N0YXRlbWVudCAoc3QpKTsKKwkgIHJlamVjdF9z dGF0ZW1lbnQgKCk7CisJICBzdCA9IG5leHRfc3RhdGVtZW50ICgpOworCX0KKyAgICBmaW5p c2g6CisKICAgICAgIGdmY19pbl9tZXRhZGlyZWN0aXZlX2JvZHkgPSBvbGRfaW5fbWV0YWRp cmVjdGl2ZV9ib2R5OwogCiAgICAgICBpZiAoZ2ZjX3N0YXRlX3N0YWNrLT5oZWFkKQpkaWZm IC0tZ2l0IGdjYy90ZXN0c3VpdGUvQ2hhbmdlTG9nLm9tcCBnY2MvdGVzdHN1aXRlL0NoYW5n ZUxvZy5vbXAKaW5kZXggZTBjOGMxMzg2MjAuLmYwZDFiMWEzODhiIDEwMDY0NAotLS0gZ2Nj L3Rlc3RzdWl0ZS9DaGFuZ2VMb2cub21wCisrKyBnY2MvdGVzdHN1aXRlL0NoYW5nZUxvZy5v bXAKQEAgLTEsMyArMSwxMCBAQAorMjAyMi0wOS0yMSAgUGF1bC1BbnRvaW5lIEFycmFzICA8 cGFAY29kZXNvdXJjZXJ5LmNvbT4KKworCSogZ2ZvcnRyYW4uZGcvZ29tcC9tZXRhZGlyZWN0 aXZlLTEuZjkwOiBNYXRjaCAhJE9NUCBFTkQgTUVUQURJUkVDVElWRS4KKwkqIGdmb3J0cmFu LmRnL2dvbXAvbWV0YWRpcmVjdGl2ZS0xMC5mOTA6IE5ldyB0ZXN0LgorCSogZ2ZvcnRyYW4u ZGcvZ29tcC9tZXRhZGlyZWN0aXZlLTExLmY5MDogTmV3IHRlc3QuCisJKiBnZm9ydHJhbi5k Zy9nb21wL21ldGFkaXJlY3RpdmUtOS5mOTA6IE5ldyB0ZXN0LgorCiAyMDIyLTA5LTA5ICBQ YXVsLUFudG9pbmUgQXJyYXMgIDxwYUBjb2Rlc291cmNlcnkuY29tPgogCiAJQmFja3BvcnQg ZnJvbSBtYWlubGluZToKZGlmZiAtLWdpdCBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dv bXAvbWV0YWRpcmVjdGl2ZS0xLmY5MCBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvbXAv bWV0YWRpcmVjdGl2ZS0xLmY5MAppbmRleCBhYTQzOWZjODU1ZS4uY2E2MmFlY2FkODkgMTAw NjQ0Ci0tLSBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvbXAvbWV0YWRpcmVjdGl2ZS0x LmY5MAorKysgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb21wL21ldGFkaXJlY3RpdmUt MS5mOTAKQEAgLTM3LDUgKzM3LDUgQEAgcHJvZ3JhbSBtYWluCiAgICAgZG8gaSA9IDEsIE4K ICAgICAgIGMoaSkgPSBhKGkpICogYihpKQogICAgIGVuZCBkbwotICAhJG9tcCBlbmQgbWV0 YWRpcmVjdGl2ZSAhIHsgZGctZXJyb3IgIlVuZXhwZWN0ZWQgIU9NUCBFTkQgTUVUQURJUkVD VElWRSBzdGF0ZW1lbnQgYXQgLjEuIiB9CisgICEkb21wIGVuZCBtZXRhZGlyZWN0aXZlICEg eyBkZy1lcnJvciAiVW5leHBlY3RlZCAhLk9NUCBFTkQgTUVUQURJUkVDVElWRSBzdGF0ZW1l bnQgYXQgLjEuIiB9CiBlbmQgcHJvZ3JhbQpkaWZmIC0tZ2l0IGdjYy90ZXN0c3VpdGUvZ2Zv cnRyYW4uZGcvZ29tcC9tZXRhZGlyZWN0aXZlLTEwLmY5MCBnY2MvdGVzdHN1aXRlL2dmb3J0 cmFuLmRnL2dvbXAvbWV0YWRpcmVjdGl2ZS0xMC5mOTAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMDAwMDAuLjVkYWQ1ZDI5ZWI2Ci0tLSAvZGV2L251bGwKKysrIGdjYy90 ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29tcC9tZXRhZGlyZWN0aXZlLTEwLmY5MApAQCAtMCww ICsxLDQwIEBACishIHsgZGctZG8gY29tcGlsZSB9CisKK3Byb2dyYW0gbWV0YWRpcmVjdGl2 ZXMKKyAgIGltcGxpY2l0IG5vbmUKKyAgIGxvZ2ljYWwgOjogVXNlRGV2aWNlCisKKyAgICEk T01QIG1ldGFkaXJlY3RpdmUgJgorICAgISRPTVAgICB3aGVuICggdXNlciA9IHsgY29uZGl0 aW9uICggVXNlRGV2aWNlICkgfSAmCisgICAhJE9NUCAgICAgOiBwYXJhbGxlbCApICYKKyAg ICEkT01QICAgZGVmYXVsdCAoIHBhcmFsbGVsICkKKyAgIGJsb2NrCisgICAgICBjYWxsIGJh cigpCisgICBlbmQgYmxvY2sKKworICAgISRPTVAgbWV0YWRpcmVjdGl2ZSAmCisgICAhJE9N UCAgIHdoZW4gKCB1c2VyID0geyBjb25kaXRpb24gKCBVc2VEZXZpY2UgKSB9ICYKKyAgICEk T01QICAgICA6IHBhcmFsbGVsICkgJgorICAgISRPTVAgICBkZWZhdWx0ICggcGFyYWxsZWwg KQorICAgY2FsbCBiYXIoKQorICAgISRvbXAgZW5kIHBhcmFsbGVsICAhIEFjY2VwdGVkLCBi ZWNhdXNlIGFsbCBjYXNlcyBoYXZlICdwYXJhbGxlbCcKKyAgIAorICAgISRPTVAgYmVnaW4g bWV0YWRpcmVjdGl2ZSAmCisgICAhJE9NUCAgIHdoZW4gKCB1c2VyID0geyBjb25kaXRpb24g KCBVc2VEZXZpY2UgKSB9ICYKKyAgICEkT01QICAgICA6IG5vdGhpbmcgKSAmCisgICAhJE9N UCAgIGRlZmF1bHQgKCBwYXJhbGxlbCApCisgICBjYWxsIGJhcigpCisgICBibG9jaworICAg ICAgY2FsbCBmb28oKQorICAgZW5kIGJsb2NrCisgICAhJE9NUCBlbmQgbWV0YWRpcmVjdGl2 ZQorCisgICAhJE9NUCBiZWdpbiBtZXRhZGlyZWN0aXZlICYKKyAgICEkT01QICAgd2hlbiAo IHVzZXIgPSB7IGNvbmRpdGlvbiAoIFVzZURldmljZSApIH0gJgorICAgISRPTVAgICAgIDog cGFyYWxsZWwgKSAmCisgICAhJE9NUCAgIGRlZmF1bHQgKCBwYXJhbGxlbCApCisgICBjYWxs IGJhcigpCisgICAhJG9tcCBlbmQgcGFyYWxsZWwgICEgeyBkZy1lcnJvciAiVW5leHBlY3Rl ZCAhLk9NUCBFTkQgUEFSQUxMRUwgc3RhdGVtZW50IGF0IC4xLiIgfQorZW5kIHByb2dyYW0g ISB7IGRnLWVycm9yICJVbmV4cGVjdGVkIEVORCBzdGF0ZW1lbnQgYXQgLjEuIiB9CisKKyEg eyBkZy1lcnJvciAiVW5leHBlY3RlZCBlbmQgb2YgZmlsZSIgIiIgeyB0YXJnZXQgKi0qLSog fSAwIH0KZGlmZiAtLWdpdCBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvbXAvbWV0YWRp cmVjdGl2ZS0xMS5mOTAgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb21wL21ldGFkaXJl Y3RpdmUtMTEuZjkwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5l N2RlNzBlNjI1OQotLS0gL2Rldi9udWxsCisrKyBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRn L2dvbXAvbWV0YWRpcmVjdGl2ZS0xMS5mOTAKQEAgLTAsMCArMSwzMyBAQAorISB7IGRnLWRv IGNvbXBpbGUgfQorISB7IGRnLWljZSAiU3RhdGVtZW50cyBmb2xsb3dpbmcgYSBibG9jayBp biBhIG1ldGFkaXJlY3RpdmUiIH0KKyEgUFIgZm9ydHJhbi8xMDcwNjcKKworcHJvZ3JhbSBt ZXRhZGlyZWN0aXZlcworICAgaW1wbGljaXQgbm9uZQorICAgbG9naWNhbCA6OiBVc2VEZXZp Y2UKKworICAgISRPTVAgYmVnaW4gbWV0YWRpcmVjdGl2ZSAmCisgICAhJE9NUCAgIHdoZW4g KCB1c2VyID0geyBjb25kaXRpb24gKCBVc2VEZXZpY2UgKSB9ICYKKyAgICEkT01QICAgICA6 IG5vdGhpbmcgKSAmCisgICAhJE9NUCAgIGRlZmF1bHQgKCBwYXJhbGxlbCApCisgICBibG9j aworICAgICAgY2FsbCBmb28oKQorICAgZW5kIGJsb2NrCisgICBjYWxsIGJhcigpICAgISBG SVhNRS9YRkFJTCBJQ0UgaW4gcGFyc2Vfb21wX21ldGFkaXJlY3RpdmVfYm9keSgpCisgICAh JG9tcCBlbmQgbWV0YWRpcmVjdGl2ZQorCisKKyAgICEkT01QIGJlZ2luIG1ldGFkaXJlY3Rp dmUgJgorICAgISRPTVAgICB3aGVuICggdXNlciA9IHsgY29uZGl0aW9uICggVXNlRGV2aWNl ICkgfSAmCisgICAhJE9NUCAgICAgOiBub3RoaW5nICkgJgorICAgISRPTVAgICBkZWZhdWx0 ICggcGFyYWxsZWwgKQorICAgYmxvY2sKKyAgICAgIGNhbGwgYmFyKCkKKyAgIGVuZCBibG9j aworICAgYmxvY2sgICAgICAgICEgRklYTUUvWEZBSUwgSUNFIGluIHBhcnNlX29tcF9tZXRh ZGlyZWN0aXZlX2JvZHkoKQorICAgICAgY2FsbCBmb28oKQorICAgZW5kIGJsb2NrCisgICAh JG9tcCBlbmQgbWV0YWRpcmVjdGl2ZQorZW5kIHByb2dyYW0KKworCmRpZmYgLS1naXQgZ2Nj L3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb21wL21ldGFkaXJlY3RpdmUtOS5mOTAgZ2NjL3Rl c3RzdWl0ZS9nZm9ydHJhbi5kZy9nb21wL21ldGFkaXJlY3RpdmUtOS5mOTAKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmU2YWIzZmMwYTY1Ci0tLSAvZGV2L251 bGwKKysrIGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29tcC9tZXRhZGlyZWN0aXZlLTku ZjkwCkBAIC0wLDAgKzEsMzAgQEAKKyEgeyBkZy1kbyBjb21waWxlIH0KKworcHJvZ3JhbSBP cGVuTVBfTWV0YWRpcmVjdGl2ZV9Xcm9uZ0VuZF9UZXN0CisgIGltcGxpY2l0IG5vbmUKKwor ICBpbnRlZ2VyIDo6ICYKKyAgaWFWUywgaVYsIGpWLCBrVgorICBpbnRlZ2VyLCBkaW1lbnNp b24gKCAzICkgOjogJgorICAgIGxWLCB1VgorICBsb2dpY2FsIDo6ICYKKyAgICBVc2VEZXZp Y2UKKworICAgICEkT01QIG1ldGFkaXJlY3RpdmUgJgorICAgICEkT01QICAgd2hlbiAoIHVz ZXIgPSB7IGNvbmRpdGlvbiAoIFVzZURldmljZSApIH0gJgorICAgICEkT01QICAgICA6IHRh cmdldCB0ZWFtcyBkaXN0cmlidXRlIHBhcmFsbGVsIGRvIHNpbWQgY29sbGFwc2UgKCAzICkg JgorICAgICEkT01QICAgICAgICAgcHJpdmF0ZSAoIGlhVlMgKSApICYKKyAgICAhJE9NUCAg IGRlZmF1bHQgKCBwYXJhbGxlbCBkbyBzaW1kIGNvbGxhcHNlICggMyApIHByaXZhdGUgKCBp YVZTICkgKQorICAgIGRvIGtWID0gbFYgKCAzICksIHVWICggMyApCisgICAgICBkbyBqViA9 IGxWICggMiApLCB1ViAoIDIgKQorICAgICAgICBkbyBpViA9IGxWICggMSApLCB1ViAoIDEg KQorCisKKyAgICAgICAgZW5kIGRvCisgICAgICBlbmQgZG8KKyAgICBlbmQgZG8KKyAgICAh JE9NUCBlbmQgdGFyZ2V0IHRlYW1zIGRpc3RyaWJ1dGUgcGFyYWxsZWwgZG8gc2ltZCAhIHsg ZGctZXJyb3IgIlVuZXhwZWN0ZWQgIS5PTVAgRU5EIFRBUkdFVCBURUFNUyBESVNUUklCVVRF IFBBUkFMTEVMIERPIFNJTUQgc3RhdGVtZW50IGluIGFuIE9NUCBNRVRBRElSRUNUSVZFIGJs b2NrIGF0IC4xLiIgfQorCisKK2VuZCBwcm9ncmFtCisKLS0gCjIuMzEuMQoK --------------zIIonnMB1G2L48RaG6CL7LZ4--