From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by sourceware.org (Postfix) with ESMTPS id C45E63858409 for ; Wed, 19 Jan 2022 01:01:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org C45E63858409 X-IronPort-AV: E=McAfee;i="6200,9189,10231"; a="244909861" X-IronPort-AV: E=Sophos;i="5.88,298,1635231600"; d="scan'208,217";a="244909861" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jan 2022 17:01:11 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,298,1635231600"; d="scan'208,217";a="474952979" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by orsmga003.jf.intel.com with ESMTP; 18 Jan 2022 17:01:11 -0800 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Tue, 18 Jan 2022 17:01:11 -0800 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Tue, 18 Jan 2022 17:01:10 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Tue, 18 Jan 2022 17:01:10 -0800 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.41) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Tue, 18 Jan 2022 17:01:10 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WzSmw3x8C/TLC+aX+odK2NoF1oViaz8MvC4F19kVuOFROx9mFWXgqWCnroQcPp7gIDpgNmlMk/2tfrdRO9lgCiNP0u6dXYRP66GVy9vf3APA7LRO1b8HtG2o33cgL8e0Kv9+AVHnPGCJK1N4fwsEUBKZtZGoMuM3OqrEWQRcz0ZEiF2qR6KQRp61uCedqgDuccQVnOHQ53O7cj6Ft/8UFcWQSGMRsJDtbwoT7sHNniLNo9ZG8s0KVa+Z+8TC0Su9BCxyyl3Qj7t7enOUkXpaC0NWmGa5QysOfwmY6qCT1Fex2YNNKmTAUNr28UmFUDzvq2ckKbu5MHip+dLi8jwcXw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=kWuBGFG317zKOqUO6Tc+pIPGx6mrIJ/IxGb1pSN+Qi0=; b=ZrXrgw8SGd4eAUjWNsWNtY5yGOxtF2AUubixP8adAc2A8A/SrOIFwGauU1xLBQhdCHF9jNX2IWdbcscLIkKFK2kL5g3c9/R6Z8D2FeyXB5XLJfxJwGhbTkcX1H/UtpJsRviWa6FacuwXycdNY0st7720HSBgErBu5XNYvjTvx4g3xrFIx/9al1gzSkH8nCy7CyQkcv3jUafMB00OPo9POLYVMMFpeu9GbCjMrAnRVcVCGq+WiAKQIJvSQ8SuK75nDCu9wkkY2jVAvH1wRwsCotqO2SnZy63BsA8P103Ehkv2vOFDB7JS/BdHDIni1Ok5z3/6zn4xiI6Tbh6y4y0HYg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from DM6PR11MB3306.namprd11.prod.outlook.com (2603:10b6:5:5c::18) by MW5PR11MB5882.namprd11.prod.outlook.com (2603:10b6:303:19e::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4888.13; Wed, 19 Jan 2022 01:01:09 +0000 Received: from DM6PR11MB3306.namprd11.prod.outlook.com ([fe80::6d68:15b8:34d5:ecff]) by DM6PR11MB3306.namprd11.prod.outlook.com ([fe80::6d68:15b8:34d5:ecff%6]) with mapi id 15.20.4888.014; Wed, 19 Jan 2022 01:01:09 +0000 From: "Wang, Hongyu" To: Jakub Jelinek , Hongtao Liu , "Uros Bizjak" CC: "gcc-patches@gcc.gnu.org" Subject: Re: [PATCH] i386: Fix GLC tuning with -masm=intel [PR104104] Thread-Topic: [PATCH] i386: Fix GLC tuning with -masm=intel [PR104104] Thread-Index: AQHYDMexpfy+XLb+0UOZHgThNJWDj6xphMHN Date: Wed, 19 Jan 2022 01:01:09 +0000 Message-ID: References: <20220113072839.8405-1-hongyu.wang@intel.com> <20220119000016.GO2646553@tucnak> In-Reply-To: <20220119000016.GO2646553@tucnak> Accept-Language: en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: e8aa0812-d042-4b80-3d6d-08d9dae72de2 x-ms-traffictypediagnostic: MW5PR11MB5882:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: agtSHHcO9fcjCc1i9AEafep2a8sa5JoHXYMQkfglZuZeeu6TjZkyZIz9EQ9X3F699kK8STqjaSI9ll/Bvuy4/ev4+YxXQFQzyGQzNce04+yxmBwJgPAA//mcAwWMoBsevfzItca5htjkdE0iMVEI/UXuxLwAy0mgF5TjTMWiEKfkNOvtPl5Vx0xWjx9zyfBSU+GAF9zYxXZbhjr52EMY0lQcSfty8tbC5sh6MxNCI8QZsF6TBDAyD6NJoiGEXYAgVqZztrklCMElimDCuALI1Q0974S5VFS+ithKuyRykPgqnfZJ3Ayr/RbbNbuXuSNOkBeWoZMjQeDiVEy7yxuMWbD0RgxsLlc5N69Q+vXbDh9iUFJsSIxVLQTz53gCBqdSUmJHL7Ubxob4DRB85b7o6EDf3va48lkPhI1GgVHvpQyVNnyI3cprCwlZQejteSXz2UkScbQGTh15Hx7dE7DZpiWE/vH09jqF2TfHB+gZqMzI8ysjBVT1zuQIv/oBw/gpU0hid24cHuczp4Hab34tx/3IAMF/LnQUbJKhejfPp+C/+/RgFjpalUgvJxKtbr19ET9zazZSmsrXr6NErV/dGNVaT66HMfbkaHvPjfxAfbp4BJG/jH4m7VFldRf4VN34XF4mdqnnsTsYg2C8vg3mFxhM9yxapDtvw2fDDKoAbbcBRtqE/9KYrO4JR20uFA0m9UlafkGtiP1/qBNIzw0Ud/7xiZ+m4vMfSTW/wNcg87aohiuOiT7eSxdpGhnvtnJt8YUNJCA79QwPyqwb/pBRdtbZAVsbC6M4G7tUu5N2rlM= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR11MB3306.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(4326008)(83380400001)(7696005)(8676002)(8936002)(55016003)(110136005)(71200400001)(122000001)(82960400001)(84970400001)(66946007)(66556008)(91956017)(33656002)(76116006)(66476007)(9686003)(2906002)(66446008)(64756008)(53546011)(508600001)(6506007)(26005)(316002)(38100700002)(186003)(52536014)(5660300002)(86362001)(38070700005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?gb2312?B?MXVSRlJkQUJUa2p2T1FKa21YU1A5MWx5Zm1ocU9EcEpYQkdkNXExdDFzS244?= =?gb2312?B?SFlNeVFMcHB1bVZBd0crd0JSUlZJaTJKcU1CWGRLNi9tbHZqanQxVDhUVTcv?= =?gb2312?B?WE9mU1FoQW5UYStDTmVnakdITmNwY29Qd1JVVVJUTjZ0WnFrQXBnVGR1bzEx?= =?gb2312?B?aVc5TVNhVW9MNkFOWDlYMUNPeW1pSDB1b1V4cWNqc2Q5NDBPSTNqbnNjUE9M?= =?gb2312?B?TXdaenN6cjA1dlZZSVV5ekdFc1FqcWtmQXA5NmFDS3hYNXZUMU00eUZuMlJv?= =?gb2312?B?eWNMd2ZBTWN2ZElaUFlSck9wWkVvR2gxWjZ6MzJVcEliZjNjeU8wS1djV053?= =?gb2312?B?R3VzQlJnRXJCTEpTQ2EyRGJac042aFc5MnlVZTZqV3F5TlVpaFB0dTQ4b3dm?= =?gb2312?B?RTJiWEVkeVdQYlMxcm1kQXNoS0tSQmhWRmNPRnJsSlBaUVR6V2lmbDBnK2wr?= =?gb2312?B?M0xveitHTXNpZE90Z05lTkh1c1lZSHBPbEljVmZzUEpidUMxYjZFSCtOTG40?= =?gb2312?B?K1M2Ylk3OTBPb1kwcUVYT21FamNCUWVld1dDTHVuMHpZZGhucXhKU1BWK0ox?= =?gb2312?B?citjUU5BbFFUa0MvejZ6aDhDQ01Gb29IaWRkK2Nqanc4SzhKdXgzVmV4eElV?= =?gb2312?B?d3NEOTg1M05TTDdHK1l5MWN5bnAvZUpBbXdGZGlKSlpidGdWQ09XcGpDelJt?= =?gb2312?B?dytQZE84YUhkK1NnbEJreHRYaVN6ZnZDcUswYjRBR0p0Ynp2MEVaZ24xMGlS?= =?gb2312?B?M1Rra0cwL0tDUkVCL3c4Q29rVWNhL0hPQ2EzUUo5VTBnb0toNWxXTFVyTS9M?= =?gb2312?B?MGkyM2pCNmdDQmo4TVJqdzVPZFYyN3FjZCtVTkhJbkdVRFdUeG92TlYrRnRY?= =?gb2312?B?OFRLdzlvNmJDV3ByTi9IR0hEcVRZbS83TzBwU0p1V1ZUWUpPTkJZRGoycXky?= =?gb2312?B?dUhrL2VRTWFWRTFDVituUzR3SVo5RVRhbS9hRVFvTVAzZUtzeXl0RTE2QkF3?= =?gb2312?B?VUlvUEIyVzZQK0dZOGJPTktFV3RUMkFxcnZOYkJCc2pQdkFrQ21WSE9nUmFG?= =?gb2312?B?TkJIVXNuUURLNWF2R1dqQUVPL2FHbnZUSGNVd2w4N2FOd2lLN3czSDh1TEFQ?= =?gb2312?B?U3g2K3pzSGJWVmJLdzA5Q3lqN2o5Q01LcFNIZFBrKy8xU3BmQlBreW44ZVdR?= =?gb2312?B?TEo4d0h2R0VVbEh3MXo2VU5ya281bzFCalN6d2NXQ1lNMC9xZE01amtXa0Y2?= =?gb2312?B?bDV6OXNFM1NwMERIbzVKaDFDQXZma05DampqZ0NmVjB1ai8zdm0yM2VRaVFq?= =?gb2312?B?VFloZEJsNFJMRktlQVVyMnp0V3puSzJ4Z2c5VGg0Ymx2N2tCVmo1bXRHcWhJ?= =?gb2312?B?T3BPbmM2ZmNEemFlL25meCtmK1Q0V3dna2FZOTlFOU81VXBPalVvUzVSUlpz?= =?gb2312?B?UldFMXF0SWRNQWxtd253emt2SDJiem1NT2IzNGdoc1ltMC9qZjFaaTllbDVr?= =?gb2312?B?Nk45N01abEsvRjdrK1h0TlUwTlRlcXVBZ2pTVXhDV2tLTXh6K1lwa0hrRVpP?= =?gb2312?B?Z25uVEY4eUlHc1RBMExtVWV6a1JWM3JxRGtqMG0vNFlndFh6cGpMRmF2ZzY2?= =?gb2312?B?a1Z3TDh0YzhtWUdCY0diT2c3clljZmNhSjhjb0NXY0FJNHVqTmRILzlkK3Zm?= =?gb2312?B?RkVqU2dpZXVPbWU4UVVrd0RPS0sxMVNkWHdIdFdZai9XRHhSVm83Vzc2WW9x?= =?gb2312?B?clBjWFE2QlIwM2Q1TVdDTnk4REZNdGZNNFZOWXBRdFVYd2VRYlNuN1pvNkJw?= =?gb2312?B?bDZpRkhkQmprWkpjUGZKRW5LUWZLZTFDcHVqUjhVUEFTcTdzUW02eXpUOGl6?= =?gb2312?B?eFJuT0xaQTVPMFJXYkh6ZlRldC9oNDA2cng1THJsSlRWTTkvK2pVRTJSVDNT?= =?gb2312?B?MVlmR25Wc2RGdnRyS1lVZ1d0UU4zSDFNL2tRcGRpK29LRVRzQ2U4N2h5cTVC?= =?gb2312?B?VFQwY1h4a1dPM080djM2TVdoODk0Uy9VMFFnb3VzZzUxd2R3cW1GT1dMWEhz?= =?gb2312?B?UXZvY3RibnlDZ0k3RUdoY05Xc00wU214dHpLa2FXRUZGaUYwRitqWFVNSnFo?= =?gb2312?B?eVk5Q1laTGxQbkN5R0RvMkhvb2ZWaWFzY0pwZ3lOR3dmRVk3NWppb3VvSzdl?= =?gb2312?Q?V1YpvKmb+GlQm9W4YM9WPr9QUJ1n9ly22bKhV/vCMXNX?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB3306.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e8aa0812-d042-4b80-3d6d-08d9dae72de2 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Jan 2022 01:01:09.1112 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: u2/1+BlUERDJpZKiQDPQtyX6FNscDavBLHnJurks1JNLrL5GBn9iVnqYFTpcthltZvUyizHeJmB5d7xrO14wYA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR11MB5882 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-0.8 required=5.0 tests=BAYES_00, BODY_8BITS, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, HTML_MESSAGE, KAM_SHORT, MIME_CHARSET_FARAWAY, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jan 2022 01:01:16 -0000 U29ycnkgZm9yIGludHJvZHVjaW5nIHN1Y2ggZmFpbHVyZSBhbmQgdGhhbmtzIGZvciB0aGUgcGF0 Y2gsIEkgc3VwcG9zZSBpdCBjb3VsZCBiZSB0cmVhdGVkIGFzIG9idmlvdXMgZml4Pw0KX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18NCreivP7IyzogSmFrdWIgSmVsaW5layA8amFrdWJA cmVkaGF0LmNvbT4NCreiy83KsbzkOiDQx8bayP0sINK71MIgMTksIDIwMjIgODowMSDJz87nDQrK 1bz+yMs6IEhvbmd0YW8gTGl1OyBVcm9zIEJpemphaw0Ks63LzTogZ2NjLXBhdGNoZXNAZ2NjLmdu dS5vcmc7IFdhbmcsIEhvbmd5dQ0K1vfM4jogW1BBVENIXSBpMzg2OiBGaXggR0xDIHR1bmluZyB3 aXRoIC1tYXNtPWludGVsIFtQUjEwNDEwNF0NCg0KT24gU3VuLCBKYW4gMTYsIDIwMjIgYXQgMTI6 MjI6MThQTSArMDgwMCwgSG9uZ3RhbyBMaXUgdmlhIEdjYy1wYXRjaGVzIHdyb3RlOg0KPiBPbiBT dW4sIEphbiAxNiwgMjAyMiBhdCAxMjo0NCBBTSBVcm9zIEJpemphayB2aWEgR2NjLXBhdGNoZXMN Cj4gPGdjYy1wYXRjaGVzQGdjYy5nbnUub3JnPiB3cm90ZToNCj4gPg0KPiA+IE9uIFNhdCwgSmFu IDE1LCAyMDIyIGF0IDU6MzkgUE0gSG9uZ3l1IFdhbmcgPHd3d2hoaHl5eTMzM0BnbWFpbC5jb20+ IHdyb3RlOg0KPiA+ID4NCj4gPiA+IFRoYW5rcyBmb3IgdGhlIHN1Z2dlc3Rpb24sIGhlcmUgaXMg dGhlIHVwZGF0ZWQgcGF0Y2ggdGhhdCBzdXJ2aXZlZA0KPiA+ID4gYm9vdHN0cmFwL3JlZ3Rlc3Qu DQo+ID4NCj4gPiBMR1RNIGZvciBtZSwgYnV0IHBsZWFzZSBnZXQgdGhlIGZpbmFsIGFwcHJvdmFs IGZyb20gSG9uZ3Rhby4NCj4gPg0KPiBPaywgdGhhbmtzLg0KDQpVbmZvcnR1bmF0ZWx5IHRoZSBw YXRjaCByZXN1bHRzIGluIGFzc2VtYmxlciBmYWlsdXJlcyB3aXRoIC1tYXNtPWludGVsLg0KDQo+ ID4gPiA+ICsgIGlmIChUQVJHRVRfREVTVF9GQUxTRV9ERVBFTkRFTkNZDQo+ID4gPiA+ICsgICAg ICAmJiBnZXRfYXR0cl9kZXN0X2ZhbHNlX2RlcCAoaW5zbikgPT0NCj4gPiA+ID4gKyAgICAgICAg REVTVF9GQUxTRV9ERVBfVFJVRSkNCj4gPiA+ID4gKyAgICBvdXRwdXRfYXNtX2luc24gKCJ2eG9y cHNcdHsleDAsICV4MCwgJXgwfSIsIG9wZXJhbmRzKTsNCg0KQWxsIHRoZSB2eG9ycHMgaW5zbnMg d2VyZSBlbWl0dGVkIGxpa2UgdGhlIGFib3ZlLCB3aGljaCBtZWFucyBmb3IgLW1hc209c3lzdg0K aXQgbG9va3MgbGlrZQ0KICAgICAgICB2eG9ycHMgICV4bW0zLCAleG1tMywgJXhtbTMNCmJ1dCBm b3IgLW1hc209aW50ZWwgbGlrZToNCiAgICAgICAgdnhvcnBzDQpXZSB3YW50IG9idmlvdXNseQ0K ICAgICAgICB2eG9ycHMgIHhtbTMsIHhtbTMsIHhtbTMNCnNvIHRoZSBmb2xsb3dpbmcgcGF0Y2gg anVzdCBkcm9wcyB0aGUgZXJyb3JuZW91cyB7fXMuDQoNCkJvb3RzdHJhcHBlZC9yZWd0ZXN0ZWQg b24geDg2XzY0LWxpbnV4IGFuZCBpNjg2LWxpbnV4LCBvayBmb3IgdHJ1bms/DQoNCjIwMjItMDEt MTkgIEpha3ViIEplbGluZWsgIDxqYWt1YkByZWRoYXQuY29tPg0KDQogICAgICAgIFBSIHRhcmdl dC8xMDQxMDQNCiAgICAgICAgKiBjb25maWcvaTM4Ni9zc2UubWQNCiAgICAgICAgKDxhdng1MTI+ Xzxjb21wbGV4b3BuYW1lPl88bW9kZT48bWFza2NfbmFtZT48cm91bmRfbmFtZT4sDQogICAgICAg IGF2eDUxMmZwMTZfPGNvbXBsZXhvcG5hbWU+c2hfdjhoZjxtYXNrX3NjYWxhcmNfbmFtZT48cm91 bmRfc2NhbGFyY3pfbmFtZT4sDQogICAgICAgIGF2eDUxMmRxX211bDxtb2RlPjM8bWFza19uYW1l PiwgPGF2eDJfYXZ4NTEyPl9wZXJtdmFyPG1vZGU+PG1hc2tfbmFtZT4sDQogICAgICAgIGF2eDJf cGVybTxtb2RlPl8xPG1hc2tfbmFtZT4sIGF2eDUxMmZfcGVybTxtb2RlPl8xPG1hc2tfbmFtZT4s DQogICAgICAgIGF2eDUxMmRxX3JhbmdlcDxtb2RlPjxtYXNrX25hbWU+PHJvdW5kX3NhZW9ubHlf bmFtZT4sDQogICAgICAgIGF2eDUxMmRxX3Jhbmdlczxtb2RlPjxtYXNrX3NjYWxhcl9uYW1lPjxy b3VuZF9zYWVvbmx5X3NjYWxhcl9uYW1lPiwNCiAgICAgICAgPGF2eDUxMj5fZ2V0bWFudDxtb2Rl PjxtYXNrX25hbWU+PHJvdW5kX3NhZW9ubHlfbmFtZT4sDQogICAgICAgIGF2eDUxMmZfdmdldG1h bnQ8bW9kZT48bWFza19zY2FsYXJfbmFtZT48cm91bmRfc2Flb25seV9zY2FsYXJfbmFtZT4pOg0K ICAgICAgICBVc2UgdnhvcnBzXHQleDAsICV4MCwgJXgwIGluc3RlYWQgb2YgdnhvcnBzXHR7JXgw LCAleDAsICV4MH0uDQoNCiAgICAgICAgKiBnY2MudGFyZ2V0L2kzODYvcHIxMDQxMDQuYzogTmV3 IHRlc3QuDQoNCi0tLSBnY2MvY29uZmlnL2kzODYvc3NlLm1kLmpqICAgMjAyMi0wMS0xOCAxMTo1 ODo1OS4xNTY5ODgxNDIgKzAxMDANCisrKyBnY2MvY29uZmlnL2kzODYvc3NlLm1kICAgICAgMjAy Mi0wMS0xOCAyMToyMDo0MC4wMjI0Nzc3NzggKzAxMDANCkBAIC02NTM5LDcgKzY1MzksNyBAQCAo ZGVmaW5lX2luc24gIjxhdng1MTI+Xzxjb21wbGV4b3BuYW1lPl88DQogew0KICAgaWYgKFRBUkdF VF9ERVNUX0ZBTFNFX0RFUF9GT1JfR0xDDQogICAgICAgJiYgPG1hc2tjX2Rlc3RfZmFsc2VfZGVw X2Zvcl9nbGNfY29uZD4pDQotICAgIG91dHB1dF9hc21faW5zbiAoInZ4b3Jwc1x0eyV4MCwgJXgw LCAleDB9Iiwgb3BlcmFuZHMpOw0KKyAgICBvdXRwdXRfYXNtX2luc24gKCJ2eG9ycHNcdCV4MCwg JXgwLCAleDAiLCBvcGVyYW5kcyk7DQogICByZXR1cm4gInY8Y29tcGxleG9wbmFtZT48c3NlbW9k ZXN1ZmZpeD5cdHs8cm91bmRfbWFza2Nfb3AzPiUyLCAlMSwgJTA8bWFza2Nfb3BlcmFuZDM+fCUw PG1hc2tjX29wZXJhbmQzPiwgJTEsICUyPHJvdW5kX21hc2tjX29wMz59IjsNCiB9DQogICBbKHNl dF9hdHRyICJ0eXBlIiAic3NlbXVsIikNCkBAIC02NzUwLDcgKzY3NTAsNyBAQCAoZGVmaW5lX2lu c24gImF2eDUxMmZwMTZfPGNvbXBsZXhvcG5hbWU+DQogew0KICAgaWYgKFRBUkdFVF9ERVNUX0ZB TFNFX0RFUF9GT1JfR0xDDQogICAgICAgJiYgPG1hc2tfc2NhbGFyY19kZXN0X2ZhbHNlX2RlcF9m b3JfZ2xjX2NvbmQ+KQ0KLSAgICBvdXRwdXRfYXNtX2luc24gKCJ2eG9ycHNcdHsleDAsICV4MCwg JXgwfSIsIG9wZXJhbmRzKTsNCisgICAgb3V0cHV0X2FzbV9pbnNuICgidnhvcnBzXHQleDAsICV4 MCwgJXgwIiwgb3BlcmFuZHMpOw0KICAgcmV0dXJuICJ2PGNvbXBsZXhvcG5hbWU+c2hcdHs8cm91 bmRfc2NhbGFyY19tYXNrX29wMz4lMiwgJTEsICUwPG1hc2tfc2NhbGFyY19vcGVyYW5kMz58JTA8 bWFza19zY2FsYXJjX29wZXJhbmQzPiwgJTEsICUyPHJvdW5kX3NjYWxhcmNfbWFza19vcDM+fSI7 DQogfQ0KICAgWyhzZXRfYXR0ciAidHlwZSIgInNzZW11bCIpDQpAQCAtMTUyMjIsNyArMTUyMjIs NyBAQCAoZGVmaW5lX2luc24gImF2eDUxMmRxX211bDxtb2RlPjM8bWFza19uDQogICAgICAgJiYg PG1hc2szX2Rlc3RfZmFsc2VfZGVwX2Zvcl9nbGNfY29uZD4NCiAgICAgICAmJiAhcmVnX21lbnRp b25lZF9wIChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0pDQogICAgICAgJiYgIXJlZ19tZW50aW9u ZWRfcCAob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzJdKSkNCi0gICAgb3V0cHV0X2FzbV9pbnNuICgi dnhvcnBzXHR7JXgwLCAleDAsICV4MH0iLCBvcGVyYW5kcyk7DQorICAgIG91dHB1dF9hc21faW5z biAoInZ4b3Jwc1x0JXgwLCAleDAsICV4MCIsIG9wZXJhbmRzKTsNCiAgIHJldHVybiAidnBtdWxs cVx0eyUyLCAlMSwgJTA8bWFza19vcGVyYW5kMz58JTA8bWFza19vcGVyYW5kMz4sICUxLCAlMn0i Ow0KIH0NCiAgIFsoc2V0X2F0dHIgInR5cGUiICJzc2VpbXVsIikNCkBAIC0yNDY1OCw3ICsyNDY1 OCw3IEBAIChkZWZpbmVfaW5zbiAiPGF2eDJfYXZ4NTEyPl9wZXJtdmFyPG1vZGUNCiAgICAgICAm JiA8bWFzazNfZGVzdF9mYWxzZV9kZXBfZm9yX2dsY19jb25kPg0KICAgICAgICYmICFyZWdfbWVu dGlvbmVkX3AgKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSkNCiAgICAgICAmJiAhcmVnX21lbnRp b25lZF9wIChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMl0pKQ0KLSAgICBvdXRwdXRfYXNtX2luc24g KCJ2eG9ycHNcdHsleDAsICV4MCwgJXgwfSIsIG9wZXJhbmRzKTsNCisgICAgb3V0cHV0X2FzbV9p bnNuICgidnhvcnBzXHQleDAsICV4MCwgJXgwIiwgb3BlcmFuZHMpOw0KICAgcmV0dXJuICJ2cGVy bTxzc2Vtb2Rlc3VmZml4Plx0eyUxLCAlMiwgJTA8bWFza19vcGVyYW5kMz58JTA8bWFza19vcGVy YW5kMz4sICUyLCAlMX0iOw0KIH0NCiAgIFsoc2V0X2F0dHIgInR5cGUiICJzc2Vsb2ciKQ0KQEAg LTI0OTAwLDcgKzI0OTAwLDcgQEAgKGRlZmluZV9pbnNuICJhdngyX3Blcm08bW9kZT5fMTxtYXNr X25hbQ0KICAgaWYgKFRBUkdFVF9ERVNUX0ZBTFNFX0RFUF9GT1JfR0xDDQogICAgICAgJiYgPG1h c2s2X2Rlc3RfZmFsc2VfZGVwX2Zvcl9nbGNfY29uZD4NCiAgICAgICAmJiAhcmVnX21lbnRpb25l ZF9wIChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0pKQ0KLSAgICBvdXRwdXRfYXNtX2luc24gKCJ2 eG9ycHNcdHsleDAsICV4MCwgJXgwfSIsIG9wZXJhbmRzKTsNCisgICAgb3V0cHV0X2FzbV9pbnNu ICgidnhvcnBzXHQleDAsICV4MCwgJXgwIiwgb3BlcmFuZHMpOw0KICAgcmV0dXJuICJ2cGVybTxz c2Vtb2Rlc3VmZml4Plx0eyUyLCAlMSwgJTA8bWFza19vcGVyYW5kNj58JTA8bWFza19vcGVyYW5k Nj4sICUxLCAlMn0iOw0KIH0NCiAgIFsoc2V0X2F0dHIgInR5cGUiICJzc2Vsb2ciKQ0KQEAgLTI0 OTc1LDcgKzI0OTc1LDcgQEAgKGRlZmluZV9pbnNuICJhdng1MTJmX3Blcm08bW9kZT5fMTxtYXNr Xw0KICAgaWYgKFRBUkdFVF9ERVNUX0ZBTFNFX0RFUF9GT1JfR0xDDQogICAgICAgJiYgPG1hc2sx MF9kZXN0X2ZhbHNlX2RlcF9mb3JfZ2xjX2NvbmQ+DQogICAgICAgJiYgIXJlZ19tZW50aW9uZWRf cCAob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdKSkNCi0gICAgb3V0cHV0X2FzbV9pbnNuICgidnhv cnBzXHR7JXgwLCAleDAsICV4MH0iLCBvcGVyYW5kcyk7DQorICAgIG91dHB1dF9hc21faW5zbiAo InZ4b3Jwc1x0JXgwLCAleDAsICV4MCIsIG9wZXJhbmRzKTsNCiAgIHJldHVybiAidnBlcm08c3Nl bW9kZXN1ZmZpeD5cdHslMiwgJTEsICUwPG1hc2tfb3BlcmFuZDEwPnwlMDxtYXNrX29wZXJhbmQx MD4sICUxLCAlMn0iOw0KIH0NCiAgIFsoc2V0X2F0dHIgInR5cGUiICJzc2Vsb2ciKQ0KQEAgLTI2 ODgwLDcgKzI2ODgwLDcgQEAgKGRlZmluZV9pbnNuICJhdng1MTJkcV9yYW5nZXA8bW9kZT48bWFz aw0KICAgICAgICYmIDxtYXNrNF9kZXN0X2ZhbHNlX2RlcF9mb3JfZ2xjX2NvbmQ+DQogICAgICAg JiYgIXJlZ19tZW50aW9uZWRfcCAob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdKQ0KICAgICAgICYm ICFyZWdfbWVudGlvbmVkX3AgKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1syXSkpDQotICAgIG91dHB1 dF9hc21faW5zbiAoInZ4b3Jwc1x0eyV4MCwgJXgwLCAleDB9Iiwgb3BlcmFuZHMpOw0KKyAgICBv dXRwdXRfYXNtX2luc24gKCJ2eG9ycHNcdCV4MCwgJXgwLCAleDAiLCBvcGVyYW5kcyk7DQogICBy ZXR1cm4gInZyYW5nZTxzc2Vtb2Rlc3VmZml4Plx0eyUzLCA8cm91bmRfc2Flb25seV9tYXNrX29w ND4lMiwgJTEsICUwPG1hc2tfb3BlcmFuZDQ+fCUwPG1hc2tfb3BlcmFuZDQ+LCAlMSwgJTI8cm91 bmRfc2Flb25seV9tYXNrX29wND4sICUzfSI7DQogfQ0KICAgWyhzZXRfYXR0ciAidHlwZSIgInNz ZSIpDQpAQCAtMjY5MDMsNyArMjY5MDMsNyBAQCAoZGVmaW5lX2luc24gImF2eDUxMmRxX3Jhbmdl czxtb2RlPjxtYXNrDQogICAgICAgJiYgPG1hc2tfc2NhbGFyNF9kZXN0X2ZhbHNlX2RlcF9mb3Jf Z2xjX2NvbmQ+DQogICAgICAgJiYgIXJlZ19tZW50aW9uZWRfcCAob3BlcmFuZHNbMF0sIG9wZXJh bmRzWzFdKQ0KICAgICAgICYmICFyZWdfbWVudGlvbmVkX3AgKG9wZXJhbmRzWzBdLCBvcGVyYW5k c1syXSkpDQotICAgIG91dHB1dF9hc21faW5zbiAoInZ4b3Jwc1x0eyV4MCwgJXgwLCAleDB9Iiwg b3BlcmFuZHMpOw0KKyAgICBvdXRwdXRfYXNtX2luc24gKCJ2eG9ycHNcdCV4MCwgJXgwLCAleDAi LCBvcGVyYW5kcyk7DQogICByZXR1cm4gInZyYW5nZTxzc2VzY2FsYXJtb2Rlc3VmZml4Plx0eyUz LCA8cm91bmRfc2Flb25seV9zY2FsYXJfbWFza19vcDQ+JTIsICUxLCAlMDxtYXNrX3NjYWxhcl9v cGVyYW5kND58JTA8bWFza19zY2FsYXJfb3BlcmFuZDQ+LCAlMSwgJTxpcHRyPjI8cm91bmRfc2Fl b25seV9zY2FsYXJfbWFza19vcDQ+LCAlM30iOw0KIH0NCiAgIFsoc2V0X2F0dHIgInR5cGUiICJz c2UiKQ0KQEAgLTI2OTQ5LDcgKzI2OTQ5LDcgQEAgKGRlZmluZV9pbnNuICI8YXZ4NTEyPl9nZXRt YW50PG1vZGU+PG1hcw0KICAgaWYgKFRBUkdFVF9ERVNUX0ZBTFNFX0RFUF9GT1JfR0xDDQogICAg ICAgJiYgPG1hc2szX2Rlc3RfZmFsc2VfZGVwX2Zvcl9nbGNfY29uZD4NCiAgICAgICAmJiBNRU1f UCAob3BlcmFuZHNbMV0pKQ0KLSAgICBvdXRwdXRfYXNtX2luc24gKCJ2eG9ycHNcdHsleDAsICV4 MCwgJXgwfSIsIG9wZXJhbmRzKTsNCisgICAgb3V0cHV0X2FzbV9pbnNuICgidnhvcnBzXHQleDAs ICV4MCwgJXgwIiwgb3BlcmFuZHMpOw0KICAgcmV0dXJuICJ2Z2V0bWFudDxzc2Vtb2Rlc3VmZml4 Plx0eyUyLCA8cm91bmRfc2Flb25seV9tYXNrX29wMz4lMSwgJTA8bWFza19vcGVyYW5kMz58JTA8 bWFza19vcGVyYW5kMz4sICUxPHJvdW5kX3NhZW9ubHlfbWFza19vcDM+LCAlMn0iOw0KIH0NCiAg IFsoc2V0X2F0dHIgInByZWZpeCIgImV2ZXgiKQ0KQEAgLTI2OTcxLDcgKzI2OTcxLDcgQEAgKGRl ZmluZV9pbnNuICJhdng1MTJmX3ZnZXRtYW50PG1vZGU+PG1hcw0KICAgICAgICYmIDxtYXNrX3Nj YWxhcjRfZGVzdF9mYWxzZV9kZXBfZm9yX2dsY19jb25kPg0KICAgICAgICYmICFyZWdfbWVudGlv bmVkX3AgKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSkNCiAgICAgICAmJiAhcmVnX21lbnRpb25l ZF9wIChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMl0pKQ0KLSAgICBvdXRwdXRfYXNtX2luc24gKCJ2 eG9ycHNcdHsleDAsICV4MCwgJXgwfSIsIG9wZXJhbmRzKTsNCisgICAgb3V0cHV0X2FzbV9pbnNu ICgidnhvcnBzXHQleDAsICV4MCwgJXgwIiwgb3BlcmFuZHMpOw0KICAgcmV0dXJuICJ2Z2V0bWFu dDxzc2VzY2FsYXJtb2Rlc3VmZml4Plx0eyUzLCA8cm91bmRfc2Flb25seV9zY2FsYXJfbWFza19v cDQ+JTIsICUxLCAlMDxtYXNrX3NjYWxhcl9vcGVyYW5kND58JTA8bWFza19zY2FsYXJfb3BlcmFu ZDQ+LCAlMSwgJTxpcHRyPjI8cm91bmRfc2Flb25seV9zY2FsYXJfbWFza19vcDQ+LCAlM30iOw0K IH0NCiAgICBbKHNldF9hdHRyICJwcmVmaXgiICJldmV4IikNCi0tLSBnY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvaTM4Ni9wcjEwNDEwNC5jLmpqIDIwMjItMDEtMTggMjE6Mzg6MTcuMDA3OTA2Njcz ICswMTAwDQorKysgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvcHIxMDQxMDQuYyAgICAy MDIyLTAxLTE4IDIxOjM2OjEwLjQ3NTYyMzE0OCArMDEwMA0KQEAgLTAsMCArMSwxMCBAQA0KKy8q IFBSIHRhcmdldC8xMDQxMDQgKi8NCisvKiB7IGRnLWRvIGFzc2VtYmxlIHsgdGFyZ2V0IHZlY3Rf c2ltZF9jbG9uZXMgfSB9ICovDQorLyogeyBkZy1yZXF1aXJlLWVmZmVjdGl2ZS10YXJnZXQgbWFz bV9pbnRlbCB9ICovDQorLyogeyBkZy1vcHRpb25zICItbWFyY2g9YWxkZXJsYWtlIC1tYXNtPWlu dGVsIC1PMSAtZmFsbG93LXN0b3JlLWRhdGEtcmFjZXMgLWZ1bnJvbGwtYWxsLWxvb3BzIiB9ICov DQorDQorX19hdHRyaWJ1dGVfXyAoKHNpbWQpKSBzaG9ydCBpbnQNCitmb28gKHZvaWQpDQorew0K KyAgcmV0dXJuIDA7DQorfQ0KDQoNCiAgICAgICAgSmFrdWINCg0K