From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17186 invoked by alias); 31 Jul 2014 18:11:30 -0000 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 Received: (qmail 17176 invoked by uid 89); 31 Jul 2014 18:11:28 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 X-HELO: na01-bn1-obe.outbound.protection.outlook.com Received: from mail-bn1blp0184.outbound.protection.outlook.com (HELO na01-bn1-obe.outbound.protection.outlook.com) (207.46.163.184) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Thu, 31 Jul 2014 18:11:26 +0000 Received: from BN1PR0301MB0644.namprd03.prod.outlook.com (25.160.171.17) by BN1PR0301MB0644.namprd03.prod.outlook.com (25.160.171.17) with Microsoft SMTP Server (TLS) id 15.0.995.14; Thu, 31 Jul 2014 18:11:23 +0000 Received: from BN1PR0301MB0644.namprd03.prod.outlook.com ([25.160.171.17]) by BN1PR0301MB0644.namprd03.prod.outlook.com ([25.160.171.17]) with mapi id 15.00.0995.014; Thu, 31 Jul 2014 18:11:23 +0000 From: "rohitarulraj@freescale.com" To: Ulrich Weigand CC: "gcc-patches@gcc.gnu.org" , Edmar Wienskoski , "dje.gcc@gmail.com" , Alan Modra , Jakub Jelinek , "rohitarulraj@freescale.com" Subject: RE: [RFC: Patch, PR 60102] [4.9/4.10 Regression] powerpc fp-bit ices@dwf_regno Date: Thu, 31 Jul 2014 18:23:00 -0000 Message-ID: References: <5b55dcd0f73c480faba04afb25a28091@DM2PR03MB352.namprd03.prod.outlook.com> from "rohitarulraj@freescale.com" at Jul 08, 2014 02:42:35 AM <201407241651.s6OGpfOu004500@d06av02.portsmouth.uk.ibm.com> In-Reply-To: <201407241651.s6OGpfOu004500@d06av02.portsmouth.uk.ibm.com> x-microsoft-antispam: BCL:0;PCL:0;RULEID: x-forefront-prvs: 0289B6431E x-forefront-antispam-report: SFV:NSPM;SFS:(6009001)(51704005)(5423002)(377424004)(199002)(189002)(50986999)(76176999)(110136001)(74662001)(86362001)(81342001)(80022001)(101416001)(99936001)(74502001)(64706001)(33646002)(87936001)(85306003)(81542001)(2656002)(79102001)(19580395003)(107046002)(83072002)(99286002)(76482001)(92566001)(85852003)(20776003)(105586002)(74316001)(77982001)(95666004)(4396001)(46102001)(76576001)(77096002)(54356999)(21056001)(19580405001)(99396002)(106116001)(66066001)(31966008)(106356001)(83322001)(221513003)(24736002)(108616003);DIR:OUT;SFP:;SCL:1;SRVR:BN1PR0301MB0644;H:BN1PR0301MB0644.namprd03.prod.outlook.com;FPR:;MLV:sfv;PTR:InfoNoRecords;MX:1;LANG:en; Content-Type: multipart/mixed; boundary="_002_e1ed4a3799764ae482037722effa1303BN1PR0301MB0644namprd03_" MIME-Version: 1.0 X-OriginatorOrg: freescale.com X-SW-Source: 2014-07/txt/msg02221.txt.bz2 --_002_e1ed4a3799764ae482037722effa1303BN1PR0301MB0644namprd03_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-length: 2493 Ulrich, Thanks for your comments, I have updated the patch accordingly. > > /* The SPE has an additional 32 synthetic registers, with DWARF debug > > info numbering for these registers starting at 1200. While > > eh_frame @@ -951,13 +952,14 @@ enum data_align { align_abi, align_opt, > > We must map them here to avoid huge unwinder tables mostly consisti= ng > > of unused space. */ > > #define DWARF_REG_TO_UNWIND_COLUMN(r) \ > > - ((r) > 1200 ? ((r) - 1200 + (DWARF_FRAME_REGISTERS - 32)) : (r)) > > + ((r) >=3D FIRST_SPE_HIGH_REGNO ? ((r) - FIRST_SPE_HIGH_REGNO + > > + (DWARF_FRAME_REGISTERS - 32)) : (r)) >=20 > As discussed above, this shouldn't change. Updated to handle first SPE high register too. #define DWARF_REG_TO_UNWIND_COLUMN(r) \ - ((r) > 1200 ? ((r) - 1200 + (DWARF_FRAME_REGISTERS - 32)) : (r)) + ((r) >=3D 1200 ? ((r) - 1200 + (DWARF_FRAME_REGISTERS - 32)) : (r) Tested this patch on trunk [213030] & GCC v4.9.1 with ppc64 and didn't find= any new regressions. Back ported this patch on GCC v4.8.3 e500v2 and tested with no new regressi= ons PR target/60102 [libgcc] 2014-07-31 Rohit * config/rs6000/linux-unwind.h (ppc_fallback_frame_state): Update based on change in SPE high register numbers and 3 HTM registers. [gcc] 2014-07-31 Rohit * config/rs6000/rs6000.c (rs6000_reg_names) : Add SPE high register names. (alt_reg_names) : Likewise (rs6000_dwarf_register_span) : For SPE high registers, replace dwarf register numbers with GCC hard register numbers. (rs6000_init_dwarf_reg_sizes_extra) : Likewise. (rs6000_dbx_register_number): For SPE high registers, return dwarf register number for the corresponding GCC hard register number. * config/rs6000/rs6000.h (FIRST_PSEUDO_REGISTER) : Update based on 32 newly added GCC hard register numbers for SPE high registers. (DWARF_FRAME_REGISTERS) : Likewise. (DWARF_REG_TO_UNWIND_COLUMN) : Likewise. (DWARF_FRAME_REGNUM) : Likewise. (FIXED_REGISTERS) : Likewise. (CALL_USED_REGISTERS) : Likewise. (CALL_REALLY_USED_REGISTERS) : Likewise. (REG_ALLOC_ORDER) : Likewise. (enum reg_class) : Likewise. (REG_CLASS_NAMES) : Likewise. (REG_CLASS_CONTENTS) : Likewise. (SPE_HIGH_REGNO_P) : New macro to identify SPE high registers.=09 * gcc.target/powerpc/pr60102.c: New testcase. Please let me know if you have any further comments on the updated patch. Regards, Rohit --_002_e1ed4a3799764ae482037722effa1303BN1PR0301MB0644namprd03_ Content-Type: application/octet-stream; name="pr60102.patch" Content-Description: pr60102.patch Content-Disposition: attachment; filename="pr60102.patch"; size=17001; creation-date="Thu, 31 Jul 2014 10:43:27 GMT"; modification-date="Thu, 31 Jul 2014 16:31:58 GMT" Content-Transfer-Encoding: base64 Content-length: 23046 SW5kZXg6IGxpYmdjYy9jb25maWcvcnM2MDAwL2xpbnV4LXVud2luZC5oCj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tIGxpYmdjYy9jb25maWcvcnM2MDAw L2xpbnV4LXVud2luZC5oCShyZXZpc2lvbiAyMTMxMTApCisrKyBsaWJnY2Mv Y29uZmlnL3JzNjAwMC9saW51eC11bndpbmQuaAkod29ya2luZyBjb3B5KQpA QCAtMjc0LDggKzI3NCw4IEBAIHBwY19mYWxsYmFja19mcmFtZV9zdGF0ZSAo c3RydWN0IF9VbndpbmQKICNpZmRlZiBfX1NQRV9fCiAgIGZvciAoaSA9IDE0 OyBpIDwgMzI7IGkrKykKICAgICB7Ci0gICAgICBmcy0+cmVncy5yZWdbaSAr IEZJUlNUX1BTRVVET19SRUdJU1RFUiAtIDFdLmhvdyA9IFJFR19TQVZFRF9P RkZTRVQ7Ci0gICAgICBmcy0+cmVncy5yZWdbaSArIEZJUlNUX1BTRVVET19S RUdJU1RFUiAtIDFdLmxvYy5vZmZzZXQKKyAgICAgIGZzLT5yZWdzLnJlZ1tp ICsgRklSU1RfU1BFX0hJR0hfUkVHTk8gLSA0XS5ob3cgPSBSRUdfU0FWRURf T0ZGU0VUOworICAgICAgZnMtPnJlZ3MucmVnW2kgKyBGSVJTVF9TUEVfSElH SF9SRUdOTyAtIDRdLmxvYy5vZmZzZXQKIAk9IChsb25nKSAmcmVncy0+dnJl Z3MgLSBuZXdfY2ZhICsgNCAqIGk7CiAgICAgfQogI2VuZGlmCkluZGV4OiBn Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcG93ZXJwYy9wcjYwMTAyLmMKPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQotLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L3Bvd2VycGMvcHI2MDEwMi5jCShyZXZpc2lvbiAwKQorKysgZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Bvd2VycGMvcHI2MDEwMi5jCShyZXZpc2lv biAwKQpAQCAtMCwwICsxLDExIEBACisvKiB7IGRnLWRvIGNvbXBpbGUgfSAq LworLyogeyBkZy1za2lwLWlmICJub3QgYW4gU1BFIHRhcmdldCIgeyAhIHBv d2VycGNfc3BlX25vY2FjaGUgfSB7ICIqIiB9IHsgIiIgfSB9ICovCisvKiB7 IGRnLW9wdGlvbnMgIi1tY3B1PTg1NDggLW1zcGUgLW1hYmk9c3BlIC1nIC1t ZmxvYXQtZ3Bycz1kb3VibGUiIH0gKi8KKworZG91YmxlCitwcjYwMTAyIChk b3VibGUgeCwgaW50IG0pCit7CisgIGRvdWJsZSB5OworICB5ID0gIG0gJSAy ID8geCA6IDE7CisgIHJldHVybiB5OworfQpJbmRleDogZ2NjL2NvbmZpZy9y czYwMDAvcnM2MDAwLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZ2Nj L2NvbmZpZy9yczYwMDAvcnM2MDAwLmMJKHJldmlzaW9uIDIxMzExMCkKKysr IGdjYy9jb25maWcvcnM2MDAwL3JzNjAwMC5jCSh3b3JraW5nIGNvcHkpCkBA IC0xMjIxLDcgKzEyMjEsMTIgQEAgY2hhciByczYwMDBfcmVnX25hbWVzW11b OF0gPQogICAgICAgLyogU29mdCBmcmFtZSBwb2ludGVyLiAgKi8KICAgICAg ICJzZnAiLAogICAgICAgLyogSFRNIFNQUiByZWdpc3RlcnMuICAqLwotICAg ICAgInRmaGFyIiwgInRmaWFyIiwgInRleGFzciIKKyAgICAgICJ0ZmhhciIs ICJ0ZmlhciIsICJ0ZXhhc3IiLAorICAgICAgLyogU1BFIEhpZ2ggcmVnaXN0 ZXJzLiAgKi8KKyAgICAgICIwIiwgICIxIiwgICIyIiwgICIzIiwgICI0Iiwg ICI1IiwgICI2IiwgICI3IiwKKyAgICAgICI4IiwgICI5IiwgIjEwIiwgIjEx IiwgIjEyIiwgIjEzIiwgIjE0IiwgIjE1IiwKKyAgICAgIjE2IiwgIjE3Iiwg IjE4IiwgIjE5IiwgIjIwIiwgIjIxIiwgIjIyIiwgIjIzIiwKKyAgICAgIjI0 IiwgIjI1IiwgIjI2IiwgIjI3IiwgIjI4IiwgIjI5IiwgIjMwIiwgIjMxIgog fTsKIAogI2lmZGVmIFRBUkdFVF9SRUdOQU1FUwpAQCAtMTI0OSw3ICsxMjU0 LDEyIEBAIHN0YXRpYyBjb25zdCBjaGFyIGFsdF9yZWdfbmFtZXNbXVs4XSA9 CiAgIC8qIFNvZnQgZnJhbWUgcG9pbnRlci4gICovCiAgICJzZnAiLAogICAv KiBIVE0gU1BSIHJlZ2lzdGVycy4gICovCi0gICJ0ZmhhciIsICJ0ZmlhciIs ICJ0ZXhhc3IiCisgICJ0ZmhhciIsICJ0ZmlhciIsICJ0ZXhhc3IiLAorICAv KiBTUEUgSGlnaCByZWdpc3RlcnMuICAqLworICAiJXJoMCIsICAiJXJoMSIs ICAiJXJoMiIsICAiJXJoMyIsICAiJXJoNCIsICAiJXJoNSIsICAiJXJoNiIs ICAgIiVyaDciLAorICAiJXJoOCIsICAiJXJoOSIsICAiJXJoMTAiLCAiJXIx MSIsICAiJXJoMTIiLCAiJXJoMTMiLCAiJXJoMTQiLCAiJXJoMTUiLAorICAi JXJoMTYiLCAiJXJoMTciLCAiJXJoMTgiLCAiJXJoMTkiLCAiJXJoMjAiLCAi JXJoMjEiLCAiJXJoMjIiLCAiJXJoMjMiLAorICAiJXJoMjQiLCAiJXJoMjUi LCAiJXJoMjYiLCAiJXJoMjciLCAiJXJoMjgiLCAiJXJoMjkiLCAiJXJoMzAi LCAiJXJoMzEiCiB9OwogI2VuZGlmCiAKQEAgLTMxMDc0LDEzICszMTA4NCwx MyBAQCByczYwMDBfZHdhcmZfcmVnaXN0ZXJfc3BhbiAocnR4IHJlZykKICAg ICB7CiAgICAgICBpZiAoQllURVNfQklHX0VORElBTikKIAl7Ci0JICBwYXJ0 c1syICogaV0gPSBnZW5fcnR4X1JFRyAoU0ltb2RlLCByZWdubyArIDEyMDAp OworCSAgcGFydHNbMiAqIGldID0gZ2VuX3J0eF9SRUcgKFNJbW9kZSwgcmVn bm8gKyBGSVJTVF9TUEVfSElHSF9SRUdOTyk7CiAJICBwYXJ0c1syICogaSAr IDFdID0gZ2VuX3J0eF9SRUcgKFNJbW9kZSwgcmVnbm8pOwogCX0KICAgICAg IGVsc2UKIAl7CiAJICBwYXJ0c1syICogaV0gPSBnZW5fcnR4X1JFRyAoU0lt b2RlLCByZWdubyk7Ci0JICBwYXJ0c1syICogaSArIDFdID0gZ2VuX3J0eF9S RUcgKFNJbW9kZSwgcmVnbm8gKyAxMjAwKTsKKwkgIHBhcnRzWzIgKiBpICsg MV0gPSBnZW5fcnR4X1JFRyAoU0ltb2RlLCByZWdubyArIEZJUlNUX1NQRV9I SUdIX1JFR05PKTsKIAl9CiAgICAgfQogCkBAIC0zMTEwMCwxMSArMzExMTAs MTEgQEAgcnM2MDAwX2luaXRfZHdhcmZfcmVnX3NpemVzX2V4dHJhICh0cmVl IAogICAgICAgcnR4IG1lbSA9IGdlbl9ydHhfTUVNIChCTEttb2RlLCBhZGRy KTsKICAgICAgIHJ0eCB2YWx1ZSA9IGdlbl9pbnRfbW9kZSAoNCwgbW9kZSk7 CiAKLSAgICAgIGZvciAoaSA9IDEyMDE7IGkgPCAxMjMyOyBpKyspCisgICAg ICBmb3IgKGkgPSBGSVJTVF9TUEVfSElHSF9SRUdOTzsgaSA8IExBU1RfU1BF X0hJR0hfUkVHTk8rMTsgaSsrKQogCXsKLQkgIGludCBjb2x1bW4gPSBEV0FS Rl9SRUdfVE9fVU5XSU5EX0NPTFVNTiAoaSk7Ci0JICBIT1NUX1dJREVfSU5U IG9mZnNldAotCSAgICA9IERXQVJGX0ZSQU1FX1JFR05VTSAoY29sdW1uKSAq IEdFVF9NT0RFX1NJWkUgKG1vZGUpOworCSAgaW50IGNvbHVtbiA9IERXQVJG X1JFR19UT19VTldJTkRfQ09MVU1OCisJCShEV0FSRjJfRlJBTUVfUkVHX09V VCAoRFdBUkZfRlJBTUVfUkVHTlVNIChpKSwgdHJ1ZSkpOworCSAgSE9TVF9X SURFX0lOVCBvZmZzZXQgPSBjb2x1bW4gKiBHRVRfTU9ERV9TSVpFIChtb2Rl KTsKIAogCSAgZW1pdF9tb3ZlX2luc24gKGFkanVzdF9hZGRyZXNzIChtZW0s IG1vZGUsIG9mZnNldCksIHZhbHVlKTsKIAl9CkBAIC0zMTEyMyw5ICszMTEz Myw5IEBAIHJzNjAwMF9pbml0X2R3YXJmX3JlZ19zaXplc19leHRyYSAodHJl ZSAKIAogICAgICAgZm9yIChpID0gRklSU1RfQUxUSVZFQ19SRUdOTzsgaSA8 IExBU1RfQUxUSVZFQ19SRUdOTysxOyBpKyspCiAJewotCSAgaW50IGNvbHVt biA9IERXQVJGX1JFR19UT19VTldJTkRfQ09MVU1OIChpKTsKLQkgIEhPU1Rf V0lERV9JTlQgb2Zmc2V0Ci0JICAgID0gRFdBUkZfRlJBTUVfUkVHTlVNIChj b2x1bW4pICogR0VUX01PREVfU0laRSAobW9kZSk7CisJICBpbnQgY29sdW1u ID0gRFdBUkZfUkVHX1RPX1VOV0lORF9DT0xVTU4KKwkJKERXQVJGMl9GUkFN RV9SRUdfT1VUIChEV0FSRl9GUkFNRV9SRUdOVU0gKGkpLCB0cnVlKSk7CisJ ICBIT1NUX1dJREVfSU5UIG9mZnNldCA9IGNvbHVtbiAqIEdFVF9NT0RFX1NJ WkUgKG1vZGUpOwogCiAJICBlbWl0X21vdmVfaW5zbiAoYWRqdXN0X2FkZHJl c3MgKG1lbSwgbW9kZSwgb2Zmc2V0KSwgdmFsdWUpOwogCX0KQEAgLTMxMTU3 LDkgKzMxMTY3LDggQEAgcnM2MDAwX2RieF9yZWdpc3Rlcl9udW1iZXIgKHVu c2lnbmVkIGludAogICAgIHJldHVybiA5OTsKICAgaWYgKHJlZ25vID09IFNQ RUZTQ1JfUkVHTk8pCiAgICAgcmV0dXJuIDYxMjsKLSAgLyogU1BFIGhpZ2gg cmVnIG51bWJlci4gIFdlIGdldCB0aGVzZSB2YWx1ZXMgb2YgcmVnbm8gZnJv bQotICAgICByczYwMDBfZHdhcmZfcmVnaXN0ZXJfc3Bhbi4gICovCi0gIGdj Y19hc3NlcnQgKHJlZ25vID49IDEyMDAgJiYgcmVnbm8gPCAxMjMyKTsKKyAg aWYgKFNQRV9ISUdIX1JFR05PX1AgKHJlZ25vKSkKKyAgICByZXR1cm4gcmVn bm8gLSBGSVJTVF9TUEVfSElHSF9SRUdOTyArIDEyMDA7CiAgIHJldHVybiBy ZWdubzsKIH0KIApJbmRleDogZ2NjL2NvbmZpZy9yczYwMDAvcnM2MDAwLmgK PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0gZ2NjL2NvbmZpZy9yczYwMDAv cnM2MDAwLmgJKHJldmlzaW9uIDIxMzExMCkKKysrIGdjYy9jb25maWcvcnM2 MDAwL3JzNjAwMC5oCSh3b3JraW5nIGNvcHkpCkBAIC05MzAsMzUgKzkzMCwz MiBAQCBlbnVtIGRhdGFfYWxpZ24geyBhbGlnbl9hYmksIGFsaWduX29wdCwg CiAKICAgIFRoZSAzIEhUTSByZWdpc3RlcnMgYXJlbid0IGFsc28gaW5jbHVk ZWQgaW4gRFdBUkZfRlJBTUVfUkVHSVNURVJTLiAgKi8KIAotI2RlZmluZSBG SVJTVF9QU0VVRE9fUkVHSVNURVIgMTE3CisjZGVmaW5lIEZJUlNUX1BTRVVE T19SRUdJU1RFUiAxNDkKIAogLyogVGhpcyBtdXN0IGJlIGluY2x1ZGVkIGZv ciBwcmUgZ2NjIDMuMCBnbGliYyBjb21wYXRpYmlsaXR5LiAgKi8KICNkZWZp bmUgUFJFX0dDQzNfRFdBUkZfRlJBTUVfUkVHSVNURVJTIDc3CiAKLS8qIEFk ZCAzMiBkd2FyZiBjb2x1bW5zIGZvciBzeW50aGV0aWMgU1BFIHJlZ2lzdGVy cy4gICovCi0jZGVmaW5lIERXQVJGX0ZSQU1FX1JFR0lTVEVSUyAoKEZJUlNU X1BTRVVET19SRUdJU1RFUiAtIDQpICsgMzIpCisvKiBTUEUgaGlnaCByZWdp c3RlcnMgYWRkZWQgYXMgaGFyZCByZWdzLgorICAgVGhlIHNmcCByZWdpc3Rl ciBhbmQgMyBIVE0gcmVnaXN0ZXJzCisgICBhcmVuJ3QgaW5jbHVkZWQgaW4g RFdBUkZfRlJBTUVfUkVHSVNURVJTLiAgKi8KKyNkZWZpbmUgRFdBUkZfRlJB TUVfUkVHSVNURVJTIChGSVJTVF9QU0VVRE9fUkVHSVNURVIgLSA0KQogCiAv KiBUaGUgU1BFIGhhcyBhbiBhZGRpdGlvbmFsIDMyIHN5bnRoZXRpYyByZWdp c3RlcnMsIHdpdGggRFdBUkYgZGVidWcKICAgIGluZm8gbnVtYmVyaW5nIGZv ciB0aGVzZSByZWdpc3RlcnMgc3RhcnRpbmcgYXQgMTIwMC4gIFdoaWxlIGVo X2ZyYW1lCiAgICByZWdpc3RlciBudW1iZXJpbmcgbmVlZCBub3QgYmUgdGhl IHNhbWUgYXMgdGhlIGRlYnVnIGluZm8gbnVtYmVyaW5nLAotICAgd2UgY2hv b3NlIHRvIG51bWJlciB0aGVzZSByZWdzIGZvciBlaF9mcmFtZSBhdCAxMjAw IHRvby4gIFRoaXMgYWxsb3dzCi0gICBmdXR1cmUgdmVyc2lvbnMgb2YgdGhl IHJzNjAwMCBiYWNrZW5kIHRvIGFkZCBoYXJkIHJlZ2lzdGVycyBhbmQKLSAg IGNvbnRpbnVlIHRvIHVzZSB0aGUgZ2NjIGhhcmQgcmVnaXN0ZXIgbnVtYmVy aW5nIGZvciBlaF9mcmFtZS4gIElmIHRoZQotICAgZXh0cmEgU1BFIHJlZ2lz dGVycyBpbiBlaF9mcmFtZSB3ZXJlIG51bWJlcmVkIHN0YXJ0aW5nIGZyb20g dGhlCi0gICBjdXJyZW50IHZhbHVlIG9mIEZJUlNUX1BTRVVET19SRUdJU1RF UiwgdGhlbiBpZiBGSVJTVF9QU0VVRE9fUkVHSVNURVIKLSAgIGNoYW5nZWQg d2UnZCBuZWVkIHRvIGludHJvZHVjZSBhIG1hcHBpbmcgaW4gRFdBUkZfRlJB TUVfUkVHTlVNIHRvCi0gICBhdm9pZCBpbnZhbGlkYXRpbmcgb2xkZXIgU1BF IGVoX2ZyYW1lIGluZm8uCisgICB3ZSBjaG9vc2UgdG8gbnVtYmVyIHRoZXNl IHJlZ3MgZm9yIGVoX2ZyYW1lIGF0IDEyMDAgdG9vLgogCiAgICBXZSBtdXN0 IG1hcCB0aGVtIGhlcmUgdG8gYXZvaWQgaHVnZSB1bndpbmRlciB0YWJsZXMg bW9zdGx5IGNvbnNpc3RpbmcKICAgIG9mIHVudXNlZCBzcGFjZS4gICovCiAj ZGVmaW5lIERXQVJGX1JFR19UT19VTldJTkRfQ09MVU1OKHIpIFwKLSAgKChy KSA+IDEyMDAgPyAoKHIpIC0gMTIwMCArIChEV0FSRl9GUkFNRV9SRUdJU1RF UlMgLSAzMikpIDogKHIpKQorICAoKHIpID49IDEyMDAgPyAoKHIpIC0gMTIw MCArIChEV0FSRl9GUkFNRV9SRUdJU1RFUlMgLSAzMikpIDogKHIpKQogCiAv KiBVc2Ugc3RhbmRhcmQgRFdBUkYgbnVtYmVyaW5nIGZvciBEV0FSRiBkZWJ1 Z2dpbmcgaW5mb3JtYXRpb24uICAqLwogI2RlZmluZSBEQlhfUkVHSVNURVJf TlVNQkVSKFJFR05PKSByczYwMDBfZGJ4X3JlZ2lzdGVyX251bWJlciAoUkVH Tk8pCiAKIC8qIFVzZSBnY2MgaGFyZCByZWdpc3RlciBudW1iZXJpbmcgZm9y IGVoX2ZyYW1lLiAgKi8KLSNkZWZpbmUgRFdBUkZfRlJBTUVfUkVHTlVNKFJF R05PKSAoUkVHTk8pCisjZGVmaW5lIERXQVJGX0ZSQU1FX1JFR05VTShSRUdO TykgXAorICAoKFJFR05PKSA+PSBGSVJTVF9TUEVfSElHSF9SRUdOTyA/ICgo UkVHTk8pIC0gRklSU1RfU1BFX0hJR0hfUkVHTk8gKyAxMjAwKSA6IChSRUdO TykpCiAKIC8qIE1hcCByZWdpc3RlciBudW1iZXJzIGhlbGQgaW4gdGhlIGNh bGwgZnJhbWUgaW5mbyB0aGF0IGdjYyBoYXMKICAgIGNvbGxlY3RlZCB1c2lu ZyBEV0FSRl9GUkFNRV9SRUdOVU0gdG8gdGhvc2UgdGhhdCBzaG91bGQgYmUg b3V0cHV0IGluCkBAIC05OTIsNyArOTg5LDEwIEBAIGVudW0gZGF0YV9hbGln biB7IGFsaWduX2FiaSwgYWxpZ25fb3B0LCAKICAgIDAsIDAsIDAsIDAsIDAs IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIFwKICAgIDAsIDAs IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIFwK ICAgIDEsIDEJCQkJCQkgICBcCi0gICAsIDEsIDEsIDEsIDEsIDEsIDEJCQkJ ICAgXAorICAgLCAxLCAxLCAxLCAxLCAxLCAxLAkJCQkgICBcCisgICAvKiBT UEUgSGlnaCByZWdpc3RlcnMuICAqLwkJCSAgIFwKKyAgIDEsIDEsIDEsIDEs IDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIFwKKyAgIDEs IDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEg IFwKIH0KIAogLyogMSBmb3IgcmVnaXN0ZXJzIG5vdCBhdmFpbGFibGUgYWNy b3NzIGZ1bmN0aW9uIGNhbGxzLgpAQCAtMTAxMiw3ICsxMDEyLDEwIEBAIGVu dW0gZGF0YV9hbGlnbiB7IGFsaWduX2FiaSwgYWxpZ25fb3B0LCAKICAgIDAs IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs IFwKICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs IDAsIDAsIDAsIFwKICAgIDEsIDEJCQkJCQkgICBcCi0gICAsIDEsIDEsIDEs IDEsIDEsIDEJCQkJICAgXAorICAgLCAxLCAxLCAxLCAxLCAxLCAxLAkJCQkg ICBcCisgICAvKiBTUEUgSGlnaCByZWdpc3RlcnMuICAqLwkJCSAgIFwKKyAg IDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEs IDEsIFwKKyAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEs IDEsIDEsIDEsIDEgIFwKIH0KIAogLyogTGlrZSBgQ0FMTF9VU0VEX1JFR0lT VEVSUycgZXhjZXB0IHRoaXMgbWFjcm8gZG9lc24ndCByZXF1aXJlIHRoYXQK QEAgLTEwMzEsNyArMTAzNCwxMCBAQCBlbnVtIGRhdGFfYWxpZ24geyBhbGln bl9hYmksIGFsaWduX29wdCwgCiAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCBcCiAgICAwLCAwLCAwLCAwLCAw LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCBcCiAgICAwLCAw CQkJCQkJICAgXAotICAgLCAwLCAwLCAwLCAwLCAwLCAwCQkJCSAgIFwKKyAg ICwgMCwgMCwgMCwgMCwgMCwgMCwJCQkJICAgXAorICAgLyogU1BFIEhpZ2gg cmVnaXN0ZXJzLiAgKi8JCQkgICBcCisgICAwLCAwLCAwLCAwLCAwLCAwLCAw LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCBcCisgICAwLCAwLCAwLCAw LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwICBcCiB9CiAK ICNkZWZpbmUgVE9UQUxfQUxUSVZFQ19SRUdTCShMQVNUX0FMVElWRUNfUkVH Tk8gLSBGSVJTVF9BTFRJVkVDX1JFR05PICsgMSkKQEAgLTExMTQsNyArMTEy MCwxMCBAQCBlbnVtIGRhdGFfYWxpZ24geyBhbGlnbl9hYmksIGFsaWduX29w dCwgCiAgICA5NiwgOTUsIDk0LCA5MywgOTIsIDkxLAkJCQkJXAogICAgMTA4 LCAxMDcsIDEwNiwgMTA1LCAxMDQsIDEwMywgMTAyLCAxMDEsIDEwMCwgOTks IDk4LCA5NywJXAogICAgMTA5LCAxMTAsCQkJCQkJCVwKLSAgIDExMSwgMTEy LCAxMTMsIDExNCwgMTE1LCAxMTYJCQkJCVwKKyAgIDExMSwgMTEyLCAxMTMs IDExNCwgMTE1LCAxMTYsCQkJCVwKKyAgIDExNywgMTE4LCAxMTksIDEyMCwg MTIxLCAxMjIsIDEyMywgMTI0LCAxMjUsIDEyNiwgMTI3LCAxMjgsICBcCisg ICAxMjksIDEzMCwgMTMxLCAxMzIsIDEzMywgMTM0LCAxMzUsIDEzNiwgMTM3 LCAxMzgsIDEzOSwgMTQwLCAgXAorICAgMTQxLCAxNDIsIDE0MywgMTQ0LCAx NDUsIDE0NiwgMTQ3LCAxNDgJCQlcCiB9CiAKIC8qIFRydWUgaWYgcmVnaXN0 ZXIgaXMgZmxvYXRpbmctcG9pbnQuICAqLwpAQCAtMTEzNiw2ICsxMTQ1LDEw IEBAIGVudW0gZGF0YV9hbGlnbiB7IGFsaWduX2FiaSwgYWxpZ25fb3B0LCAK IC8qIFBBSVJFRCBTSU1EIHJlZ2lzdGVycyBhcmUganVzdCB0aGUgRlBScy4g ICovCiAjZGVmaW5lIFBBSVJFRF9TSU1EX1JFR05PX1AoTikgKChOKSA+PSAz MiAmJiAoTikgPD0gNjMpCiAKKy8qIFRydWUgaWYgcmVnaXN0ZXIgaXMgYW4g U1BFIEhpZ2ggcmVnaXN0ZXIuICAqLworI2RlZmluZSBTUEVfSElHSF9SRUdO T19QKE4pIFwKKyAgKChOKSA+PSBGSVJTVF9TUEVfSElHSF9SRUdOTyAmJiAo TikgPD0gTEFTVF9TUEVfSElHSF9SRUdOTykKKwogLyogVHJ1ZSBpZiByZWdp c3RlciBpcyB0aGUgQ0EgcmVnaXN0ZXIuICAqLwogI2RlZmluZSBDQV9SRUdO T19QKE4pICgoTikgPT0gQ0FfUkVHTk8pCiAKQEAgLTEzNDksNiArMTM2Miw3 IEBAIGVudW0gcmVnX2NsYXNzCiAgIENSX1JFR1MsCiAgIE5PTl9GTE9BVF9S RUdTLAogICBDQV9SRUdTLAorICBTUEVfSElHSF9SRUdTLAogICBBTExfUkVH UywKICAgTElNX1JFR19DTEFTU0VTCiB9OwpAQCAtMTM4MCw2ICsxMzk0LDcg QEAgZW51bSByZWdfY2xhc3MKICAgIkNSX1JFR1MiLAkJCQkJCQkJXAogICAi Tk9OX0ZMT0FUX1JFR1MiLAkJCQkJCQlcCiAgICJDQV9SRUdTIiwJCQkJCQkJ CVwKKyAgIlNQRV9ISUdIX1JFR1MiLAkJCQkJCQlcCiAgICJBTExfUkVHUyIJ CQkJCQkJCVwKIH0KIApAQCAtMTM4NywzMCArMTQwMiw1NCBAQCBlbnVtIHJl Z19jbGFzcwogICAgVGhpcyBpcyBhbiBpbml0aWFsaXplciBmb3IgYSB2ZWN0 b3Igb2YgSEFSRF9SRUdfU0VUCiAgICBvZiBsZW5ndGggTl9SRUdfQ0xBU1NF Uy4gICovCiAKLSNkZWZpbmUgUkVHX0NMQVNTX0NPTlRFTlRTCQkJCQkJICAg ICBcCi17CQkJCQkJCQkJICAgICBcCi0gIHsgMHgwMDAwMDAwMCwgMHgwMDAw MDAwMCwgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCB9LCAvKiBOT19SRUdTICov CSAgICAgXAotICB7IDB4ZmZmZmZmZmUsIDB4MDAwMDAwMDAsIDB4MDAwMDAw MDgsIDB4MDAwMjAwMDAgfSwgLyogQkFTRV9SRUdTICovCSAgICAgXAotICB7 IDB4ZmZmZmZmZmYsIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDgsIDB4MDAwMjAw MDAgfSwgLyogR0VORVJBTF9SRUdTICovICAgICBcCi0gIHsgMHgwMDAwMDAw MCwgMHhmZmZmZmZmZiwgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCB9LCAvKiBG TE9BVF9SRUdTICovICAgICAgIFwKLSAgeyAweDAwMDAwMDAwLCAweDAwMDAw MDAwLCAweGZmZmZlMDAwLCAweDAwMDAxZmZmIH0sIC8qIEFMVElWRUNfUkVH UyAqLyAgICAgXAotICB7IDB4MDAwMDAwMDAsIDB4ZmZmZmZmZmYsIDB4ZmZm ZmUwMDAsIDB4MDAwMDFmZmYgfSwgLyogVlNYX1JFR1MgKi8JICAgICBcCi0g IHsgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCwgMHgwMDAw MjAwMCB9LCAvKiBWUlNBVkVfUkVHUyAqLwkgICAgIFwKLSAgeyAweDAwMDAw MDAwLCAweDAwMDAwMDAwLCAweDAwMDAwMDAwLCAweDAwMDA0MDAwIH0sIC8q IFZTQ1JfUkVHUyAqLwkgICAgIFwKLSAgeyAweDAwMDAwMDAwLCAweDAwMDAw MDAwLCAweDAwMDAwMDAwLCAweDAwMDA4MDAwIH0sIC8qIFNQRV9BQ0NfUkVH UyAqLyAgICAgXAotICB7IDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAw MDAwMDAsIDB4MDAwMTAwMDAgfSwgLyogU1BFRlNDUl9SRUdTICovICAgICBc Ci0gIHsgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCwgMHgw MDA0MDAwMCB9LCAvKiBTUFJfUkVHUyAqLyAgICAgXAotICB7IDB4ZmZmZmZm ZmYsIDB4ZmZmZmZmZmYsIDB4MDAwMDAwMDgsIDB4MDAwMjAwMDAgfSwgLyog Tk9OX1NQRUNJQUxfUkVHUyAqLyBcCi0gIHsgMHgwMDAwMDAwMCwgMHgwMDAw MDAwMCwgMHgwMDAwMDAwMiwgMHgwMDAwMDAwMCB9LCAvKiBMSU5LX1JFR1Mg Ki8JICAgICBcCi0gIHsgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCwgMHgwMDAw MDAwNCwgMHgwMDAwMDAwMCB9LCAvKiBDVFJfUkVHUyAqLwkgICAgIFwKLSAg eyAweDAwMDAwMDAwLCAweDAwMDAwMDAwLCAweDAwMDAwMDA2LCAweDAwMDAw MDAwIH0sIC8qIExJTktfT1JfQ1RSX1JFR1MgKi8gXAotICB7IDB4MDAwMDAw MDAsIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDYsIDB4MDAwMDIwMDAgfSwgLyog U1BFQ0lBTF9SRUdTICovICAgICBcCi0gIHsgMHhmZmZmZmZmZiwgMHgwMDAw MDAwMCwgMHgwMDAwMDAwZSwgMHgwMDAyMjAwMCB9LCAvKiBTUEVDX09SX0dF Tl9SRUdTICovIFwKLSAgeyAweDAwMDAwMDAwLCAweDAwMDAwMDAwLCAweDAw MDAwMDEwLCAweDAwMDAwMDAwIH0sIC8qIENSMF9SRUdTICovCSAgICAgXAot ICB7IDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAwMDBmZjAsIDB4MDAw MDAwMDAgfSwgLyogQ1JfUkVHUyAqLwkgICAgIFwKLSAgeyAweGZmZmZmZmZm LCAweDAwMDAwMDAwLCAweDAwMDAwZmZlLCAweDAwMDIwMDAwIH0sIC8qIE5P Tl9GTE9BVF9SRUdTICovICAgXAotICB7IDB4MDAwMDAwMDAsIDB4MDAwMDAw MDAsIDB4MDAwMDEwMDAsIDB4MDAwMDAwMDAgfSwgLyogQ0FfUkVHUyAqLwkg ICAgIFwKLSAgeyAweGZmZmZmZmZmLCAweGZmZmZmZmZmLCAweGZmZmZmZmZl LCAweDAwMDdmZmZmIH0gIC8qIEFMTF9SRUdTICovCSAgICAgXAorI2RlZmlu ZSBSRUdfQ0xBU1NfQ09OVEVOVFMJCQkJCQlcCit7CQkJCQkJCQkJXAorICAv KiBOT19SRUdTLiAgKi8JCQkJCQkJXAorICB7IDB4MDAwMDAwMDAsIDB4MDAw MDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAgfSwJ XAorICAvKiBCQVNFX1JFR1MuICAqLwkJCQkJCQlcCisgIHsgMHhmZmZmZmZm ZSwgMHgwMDAwMDAwMCwgMHgwMDAwMDAwOCwgMHgwMDAyMDAwMCwgMHgwMDAw MDAwMCB9LAlcCisgIC8qIEdFTkVSQUxfUkVHUy4gICovCQkJCQkJCVwKKyAg eyAweGZmZmZmZmZmLCAweDAwMDAwMDAwLCAweDAwMDAwMDA4LCAweDAwMDIw MDAwLCAweDAwMDAwMDAwIH0sCVwKKyAgLyogRkxPQVRfUkVHUy4gICovCQkJ CQkJCVwKKyAgeyAweDAwMDAwMDAwLCAweGZmZmZmZmZmLCAweDAwMDAwMDAw LCAweDAwMDAwMDAwLCAweDAwMDAwMDAwIH0sCVwKKyAgLyogQUxUSVZFQ19S RUdTLiAgKi8JCQkJCQkJXAorICB7IDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAs IDB4ZmZmZmUwMDAsIDB4MDAwMDFmZmYsIDB4MDAwMDAwMDAgfSwJXAorICAv KiBWU1hfUkVHUy4gICovCQkJCQkJCVwKKyAgeyAweDAwMDAwMDAwLCAweGZm ZmZmZmZmLCAweGZmZmZlMDAwLCAweDAwMDAxZmZmLCAweDAwMDAwMDAwIH0s CVwKKyAgLyogVlJTQVZFX1JFR1MuICAqLwkJCQkJCQlcCisgIHsgMHgwMDAw MDAwMCwgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCwgMHgwMDAwMjAwMCwgMHgw MDAwMDAwMCB9LAlcCisgIC8qIFZTQ1JfUkVHUy4gICovCQkJCQkJCVwKKyAg eyAweDAwMDAwMDAwLCAweDAwMDAwMDAwLCAweDAwMDAwMDAwLCAweDAwMDA0 MDAwLCAweDAwMDAwMDAwIH0sCVwKKyAgLyogU1BFX0FDQ19SRUdTLiAgKi8J CQkJCQkJXAorICB7IDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAwMDAw MDAsIDB4MDAwMDgwMDAsIDB4MDAwMDAwMDAgfSwJXAorICAvKiBTUEVGU0NS X1JFR1MuICAqLwkJCQkJCQlcCisgIHsgMHgwMDAwMDAwMCwgMHgwMDAwMDAw MCwgMHgwMDAwMDAwMCwgMHgwMDAxMDAwMCwgMHgwMDAwMDAwMCB9LAlcCisg IC8qIFNQUl9SRUdTLiAgKi8JCQkJCQkJXAorICB7IDB4MDAwMDAwMDAsIDB4 MDAwMDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAwNDAwMDAsIDB4MDAwMDAwMDAg fSwJXAorICAvKiBOT05fU1BFQ0lBTF9SRUdTLiAgKi8JCQkJCQlcCisgIHsg MHhmZmZmZmZmZiwgMHhmZmZmZmZmZiwgMHgwMDAwMDAwOCwgMHgwMDAyMDAw MCwgMHgwMDAwMDAwMCB9LAlcCisgIC8qIExJTktfUkVHUy4gICovCQkJCQkJ CVwKKyAgeyAweDAwMDAwMDAwLCAweDAwMDAwMDAwLCAweDAwMDAwMDAyLCAw eDAwMDAwMDAwLCAweDAwMDAwMDAwIH0sCVwKKyAgLyogQ1RSX1JFR1MuICAq LwkJCQkJCQlcCisgIHsgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCwgMHgwMDAw MDAwNCwgMHgwMDAwMDAwMCwgMHgwMDAwMDAwMCB9LAlcCisgIC8qIExJTktf T1JfQ1RSX1JFR1MuICAqLwkJCQkJCVwKKyAgeyAweDAwMDAwMDAwLCAweDAw MDAwMDAwLCAweDAwMDAwMDA2LCAweDAwMDAwMDAwLCAweDAwMDAwMDAwIH0s CVwKKyAgLyogU1BFQ0lBTF9SRUdTLiAgKi8JCQkJCQkJXAorICB7IDB4MDAw MDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDYsIDB4MDAwMDIwMDAsIDB4 MDAwMDAwMDAgfSwJXAorICAvKiBTUEVDX09SX0dFTl9SRUdTLiAgKi8JCQkJ CQlcCisgIHsgMHhmZmZmZmZmZiwgMHgwMDAwMDAwMCwgMHgwMDAwMDAwZSwg MHgwMDAyMjAwMCwgMHgwMDAwMDAwMCB9LAlcCisgIC8qIENSMF9SRUdTLiAg Ki8JCQkJCQkJXAorICB7IDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAw MDAwMTAsIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAgfSwJXAorICAvKiBDUl9S RUdTLiAgKi8JCQkJCQkJXAorICB7IDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAs IDB4MDAwMDBmZjAsIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAgfSwJXAorICAv KiBOT05fRkxPQVRfUkVHUy4gICovCQkJCQkJXAorICB7IDB4ZmZmZmZmZmYs IDB4MDAwMDAwMDAsIDB4MDAwMDBmZmUsIDB4MDAwMjAwMDAsIDB4MDAwMDAw MDAgfSwJXAorICAvKiBDQV9SRUdTLiAgKi8JCQkJCQkJXAorICB7IDB4MDAw MDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAwMDEwMDAsIDB4MDAwMDAwMDAsIDB4 MDAwMDAwMDAgfSwJXAorICAvKiBTUEVfSElHSF9SRUdTLiAgKi8JCQkJCQkJ XAorICB7IDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAsIDB4MDAwMDAwMDAsIDB4 ZmZlMDAwMDAsIDB4MDAxZmZmZmYgfSwJXAorICAvKiBBTExfUkVHUy4gICov CQkJCQkJCVwKKyAgeyAweGZmZmZmZmZmLCAweGZmZmZmZmZmLCAweGZmZmZm ZmZlLCAweGZmZTdmZmZmLCAweDAwMWZmZmZmIH0JXAogfQogCiAvKiBUaGUg c2FtZSBpbmZvcm1hdGlvbiwgaW52ZXJ0ZWQ6CkBAIC0yMzQ5LDYgKzIzODgs MzkgQEAgZXh0ZXJuIGNoYXIgcnM2MDAwX3JlZ19uYW1lc1tdWzhdOwkvKiBy ZQogICAmcnM2MDAwX3JlZ19uYW1lc1sxMTRdWzBdLAkvKiB0ZmhhciAgKi8J CQkJXAogICAmcnM2MDAwX3JlZ19uYW1lc1sxMTVdWzBdLAkvKiB0ZmlhciAg Ki8JCQkJXAogICAmcnM2MDAwX3JlZ19uYW1lc1sxMTZdWzBdLAkvKiB0ZXhh c3IgICovCQkJCVwKKwkJCQkJCQkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNb MTE3XVswXSwJLyogU1BFIHJoMC4gICovCQkJCVwKKyAgJnJzNjAwMF9yZWdf bmFtZXNbMTE4XVswXSwJLyogU1BFIHJoMS4gICovCQkJCVwKKyAgJnJzNjAw MF9yZWdfbmFtZXNbMTE5XVswXSwJLyogU1BFIHJoMi4gICovCQkJCVwKKyAg JnJzNjAwMF9yZWdfbmFtZXNbMTIwXVswXSwJLyogU1BFIHJoMy4gICovCQkJ CVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTIxXVswXSwJLyogU1BFIHJoNC4g ICovCQkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTIyXVswXSwJLyogU1BF IHJoNS4gICovCQkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTIzXVswXSwJ LyogU1BFIHJoNi4gICovCQkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTI0 XVswXSwJLyogU1BFIHJoNy4gICovCQkJCVwKKyAgJnJzNjAwMF9yZWdfbmFt ZXNbMTI1XVswXSwJLyogU1BFIHJoOC4gICovCQkJCVwKKyAgJnJzNjAwMF9y ZWdfbmFtZXNbMTI2XVswXSwJLyogU1BFIHJoOS4gICovCQkJCVwKKyAgJnJz NjAwMF9yZWdfbmFtZXNbMTI3XVswXSwJLyogU1BFIHJoMTAuICAqLwkJCVwK KyAgJnJzNjAwMF9yZWdfbmFtZXNbMTI4XVswXSwJLyogU1BFIHJoMTEuICAq LwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTI5XVswXSwJLyogU1BFIHJo MTIuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTMwXVswXSwJLyog U1BFIHJoMTMuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTMxXVsw XSwJLyogU1BFIHJoMTQuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNb MTMyXVswXSwJLyogU1BFIHJoMTUuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdf bmFtZXNbMTMzXVswXSwJLyogU1BFIHJoMTYuICAqLwkJCVwKKyAgJnJzNjAw MF9yZWdfbmFtZXNbMTM0XVswXSwJLyogU1BFIHJoMTcuICAqLwkJCVwKKyAg JnJzNjAwMF9yZWdfbmFtZXNbMTM1XVswXSwJLyogU1BFIHJoMTguICAqLwkJ CVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTM2XVswXSwJLyogU1BFIHJoMTku ICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTM3XVswXSwJLyogU1BF IHJoMjAuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTM4XVswXSwJ LyogU1BFIHJoMjEuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTM5 XVswXSwJLyogU1BFIHJoMjIuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFt ZXNbMTQwXVswXSwJLyogU1BFIHJoMjIuICAqLwkJCVwKKyAgJnJzNjAwMF9y ZWdfbmFtZXNbMTQxXVswXSwJLyogU1BFIHJoMjQuICAqLwkJCVwKKyAgJnJz NjAwMF9yZWdfbmFtZXNbMTQyXVswXSwJLyogU1BFIHJoMjUuICAqLwkJCVwK KyAgJnJzNjAwMF9yZWdfbmFtZXNbMTQzXVswXSwJLyogU1BFIHJoMjYuICAq LwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTQ0XVswXSwJLyogU1BFIHJo MjcuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTQ1XVswXSwJLyog U1BFIHJoMjguICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNbMTQ2XVsw XSwJLyogU1BFIHJoMjkuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdfbmFtZXNb MTQ3XVswXSwJLyogU1BFIHJoMzAuICAqLwkJCVwKKyAgJnJzNjAwMF9yZWdf bmFtZXNbMTQ4XVswXSwJLyogU1BFIHJoMzEuICAqLwkJCVwKIH0KIAogLyog VGFibGUgb2YgYWRkaXRpb25hbCByZWdpc3RlciBuYW1lcyB0byB1c2UgaW4g dXNlciBpbnB1dC4gICovCkBAIC0yNDA0LDcgKzI0NzYsMTcgQEAgZXh0ZXJu IGNoYXIgcnM2MDAwX3JlZ19uYW1lc1tdWzhdOwkvKiByZQogICB7InZzNTYi LCAxMDF9LHsidnM1NyIsIDEwMn0seyJ2czU4IiwgMTAzfSx7InZzNTkiLCAx MDR9LCAgICAgIFwKICAgeyJ2czYwIiwgMTA1fSx7InZzNjEiLCAxMDZ9LHsi dnM2MiIsIDEwN30seyJ2czYzIiwgMTA4fSwJXAogICAvKiBUcmFuc2FjdGlv bmFsIE1lbW9yeSBGYWNpbGl0eSAoSFRNKSBSZWdpc3RlcnMuICAqLwkJXAot ICB7InRmaGFyIiwgIDExNH0sIHsidGZpYXIiLCAgMTE1fSwgeyJ0ZXhhc3Ii LCAgMTE2fSB9CisgIHsidGZoYXIiLCAgMTE0fSwgeyJ0ZmlhciIsICAxMTV9 LCB7InRleGFzciIsICAxMTZ9LAkJXAorICAvKiBTUEUgaGlnaCByZWdpc3Rl cnMuICAqLwkJCQkJXAorICB7InJoMCIsICAxMTd9LCB7InJoMSIsICAxMTh9 LCB7InJoMiIsICAxMTl9LCB7InJoMyIsICAxMjB9LAlcCisgIHsicmg0Iiwg IDEyMX0sIHsicmg1IiwgIDEyMn0sIHsicmg2IiwgIDEyM30sIHsicmg3Iiwg IDEyNH0sCVwKKyAgeyJyaDgiLCAgMTI1fSwgeyJyaDkiLCAgMTI2fSwgeyJy aDEwIiwgMTI3fSwgeyJyaDExIiwgMTI4fSwJXAorICB7InJoMTIiLCAxMjl9 LCB7InJoMTMiLCAxMzB9LCB7InJoMTQiLCAxMzF9LCB7InJoMTUiLCAxMzJ9 LAlcCisgIHsicmgxNiIsIDEzM30sIHsicmgxNyIsIDEzNH0sIHsicmgxOCIs IDEzNX0sIHsicmgxOSIsIDEzNn0sCVwKKyAgeyJyaDIwIiwgMTM3fSwgeyJy aDIxIiwgMTM4fSwgeyJyaDIyIiwgMTM5fSwgeyJyaDIzIiwgMTQwfSwJXAor ICB7InJoMjQiLCAxNDF9LCB7InJoMjUiLCAxNDJ9LCB7InJoMjYiLCAxNDN9 LCB7InJoMjciLCAxNDR9LAlcCisgIHsicmgyOCIsIDE0NX0sIHsicmgyOSIs IDE0Nn0sIHsicmgzMCIsIDE0N30sIHsicmgzMSIsIDE0OH0sCVwKK30KIAog LyogVGhpcyBpcyBob3cgdG8gb3V0cHV0IGFuIGVsZW1lbnQgb2YgYSBjYXNl LXZlY3RvciB0aGF0IGlzIHJlbGF0aXZlLiAgKi8KIApJbmRleDogZ2NjL2Nv bmZpZy9yczYwMDAvcnM2MDAwLm1kCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tIGdjYy9jb25maWcvcnM2MDAwL3JzNjAwMC5tZAkocmV2aXNpb24gMjEz MTEwKQorKysgZ2NjL2NvbmZpZy9yczYwMDAvcnM2MDAwLm1kCSh3b3JraW5n IGNvcHkpCkBAIC01Niw2ICs1Niw4IEBACiAgICAoVEZIQVJfUkVHTk8JCQkx MTQpCiAgICAoVEZJQVJfUkVHTk8JCQkxMTUpCiAgICAoVEVYQVNSX1JFR05P CQkxMTYpCisgICAoRklSU1RfU1BFX0hJR0hfUkVHTk8JMTE3KQorICAgKExB U1RfU1BFX0hJR0hfUkVHTk8JCTE0OCkKICAgXSkKIAogOzsK --_002_e1ed4a3799764ae482037722effa1303BN1PR0301MB0644namprd03_--