From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbg150.qq.com (smtpbg150.qq.com [18.132.163.193]) by sourceware.org (Postfix) with ESMTPS id DDC813858D20 for ; Thu, 14 Dec 2023 08:27:56 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org DDC813858D20 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivai.ai Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivai.ai ARC-Filter: OpenARC Filter v1.0.0 sourceware.org DDC813858D20 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=18.132.163.193 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1702542481; cv=none; b=Gpw3liyybf7qVXxWptwxo41ITLRdAVVL+/YBIMl3JZOZ4AIAXiORWgCGuB9y3C55ggIm4faJ2JwGDd+8qZJveWJOG2zizj9S51gZOEqEcl43Ar6WnaydcO5O32Blgq+LCQU5ssI32sP7hu6c0dBBro4CigbWyib+jig7JVGmbRA= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1702542481; c=relaxed/simple; bh=ekX3ptwjLZJqRotHc9OgYZ39rjfkwMJ1Vy0kSgMtGoU=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=GYsgdv9aHZo+ROrxUyFv1wUtks92HKiKrApYjDL/uLMGfT/fLfD3SzURgyAglqNYUV2AsP6wtxt0ByPlxgNbgsk80xwbLoA0M6LuQxmyGU9zjHu0omesrK0YtOlgeona7THKwUjKvtHBD+zqJRSXH2IjarM8W4jFe+rgnEx+PWs= ARC-Authentication-Results: i=1; server2.sourceware.org X-QQ-mid: bizesmtp72t1702542468tsmqu7vp Received: from LAPTOP-EPITNQBU ( [58.60.1.10]) by bizesmtp.qq.com (ESMTP) with id ; Thu, 14 Dec 2023 16:27:47 +0800 (CST) X-QQ-SSF: 01400000000000G0V000000A0000000 X-QQ-FEAT: TVZM0Uoyj0230mbGFUoM7YDIxf5Yv3SFYMZe1Lwxo+naxZawkAHplUXJ9o4EG r9d0gF+61IaI7tAg1P6b62pYvA9tAaOyiTU6lVwRWdF7wTHlnBiMetD+ATZ4+1rNvDtC9Vf q9kLurpRLM7797FBSeiQH8FSFNusR2GrCysQ3/aw126lbBibC9+e8wvwdWaZwMPPavPAMCj 6EzC+XvLELrkezj9+3W8QYYJv3/xFQUs8XswN1k9NpluzI+nR+B4SVNGfdD2LwxEHFv8wNa k7KG17G59qJuvbhvI7O/RdiswX6CoaZfIuFVekjQcJoB1kraakOezaYKgDPgMyeMKqTLRO4 5fylhVLJmjxexuJNTt8D5DJ64PJe5RJ6JwcdE1EfApcobUMxU/eARaXWUvoLwccIz8CP1DL IfyN4MQcKf2fFYyxtwfhXq+4wxsJlhD7uVryLQfiD0k= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 11512849024673995816 Date: Thu, 14 Dec 2023 16:27:47 +0800 From: "juzhe.zhong@rivai.ai" To: rguenther Cc: gcc-patches , richard.sandiford , jeffreyalaw Subject: Re: Re: [PATCH] Middle-end: Adjust decrement IV style partial vectorization COST model References: <20231213092107.191733-1-juzhe.zhong@rivai.ai>, <44on3q56-415s-n6s6-4922-sr36p2s5p33r@fhfr.qr> X-Priority: 3 X-GUID: E465F2BF-9B66-4788-840A-1E16C91AAA39 X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: Content-Type: multipart/alternative; boundary="----=_001_NextPart134533053585_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-9.3 required=5.0 tests=BAYES_00,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,MANY_SPAN_IN_TEXT,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SCC_5_SHORT_WORD_LINES,SPF_HELO_PASS,SPF_PASS,TXREP,T_KAM_HTML_FONT_INVALID,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. ------=_001_NextPart134533053585_=---- Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: base64 SGksIFJpY2hhcmQuDQoNCkkgaGF2ZSBhIHF1ZXN0aW9uIGFib3V0IHRoZSBk ZWNyZW1lbnQgSVYgY29zdGluZyBzaW5jZSBJIGZpbmQgdGhlIHJlZHVjdGlv biBjYXNlIGlzIGdlbmVyYXRpbmcgaW5mZXJpb3IgY29kZWdlbi4NCg0KcmVk dWNfcGx1c19pbnQ6DQptdiBhMyxhMA0KYmxlIGExLHplcm8sLkw3DQphZGRp dyBhNSxhMSwtMQ0KbGkgYTQsMg0KYmxldSBhNSxhNCwuTDgNCnZzZXRpdmxp IHplcm8sNCxlMzIsbTEsdGEsbWENCnNybGl3IGE0LGExLDINCnZtdi52Lmkg djEsMA0Kc2xsaSBhNCxhNCw0DQphZGQgYTQsYTQsYTANCm12IGE1LGEwDQou TDQ6DQp2bGUzMi52IHYyLDAoYTUpDQphZGRpIGE1LGE1LDE2DQp2YWRkLnZ2 IHYxLHYxLHYyDQpibmUgYTUsYTQsLkw0DQpsaSBhNSwwDQp2bXYucy54IHYy LGE1DQphbmRpIGE1LGExLC00DQp2cmVkc3VtLnZzIHYxLHYxLHYyDQp2bXYu eC5zIGEwLHYxDQpiZXEgYTEsYTUsLkwxMg0KLkwzOg0Kc3VidyBhMSxhMSxh NQ0Kc2xsaSBhNSxhNSwzMg0Kc3JsaSBhNSxhNSwzMg0Kc2xsaSBhMSxhMSwz Mg0KdnNldHZsaSBhNCx6ZXJvLGUzMixtMSx0YSxtYQ0Kc2xsaSBhNSxhNSwy DQpzcmxpIGExLGExLDMyDQp2bXYudi5pIHYxLDANCmFkZCBhMyxhMyxhNQ0K dnNldHZsaSBhMSxhMSxlOCxtZjQsdGEsbWENCnZsZTMyLnYgdjMsMChhMykN CmxpIGE1LDANCnZzZXRpdmxpIHplcm8sMSxlMzIsbTEsdGEsbWENCnZtdi5z LnggdjIsYTUNCnZzZXR2bGkgemVybyxhMSxlMzIsbTEsdHUsbWENCnZtdi52 LnYgdjEsdjMNCnZzZXR2bGkgYTQsemVybyxlMzIsbTEsdGEsbWENCnZyZWRz dW0udnMgdjEsdjEsdjINCnZtdi54LnMgYTUsdjENCmFkZHcgYTAsYTAsYTUN CnJldA0KLkwxMjoNCnJldA0KLkw3Og0KbGkgYTAsMA0KcmV0DQouTDg6DQps aSBhNSwwDQpsaSBhMCwwDQpqIC5MMw0KDQpUaGlzIHBhdGNoIGFkanVzdCBs ZW5ndGhfdXBkYXRlX2Nvc3QgZnJvbSAzIChvcmlnaW5hbCBjb3N0KSBpbnRv IDIgY2FuIGZpeCBjb252ZXJzaW9uIGNhc2UgKHRoZSB0ZXN0IGFwcGVuZCBp biB0aGlzIHBhdGNoKS4NCkJ1dCBjYW4ndCBmaXggcmVkdWN0aW9uIGNhc2Uu DQoNClRoZW4gSSBhZGp1c3QgaXQgaW50byBDT1NUID0gMToNCg0KZGlmZiAt LWdpdCBhL2djYy90cmVlLXZlY3QtbG9vcC5jYyBiL2djYy90cmVlLXZlY3Qt bG9vcC5jYw0KaW5kZXggMTllMzhiODYzN2IuLjUwYzk5YjFmZTc5IDEwMDY0 NA0KLS0tIGEvZ2NjL3RyZWUtdmVjdC1sb29wLmNjDQorKysgYi9nY2MvdHJl ZS12ZWN0LWxvb3AuY2MNCkBAIC00ODc3LDcgKzQ4NzcsNyBAQCB2ZWN0X2Vz dGltYXRlX21pbl9wcm9maXRhYmxlX2l0ZXJzIChsb29wX3ZlY19pbmZvIGxv b3BfdmluZm8sDQogICAgICAgICAgICAgICAgIHByb2Nlc3NlZCBpbiBjdXJy ZW50IGl0ZXJhdGlvbiwgYW5kIGEgU0hJRlQgb3BlcmF0aW9uIHRvDQogICAg ICAgICAgICAgICAgIGNvbXB1dGUgdGhlIG5leHQgbWVtb3J5IGFkZHJlc3Mg aW5zdGVhZCBvZiBhZGRpbmcgdmVjdG9yaXphdGlvbg0KICAgICAgICAgICAg ICAgICBmYWN0b3IuICAqLw0KLSAgICAgICAgICAgICBsZW5ndGhfdXBkYXRl X2Nvc3QgPSAyOw0KKyAgICAgICAgICAgICBsZW5ndGhfdXBkYXRlX2Nvc3Qg PSAxOw0KICAgICAgICAgICAgZWxzZQ0KICAgICAgICAgICAgICAvKiBGb3Ig aW5jcmVtZW50IElWIHN0eXBlLCBFYWNoIG1heSBuZWVkIHR3byBNSU5zIGFu ZCBvbmUgTUlOVVMgdG8NCiAgICAgICAgICAgICAgICAgdXBkYXRlIGxlbmd0 aHMgaW4gYm9keSBmb3IgbmV4dCBpdGVyYXRpb24uICAqLw0KDQpUaGVuIHRo ZSBjb2RlZ2VuIGlzIHJlYXNvbmFibGUgbm93Og0KDQpyZWR1Y19wbHVzX2lu dDoNCmJsZSBhMSx6ZXJvLC5MNA0KdnNldHZsaSBhNSx6ZXJvLGUzMixtMSx0 YSxtYQ0Kdm12LnYuaSB2MSwwDQouTDM6DQp2c2V0dmxpIGE1LGExLGUzMixt MSx0dSxtYQ0KdmxlMzIudiB2MiwwKGEwKQ0Kc2xsaSBhNCxhNSwyDQpzdWIg YTEsYTEsYTUNCmFkZCBhMCxhMCxhNA0KdmFkZC52diB2MSx2Mix2MQ0KYm5l IGExLHplcm8sLkwzDQpsaSBhNSwwDQp2c2V0aXZsaSB6ZXJvLDEsZTMyLG0x LHRhLG1hDQp2bXYucy54IHYyLGE1DQp2c2V0dmxpIGE1LHplcm8sZTMyLG0x LHRhLG1hDQp2cmVkc3VtLnZzIHYxLHYxLHYyDQp2bXYueC5zIGEwLHYxDQpy ZXQNCi5MNDoNCmxpIGEwLDANCnJldA0KDQpUaGUgcmVhc29uIEkgc2V0IENP U1QgPSAyIGluc3RlYWQgb2YgMSBpbiB0aGlzIHBhdGNoIHNpbmNlDQoNCm9u ZSBDT1NUIGlzIGZvciBTRUxFQ1RfVkwuDQoNClRoZSBvdGhlciBpcyBmb3Ig bWVtb3J5IGFkZHJlc3MgY2FsY3VsYXRpb24gc2luY2Ugd2UgZG9uJ3QgdXBk YXRlIG1lbW9yeSBhZGRyZXNzIHdpdGggYWRkaW5nIFZGIGRpcmVjdGx5LA0K aW5zdGVhZDoNCg0KV2Ugc2hpZnQgdGhlIHJlc3VsdCBvZiBTRUxFQ1ZfVkws IGFuZCB0aGVuIGFkZCBpdCBpbnRvIHRoZSBtZW1vcnkgSVYgYXMgZm9sbG93 czoNCg0KU1NBXzEgPSBTRUxFQ1RfVkwgLS0+IFNTQV8xIGlzIGVsZW1lbnQt d2lzZQ0KU1NBXzIgPSBTU0FfMSA8PCAxIChJZiBlbGVtZW50IGlzIElOVDE2 LCBtYWtlIGl0IHRvIGJlIGJ5dGVzLXdpc2UpDQpuZXh0IGl0ZXJhdGlvbiBt ZW1vcnkgYWRkcmVzcyA9IGN1cnJlbnQgaXRlcmF0aW9uIG1lbW9yeSBhZGRy ZXNzICsgU1NBXzIuDQoNCklmIGVsZW1lbnRlIGlzIElOVDgsIHRoZW4gdGhl IHNoaWZ0IG9wZXJhdGlvbiBpcyBub3QgbmVlZGVkOg0KU1NBXzIgPSBTU0Ff MSA8PCAxIHNpbmNlIGl0IGlzIGFscmVhZHkgYnl0ZS13aXNlLg0KDQpTbywg bXkgcXVlc3Rpb24gaXMgdGhlIENPU1Qgc2hvdWxkIGJlIDEgb3IgMi4NCkl0 IHNlZW1zIHRoYXQgQ09TVCA9IDEgaXMgYmV0dGVyIGZvciB1c2luZyBTRUxF Q1RfVkwuDQogDQpUaGFua3MuDQoNCg0KanV6aGUuemhvbmdAcml2YWkuYWkN CiANCkZyb206IFJpY2hhcmQgQmllbmVyDQpEYXRlOiAyMDIzLTEyLTEzIDE4 OjE3DQpUbzogSnV6aGUtWmhvbmcNCkNDOiBnY2MtcGF0Y2hlczsgcmljaGFy ZC5zYW5kaWZvcmQ7IGplZmZyZXlhbGF3DQpTdWJqZWN0OiBSZTogW1BBVENI XSBNaWRkbGUtZW5kOiBBZGp1c3QgZGVjcmVtZW50IElWIHN0eWxlIHBhcnRp YWwgdmVjdG9yaXphdGlvbiBDT1NUIG1vZGVsDQpPbiBXZWQsIDEzIERlYyAy MDIzLCBKdXpoZS1aaG9uZyB3cm90ZToNCiANCj4gSGksIGJlZm9yZSB0aGlz IHBhdGNoLCBhIHNpbXBsZSBjb252ZXJzaW9uIGNhc2UgZm9yIFJWViBjb2Rl Z2VuOg0KPiANCj4gZm9vOg0KPiAgICAgICAgIGJsZSAgICAgYTIsemVybywu TDgNCj4gICAgICAgICBhZGRpdyAgIGE1LGEyLC0xDQo+ICAgICAgICAgbGkg ICAgICBhNCw2DQo+ICAgICAgICAgYmxldSAgICBhNSxhNCwuTDYNCj4gICAg ICAgICBzcmxpdyAgIGEzLGEyLDMNCj4gICAgICAgICBzbGxpICAgIGEzLGEz LDMNCj4gICAgICAgICBhZGQgICAgIGEzLGEzLGEwDQo+ICAgICAgICAgbXYg ICAgICBhNSxhMA0KPiAgICAgICAgIG12ICAgICAgYTQsYTENCj4gICAgICAg ICB2c2V0aXZsaSAgICAgICAgemVybyw4LGUxNixtMSx0YSxtYQ0KPiAuTDQ6 DQo+ICAgICAgICAgdmxlOC52ICB2MiwwKGE1KQ0KPiAgICAgICAgIGFkZGkg ICAgYTUsYTUsOA0KPiAgICAgICAgIHZ6ZXh0LnZmMiAgICAgICB2MSx2Mg0K PiAgICAgICAgIHZzZTE2LnYgdjEsMChhNCkNCj4gICAgICAgICBhZGRpICAg IGE0LGE0LDE2DQo+ICAgICAgICAgYm5lICAgICBhMyxhNSwuTDQNCj4gICAg ICAgICBhbmRpICAgIGE1LGEyLC04DQo+ICAgICAgICAgYmVxICAgICBhMixh NSwuTDEwDQo+IC5MMzoNCj4gICAgICAgICBzbGxpICAgIGE0LGE1LDMyDQo+ ICAgICAgICAgc3JsaSAgICBhNCxhNCwzMg0KPiAgICAgICAgIHN1YncgICAg YTIsYTIsYTUNCj4gICAgICAgICBzbGxpICAgIGEyLGEyLDMyDQo+ICAgICAg ICAgc2xsaSAgICBhNSxhNCwxDQo+ICAgICAgICAgc3JsaSAgICBhMixhMiwz Mg0KPiAgICAgICAgIGFkZCAgICAgYTAsYTAsYTQNCj4gICAgICAgICBhZGQg ICAgIGExLGExLGE1DQo+ICAgICAgICAgdnNldHZsaSB6ZXJvLGEyLGUxNixt MSx0YSxtYQ0KPiAgICAgICAgIHZsZTgudiAgdjIsMChhMCkNCj4gICAgICAg ICB2emV4dC52ZjIgICAgICAgdjEsdjINCj4gICAgICAgICB2c2UxNi52IHYx LDAoYTEpDQo+IC5MODoNCj4gICAgICAgICByZXQNCj4gLkwxMDoNCj4gICAg ICAgICByZXQNCj4gLkw2Og0KPiAgICAgICAgIGxpICAgICAgYTUsMA0KPiAg ICAgICAgIGogICAgICAgLkwzDQo+IA0KPiBUaGlzIHZlY3Rvcml6YXRpb24g Z28gdGhyb3VnaCBmaXJzdCBsb29wOg0KPiANCj4gICAgICAgICB2c2V0aXZs aSAgICAgICAgemVybyw4LGUxNixtMSx0YSxtYQ0KPiAuTDQ6DQo+ICAgICAg ICAgdmxlOC52ICB2MiwwKGE1KQ0KPiAgICAgICAgIGFkZGkgICAgYTUsYTUs OA0KPiAgICAgICAgIHZ6ZXh0LnZmMiAgICAgICB2MSx2Mg0KPiAgICAgICAg IHZzZTE2LnYgdjEsMChhNCkNCj4gICAgICAgICBhZGRpICAgIGE0LGE0LDE2 DQo+ICAgICAgICAgYm5lICAgICBhMyxhNSwuTDQNCj4gDQo+IEVhY2ggaXRl cmF0aW9uIHByb2Nlc3NlcyA4IGVsZW1lbnRzLg0KPiANCj4gRm9yIGEgc2Nh bGFibGUgdmVjdG9yaXphdGlvbiB3aXRoIFZMRU4gPiAxMjggYml0cyBDUFUs IGl0J3Mgb2sgd2hlbiBWTEVOID0gMTI4Lg0KPiBCdXQsIGFzIGxvbmcgYXMg VkxFTiA+IDEyOCBiaXRzLCBpdCB3aWxsIHdhc3RlIHRoZSBDUFUgcmVzb3Vy Y2VzLiBUaGF0IGlzLCBlLmcuIFZMRU4gPSAyNTZiaXRzLg0KPiBvbmx5IGhh bGYgb2YgdGhlIHZlY3RvciB1bml0cyBhcmUgd29ya2luZyBhbmQgYW5vdGhl ciBoYWxmIGlzIGlkbGUuDQo+IA0KPiBBZnRlciBpbnZlc3RpZ2F0aW9uLCBJ IHJlYWxpemUgdGhhdCBJIGZvcmdvdCB0byBhZGp1c3QgQ09TVCBmb3IgU0VM RUNUX1ZMLg0KPiBTbywgYWRqdXN0IENPU1QgZm9yIFNFTEVDVF9WTCBzdHlw bGUgbGVuZ3RoIHZlY3Rvcml6YXRpb24uIFdlIGFkanVzdCBDT1NUIGZyb20g MyB0byAyLiBzaW5jZQ0KPiBhZnRlciB0aGlzIHBhdGNoOg0KPiANCj4gZm9v Og0KPiBibGUgYTIsemVybywuTDUNCj4gLkwzOg0KPiB2c2V0dmxpIGE1LGEy LGUxNixtMSx0YSxtYSAgICAgLS0tLS0+IFNFTEVDVF9WTCBjb3N0Lg0KPiB2 bGU4LnYgdjIsMChhMCkNCj4gc2xsaSBhNCxhNSwxICAgICAgICAgICAgICAg IC0tLS0tPiBhZGRpdGlvbmFsIHNoaWZ0IG9mIG91dGNvbWUgU0VMRUNUX1ZM IGZvciBtZW1vcnkgYWRkcmVzcyBjYWxjdWxhdGlvbi4NCj4gdnpleHQudmYy IHYxLHYyDQo+IHN1YiBhMixhMixhNQ0KPiB2c2UxNi52IHYxLDAoYTEpDQo+ IGFkZCBhMCxhMCxhNQ0KPiBhZGQgYTEsYTEsYTQNCj4gYm5lIGEyLHplcm8s LkwzDQo+IC5MNToNCj4gcmV0DQo+IA0KPiBUaGlzIHBhdGNoIGlzIGEgc2lt cGxlIGZpeCB0aGF0IEkgcHJldmlvdXMgZm9yZ290Lg0KPiANCj4gT2sgZm9y IHRydW5rID8NCiANCk9LLg0KIA0KUmljaGFyZC4NCiANCj4gSWYgbm90LCBJ IGFtIGdvaW5nIHRvIGFkanVzdCBjb3N0IGluIGJhY2tlbmQgY29zdCBtb2Rl bC4NCj4gDQo+IFBSIHRhcmdldC8xMTEzMTcNCj4gDQo+IGdjYy9DaGFuZ2VM b2c6DQo+IA0KPiAqIHRyZWUtdmVjdC1sb29wLmNjICh2ZWN0X2VzdGltYXRl X21pbl9wcm9maXRhYmxlX2l0ZXJzKTogQWRqdXN0IGZvciBDT1NUIGZvciBk ZWNyZW1lbnQgSVYuDQo+IA0KPiBnY2MvdGVzdHN1aXRlL0NoYW5nZUxvZzoN Cj4gDQo+ICogZ2NjLmRnL3ZlY3QvY29zdG1vZGVsL3Jpc2N2L3J2di9wcjEx MTMxNy5jOiBOZXcgdGVzdC4NCj4gDQo+IC0tLQ0KPiAgLi4uL2djYy5kZy92 ZWN0L2Nvc3Rtb2RlbC9yaXNjdi9ydnYvcHIxMTEzMTcuYyAgfCAxMiArKysr KysrKysrKysNCj4gIGdjYy90cmVlLXZlY3QtbG9vcC5jYyAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgMTcgKysrKysrKysrKysrKystLS0NCj4gIDIg ZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMo LSkNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy5k Zy92ZWN0L2Nvc3Rtb2RlbC9yaXNjdi9ydnYvcHIxMTEzMTcuYw0KPiANCj4g ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvY29zdG1v ZGVsL3Jpc2N2L3J2di9wcjExMTMxNy5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu ZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L3ByMTExMzE3LmMNCj4gbmV3 IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAuLmQ0YmVh MjQyYTlhDQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvZ2NjL3Rlc3RzdWl0 ZS9nY2MuZGcvdmVjdC9jb3N0bW9kZWwvcmlzY3YvcnZ2L3ByMTExMzE3LmMN Cj4gQEAgLTAsMCArMSwxMiBAQA0KPiArLyogeyBkZy1kbyBjb21waWxlIH0g Ki8NCj4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3YgLW1hYmk9 bHA2NGQgLU8zIC1mdHJlZS12ZWN0b3JpemUgLS1wYXJhbT1yaXNjdi1hdXRv dmVjLWxtdWw9bTEiIH0gKi8NCj4gKw0KPiArdm9pZA0KPiArZm9vIChjaGFy ICpfX3Jlc3RyaWN0IGEsIHNob3J0ICpfX3Jlc3RyaWN0IGIsIGludCBuKQ0K PiArew0KPiArICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykNCj4gKyAg ICBiW2ldID0gKHNob3J0KSBhW2ldOw0KPiArfQ0KPiArDQo+ICsvKiB7IGRn LWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZzZXR2bGlccytbYS14 MC05XSssXHMqW2EteDAtOV0rLFxzKmUxNixccyptMSxccyp0W2F1XSxccypt W2F1XX0gMSB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt Ymxlci10aW1lcyB7dnNldHZsaX0gMSB9IH0gKi8NCj4gZGlmZiAtLWdpdCBh L2djYy90cmVlLXZlY3QtbG9vcC5jYyBiL2djYy90cmVlLXZlY3QtbG9vcC5j Yw0KPiBpbmRleCA2MjYxY2QxYmUxZC4uMTllMzhiODYzN2IgMTAwNjQ0DQo+ IC0tLSBhL2djYy90cmVlLXZlY3QtbG9vcC5jYw0KPiArKysgYi9nY2MvdHJl ZS12ZWN0LWxvb3AuY2MNCj4gQEAgLTQ4NzAsMTAgKzQ4NzAsMjEgQEAgdmVj dF9lc3RpbWF0ZV9taW5fcHJvZml0YWJsZV9pdGVycyAobG9vcF92ZWNfaW5m byBsb29wX3ZpbmZvLA0KPiAgICAgIGlmIChwYXJ0aWFsX2xvYWRfc3RvcmVf YmlhcyAhPSAwKQ0KPiAgICAgICAgYm9keV9zdG10cyArPSAxOw0KPiAgDQo+ IC0gICAgIC8qIEVhY2ggbWF5IG5lZWQgdHdvIE1JTnMgYW5kIG9uZSBNSU5V UyB0byB1cGRhdGUgbGVuZ3RocyBpbiBib2R5DQo+IC0gICAgICAgIGZvciBu ZXh0IGl0ZXJhdGlvbi4gICovDQo+ICsgICAgIHVuc2lnbmVkIGludCBsZW5n dGhfdXBkYXRlX2Nvc3QgPSAwOw0KPiArICAgICBpZiAoTE9PUF9WSU5GT19V U0lOR19ERUNSRU1FTlRJTkdfSVZfUCAobG9vcF92aW5mbykpDQo+ICsgICAg ICAgLyogRm9yIGRlY3JlbWVudCBJViBzdHlsZSwgd2UgdXNlIGEgc2luZ2xl IFNFTEVDVF9WTCBzaW5jZQ0KPiArIGJlZ2lubmluZyB0byBjYWxjdWxhdGUg dGhlIG51bWJlciBvZiBlbGVtZW50cyBuZWVkIHRvIGJlDQo+ICsgcHJvY2Vz c2VkIGluIGN1cnJlbnQgaXRlcmF0aW9uLCBhbmQgYSBTSElGVCBvcGVyYXRp b24gdG8NCj4gKyBjb21wdXRlIHRoZSBuZXh0IG1lbW9yeSBhZGRyZXNzIGlu c3RlYWQgb2YgYWRkaW5nIHZlY3Rvcml6YXRpb24NCj4gKyBmYWN0b3IuICAq Lw0KPiArICAgICAgIGxlbmd0aF91cGRhdGVfY29zdCA9IDI7DQo+ICsgICAg IGVsc2UNCj4gKyAgICAgICAvKiBGb3IgaW5jcmVtZW50IElWIHN0eXBlLCBF YWNoIG1heSBuZWVkIHR3byBNSU5zIGFuZCBvbmUgTUlOVVMgdG8NCj4gKyB1 cGRhdGUgbGVuZ3RocyBpbiBib2R5IGZvciBuZXh0IGl0ZXJhdGlvbi4gICov DQo+ICsgICAgICAgbGVuZ3RoX3VwZGF0ZV9jb3N0ID0gMzsNCj4gKw0KPiAg ICAgIGlmIChuZWVkX2l0ZXJhdGVfcCkNCj4gLSAgICAgICBib2R5X3N0bXRz ICs9IDMgKiBudW1fdmVjdG9yczsNCj4gKyAgICAgICBib2R5X3N0bXRzICs9 IGxlbmd0aF91cGRhdGVfY29zdCAqIG51bV92ZWN0b3JzOw0KPiAgICB9DQo+ ICANCj4gICAgICAgICh2b2lkKSBhZGRfc3RtdF9jb3N0ICh0YXJnZXRfY29z dF9kYXRhLCBwcm9sb2d1ZV9zdG10cywNCj4gDQogDQotLSANClJpY2hhcmQg QmllbmVyIDxyZ3VlbnRoZXJAc3VzZS5kZT4NClNVU0UgU29mdHdhcmUgU29s dXRpb25zIEdlcm1hbnkgR21iSCwNCkZyYW5rZW5zdHJhc3NlIDE0NiwgOTA0 NjEgTnVlcm5iZXJnLCBHZXJtYW55Ow0KR0Y6IEl2byBUb3RldiwgQW5kcmV3 IE1jRG9uYWxkLCBXZXJuZXIgS25vYmxpY2g7IChIUkIgMzY4MDksIEFHIE51 ZXJuYmVyZykNCiANCg== ------=_001_NextPart134533053585_=------