From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25409 invoked by alias); 18 Dec 2012 18:04:07 -0000 Received: (qmail 25393 invoked by uid 22791); 18 Dec 2012 18:04:04 -0000 X-SWARE-Spam-Status: No, hits=-7.5 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_DNSWL_HI,RCVD_IN_HOSTKARMA_W,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mga01.intel.com (HELO mga01.intel.com) (192.55.52.88) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 18 Dec 2012 18:03:56 +0000 Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga101.fm.intel.com with ESMTP; 18 Dec 2012 10:03:55 -0800 X-ExtLoop1: 1 Received: from fmsmsx105.amr.corp.intel.com ([10.19.9.36]) by fmsmga001.fm.intel.com with ESMTP; 18 Dec 2012 10:03:55 -0800 Received: from fmsmsx102.amr.corp.intel.com ([169.254.2.188]) by FMSMSX105.amr.corp.intel.com ([169.254.5.108]) with mapi id 14.01.0355.002; Tue, 18 Dec 2012 10:03:54 -0800 From: "Iyer, Balaji V" To: Jakub Jelinek CC: "gcc-patches@gcc.gnu.org" Subject: RE: [PATCH][Cilkplus] Fix pragma simd info being lost Date: Tue, 18 Dec 2012 18:04:00 -0000 Message-ID: References: <20121214165843.GZ2315@tucnak.redhat.com> <20121214170830.GA2315@tucnak.redhat.com> In-Reply-To: <20121214170830.GA2315@tucnak.redhat.com> Content-Type: multipart/mixed; boundary="_002_BF230D13CA30DD48930C31D40993300016CEDF37FMSMSX102amrcor_" MIME-Version: 1.0 X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2012-12/txt/msg01140.txt.bz2 --_002_BF230D13CA30DD48930C31D40993300016CEDF37FMSMSX102amrcor_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-length: 1163 > -----Original Message----- > From: gcc-patches-owner@gcc.gnu.org [mailto:gcc-patches- > owner@gcc.gnu.org] On Behalf Of Jakub Jelinek > Sent: Friday, December 14, 2012 12:09 PM > To: Iyer, Balaji V > Cc: gcc-patches@gcc.gnu.org > Subject: Re: [PATCH][Cilkplus] Fix pragma simd info being lost >=20 > On Fri, Dec 14, 2012 at 05:01:48PM +0000, Iyer, Balaji V wrote: > > > Why do you think fatal_error is the right thing here? Why doesn't > > > normal error work? Generally, if one function contains 10 #pragma > > > simd loops that require vectorization and 5 out of them aren't > > > vectorized, it is nicer for users to be told about all 5 of them, rat= her than just > the first one. > > > fatal_error will exit immediately. > > > > The #pragma simd assert requires the compiler to halt compilation if > > the loop is not vectorized. This is why I used fatal_error. The > > default case is noassert. >=20 > The compilation is halted even with error, compiler will exit with non-ze= ro exit > status, won't compile any further functions, etc. Here is a patch where I have replaced all fatal_errors with error_at. Thanks, Balaji V. Iyer. >=20 > Jakub --_002_BF230D13CA30DD48930C31D40993300016CEDF37FMSMSX102amrcor_ Content-Type: text/plain; name="patch_fatal_error_to_error_at.txt" Content-Description: patch_fatal_error_to_error_at.txt Content-Disposition: attachment; filename="patch_fatal_error_to_error_at.txt"; size=14463; creation-date="Tue, 18 Dec 2012 18:02:52 GMT"; modification-date="Tue, 18 Dec 2012 16:56:48 GMT" Content-Transfer-Encoding: base64 Content-length: 19606 SW5kZXg6IGdjYy9DaGFuZ2VMb2cuY2lsa3BsdXMKPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQotLS0gZ2NjL0NoYW5nZUxvZy5jaWxrcGx1cwkocmV2aXNpb24g MTk0NTg1KQorKysgZ2NjL0NoYW5nZUxvZy5jaWxrcGx1cwkod29ya2luZyBj b3B5KQpAQCAtMSwzICsxLDExIEBACisyMDEyLTEyLTE4ICBCYWxhamkgVi4g SXllciAgPGJhbGFqaS52Lml5ZXJAaW50ZWwuY29tPgorCisJKiB0cmVlLXZl Y3QtbG9vcC5jICh2ZWN0X2RldGVybWluZV92ZWN0b3JpemF0aW9uX2ZhY3Rv cik6IFJlcGxhY2VkIGFsbAorCW9jY3VyYW5jZXMgb2YgImZhdGFsX2Vycm9y IiB3aXRoIGVycm9yX2F0IHdpdGggdmVjdF9sb2NhdGlvbi4KKwkodmVjdF9h bmFseXplX2xvb3BfZm9ybSk6IExpa2V3aXNlLgorCSh2ZWN0X2FuYWx5emVf bG9vcF9vcGVyYXRpb25zKTogTGlrZXdpc2UuCisJKHZlY3RfYW5hbHl6ZV9s b29wKTogTGlrZXdpc2UuCisKIDIwMTItMTItMTYgIEJhbGFqaSBWLiBJeWVy ICA8YmFsYWppLnYuaXllckBpbnRlbC5jb20+CiAKIAkqIHRyZWUuaCAoR1RZ KTogQWRkZWQgbmV3IGZpZWxkIGluIHN0cnVjdCBjYWxsZWQgImRlY2xfYXV0 by4iCkluZGV4OiBnY2MvdHJlZS12ZWN0LWxvb3AuYwo9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09Ci0tLSBnY2MvdHJlZS12ZWN0LWxvb3AuYwkocmV2aXNpb24g MTk0NTg1KQorKysgZ2NjL3RyZWUtdmVjdC1sb29wLmMJKHdvcmtpbmcgY29w eSkKQEAgLTIzMywxMCArMjMzLDggQEAKIAkJICAgIH0KIAkJICBpZiAoZmxh Z19lbmFibGVfY2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVxdWVzdGVk X3AKIAkJICAgICAgKGxvb3AtPnByYWdtYV9zaW1kX2luZGV4KSkKLQkJICAg IHsKLQkJICAgICAgZmF0YWxfZXJyb3IgKCJMb29wIG5vdCB2ZWN0b3JpemVk LiAiIAotCQkJCSAgICJFeGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEg U0lNRCIpOwotCQkgICAgfQorCQkgICAgZXJyb3JfYXQgKHZlY3RfbG9jYXRp b24sICJsb29wIG5vdCB2ZWN0b3JpemVkLiAiIAorCQkJICAgICAgIkV4aXRp bmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7CiAJCSAgcmV0dXJu IGZhbHNlOwogCQl9CiAJICAgICAgLyogaGVyZSB3ZSBzZXQgdGhlIGxpbmVh ciBpbmZvICovCkBAIC00MTEsMTAgKzQwOSw4IEBACiAJCX0KIAkgICAgICBp ZiAoZmxhZ19lbmFibGVfY2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVx dWVzdGVkX3AgCiAJCSAgKGxvb3AtPnByYWdtYV9zaW1kX2luZGV4KSkKLQkJ ewotCQkgIGZhdGFsX2Vycm9yICgiTG9vcCBub3QgdmVjdG9yaXplZC4gIiAK LQkJCSAgICAgICAiRXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkgUFJBR01BIFNJ TUQiKTsKLQkJfQorCQllcnJvcl9hdCAodmVjdF9sb2NhdGlvbiwgImxvb3Ag bm90IHZlY3Rvcml6ZWQuICIgCisJCQkgICJFeGl0aW5nIGFzIHJlcXVlc3Rl ZCBieSBQUkFHTUEgU0lNRCIpOwogCSAgICAgIHJldHVybiBmYWxzZTsKIAkg ICAgfQogCkBAIC00MjgsMTAgKzQyNCw4IEBACiAJICAgICAgICB9CiAJICAg ICAgaWYgKGZsYWdfZW5hYmxlX2NpbGsgJiYgcHJhZ21hX3NpbWRfYXNzZXJ0 X3JlcXVlc3RlZF9wIAogCQkgIChsb29wLT5wcmFnbWFfc2ltZF9pbmRleCkp Ci0JCXsKLQkJICBmYXRhbF9lcnJvciAoIkxvb3Agbm90IHZlY3Rvcml6ZWQu ICIgCi0JCQkgICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFBSQUdN QSBTSU1EIik7Ci0JCX0KKwkJZXJyb3JfYXQgKHZlY3RfbG9jYXRpb24sICJs b29wIG5vdCB2ZWN0b3JpemVkLiAiIAorCQkJICAiRXhpdGluZyBhcyByZXF1 ZXN0ZWQgYnkgUFJBR01BIFNJTUQiKTsKIAkgICAgICByZXR1cm4gZmFsc2U7 CiAJICAgIH0KIApAQCAtNDY4LDExICs0NjIsOSBAQAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsYXJfdHlwZSk7CiAJ CSAgICB9CiAJCSAgaWYgKGZsYWdfZW5hYmxlX2NpbGsgJiYgcHJhZ21hX3Np bWRfYXNzZXJ0X3JlcXVlc3RlZF9wIAotCQkgICAgICAobG9vcC0+cHJhZ21h X3NpbWRfaW5kZXgpKQotCQkgICAgewotCQkgICAgICBmYXRhbF9lcnJvciAo Ikxvb3Agbm90IHZlY3Rvcml6ZWQuICIgCi0JCQkJICAgIkV4aXRpbmcgYXMg cmVxdWVzdGVkIGJ5IFBSQUdNQSBTSU1EIik7Ci0JCSAgICB9CisJCSAgICAg IChsb29wLT5wcmFnbWFfc2ltZF9pbmRleCkpIAorCQkgICAgZXJyb3JfYXQg KHZlY3RfbG9jYXRpb24sICJsb29wIG5vdCB2ZWN0b3JpemVkLiAiIAorCQkJ ICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFBSQUdNQSBTSU1EIik7 ICAgCiAJCSAgcmV0dXJuIGZhbHNlOwogCQl9CiAJCS8qIGhlcmUgd2Ugc2V0 IHRoZSBsaW5lYXIgaW5mbyAqLwpAQCAtNTE3LDEwICs1MDksOCBAQAogCQl9 CiAJICAgICAgaWYgKGZsYWdfZW5hYmxlX2NpbGsgJiYgcHJhZ21hX3NpbWRf YXNzZXJ0X3JlcXVlc3RlZF9wIAogCQkgIChsb29wLT5wcmFnbWFfc2ltZF9p bmRleCkpCi0JCXsKLQkJICBmYXRhbF9lcnJvciAoIkxvb3Agbm90IHZlY3Rv cml6ZWQuICIgCi0JCQkgICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5 IFBSQUdNQSBTSU1EIik7Ci0JCX0KKwkJZXJyb3JfYXQgKHZlY3RfbG9jYXRp b24sICJsb29wIG5vdCB2ZWN0b3JpemVkLiAiIAorCQkJICAiRXhpdGluZyBh cyByZXF1ZXN0ZWQgYnkgUFJBR01BIFNJTUQiKTsKIAkgICAgICByZXR1cm4g ZmFsc2U7CiAJICAgIH0KIApAQCAtNTQwLDEwICs1MzAsOCBAQAogCQl9CiAJ ICAgICAgaWYgKGZsYWdfZW5hYmxlX2NpbGsgJiYgcHJhZ21hX3NpbWRfYXNz ZXJ0X3JlcXVlc3RlZF9wIAogCQkgIChsb29wLT5wcmFnbWFfc2ltZF9pbmRl eCkpCi0JCXsKLQkJICBmYXRhbF9lcnJvciAoIkxvb3Agbm90IHZlY3Rvcml6 ZWQuICIgCi0JCQkgICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFBS QUdNQSBTSU1EIik7Ci0JCX0KKwkJZXJyb3JfYXQgKHZlY3RfbG9jYXRpb24s ICJsb29wIG5vdCB2ZWN0b3JpemVkLiAiIAorCQkJICAiRXhpdGluZyBhcyBy ZXF1ZXN0ZWQgYnkgUFJBR01BIFNJTUQiKTsKIAkgICAgICByZXR1cm4gZmFs c2U7CiAJICAgIH0KIApAQCAtNjA2LDEwICs1OTQsOCBAQAogCiAgICAgICBp ZiAoZmxhZ19lbmFibGVfY2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVx dWVzdGVkX3AgCiAJICAobG9vcC0+cHJhZ21hX3NpbWRfaW5kZXgpKQotCXsK LQkgIGZhdGFsX2Vycm9yICgiTG9vcCBub3QgdmVjdG9yaXplZC4gIiAKLQkJ ICAgICAgICJFeGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEgU0lNRCIp OwotCX0KKwllcnJvcl9hdCAodmVjdF9sb2NhdGlvbiwgImxvb3Agbm90IHZl Y3Rvcml6ZWQuICIgCisJCSAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFBy YWdtYSBTSU1EIik7CQogICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAg TE9PUF9WSU5GT19WRUNUX0ZBQ1RPUiAobG9vcF92aW5mbykgPSB2ZWN0b3Jp emF0aW9uX2ZhY3RvcjsKQEAgLTExOTEsOCArMTE3Nyw4IEBACiAJCQkgICAg ICJub3QgdmVjdG9yaXplZDogY29udHJvbCBmbG93IGluIGxvb3AuIik7IAog CSAgaWYgKGZsYWdfZW5hYmxlX2NpbGsgJiYgcHJhZ21hX3NpbWRfYXNzZXJ0 X3JlcXVlc3RlZF9wIAogCSAgICAgIChsb29wLT5wcmFnbWFfc2ltZF9pbmRl eCkpIAotCSAgICBmYXRhbF9lcnJvciAoIkxvb3Agbm90IHZlY3Rvcml6ZWQu ICIgCi0JCQkgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBTSU1E Iik7IAorCSAgICBlcnJvcl9hdCAodmVjdF9sb2NhdGlvbiwgImxvb3Agbm90 IHZlY3Rvcml6ZWQuICIgCisJCSAgICAgICJFeGl0aW5nIGFzIHJlcXVlc3Rl ZCBieSBQcmFnbWEgU0lNRCIpOyAKICAgICAgICAgICByZXR1cm4gTlVMTDsK ICAgICAgICAgfQogCkBAIC0xMjAzLDggKzExODksOCBAQAogCQkJICAgICAi bm90IHZlY3Rvcml6ZWQ6IGVtcHR5IGxvb3AuIik7CiAJICBpZiAoZmxhZ19l bmFibGVfY2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVxdWVzdGVkX3Ag CiAJICAgICAgKGxvb3AtPnByYWdtYV9zaW1kX2luZGV4KSkgCi0JICAgIGZh dGFsX2Vycm9yICgiTG9vcCBub3QgdmVjdG9yaXplZC4gIiAKLQkJCSAiRXhp dGluZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsgCisJICAgIGVy cm9yX2F0ICh2ZWN0X2xvY2F0aW9uLCAibG9vcCBub3QgdmVjdG9yaXplZC4g IiAKKwkJICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBT SU1EIik7CiAJICByZXR1cm4gTlVMTDsKIAl9CiAgICAgfQpAQCAtMTIzNyw4 ICsxMjIzLDggQEAKIAkJCSAgICAgIm5vdCB2ZWN0b3JpemVkOiBtdWx0aXBs ZSBuZXN0ZWQgbG9vcHMuIik7CiAJICBpZiAoZmxhZ19lbmFibGVfY2lsayAm JiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVxdWVzdGVkX3AgCiAJICAgICAgKGxv b3AtPnByYWdtYV9zaW1kX2luZGV4KSkgCi0JICAgIGZhdGFsX2Vycm9yICgi TG9vcCBub3QgdmVjdG9yaXplZC4gIiAKLQkJCSAiRXhpdGluZyBhcyByZXF1 ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsgCisJICAgIGVycm9yX2F0ICh2ZWN0 X2xvY2F0aW9uLCAibG9vcCBub3QgdmVjdG9yaXplZC4gIiAKKwkJICAgICAg IkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7CiAJICBy ZXR1cm4gTlVMTDsKIAl9CiAKQEAgLTEyNTEsOCArMTIzNyw4IEBACiAJCQkg ICAgICJub3QgdmVjdG9yaXplZDogQmFkIGlubmVyIGxvb3AuIik7CiAJICBp ZiAoZmxhZ19lbmFibGVfY2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVx dWVzdGVkX3AgCiAJICAgICAgKGxvb3AtPnByYWdtYV9zaW1kX2luZGV4KSkg Ci0JICAgIGZhdGFsX2Vycm9yICgiTG9vcCBub3QgdmVjdG9yaXplZC4gIiAK LQkJCSAiRXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsg CisJICAgIGVycm9yX2F0ICh2ZWN0X2xvY2F0aW9uLCAibG9vcCBub3QgdmVj dG9yaXplZC4gIiAKKwkJICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5 IFByYWdtYSBTSU1EIik7CiAJICByZXR1cm4gTlVMTDsKIAl9CiAKQEAgLTEy NjQsOCArMTI1MCw4IEBACiAJCQkgICAgICJub3QgdmVjdG9yaXplZDogaW5u ZXItbG9vcCBjb3VudCBub3QgaW52YXJpYW50LiIpOwogCSAgaWYgKGZsYWdf ZW5hYmxlX2NpbGsgJiYgcHJhZ21hX3NpbWRfYXNzZXJ0X3JlcXVlc3RlZF9w IAogCSAgICAgIChsb29wLT5wcmFnbWFfc2ltZF9pbmRleCkpIAotCSAgICBm YXRhbF9lcnJvciAoIkxvb3Agbm90IHZlY3Rvcml6ZWQuICIgCi0JCQkgIkV4 aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7IAorCSAgICBl cnJvcl9hdCAodmVjdF9sb2NhdGlvbiwgImxvb3Agbm90IHZlY3Rvcml6ZWQu ICIgCisJCSAgICAgICJFeGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEg U0lNRCIpOyAKIAkgIGRlc3Ryb3lfbG9vcF92ZWNfaW5mbyAoaW5uZXJfbG9v cF92aW5mbywgdHJ1ZSk7CiAJICByZXR1cm4gTlVMTDsKIAl9CkBAIC0xMjc3 LDggKzEyNjMsOCBAQAogCQkJICAgICAibm90IHZlY3Rvcml6ZWQ6IGNvbnRy b2wgZmxvdyBpbiBsb29wLiIpOwogCSAgaWYgKGZsYWdfZW5hYmxlX2NpbGsg JiYgcHJhZ21hX3NpbWRfYXNzZXJ0X3JlcXVlc3RlZF9wIAogCSAgICAgIChs b29wLT5wcmFnbWFfc2ltZF9pbmRleCkpIAotCSAgICBmYXRhbF9lcnJvciAo Ikxvb3Agbm90IHZlY3Rvcml6ZWQuICIgCi0JCQkgIkV4aXRpbmcgYXMgcmVx dWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7IAorCSAgICBlcnJvcl9hdCAodmVj dF9sb2NhdGlvbiwgImxvb3Agbm90IHZlY3Rvcml6ZWQuICIgCisJCSAgICAg ICJFeGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEgU0lNRCIpOyAKIAkg IGRlc3Ryb3lfbG9vcF92ZWNfaW5mbyAoaW5uZXJfbG9vcF92aW5mbywgdHJ1 ZSk7CiAJICByZXR1cm4gTlVMTDsKICAgICAgICAgfQpAQCAtMTI5Nyw4ICsx MjgzLDggQEAKIAkJCSAgICAgIm5vdCB2ZWN0b3JpemVkOiB1bnN1cHBvcnRl ZCBvdXRlcmxvb3AgZm9ybS4iKTsKIAkgIGlmIChmbGFnX2VuYWJsZV9jaWxr ICYmIHByYWdtYV9zaW1kX2Fzc2VydF9yZXF1ZXN0ZWRfcCAKIAkgICAgICAo bG9vcC0+cHJhZ21hX3NpbWRfaW5kZXgpKSAKLQkgICAgZmF0YWxfZXJyb3Ig KCJMb29wIG5vdCB2ZWN0b3JpemVkLiAiIAotCQkJICJFeGl0aW5nIGFzIHJl cXVlc3RlZCBieSBQcmFnbWEgU0lNRCIpOyAKKwkgICAgZXJyb3JfYXQgKHZl Y3RfbG9jYXRpb24sICJsb29wIG5vdCB2ZWN0b3JpemVkLiAiIAorCQkgICAg ICAiRXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsgCiAJ ICBkZXN0cm95X2xvb3BfdmVjX2luZm8gKGlubmVyX2xvb3BfdmluZm8sIHRy dWUpOwogCSAgcmV0dXJuIE5VTEw7CiAJfQpAQCAtMTMxOSwxNiArMTMwNSwx NiBAQAogCQkJICAgICAgICJub3QgdmVjdG9yaXplZDogbXVsdGlwbGUgZXhp dHMuIik7IAogCSAgICAgIGlmIChmbGFnX2VuYWJsZV9jaWxrICYmIHByYWdt YV9zaW1kX2Fzc2VydF9yZXF1ZXN0ZWRfcCAKIAkJICAobG9vcC0+cHJhZ21h X3NpbWRfaW5kZXgpKSAKLQkJZmF0YWxfZXJyb3IgKCJMb29wIG5vdCB2ZWN0 b3JpemVkLiAiIAotCQkJICAgICAiRXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkg UHJhZ21hIFNJTUQiKTsgCisJCWVycm9yX2F0ICh2ZWN0X2xvY2F0aW9uLCAi bG9vcCBub3QgdmVjdG9yaXplZC4gIiAKKwkJCSAgIkV4aXRpbmcgYXMgcmVx dWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7IAogCSAgICB9CiAgICAgICAgICAg ZWxzZSBpZiAoRURHRV9DT1VOVCAobG9vcC0+aGVhZGVyLT5wcmVkcykgIT0g MikKIAkgICAgZHVtcF9wcmludGZfbG9jIChNU0dfTUlTU0VEX09QVElNSVpB VElPTiwgdmVjdF9sb2NhdGlvbiwgCiAJCQkgICAgICJub3QgdmVjdG9yaXpl ZDogdG9vIG1hbnkgaW5jb21pbmcgZWRnZXMuIik7CiAJICBpZiAoZmxhZ19l bmFibGVfY2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVxdWVzdGVkX3Ag CiAJICAgICAgKGxvb3AtPnByYWdtYV9zaW1kX2luZGV4KSkgCi0JICAgIGZh dGFsX2Vycm9yICgiTG9vcCBub3QgdmVjdG9yaXplZC4gIiAKLQkJCSAiRXhp dGluZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsgCisJICAgIGVy cm9yX2F0ICh2ZWN0X2xvY2F0aW9uLCAibG9vcCBub3QgdmVjdG9yaXplZC4g IiAKKwkJICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBT SU1EIik7IAogICAgICAgICB9CiAgICAgICBpZiAoaW5uZXJfbG9vcF92aW5m bykKIAlkZXN0cm95X2xvb3BfdmVjX2luZm8gKGlubmVyX2xvb3BfdmluZm8s IHRydWUpOwpAQCAtMTM0Nyw4ICsxMzMzLDggQEAKIAkJCSAibm90IHZlY3Rv cml6ZWQ6IHVuZXhwZWN0ZWQgbG9vcCBmb3JtLiIpOwogCSAgaWYgKGZsYWdf ZW5hYmxlX2NpbGsgJiYgcHJhZ21hX3NpbWRfYXNzZXJ0X3JlcXVlc3RlZF9w IAogCSAgICAgIChsb29wLT5wcmFnbWFfc2ltZF9pbmRleCkpIAotCSAgICBm YXRhbF9lcnJvciAoIkxvb3Agbm90IHZlY3Rvcml6ZWQuICIgCi0JCQkgIkV4 aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7IAorCSAgICBl cnJvcl9hdCAodmVjdF9sb2NhdGlvbiwgImxvb3Agbm90IHZlY3Rvcml6ZWQu ICIgCisJCSAgICAgICJFeGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEg U0lNRCIpOyAKICAgICAgIGlmIChpbm5lcl9sb29wX3ZpbmZvKQogCWRlc3Ry b3lfbG9vcF92ZWNfaW5mbyAoaW5uZXJfbG9vcF92aW5mbywgdHJ1ZSk7CiAg ICAgICByZXR1cm4gTlVMTDsKQEAgLTEzNzEsOCArMTM1Nyw4IEBACiAJCQkg ICAgICJub3QgdmVjdG9yaXplZDogYWJub3JtYWwgbG9vcCBleGl0IGVkZ2Uu Iik7CiAJICBpZiAoZmxhZ19lbmFibGVfY2lsayAmJiBwcmFnbWFfc2ltZF9h c3NlcnRfcmVxdWVzdGVkX3AgCiAJICAgICAgKGxvb3AtPnByYWdtYV9zaW1k X2luZGV4KSkgCi0JICAgIGZhdGFsX2Vycm9yICgiTG9vcCBub3QgdmVjdG9y aXplZC4gIiAKLQkJCSAiRXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21h IFNJTUQiKTsgCisJICAgIGVycm9yX2F0ICh2ZWN0X2xvY2F0aW9uLCAibG9v cCBub3QgdmVjdG9yaXplZC4gIiAKKwkJICAgICAgIkV4aXRpbmcgYXMgcmVx dWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7IAogCSAgaWYgKGlubmVyX2xvb3Bf dmluZm8pCiAJICAgIGRlc3Ryb3lfbG9vcF92ZWNfaW5mbyAoaW5uZXJfbG9v cF92aW5mbywgdHJ1ZSk7CiAJICByZXR1cm4gTlVMTDsKQEAgLTEzODcsOCAr MTM3Myw4IEBACiAJCQkgIm5vdCB2ZWN0b3JpemVkOiBjb21wbGljYXRlZCBl eGl0IGNvbmRpdGlvbi4iKTsKIAkgIGlmIChmbGFnX2VuYWJsZV9jaWxrICYm IHByYWdtYV9zaW1kX2Fzc2VydF9yZXF1ZXN0ZWRfcCAKIAkgICAgICAobG9v cC0+cHJhZ21hX3NpbWRfaW5kZXgpKSAKLQkgICAgZmF0YWxfZXJyb3IgKCJM b29wIG5vdCB2ZWN0b3JpemVkLiAiIAotCQkJICJFeGl0aW5nIGFzIHJlcXVl c3RlZCBieSBQcmFnbWEgU0lNRCIpOyAKKwkgICAgZXJyb3JfYXQgKHZlY3Rf bG9jYXRpb24sICJsb29wIG5vdCB2ZWN0b3JpemVkLiAiIAorCQkgICAgICAi RXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsgCiAgICAg ICBpZiAoaW5uZXJfbG9vcF92aW5mbykKIAlkZXN0cm95X2xvb3BfdmVjX2lu Zm8gKGlubmVyX2xvb3BfdmluZm8sIHRydWUpOwogICAgICAgcmV0dXJuIE5V TEw7CkBAIC0xNDAyLDggKzEzODgsOCBAQAogCQkJICJjb21wdXRlZC4iKTsK IAkgIGlmIChmbGFnX2VuYWJsZV9jaWxrICYmIHByYWdtYV9zaW1kX2Fzc2Vy dF9yZXF1ZXN0ZWRfcCAKIAkgICAgICAobG9vcC0+cHJhZ21hX3NpbWRfaW5k ZXgpKSAKLQkgICAgZmF0YWxfZXJyb3IgKCJMb29wIG5vdCB2ZWN0b3JpemVk LiAiIAotCQkJICJFeGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEgU0lN RCIpOyAKKwkgICAgZXJyb3JfYXQgKHZlY3RfbG9jYXRpb24sICJsb29wIG5v dCB2ZWN0b3JpemVkLiAiIAorCQkgICAgICAiRXhpdGluZyBhcyByZXF1ZXN0 ZWQgYnkgUHJhZ21hIFNJTUQiKTsgCiAgICAgICBpZiAoaW5uZXJfbG9vcF92 aW5mbykKIAlkZXN0cm95X2xvb3BfdmVjX2luZm8gKGlubmVyX2xvb3Bfdmlu Zm8sIHRydWUpOwogICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xNDM1LDggKzE0 MjEsOCBAQAogCQkJICJub3QgdmVjdG9yaXplZDogbnVtYmVyIG9mIGl0ZXJh dGlvbnMgPSAwLiIpOwogCSAgaWYgKGZsYWdfZW5hYmxlX2NpbGsgJiYgcHJh Z21hX3NpbWRfYXNzZXJ0X3JlcXVlc3RlZF9wIAogCSAgICAgIChsb29wLT5w cmFnbWFfc2ltZF9pbmRleCkpIAotCSAgICBmYXRhbF9lcnJvciAoIkxvb3Ag bm90IHZlY3Rvcml6ZWQuICIgCi0JCQkgIkV4aXRpbmcgYXMgcmVxdWVzdGVk IGJ5IFByYWdtYSBTSU1EIik7IAorCSAgICBlcnJvcl9hdCAodmVjdF9sb2Nh dGlvbiwgImxvb3Agbm90IHZlY3Rvcml6ZWQuICIgCisJCSAgICAgICJFeGl0 aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEgU0lNRCIpOyAKICAgICAgIGlm IChpbm5lcl9sb29wX3ZpbmZvKQogICAgICAgICBkZXN0cm95X2xvb3BfdmVj X2luZm8gKGlubmVyX2xvb3BfdmluZm8sIGZhbHNlKTsKICAgICAgIHJldHVy biBOVUxMOwpAQCAtMTYwMCw4ICsxNTg2LDggQEAKIAkJCQkgIm5vdCB2ZWN0 b3JpemVkOiB2YWx1ZSB1c2VkIGFmdGVyIGxvb3AuIik7CiAJICBpZiAoZmxh Z19lbmFibGVfY2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVxdWVzdGVk X3AgCiAJICAgICAgKGxvb3AtPnByYWdtYV9zaW1kX2luZGV4KSkgCi0JICAg IGZhdGFsX2Vycm9yICgiTG9vcCBub3QgdmVjdG9yaXplZC4gIiAKLQkJCSAi RXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsgCisJICAg IGVycm9yX2F0ICh2ZWN0X2xvY2F0aW9uLCAibG9vcCBub3QgdmVjdG9yaXpl ZC4gIiAKKwkJICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdt YSBTSU1EIik7IAogICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg ICAgICAgICB9CiAKQEAgLTE2MTQsOCArMTYwMCw4IEBACiAJCQkJICJub3Qg dmVjdG9yaXplZDogc2NhbGFyIGRlcGVuZGVuY2UgY3ljbGUuIik7CiAJICBp ZiAoZmxhZ19lbmFibGVfY2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVx dWVzdGVkX3AgCiAJICAgICAgKGxvb3AtPnByYWdtYV9zaW1kX2luZGV4KSkg Ci0JICAgIGZhdGFsX2Vycm9yICgiTG9vcCBub3QgdmVjdG9yaXplZC4gIiAK LQkJCSAiRXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsg CisJICAgIGVycm9yX2F0ICh2ZWN0X2xvY2F0aW9uLCAibG9vcCBub3QgdmVj dG9yaXplZC4gIiAKKwkJICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5 IFByYWdtYSBTSU1EIik7IAogICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7 CiAgICAgICAgICAgICB9CiAKQEAgLTE2MzYsOCArMTYyMiw4IEBACiAgICAg ICAgICAgICAgICAgICBkdW1wX2dpbXBsZV9zdG10IChNU0dfTUlTU0VEX09Q VElNSVpBVElPTiwgVERGX1NMSU0sIHBoaSwgMCk7CiAJCSAgaWYgKGZsYWdf ZW5hYmxlX2NpbGsgJiYgcHJhZ21hX3NpbWRfYXNzZXJ0X3JlcXVlc3RlZF9w IAogCQkgICAgICAobG9vcC0+cHJhZ21hX3NpbWRfaW5kZXgpKSAKLQkJICAg IGZhdGFsX2Vycm9yICgiTG9vcCBub3QgdmVjdG9yaXplZC4gIiAKLQkJCQkg IkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7IAorCQkg ICAgZXJyb3JfYXQgKHZlY3RfbG9jYXRpb24sICJsb29wIG5vdCB2ZWN0b3Jp emVkLiAiIAorCQkJICAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFBy YWdtYSBTSU1EIik7IAogICAgICAgICAgICAgICAgIH0KIAkgICAgICByZXR1 cm4gZmFsc2U7CiAgICAgICAgICAgICB9CkBAIC0xNjY3LDggKzE2NTMsOCBA QAogCQkJICJ2ZWN0b3JpemUuIik7CiAgICAgICBpZiAoZmxhZ19lbmFibGVf Y2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVxdWVzdGVkX3AgCiAJICAo bG9vcC0+cHJhZ21hX3NpbWRfaW5kZXgpKSAKLQlmYXRhbF9lcnJvciAoIkxv b3Agbm90IHZlY3Rvcml6ZWQuICIgCi0JCSAgICAgIkV4aXRpbmcgYXMgcmVx dWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7IAorCWVycm9yX2F0ICh2ZWN0X2xv Y2F0aW9uLCAibG9vcCBub3QgdmVjdG9yaXplZC4gIiAKKwkJICAiRXhpdGlu ZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsgCiAgICAgICByZXR1 cm4gZmFsc2U7CiAgICAgfQogCkBAIC0xNjkyLDggKzE2NzgsOCBAQAogCQkJ ICJ2ZWN0b3JpemF0aW9uIGZhY3Rvci4iKTsKICAgICAgIGlmIChmbGFnX2Vu YWJsZV9jaWxrICYmIHByYWdtYV9zaW1kX2Fzc2VydF9yZXF1ZXN0ZWRfcCAK IAkgIChsb29wLT5wcmFnbWFfc2ltZF9pbmRleCkpIAotCWZhdGFsX2Vycm9y ICgiTG9vcCBub3QgdmVjdG9yaXplZC4gIiAKLQkJICAgICAiRXhpdGluZyBh cyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsgCisJZXJyb3JfYXQgKHZl Y3RfbG9jYXRpb24sICJsb29wIG5vdCB2ZWN0b3JpemVkLiAiIAorCQkgICJF eGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEgU0lNRCIpOyAKICAgICAg IHJldHVybiBmYWxzZTsKICAgICB9CiAKQEAgLTE3MTgsOCArMTcwNCw4IEBA CiAJCQkgInByb2ZpdGFibGUuIik7CiAgICAgICBpZiAoZmxhZ19lbmFibGVf Y2lsayAmJiBwcmFnbWFfc2ltZF9hc3NlcnRfcmVxdWVzdGVkX3AgCiAJICAo bG9vcC0+cHJhZ21hX3NpbWRfaW5kZXgpKSAKLQlmYXRhbF9lcnJvciAoIkxv b3Agbm90IHZlY3Rvcml6ZWQuICIgCi0JCSAgICAgIkV4aXRpbmcgYXMgcmVx dWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7IAorCWVycm9yX2F0ICh2ZWN0X2xv Y2F0aW9uLCAibG9vcCBub3QgdmVjdG9yaXplZC4gIiAKKwkJICAiRXhpdGlu ZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsKICAgICAgIHJldHVy biBmYWxzZTsKICAgICB9CiAKQEAgLTE3NDksOCArMTczNSw4IEBACiAJCQkg Iml0ZXJhdGlvbnMgKHdoaWNoZXZlciBpcyBtb3JlIGNvbnNlcnZhdGl2ZSku Iik7CiAgICAgICBpZiAoZmxhZ19lbmFibGVfY2lsayAmJiBwcmFnbWFfc2lt ZF9hc3NlcnRfcmVxdWVzdGVkX3AgCiAJICAobG9vcC0+cHJhZ21hX3NpbWRf aW5kZXgpKSAKLQlmYXRhbF9lcnJvciAoIkxvb3Agbm90IHZlY3Rvcml6ZWQu ICIgCi0JCSAgICAgIkV4aXRpbmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBT SU1EIik7IAorCWVycm9yX2F0ICh2ZWN0X2xvY2F0aW9uLCAibG9vcCBub3Qg dmVjdG9yaXplZC4gIiAKKwkJICAiRXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkg UHJhZ21hIFNJTUQiKTsgCiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQog CkBAIC0xNzcwLDggKzE3NTYsOCBAQAogICAgICAgICAgICAgICAgICAgICAg ICAgICJjb25zZXJ2YXRpdmUpLiIpOwogICAgICAgaWYgKGZsYWdfZW5hYmxl X2NpbGsgJiYgcHJhZ21hX3NpbWRfYXNzZXJ0X3JlcXVlc3RlZF9wIAogCSAg KGxvb3AtPnByYWdtYV9zaW1kX2luZGV4KSkgCi0JZmF0YWxfZXJyb3IgKCJM b29wIG5vdCB2ZWN0b3JpemVkLiAiIAotCQkgICAgICJFeGl0aW5nIGFzIHJl cXVlc3RlZCBieSBQcmFnbWEgU0lNRCIpOyAKKwllcnJvcl9hdCAodmVjdF9s b2NhdGlvbiwgImxvb3Agbm90IHZlY3Rvcml6ZWQuICIgCisJCSAgIkV4aXRp bmcgYXMgcmVxdWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7IAogICAgICAgcmV0 dXJuIGZhbHNlOwogICAgIH0KIApAQCAtMTc4OCw4ICsxNzc0LDggQEAKIAkJ CSAgICAgIm5vdCB2ZWN0b3JpemVkOiBjYW4ndCBjcmVhdGUgZXBpbG9nIGxv b3AgMS4iKTsKIAkgIGlmIChmbGFnX2VuYWJsZV9jaWxrICYmIHByYWdtYV9z aW1kX2Fzc2VydF9yZXF1ZXN0ZWRfcCAKIAkgICAgICAobG9vcC0+cHJhZ21h X3NpbWRfaW5kZXgpKSAKLQkgICAgZmF0YWxfZXJyb3IgKCJMb29wIG5vdCB2 ZWN0b3JpemVkLiAiIAotCQkJICJFeGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQ cmFnbWEgU0lNRCIpOyAKKwkgICAgZXJyb3JfYXQgKHZlY3RfbG9jYXRpb24s ICJsb29wIG5vdCB2ZWN0b3JpemVkLiAiIAorCQkgICAgICAiRXhpdGluZyBh cyByZXF1ZXN0ZWQgYnkgUHJhZ21hIFNJTUQiKTsKICAgICAgICAgICByZXR1 cm4gZmFsc2U7CiAgICAgICAgIH0KICAgICAgIGlmICghc2xwZWVsX2Nhbl9k dXBsaWNhdGVfbG9vcF9wIChsb29wLCBzaW5nbGVfZXhpdCAobG9vcCkpKQpA QCAtMTc5OSw4ICsxNzg1LDggQEAKIAkJCSAgICAgIm5vdCB2ZWN0b3JpemVk OiBjYW4ndCBjcmVhdGUgZXBpbG9nIGxvb3AgMi4iKTsKIAkgIGlmIChmbGFn X2VuYWJsZV9jaWxrICYmIHByYWdtYV9zaW1kX2Fzc2VydF9yZXF1ZXN0ZWRf cCAKIAkgICAgICAobG9vcC0+cHJhZ21hX3NpbWRfaW5kZXgpKSAKLQkgICAg ZmF0YWxfZXJyb3IgKCJMb29wIG5vdCB2ZWN0b3JpemVkLiAiIAotCQkJICJF eGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEgU0lNRCIpOyAKKwkgICAg ZXJyb3JfYXQgKHZlY3RfbG9jYXRpb24sICJsb29wIG5vdCB2ZWN0b3JpemVk LiAiIAorCQkgICAgICAiRXhpdGluZyBhcyByZXF1ZXN0ZWQgYnkgUHJhZ21h IFNJTUQiKTsKICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0K ICAgICB9CkBAIC0yMDAzLDEwICsxOTg5LDkgQEAKIAkJCSAgICAgImJhZCBs b29wIGZvcm0uIik7CiAJICBpZiAoZmxhZ19lbmFibGVfY2lsayAmJiBwcmFn bWFfc2ltZF9hc3NlcnRfcmVxdWVzdGVkX3AKIAkgICAgICAobG9vcC0+cHJh Z21hX3NpbWRfaW5kZXgpKQotCSAgICB7Ci0JICAgICAgZmF0YWxfZXJyb3Ig KCJMb29wIG5vdCB2ZWN0b3JpemVkLiAiIAotCQkJICAgIkV4aXRpbmcgYXMg cmVxdWVzdGVkIGJ5IFByYWdtYSBTSU1EIik7Ci0JICAgIH0KKwkgICAgZXJy b3JfYXQgKHZlY3RfbG9jYXRpb24sICJsb29wIG5vdCB2ZWN0b3JpemVkLiAi CisJCSAgICAgICJFeGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEgU0lN RCIpOworCSAgICAKIAogCSAgcmV0dXJuIE5VTEw7CiAJfQpAQCAtMjAyNiw4 ICsyMDExLDggQEAKIAl7IAogCSAgaWYgKGZsYWdfZW5hYmxlX2NpbGsgCiAJ ICAgICAgJiYgcHJhZ21hX3NpbWRfYXNzZXJ0X3JlcXVlc3RlZF9wIChsb29w LT5wcmFnbWFfc2ltZF9pbmRleCkpIAotCSAgICBmYXRhbF9lcnJvciAoIkxv b3Agbm90IHZlY3Rvcml6ZWQuICIgCi0JCQkgIkV4aXRpbmcgYXMgcmVxdWVz dGVkIGJ5IFByYWdtYSBTSU1EIik7IAorCSAgICBlcnJvcl9hdCAodmVjdF9s b2NhdGlvbiwgImxvb3Agbm90IHZlY3Rvcml6ZWQuICIgCisJCSAgICAgICJF eGl0aW5nIGFzIHJlcXVlc3RlZCBieSBQcmFnbWEgU0lNRCIpOyAKIAkgIHJl dHVybiBOVUxMOwogCX0KICAgICAgIC8qIFRyeSB0aGUgbmV4dCBiaWdnZXN0 IHZlY3RvciBzaXplLiAgKi8K --_002_BF230D13CA30DD48930C31D40993300016CEDF37FMSMSX102amrcor_--