From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31973 invoked by alias); 16 Jun 2011 13:59:08 -0000 Received: (qmail 31952 invoked by uid 22791); 16 Jun 2011 13:59:05 -0000 X-SWARE-Spam-Status: No, hits=-6.1 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,TW_YF,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 16 Jun 2011 13:58:47 +0000 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p5GDwiwv023033 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 16 Jun 2011 09:58:44 -0400 Received: from anchor.twiddle.net (vpn-238-15.phx2.redhat.com [10.3.238.15]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id p5GDwhqP004563; Thu, 16 Jun 2011 09:58:43 -0400 Message-ID: <4DFA0C13.9060102@redhat.com> Date: Thu, 16 Jun 2011 14:07:00 -0000 From: Richard Henderson User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110428 Fedora/3.1.10-1.fc15 Thunderbird/3.1.10 MIME-Version: 1.0 To: Denis Chertykov CC: Georg-Johann Lay , gcc-patches@gcc.gnu.org, Anatoly Sokolov , "Eric B. Weddington" Subject: Re: [Patch, AVR]: Fix PR46779 References: <4DF0FAB5.6070704@gjlay.de> <4DF11D20.4030907@gjlay.de> <4DF1ED76.4030507@gjlay.de> <4DF650B7.3030705@gjlay.de> <4DF73490.2080709@gjlay.de> <4DF7D2B5.1090708@gjlay.de> <4DF8ED42.1030706@redhat.com> <4DF918A9.4070003@gjlay.de> <4DF92AEA.4000906@redhat.com> <4DF93B17.8020008@redhat.com> In-Reply-To: Content-Type: multipart/mixed; boundary="------------030108000904090803050403" 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: 2011-06/txt/msg01250.txt.bz2 This is a multi-part message in MIME format. --------------030108000904090803050403 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-length: 702 On 06/16/2011 04:46 AM, Denis Chertykov wrote: > I forgot to said that suggestion from Bernd Schmidt about > HARD_FRAME_POINTER_REGNUM seems very useful: >> Maybe it would help for your port to define a separate >> FRAME_POINTER_REGNUM, able to hold an HImode value, which then gets >> eliminated to HARD_FRAME_POINTER_REGNUM? This mechanism is used on many >> other ports if you need examples. > > It's not related to addressing modes but it's related to frame pointer bugs. Yes, that was the first thing I did while investigating G-J's spill failure. It didn't help that, of course, but I kept it around in my tree anyway. This probably doesn't apply by itself, as is, but for the record... r~ --------------030108000904090803050403 Content-Type: text/plain; name="commit-avr-sfp" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="commit-avr-sfp" Content-length: 22115 Y29tbWl0IDBjYTlkZjBhOGMyNzIyZThhNTU1YzJjMzdkN2Q3YjQwNDY3YmM1 ZDQKQXV0aG9yOiBSaWNoYXJkIEhlbmRlcnNvbiA8cnRoQHJlZGhhdC5jb20+ CkRhdGU6ICAgV2VkIEp1biAxNSAxNDowMzoxOSAyMDExIC0wNzAwCgogICAg YXZyOiBBZGQgc29mdCBmcmFtZSBwb2ludGVyIHJlZ2lzdGVyLgoKCSogY29u ZmlnL2F2ci9hdnIuYyAoYXZyX2Nhbl9lbGltaW5hdGUpOiBTaW1wbGlmeS4K CShhdnJfaW5pdGlhbF9lbGltaW5hdGlvbl9vZmZzZXQpOiBMaWtld2lzZS4K CShleHBhbmRfcHJvbG9ndWUpOiBVc2UgaGFyZF9mcmFtZV9wb2ludGVyX3J0 eC4KCShleHBhbmRfZXBpbG9ndWUpOiBMaWtld2lzZS4KCShhdnJfbGVnaXRp bWl6ZV9hZGRyZXNzKTogR3V0LgoJKGF2cl9oYXJkX3JlZ25vX25yZWdzKTog TmV3LgoJKGF2cl9oYXJkX3JlZ25vX29rKTogQWxsb3cgb25seSBQbW9kZSBm b3IgYXJnIGFuZCBmcmFtZV9wb2ludGVycy4KCShhdnJfcmVnbm9fbW9kZV9j b2RlX29rX2Zvcl9iYXNlX2IpOiBIYW5kbGUgYXJnIGFuZCBmcmFtZSBwb2lu dGVycy4KCSogY29uZmlnL2F2ci9hdnIuaCAoRklYRURfUkVHSVNURVJTKTog QWRqdXN0IGFyZyBwb2ludGVyLAoJYWRkIHNvZnQgZnJhbWUgcG9pbnRlci4K CShDQUxMX1VTRURfUkVHSVNURVJTKTogTGlrZXdpc2UuCgkoUkVHX0NMQVNT X0NPTlRFTlRTKTogTGlrZXdpc2UuCgkoUkVHSVNURVJfTkFNRVMpOiBMaWtl d2lzZS4KCShIQVJEX1JFR05PX05SRUdTKTogVXNlIGF2cl9oYXJkX3JlZ25v X25yZWdzLgoJKEhBUkRfRlJBTUVfUE9JTlRFUl9SRUdOVU0pOiBOZXcuCgko RlJBTUVfUE9JTlRFUl9SRUdOVU0pOiBVc2Ugc29mdCBmcmFtZSBwb2ludGVy LgoJKEVMSU1JTkFCTEVfUkVHUyk6IEVsaW1pbmF0ZSBmcm9tIHRoZSBzb2Z0 IGZyYW1lIHBvaW50ZXIsCglyZW1vdmUgdGhlIEhBUkRfRlJBTUVfUE9JTlRF UiBzZWxmLWVsaW1pbmF0aW9uLgoKZGlmZiAtLWdpdCBhL2djYy9jb25maWcv YXZyL2F2ci1wcm90b3MuaCBiL2djYy9jb25maWcvYXZyL2F2ci1wcm90b3Mu aAppbmRleCAyYWYxMjNjLi41YzYwZTJlIDEwMDY0NAotLS0gYS9nY2MvY29u ZmlnL2F2ci9hdnItcHJvdG9zLmgKKysrIGIvZ2NjL2NvbmZpZy9hdnIvYXZy LXByb3Rvcy5oCkBAIC05OCw2ICs5OCw3IEBAIGV4dGVybiBpbnQgYnl0ZV9p bW1lZGlhdGVfb3BlcmFuZCAocnR4IG9wLCBlbnVtIG1hY2hpbmVfbW9kZSBt b2RlKTsKIGV4dGVybiBpbnQgdGVzdF9oYXJkX3JlZ19jbGFzcyAoZW51bSBy ZWdfY2xhc3MgcmNsYXNzLCBydHggeCk7CiBleHRlcm4gaW50IGp1bXBfb3Zl cl9vbmVfaW5zbl9wIChydHggaW5zbiwgcnR4IGRlc3QpOwogCitleHRlcm4g aW50IGF2cl9oYXJkX3JlZ25vX25yZWdzIChpbnQgcmVnbm8sIGVudW0gbWFj aGluZV9tb2RlIG1vZGUpOwogZXh0ZXJuIGludCBhdnJfaGFyZF9yZWdub19t b2RlX29rIChpbnQgcmVnbm8sIGVudW0gbWFjaGluZV9tb2RlIG1vZGUpOwog ZXh0ZXJuIHZvaWQgZmluYWxfcHJlc2Nhbl9pbnNuIChydHggaW5zbiwgcnR4 ICpvcGVyYW5kLCBpbnQgbnVtX29wZXJhbmRzKTsKIGV4dGVybiBpbnQgYXZy X3NpbXBsaWZ5X2NvbXBhcmlzb25fcCAoZW51bSBtYWNoaW5lX21vZGUgbW9k ZSwKZGlmZiAtLWdpdCBhL2djYy9jb25maWcvYXZyL2F2ci5jIGIvZ2NjL2Nv bmZpZy9hdnIvYXZyLmMKaW5kZXggYzYwODdmZS4uZTFkNmI1MCAxMDA2NDQK LS0tIGEvZ2NjL2NvbmZpZy9hdnIvYXZyLmMKKysrIGIvZ2NjL2NvbmZpZy9h dnIvYXZyLmMKQEAgLTQ5MywyOSArNDkzLDI4IEBAIGF2cl9yZWdzX3RvX3Nh dmUgKEhBUkRfUkVHX1NFVCAqc2V0KQogLyogUmV0dXJuIHRydWUgaWYgcmVn aXN0ZXIgRlJPTSBjYW4gYmUgZWxpbWluYXRlZCB2aWEgcmVnaXN0ZXIgVE8u ICAqLwogCiBib29sCi1hdnJfY2FuX2VsaW1pbmF0ZSAoY29uc3QgaW50IGZy b20sIGNvbnN0IGludCB0bykKK2F2cl9jYW5fZWxpbWluYXRlIChpbnQgZnJv bSBBVFRSSUJVVEVfVU5VU0VELCBpbnQgdG8pCiB7Ci0gIHJldHVybiAoKGZy b20gPT0gQVJHX1BPSU5URVJfUkVHTlVNICYmIHRvID09IEZSQU1FX1BPSU5U RVJfUkVHTlVNKQotCSAgfHwgKChmcm9tID09IEZSQU1FX1BPSU5URVJfUkVH TlVNIAotCSAgICAgICB8fCBmcm9tID09IEZSQU1FX1BPSU5URVJfUkVHTlVN ICsgMSkKLQkgICAgICAmJiAhZnJhbWVfcG9pbnRlcl9uZWVkZWQpKTsKKyAg cmV0dXJuIHRvID09IEhBUkRfRlJBTUVfUE9JTlRFUl9SRUdOVU07CiB9CiAK IC8qIENvbXB1dGUgb2Zmc2V0IGJldHdlZW4gYXJnX3BvaW50ZXIgYW5kIGZy YW1lX3BvaW50ZXIuICAqLwogCiBpbnQKLWF2cl9pbml0aWFsX2VsaW1pbmF0 aW9uX29mZnNldCAoaW50IGZyb20sIGludCB0bykKK2F2cl9pbml0aWFsX2Vs aW1pbmF0aW9uX29mZnNldCAoaW50IGZyb20sIGludCB0byBBVFRSSUJVVEVf VU5VU0VEKQogewotICBpZiAoZnJvbSA9PSBGUkFNRV9QT0lOVEVSX1JFR05V TSAmJiB0byA9PSBTVEFDS19QT0lOVEVSX1JFR05VTSkKLSAgICByZXR1cm4g MDsKLSAgZWxzZQotICAgIHsKLSAgICAgIGludCBvZmZzZXQgPSBmcmFtZV9w b2ludGVyX25lZWRlZCA/IDIgOiAwOwotICAgICAgaW50IGF2cl9wY19zaXpl ID0gQVZSX0hBVkVfRUlKTVBfRUlDQUxMID8gMyA6IDI7CisgIGludCBvZmZz ZXQgPSAwOwogCisgIGlmIChmcm9tID09IEFSR19QT0lOVEVSX1JFR05VTSkK KyAgICB7CisgICAgICBvZmZzZXQgKz0gQVZSX0hBVkVfRUlKTVBfRUlDQUxM ID8gMyA6IDI7CisgICAgICBvZmZzZXQgKz0gZnJhbWVfcG9pbnRlcl9uZWVk ZWQgPyAyIDogMDsKICAgICAgIG9mZnNldCArPSBhdnJfcmVnc190b19zYXZl IChOVUxMKTsKLSAgICAgIHJldHVybiBnZXRfZnJhbWVfc2l6ZSAoKSArIChh dnJfcGNfc2l6ZSkgKyAxICsgb2Zmc2V0OworICAgICAgb2Zmc2V0ICs9IGdl dF9mcmFtZV9zaXplICgpOworICAgICAgb2Zmc2V0ICs9IDE7IC8qIHBvc3Qt ZGVjIHN0YWNrIHNwYWNlICovCiAgICAgfQorCisgIHJldHVybiBvZmZzZXQ7 CiB9CiAKIC8qIEFjdHVhbCBzdGFydCBvZiBmcmFtZSBpcyB2aXJ0dWFsX3N0 YWNrX3ZhcnNfcnR4IHRoaXMgaXMgb2Zmc2V0IGZyb20gCkBAIC03NDcsMTIg Kzc0NiwxMiBAQCBleHBhbmRfcHJvbG9ndWUgKHZvaWQpCiAJIG5vdGVzIHRv IHRoZSBmcm9udC4gIFRodXMgd2UgYnVpbGQgdGhlbSBpbiB0aGUgcmV2ZXJz ZSBvcmRlciBvZgogCSBob3cgd2Ugd2FudCBkd2FyZjJvdXQgdG8gcHJvY2Vz cyB0aGVtLiAgKi8KIAotICAgICAgLyogVGhlIGZ1bmN0aW9uIGRvZXMgYWx3 YXlzIHNldCBmcmFtZV9wb2ludGVyX3J0eCwgYnV0IHdoZXRoZXIgdGhhdAor ICAgICAgLyogVGhlIGZ1bmN0aW9uIGRvZXMgYWx3YXlzIHNldCBoYXJkX2Zy YW1lX3BvaW50ZXJfcnR4LCBidXQgd2hldGhlciB0aGF0CiAJIGlzIGdvaW5n IHRvIGJlIHBlcm1hbmVudCBpbiB0aGUgZnVuY3Rpb24gaXMgZnJhbWVfcG9p bnRlcl9uZWVkZWQuICAqLwogICAgICAgYWRkX3JlZ19ub3RlIChpbnNuLCBS RUdfQ0ZBX0FESlVTVF9DRkEsCiAJCSAgICBnZW5fcnR4X1NFVCAoVk9JRG1v ZGUsCiAJCQkJIChmcmFtZV9wb2ludGVyX25lZWRlZAotCQkJCSAgPyBmcmFt ZV9wb2ludGVyX3J0eCA6IHN0YWNrX3BvaW50ZXJfcnR4KSwKKwkJCQkgID8g aGFyZF9mcmFtZV9wb2ludGVyX3J0eCA6IHN0YWNrX3BvaW50ZXJfcnR4KSwK IAkJCQkgcGx1c19jb25zdGFudCAoc3RhY2tfcG9pbnRlcl9ydHgsCiAJCQkJ CQktKHNpemUgKyBsaXZlX3NlcSkpKSk7CiAKQEAgLTc5Myw3ICs3OTIsNyBA QCBleHBhbmRfcHJvbG9ndWUgKHZvaWQpCiAKICAgICAgICAgICBpZiAoIXNp emUpCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgIGluc24gPSBlbWl0 X21vdmVfaW5zbiAoZnJhbWVfcG9pbnRlcl9ydHgsIHN0YWNrX3BvaW50ZXJf cnR4KTsKKyAgICAgICAgICAgICAgaW5zbiA9IGVtaXRfbW92ZV9pbnNuICho YXJkX2ZyYW1lX3BvaW50ZXJfcnR4LCBzdGFja19wb2ludGVyX3J0eCk7CiAg ICAgICAgICAgICAgIFJUWF9GUkFNRV9SRUxBVEVEX1AgKGluc24pID0gMTsK ICAgICAgICAgICAgIH0KICAgICAgICAgICBlbHNlCkBAIC04MTYsMTIgKzgx NSwxMiBAQCBleHBhbmRfcHJvbG9ndWUgKHZvaWQpCiAgICAgICAgICAgICAg ICAgewogICAgICAgICAgICAgICAgICAgLyogVGhlIGhpZ2ggYnl0ZSAocjI5 KSBkb2Vzbid0IGNoYW5nZS4gIFByZWZlciAnc3ViaScKIAkJICAgICAoMSBj eWNsZSkgb3ZlciAnc2JpdycgKDIgY3ljbGVzLCBzYW1lIHNpemUpLiAgKi8K LSAgICAgICAgICAgICAgICAgIG15ZnAgPSBnZW5fcnR4X1JFRyAoUUltb2Rl LCBGUkFNRV9QT0lOVEVSX1JFR05VTSk7CisgICAgICAgICAgICAgICAgICBt eWZwID0gZ2VuX3J0eF9SRUcgKFFJbW9kZSwgSEFSRF9GUkFNRV9QT0lOVEVS X1JFR05VTSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICBl bHNlIAogICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgIC8q ICBOb3JtYWwgc2l6ZWQgYWRkaXRpb24uICAqLwotICAgICAgICAgICAgICAg ICAgbXlmcCA9IGZyYW1lX3BvaW50ZXJfcnR4OworICAgICAgICAgICAgICAg ICAgbXlmcCA9IGhhcmRfZnJhbWVfcG9pbnRlcl9ydHg7CiAgICAgICAgICAg ICAgICAgfQogCiAJICAgICAgLyogTWV0aG9kIDEtQWRqdXN0IGZyYW1lIHBv aW50ZXIuICAqLwpAQCAtODMzLDEyICs4MzIsMTIgQEAgZXhwYW5kX3Byb2xv Z3VlICh2b2lkKQogCQkgaW5zdGVhZCBpbmRpY2F0ZSB0aGF0IHRoZSBlbnRp cmUgb3BlcmF0aW9uIGlzIGNvbXBsZXRlIGFmdGVyCiAJCSB0aGUgZnJhbWUg cG9pbnRlciBzdWJ0cmFjdGlvbiBpcyBkb25lLiAgKi8KIAotICAgICAgICAg ICAgICBlbWl0X21vdmVfaW5zbiAoZnJhbWVfcG9pbnRlcl9ydHgsIHN0YWNr X3BvaW50ZXJfcnR4KTsKKyAgICAgICAgICAgICAgZW1pdF9tb3ZlX2luc24g KGhhcmRfZnJhbWVfcG9pbnRlcl9ydHgsIHN0YWNrX3BvaW50ZXJfcnR4KTsK IAogICAgICAgICAgICAgICBpbnNuID0gZW1pdF9tb3ZlX2luc24gKG15ZnAs IHBsdXNfY29uc3RhbnQgKG15ZnAsIC1zaXplKSk7CiAgICAgICAgICAgICAg IFJUWF9GUkFNRV9SRUxBVEVEX1AgKGluc24pID0gMTsKIAkgICAgICBhZGRf cmVnX25vdGUgKGluc24sIFJFR19DRkFfQURKVVNUX0NGQSwKLQkJCSAgICBn ZW5fcnR4X1NFVCAoVk9JRG1vZGUsIGZyYW1lX3BvaW50ZXJfcnR4LAorCQkJ ICAgIGdlbl9ydHhfU0VUIChWT0lEbW9kZSwgaGFyZF9mcmFtZV9wb2ludGVy X3J0eCwKIAkJCQkJIHBsdXNfY29uc3RhbnQgKHN0YWNrX3BvaW50ZXJfcnR4 LAogCQkJCQkJCS1zaXplKSkpOwogCkBAIC04NDcsMjMgKzg0NiwyMyBAQCBl eHBhbmRfcHJvbG9ndWUgKHZvaWQpCiAJCSBuZWVkIG5vdCBiZSBhbm5vdGF0 ZWQgYXQgYWxsLiAgKi8KIAkgICAgICBpZiAoQVZSX0hBVkVfOEJJVF9TUCkK IAkJewotCQkgIGVtaXRfbW92ZV9pbnNuIChzdGFja19wb2ludGVyX3J0eCwg ZnJhbWVfcG9pbnRlcl9ydHgpOworCQkgIGVtaXRfbW92ZV9pbnNuIChzdGFj a19wb2ludGVyX3J0eCwgaGFyZF9mcmFtZV9wb2ludGVyX3J0eCk7CiAJCX0K IAkgICAgICBlbHNlIGlmIChUQVJHRVRfTk9fSU5URVJSVVBUUyAKIAkJICAg ICAgIHx8IGNmdW4tPm1hY2hpbmUtPmlzX3NpZ25hbAogCQkgICAgICAgfHwg Y2Z1bi0+bWFjaGluZS0+aXNfT1NfbWFpbikKIAkJewogCQkgIGVtaXRfaW5z biAoZ2VuX21vdmhpX3NwX3JfaXJxX29mZiAoc3RhY2tfcG9pbnRlcl9ydHgs IAotCQkJCQkJICAgICBmcmFtZV9wb2ludGVyX3J0eCkpOworCQkJCQkJICAg ICBoYXJkX2ZyYW1lX3BvaW50ZXJfcnR4KSk7CiAJCX0KIAkgICAgICBlbHNl IGlmIChjZnVuLT5tYWNoaW5lLT5pc19pbnRlcnJ1cHQpCiAJCXsKIAkJICBl bWl0X2luc24gKGdlbl9tb3ZoaV9zcF9yX2lycV9vbiAoc3RhY2tfcG9pbnRl cl9ydHgsIAotCQkJCQkJICAgIGZyYW1lX3BvaW50ZXJfcnR4KSk7CisJCQkJ CQkgICAgaGFyZF9mcmFtZV9wb2ludGVyX3J0eCkpOwogCQl9CiAJICAgICAg ZWxzZQogCQl7Ci0JCSAgZW1pdF9tb3ZlX2luc24gKHN0YWNrX3BvaW50ZXJf cnR4LCBmcmFtZV9wb2ludGVyX3J0eCk7CisJCSAgZW1pdF9tb3ZlX2luc24g KHN0YWNrX3BvaW50ZXJfcnR4LCBoYXJkX2ZyYW1lX3BvaW50ZXJfcnR4KTsK IAkJfQogCiAJICAgICAgZnBfcGx1c19pbnNucyA9IGdldF9pbnNucyAoKTsK QEAgLTg4MCw3ICs4NzksNyBAQCBleHBhbmRfcHJvbG9ndWUgKHZvaWQpCiAJ CSAgaW5zbiA9IGVtaXRfbW92ZV9pbnNuIChzdGFja19wb2ludGVyX3J0eCwg aW5zbik7CiAJCSAgUlRYX0ZSQU1FX1JFTEFURURfUCAoaW5zbikgPSAxOwog CQkgIAotCQkgIGluc24gPSBlbWl0X21vdmVfaW5zbiAoZnJhbWVfcG9pbnRl cl9ydHgsIHN0YWNrX3BvaW50ZXJfcnR4KTsKKwkJICBpbnNuID0gZW1pdF9t b3ZlX2luc24gKGhhcmRfZnJhbWVfcG9pbnRlcl9ydHgsIHN0YWNrX3BvaW50 ZXJfcnR4KTsKIAkJICBSVFhfRlJBTUVfUkVMQVRFRF9QIChpbnNuKSA9IDE7 CiAKIAkJICBzcF9wbHVzX2luc25zID0gZ2V0X2luc25zICgpOwpAQCAtOTk3 LDEzICs5OTYsMTMgQEAgZXhwYW5kX2VwaWxvZ3VlIChib29sIHNpYmNhbGxf cCkKICAgICAgIGlmIChmcmFtZV9wb2ludGVyX25lZWRlZCkKIAl7CiAgICAg ICAgICAgLyogIEdldCByaWQgb2YgZnJhbWUuICAqLwotCSAgZW1pdF9tb3Zl X2luc24oZnJhbWVfcG9pbnRlcl9ydHgsCi0gICAgICAgICAgICAgICAgICAg ICAgICAgZ2VuX3J0eF9QTFVTIChISW1vZGUsIGZyYW1lX3BvaW50ZXJfcnR4 LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2Vu X2ludF9tb2RlIChzaXplLCBISW1vZGUpKSk7CisJICBlbWl0X21vdmVfaW5z biAoaGFyZF9mcmFtZV9wb2ludGVyX3J0eCwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgZ2VuX3J0eF9QTFVTIChISW1vZGUsIGhhcmRfZnJhbWVfcG9p bnRlcl9ydHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZ2VuX2ludF9tb2RlIChzaXplLCBISW1vZGUpKSk7CiAJfQogICAg ICAgZWxzZQogCXsKLSAgICAgICAgICBlbWl0X21vdmVfaW5zbiAoZnJhbWVf cG9pbnRlcl9ydHgsIHN0YWNrX3BvaW50ZXJfcnR4KTsKKyAgICAgICAgICBl bWl0X21vdmVfaW5zbiAoaGFyZF9mcmFtZV9wb2ludGVyX3J0eCwgc3RhY2tf cG9pbnRlcl9ydHgpOwogCX0KIAkKICAgICAgIGVtaXRfaW5zbiAoZ2VuX2Vw aWxvZ3VlX3Jlc3RvcmVzIChnZW5faW50X21vZGUgKGxpdmVfc2VxLCBISW1v ZGUpKSk7CkBAIC0xMDIyLDEyICsxMDIxLDEyIEBAIGV4cGFuZF9lcGlsb2d1 ZSAoYm9vbCBzaWJjYWxsX3ApCiAgICAgICAgICAgICAgICAgewogICAgICAg ICAgICAgICAgICAgLyogVGhlIGhpZ2ggYnl0ZSAocjI5KSBkb2Vzbid0IGNo YW5nZSAtIHByZWZlciAnc3ViaScgCiAgICAgICAgICAgICAgICAgICAgICAo MSBjeWNsZSkgb3ZlciAnc2JpdycgKDIgY3ljbGVzLCBzYW1lIHNpemUpLiAg Ki8KLSAgICAgICAgICAgICAgICAgIG15ZnAgPSBnZW5fcnR4X1JFRyAoUUlt b2RlLCBGUkFNRV9QT0lOVEVSX1JFR05VTSk7CisgICAgICAgICAgICAgICAg ICBteWZwID0gZ2VuX3J0eF9SRUcgKFFJbW9kZSwgSEFSRF9GUkFNRV9QT0lO VEVSX1JFR05VTSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg ICBlbHNlIAogICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg IC8qIE5vcm1hbCBzaXplZCBhZGRpdGlvbi4gICovCi0gICAgICAgICAgICAg ICAgICBteWZwID0gZnJhbWVfcG9pbnRlcl9ydHg7CisgICAgICAgICAgICAg ICAgICBteWZwID0gaGFyZF9mcmFtZV9wb2ludGVyX3J0eDsKICAgICAgICAg ICAgICAgICB9CiAJICAgICAgCiAgICAgICAgICAgICAgIC8qIE1ldGhvZCAx LUFkanVzdCBmcmFtZSBwb2ludGVyLiAgKi8KQEAgLTEwMzgsMjIgKzEwMzcs MjIgQEAgZXhwYW5kX2VwaWxvZ3VlIChib29sIHNpYmNhbGxfcCkKIAkgICAg ICAvKiBDb3B5IHRvIHN0YWNrIHBvaW50ZXIuICAqLwogCSAgICAgIGlmIChB VlJfSEFWRV84QklUX1NQKQogCQl7Ci0JCSAgZW1pdF9tb3ZlX2luc24gKHN0 YWNrX3BvaW50ZXJfcnR4LCBmcmFtZV9wb2ludGVyX3J0eCk7CisJCSAgZW1p dF9tb3ZlX2luc24gKHN0YWNrX3BvaW50ZXJfcnR4LCBoYXJkX2ZyYW1lX3Bv aW50ZXJfcnR4KTsKIAkJfQogCSAgICAgIGVsc2UgaWYgKFRBUkdFVF9OT19J TlRFUlJVUFRTIAogCQkgICAgICAgfHwgY2Z1bi0+bWFjaGluZS0+aXNfc2ln bmFsKQogCQl7CiAJCSAgZW1pdF9pbnNuIChnZW5fbW92aGlfc3Bfcl9pcnFf b2ZmIChzdGFja19wb2ludGVyX3J0eCwgCi0JCQkJCQkgICAgIGZyYW1lX3Bv aW50ZXJfcnR4KSk7CisJCQkJCQkgICAgIGhhcmRfZnJhbWVfcG9pbnRlcl9y dHgpKTsKIAkJfQogCSAgICAgIGVsc2UgaWYgKGNmdW4tPm1hY2hpbmUtPmlz X2ludGVycnVwdCkKIAkJewogCQkgIGVtaXRfaW5zbiAoZ2VuX21vdmhpX3Nw X3JfaXJxX29uIChzdGFja19wb2ludGVyX3J0eCwgCi0JCQkJCQkgICAgZnJh bWVfcG9pbnRlcl9ydHgpKTsKKwkJCQkJCSAgICBoYXJkX2ZyYW1lX3BvaW50 ZXJfcnR4KSk7CiAJCX0KIAkgICAgICBlbHNlCiAJCXsKLQkJICBlbWl0X21v dmVfaW5zbiAoc3RhY2tfcG9pbnRlcl9ydHgsIGZyYW1lX3BvaW50ZXJfcnR4 KTsKKwkJICBlbWl0X21vdmVfaW5zbiAoc3RhY2tfcG9pbnRlcl9ydHgsIGhh cmRfZnJhbWVfcG9pbnRlcl9ydHgpOwogCQl9CiAKIAkgICAgICBmcF9wbHVz X2luc25zID0gZ2V0X2luc25zICgpOwpAQCAtMTIyOCwzMiArMTIyNyw4IEBA IGF2cl9sZWdpdGltYXRlX2FkZHJlc3NfcCAoZW51bSBtYWNoaW5lX21vZGUg bW9kZSwgcnR4IHgsIGJvb2wgc3RyaWN0KQogICAgbWVtb3J5IGFkZHJlc3Mg Zm9yIGFuIG9wZXJhbmQgb2YgbW9kZSBNT0RFICAqLwogCiBydHgKLWF2cl9s ZWdpdGltaXplX2FkZHJlc3MgKHJ0eCB4LCBydHggb2xkeCwgZW51bSBtYWNo aW5lX21vZGUgbW9kZSkKK2F2cl9sZWdpdGltaXplX2FkZHJlc3MgKHJ0eCB4 LCBydHggb2xkeCBBVFRSSUJVVEVfVU5VU0VELCBlbnVtIG1hY2hpbmVfbW9k ZSBtb2RlIEFUVFJJQlVURV9VTlVTRUQpCiB7Ci0gIHggPSBvbGR4OwotICBp ZiAoVEFSR0VUX0FMTF9ERUJVRykKLSAgICB7Ci0gICAgICBmcHJpbnRmIChz dGRlcnIsICJsZWdpdGltaXplX2FkZHJlc3MgbW9kZTogJXMiLCBHRVRfTU9E RV9OQU1FKG1vZGUpKTsKLSAgICAgIGRlYnVnX3J0eCAob2xkeCk7Ci0gICAg fQotICAKLSAgaWYgKEdFVF9DT0RFIChvbGR4KSA9PSBQTFVTCi0gICAgICAm JiBSRUdfUCAoWEVYUCAob2xkeCwwKSkpCi0gICAgewotICAgICAgaWYgKFJF R19QIChYRVhQIChvbGR4LDEpKSkKLQl4ID0gZm9yY2VfcmVnIChHRVRfTU9E RSAob2xkeCksIG9sZHgpOwotICAgICAgZWxzZSBpZiAoR0VUX0NPREUgKFhF WFAgKG9sZHgsIDEpKSA9PSBDT05TVF9JTlQpCi0JewotCSAgaW50IG9mZnMg PSBJTlRWQUwgKFhFWFAgKG9sZHgsMSkpOwotCSAgaWYgKGZyYW1lX3BvaW50 ZXJfcnR4ICE9IFhFWFAgKG9sZHgsMCkpCi0JICAgIGlmIChvZmZzID4gTUFY X0xEX09GRlNFVCAobW9kZSkpCi0JICAgICAgewotCQlpZiAoVEFSR0VUX0FM TF9ERUJVRykKLQkJICBmcHJpbnRmIChzdGRlcnIsICJmb3JjZV9yZWcgKGJp ZyBvZmZzZXQpXG4iKTsKLQkJeCA9IGZvcmNlX3JlZyAoR0VUX01PREUgKG9s ZHgpLCBvbGR4KTsKLQkgICAgICB9Ci0JfQotICAgIH0KICAgcmV0dXJuIHg7 CiB9CiAKQEAgLTYwOTYsOCArNjA3MSw3IEBAIGV4dHJhX2NvbnN0cmFpbnRf USAocnR4IHgpCiAJcmV0dXJuIDE7CQkvKiBhbGxvY2F0ZSBwc2V1ZG9zICov CiAgICAgICBlbHNlIGlmIChyZWdubyA9PSBSRUdfWiB8fCByZWdubyA9PSBS RUdfWSkKIAlyZXR1cm4gMTsJCS8qIHN0cmljdGx5IGNoZWNrICovCi0gICAg ICBlbHNlIGlmICh4eCA9PSBmcmFtZV9wb2ludGVyX3J0eAotCSAgICAgICB8 fCB4eCA9PSBhcmdfcG9pbnRlcl9ydHgpCisgICAgICBlbHNlIGlmICh4eCA9 PSBmcmFtZV9wb2ludGVyX3J0eCB8fCB4eCA9PSBhcmdfcG9pbnRlcl9ydHgp CiAJcmV0dXJuIDE7CQkvKiBYWFggZnJhbWUgJiBhcmcgcG9pbnRlciBjaGVj a3MgKi8KICAgICB9CiAgIHJldHVybiAwOwpAQCAtNjI4MCw2ICs2MjU0LDE4 IEBAIGp1bXBfb3Zlcl9vbmVfaW5zbl9wIChydHggaW5zbiwgcnR4IGRlc3Qp CiAgIHJldHVybiBkZXN0X2FkZHIgLSBqdW1wX2FkZHIgPT0gZ2V0X2F0dHJf bGVuZ3RoIChpbnNuKSArIDE7CiB9CiAKKy8qIFJldHVybnMgdGhlIG51bWJl ciBvZiByZWdpc3RlcnMgcmVxdWlyZWQgdG8gaG9sZCBhIHZhbHVlIG9mIE1P REUuICAqLworCitpbnQKK2F2cl9oYXJkX3JlZ25vX25yZWdzIChpbnQgcmVn bm8sIGVudW0gbWFjaGluZV9tb2RlIG1vZGUpCit7CisgIC8qIFRoZSBmYWtl IHJlZ2lzdGVycyBhcmUgZGVzaWduZWQgdG8gaG9sZCBleGFjdGx5IGEgcG9p bnRlci4gICovCisgIGlmIChyZWdubyA9PSBBUkdfUE9JTlRFUl9SRUdOVU0g fHwgcmVnbm8gPT0gRlJBTUVfUE9JTlRFUl9SRUdOVU0pCisgICAgcmV0dXJu IDE7CisKKyAgcmV0dXJuIChHRVRfTU9ERV9TSVpFIChtb2RlKSArIFVOSVRT X1BFUl9XT1JEIC0gMSkgLyBVTklUU19QRVJfV09SRDsKK30KKwogLyogUmV0 dXJucyAxIGlmIGEgdmFsdWUgb2YgbW9kZSBNT0RFIGNhbiBiZSBzdG9yZWQg c3RhcnRpbmcgd2l0aCBoYXJkCiAgICByZWdpc3RlciBudW1iZXIgUkVHTk8u ICBPbiB0aGUgZW5oYW5jZWQgY29yZSwgYW55dGhpbmcgbGFyZ2VyIHRoYW4K ICAgIDEgYnl0ZSBtdXN0IHN0YXJ0IGluIGV2ZW4gbnVtYmVyZWQgcmVnaXN0 ZXIgZm9yICJtb3Z3IiB0byB3b3JrCkBAIC02Mjg4LDYgKzYyNzQsMTAgQEAg anVtcF9vdmVyX29uZV9pbnNuX3AgKHJ0eCBpbnNuLCBydHggZGVzdCkKIGlu dAogYXZyX2hhcmRfcmVnbm9fbW9kZV9vayAoaW50IHJlZ25vLCBlbnVtIG1h Y2hpbmVfbW9kZSBtb2RlKQogeworICAvKiBUaGUgZmFrZSByZWdpc3RlcnMg YXJlIGRlc2lnbmVkIHRvIGhvbGQgZXhhY3RseSBhIHBvaW50ZXIuICAqLwor ICBpZiAocmVnbm8gPT0gQVJHX1BPSU5URVJfUkVHTlVNIHx8IHJlZ25vID09 IEZSQU1FX1BPSU5URVJfUkVHTlVNKQorICAgIHJldHVybiBtb2RlID09IFBt b2RlOworCiAgIC8qIEFueSBHRU5FUkFMX1JFR1MgcmVnaXN0ZXIgY2FuIGhv bGQgOC1iaXQgdmFsdWVzLiAgKi8KICAgLyogRklYTUU6ICA4LWJpdCB2YWx1 ZXMgbXVzdCBub3QgYmUgZGlzYWxsb3dlZCBmb3IgUjI4IG9yIFIyOS4KICAg ICAgRGlzYWxsb3dpbmcgUUkgZXQgYWwuIGluIHRoZXNlIHJlZ2lzdGVycyBt aWdodCBsZWFkIHRvIGNvZGUgbGlrZQpAQCAtNjI5OSw4ICs2Mjg5LDcgQEAg YXZyX2hhcmRfcmVnbm9fbW9kZV9vayAoaW50IHJlZ25vLCBlbnVtIG1hY2hp bmVfbW9kZSBtb2RlKQogICBpZiAoR0VUX01PREVfU0laRSAobW9kZSkgPT0g MSkKICAgICAgcmV0dXJuIDE7CiAgICAKLSAgIC8qIEFsbCBtb2RlcyBsYXJn ZXIgdGhhbiA4IGJpdHMgc2hvdWxkIHN0YXJ0IGluIGFuIGV2ZW4gcmVnaXN0 ZXIuICAqLwotICAgCisgIC8qIEFsbCBtb2RlcyBsYXJnZXIgdGhhbiA4IGJp dHMgc2hvdWxkIHN0YXJ0IGluIGFuIGV2ZW4gcmVnaXN0ZXIuICAqLwogICBy ZXR1cm4gcmVnbm8gJSAyID09IDA7CiB9CiAKQEAgLTYzMzIsMjcgKzYzMjEs MzUgQEAgYXZyX21vZGVfY29kZV9iYXNlX3JlZ19jbGFzcyAoZW51bSBtYWNo aW5lX21vZGUgbW9kZSBBVFRSSUJVVEVfVU5VU0VELAogLyogV29ya2VyIGZ1 bmN0aW9uIGZvciBgUkVHTk9fTU9ERV9DT0RFX09LX0ZPUl9CQVNFX1AnLiAg Ki8KIAogYm9vbAotYXZyX3JlZ25vX21vZGVfY29kZV9va19mb3JfYmFzZV9w IChpbnQgcmVnbm8sIGVudW0gbWFjaGluZV9tb2RlIG1vZGUgQVRUUklCVVRF X1VOVVNFRCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg UlRYX0NPREUgb3V0ZXJfY29kZSwgUlRYX0NPREUgaW5kZXhfY29kZSBBVFRS SUJVVEVfVU5VU0VEKQorYXZyX3JlZ25vX21vZGVfY29kZV9va19mb3JfYmFz ZV9wIChpbnQgcmVnbm8sCisJCQkJICAgZW51bSBtYWNoaW5lX21vZGUgbW9k ZSBBVFRSSUJVVEVfVU5VU0VELAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBSVFhfQ09ERSBvdXRlcl9jb2RlLAorCQkJCSAgIFJUWF9D T0RFIGluZGV4X2NvZGUgQVRUUklCVVRFX1VOVVNFRCkKIHsKICAgYm9vbCBv azsKICAgCisgIG9rID0gKHJlZ25vID09IFJFR19aCisgICAgICAgIHx8IHJl Z25vID09IFJFR19ZCisgICAgICAgIHx8IHJlZ25vID09IEFSR19QT0lOVEVS X1JFR05VTQorICAgICAgICB8fCByZWdubyA9PSBGUkFNRV9QT0lOVEVSX1JF R05VTSk7CisKICAgc3dpdGNoIChvdXRlcl9jb2RlKQogICAgIHsKICAgICBj YXNlIFBMVVM6Ci0gICAgICBvayA9IHJlZ25vID09IFJFR19aIHx8IHJlZ25v ID09IFJFR19ZOworICAgICAgLyogQ29tcHV0ZWQgYWJvdmUgKi8KICAgICAg IGJyZWFrOwogICAgICAgCiAgICAgY2FzZSBNRU06IC8qIHBsYWluIHJlZyAq LwogICAgIGNhc2UgUE9TVF9JTkM6CiAgICAgY2FzZSBQUkVfREVDOgotICAg ICAgb2sgPSByZWdubyA9PSBSRUdfWiB8fCByZWdubyA9PSBSRUdfWSB8fCBy ZWdubyA9PSBSRUdfWDsKKyAgICAgIC8qIEFzIGFib3ZlLCBidXQgYWxzbyBY LiAgKi8KKyAgICAgIGlmIChyZWdubyA9PSBSRUdfWCkKKwlvayA9IHRydWU7 CiAgICAgICBicmVhazsKICAgICAgIAogICAgIGRlZmF1bHQ6CiAgICAgICBv ayA9IGZhbHNlOwogICAgICAgYnJlYWs7Ci0gICAgICAKICAgICB9CiAKICAg cmV0dXJuIG9rOwpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9hdnIvYXZyLmgg Yi9nY2MvY29uZmlnL2F2ci9hdnIuaAppbmRleCA5YzY0Zjk2Li40MjZkZGVj IDEwMDY0NAotLS0gYS9nY2MvY29uZmlnL2F2ci9hdnIuaAorKysgYi9nY2Mv Y29uZmlnL2F2ci9hdnIuaApAQCAtMTkxLDcgKzE5MSw4IEBAIGV4dGVybiBH VFkoKCkpIHNlY3Rpb24gKnByb2dtZW1fc2VjdGlvbjsKICAgMCwwLC8qIHIy OCByMjkgKi9cCiAgIDAsMCwvKiByMzAgcjMxICovXAogICAxLDEsLyogIFNU QUNLICovXAotICAxLDEgLyogYXJnIHBvaW50ZXIgKi8gIH0KKyAgMSwgIC8q IGFyZyBwb2ludGVyICovXAorICAxICAgLyogZnJhbWUgcG9pbnRlciAqLyAg fQogCiAjZGVmaW5lIENBTExfVVNFRF9SRUdJU1RFUlMgewkJCVwKICAgMSwx LC8qIHIwIHIxICovCQkJCVwKQEAgLTIxMSw3ICsyMTIsOCBAQCBleHRlcm4g R1RZKCgpKSBzZWN0aW9uICpwcm9nbWVtX3NlY3Rpb247CiAgICAgMCwwLC8q IHIyOCByMjkgKi8JCQkJXAogICAgIDEsMSwvKiByMzAgcjMxICovCQkJCVwK ICAgICAxLDEsLyogIFNUQUNLICovCQkJCVwKLSAgICAxLDEgLyogYXJnIHBv aW50ZXIgKi8gIH0KKyAgICAxLCAgLyogYXJnIHBvaW50ZXIgKi8JCQlcCisg ICAgMSAgIC8qIGZyYW1lIHBvaW50ZXIgKi8gfQogCiAjZGVmaW5lIFJFR19B TExPQ19PUkRFUiB7CQkJXAogICAgIDI0LDI1LAkJCQkJXApAQCAtMjI5LDcg KzIzMSw3IEBAIGV4dGVybiBHVFkoKCkpIHNlY3Rpb24gKnByb2dtZW1fc2Vj dGlvbjsKICNkZWZpbmUgQURKVVNUX1JFR19BTExPQ19PUkRFUiBvcmRlcl9y ZWdzX2Zvcl9sb2NhbF9hbGxvYyAoKQogCiAKLSNkZWZpbmUgSEFSRF9SRUdO T19OUkVHUyhSRUdOTywgTU9ERSkgKChHRVRfTU9ERV9TSVpFIChNT0RFKSAr IFVOSVRTX1BFUl9XT1JEIC0gMSkgLyBVTklUU19QRVJfV09SRCkKKyNkZWZp bmUgSEFSRF9SRUdOT19OUkVHUyhSRUdOTywgTU9ERSkgYXZyX2hhcmRfcmVn bm9fbnJlZ3MoUkVHTk8sIE1PREUpCiAKICNkZWZpbmUgSEFSRF9SRUdOT19N T0RFX09LKFJFR05PLCBNT0RFKSBhdnJfaGFyZF9yZWdub19tb2RlX29rKFJF R05PLCBNT0RFKQogCkBAIC0yNzksMTcgKzI4MSwxNyBAQCBlbnVtIHJlZ19j bGFzcyB7CiAgIHszIDw8IFJFR19aLDB4MDAwMDAwMDB9LCAgICAgIC8qIFBP SU5URVJfWl9SRUdTLCByMzAgLSByMzEgKi8JCVwKICAgezB4MDAwMDAwMDAs MHgwMDAwMDAwM30sCS8qIFNUQUNLX1JFRywgU1RBQ0sgKi8JCQlcCiAgIHso MyA8PCBSRUdfWSkgfCAoMyA8PCBSRUdfWiksCQkJCQkJXAotICAgICAweDAw MDAwMDAwfSwJCS8qIEJBU0VfUE9JTlRFUl9SRUdTLCByMjggLSByMzEgKi8J XAorICAgICAweDAwMDAwMDBjfSwJCS8qIEJBU0VfUE9JTlRFUl9SRUdTLCBy MjggLSByMzEsYXAsZnAgKi9cCiAgIHsoMyA8PCBSRUdfWCkgfCAoMyA8PCBS RUdfWSkgfCAoMyA8PCBSRUdfWiksCQkJCVwKLSAgICAgMHgwMDAwMDAwMH0s CQkvKiBQT0lOVEVSX1JFR1MsIHIyNiAtIHIzMSAqLwkJXAorICAgICAweDAw MDAwMDBjfSwJCS8qIFBPSU5URVJfUkVHUywgcjI2IC0gcjMxLGFwLGZwICov CVwKICAgeygzIDw8IFJFR19YKSB8ICgzIDw8IFJFR19ZKSB8ICgzIDw8IFJF R19aKSB8ICgzIDw8IFJFR19XKSwJCVwKICAgICAgMHgwMDAwMDAwMH0sCQkv KiBBRERXX1JFR1MsIHIyNCAtIHIzMSAqLwkJXAogICB7MHgwMGZmMDAwMCww eDAwMDAwMDAwfSwJLyogU0lNUExFX0xEX1JFR1MgcjE2IC0gcjIzICovICAg ICAgICAgIFwKICAgeygzIDw8IFJFR19YKXwoMyA8PCBSRUdfWSl8KDMgPDwg UkVHX1opfCgzIDw8IFJFR19XKXwoMHhmZiA8PCAxNiksCVwKLSAgICAgMHgw MDAwMDAwMH0sCS8qIExEX1JFR1MsIHIxNiAtIHIzMSAqLwkJCVwKKyAgICAg MHgwMDAwMDAwY30sCS8qIExEX1JFR1MsIHIxNiAtIHIzMSAqLwkJCVwKICAg ezB4MDAwMGZmZmYsMHgwMDAwMDAwMH0sCS8qIE5PX0xEX1JFR1MgIHIwIC0g cjE1ICovICAgICAgICAgICAgICBcCi0gIHsweGZmZmZmZmZmLDB4MDAwMDAw MDB9LAkvKiBHRU5FUkFMX1JFR1MsIHIwIC0gcjMxICovCQlcCi0gIHsweGZm ZmZmZmZmLDB4MDAwMDAwMDN9CS8qIEFMTF9SRUdTICovCQkJCVwKKyAgezB4 ZmZmZmZmZmYsMHgwMDAwMDAwY30sCS8qIEdFTkVSQUxfUkVHUywgcjAgLSBy MzEsYXAsZnAgKi8JXAorICB7MHhmZmZmZmZmZiwweDAwMDAwMDBmfQkvKiBB TExfUkVHUyAqLwkJCQlcCiB9CiAKICNkZWZpbmUgUkVHTk9fUkVHX0NMQVNT KFIpIGF2cl9yZWdub19yZWdfY2xhc3MoUikKQEAgLTMyMiwxNiArMzI0LDE4 IEBAIGVudW0gcmVnX2NsYXNzIHsKIAogI2RlZmluZSBTVEFDS19QT0lOVEVS X1JFR05VTSAzMgogCi0jZGVmaW5lIEZSQU1FX1BPSU5URVJfUkVHTlVNIFJF R19ZCisjZGVmaW5lIEhBUkRfRlJBTUVfUE9JTlRFUl9SRUdOVU0gUkVHX1kK IAogI2RlZmluZSBBUkdfUE9JTlRFUl9SRUdOVU0gMzQKKyNkZWZpbmUgRlJB TUVfUE9JTlRFUl9SRUdOVU0gMzUKIAogI2RlZmluZSBTVEFUSUNfQ0hBSU5f UkVHTlVNIDIKIAogI2RlZmluZSBFTElNSU5BQkxFX1JFR1MgewkJCQkJXAot ICAgICAge0FSR19QT0lOVEVSX1JFR05VTSwgRlJBTUVfUE9JTlRFUl9SRUdO VU19LAkJXAotCXtGUkFNRV9QT0lOVEVSX1JFR05VTSwgU1RBQ0tfUE9JTlRF Ul9SRUdOVU19CQlcCi0gICAgICAgLHtGUkFNRV9QT0lOVEVSX1JFR05VTSsx LFNUQUNLX1BPSU5URVJfUkVHTlVNKzF9fQorICAgICAgeyBBUkdfUE9JTlRF Ul9SRUdOVU0sIFNUQUNLX1BPSU5URVJfUkVHTlVNIH0sCQlcCisgICAgICB7 IEFSR19QT0lOVEVSX1JFR05VTSwgSEFSRF9GUkFNRV9QT0lOVEVSX1JFR05V TSB9LAlcCisgICAgICB7IEZSQU1FX1BPSU5URVJfUkVHTlVNLCBTVEFDS19Q T0lOVEVSX1JFR05VTSB9LAkJXAorICAgICAgeyBGUkFNRV9QT0lOVEVSX1JF R05VTSwgSEFSRF9GUkFNRV9QT0lOVEVSX1JFR05VTSB9fQogCiAjZGVmaW5l IElOSVRJQUxfRUxJTUlOQVRJT05fT0ZGU0VUKEZST00sIFRPLCBPRkZTRVQp CQkJXAogICBPRkZTRVQgPSBhdnJfaW5pdGlhbF9lbGltaW5hdGlvbl9vZmZz ZXQgKEZST00sIFRPKQpAQCAtNTgyLDcgKzU4Niw3IEBAIHNwcmludGYgKFNU UklORywgIiouJXMlbHUiLCBQUkVGSVgsICh1bnNpZ25lZCBsb25nKShOVU0p KQogICAgICJyOCIsInI5IiwicjEwIiwicjExIiwicjEyIiwicjEzIiwicjE0 IiwicjE1IiwJXAogICAgICJyMTYiLCJyMTciLCJyMTgiLCJyMTkiLCJyMjAi LCJyMjEiLCJyMjIiLCJyMjMiLAlcCiAgICAgInIyNCIsInIyNSIsInIyNiIs InIyNyIsInIyOCIsInIyOSIsInIzMCIsInIzMSIsCVwKLSAgICAiX19TUF9M X18iLCJfX1NQX0hfXyIsImFyZ0wiLCJhcmdIIn0KKyAgICAiX19TUF9MX18i LCJfX1NQX0hfXyIsImFwIiwiZnAifQogCiAjZGVmaW5lIEZJTkFMX1BSRVND QU5fSU5TTihpbnNuLCBvcGVyYW5kLCBub3ApIGZpbmFsX3ByZXNjYW5faW5z biAoaW5zbiwgb3BlcmFuZCxub3ApCiAK --------------030108000904090803050403--