From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbg154.qq.com (smtpbg154.qq.com [15.184.224.54]) by sourceware.org (Postfix) with ESMTPS id A89D03858D35 for ; Tue, 23 May 2023 12:32:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A89D03858D35 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivai.ai Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivai.ai X-QQ-mid: bizesmtp76t1684845127tv9pl8is Received: from LAPTOP-EPITNQBU ( [58.60.1.20]) by bizesmtp.qq.com (ESMTP) with id ; Tue, 23 May 2023 20:32:06 +0800 (CST) X-QQ-SSF: 01400000000000F0R000000A0000000 X-QQ-FEAT: aBJFcW+uBGZxq6LQ+UAxoHHkeOjkXljkKUHi55XmFbEl4aQ4LqR3HQaqSIpoy FZyZkGAKPagmuBEsW8vSIGSA33wwUZ07ykDvHcfbNC2os7//0gj0AewjvskY1GIOXyDvxs1 1H6YmlXKuMy7WjlemjI0G/j3k/tZT5R9I0y7IVHP/haVtt4Z9nhStjcg11Bcvi7QgMJqpHM KpFIg2AEENCnx66rS8IWsy53CZs9hroMsO4LvsiJf30kQ+ue8rZefhMcWKszA4rKGjOx6Ql RpwlhW700aEfQZAvwj6aCsZunM/giDFpFZpJcbD438Ra7puYdA3FmsCMXYoL8Ix3aA9DESb 3gZYU1+IVzXM19Krq/fVLZWoLWxd1dnpX3xhRRUW5kz9smXXS1bGkTVUHmgZ9AETEtRnlzF CXNtjv2FhcPfaK/gGXtLe4xpAwOKh2OdCzT8aog9ECc= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 739779224532550650 Date: Tue, 23 May 2023 20:32:06 +0800 From: "juzhe.zhong@rivai.ai" To: =?GB2312?B?1tO+09Xc?= , gcc-patches Cc: richard.sandiford , rguenther Subject: Re: [PATCH V12] VECT: Add decrement IV iteration loop control by variable amount support References: <20230522083814.1647787-1-juzhe.zhong@rivai.ai> X-Priority: 3 X-GUID: CBC513AB-28BD-4CA8-860C-8FE3480EB0D9 X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: Content-Type: multipart/alternative; boundary="----=_001_NextPart643602551604_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-9.5 required=5.0 tests=BAYES_00,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_WEB,SPF_HELO_PASS,SPF_PASS,TXREP,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_NextPart643602551604_=---- Content-Type: text/plain; charset="GB2312" Content-Transfer-Encoding: base64 Qm9vdHN0cmFwIG9uIFg4NiBwYXNzZWQuDQpPayBmb3IgdHJ1bms/DQoNClRo YW5rcy4NCg0KDQpqdXpoZS56aG9uZ0ByaXZhaS5haQ0KIA0KRnJvbToganV6 aGUuemhvbmcNCkRhdGU6IDIwMjMtMDUtMjIgMTY6MzgNClRvOiBnY2MtcGF0 Y2hlcw0KQ0M6IHJpY2hhcmQuc2FuZGlmb3JkOyByZ3VlbnRoZXI7IEp1LVpo ZSBaaG9uZw0KU3ViamVjdDogW1BBVENIIFYxMl0gVkVDVDogQWRkIGRlY3Jl bWVudCBJViBpdGVyYXRpb24gbG9vcCBjb250cm9sIGJ5IHZhcmlhYmxlIGFt b3VudCBzdXBwb3J0DQpGcm9tOiBKdS1aaGUgWmhvbmcgPGp1emhlLnpob25n QHJpdmFpLmFpPg0KIA0KZ2NjL0NoYW5nZUxvZzoNCiANCiAgICAgICAgKiB0 cmVlLXZlY3QtbG9vcC1tYW5pcC5jYyAodmVjdF9hZGp1c3RfbG9vcF9sZW5z X2NvbnRyb2wpOiBOZXcgZnVuY3Rpb24uDQogICAgICAgICh2ZWN0X3NldF9s b29wX2NvbnRyb2xzX2RpcmVjdGx5KTogQWRkIGRlY3JlbWVudCBJViBzdXBw b3J0Lg0KICAgICAgICAodmVjdF9zZXRfbG9vcF9jb25kaXRpb25fcGFydGlh bF92ZWN0b3JzKTogRGl0dG8uDQogICAgICAgICogdHJlZS12ZWN0LWxvb3Au Y2M6IERpdHRvLg0KICAgICAgICAqIHRyZWUtdmVjdG9yaXplci5oIChMT09Q X1ZJTkZPX1VTSU5HX0RFQ1JFTUVOVElOR19JVl9QKTogTmV3IG1hY3JvLg0K IA0KLS0tDQpnY2MvdHJlZS12ZWN0LWxvb3AtbWFuaXAuY2MgfCAxODQgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystDQpnY2MvdHJlZS12 ZWN0LWxvb3AuY2MgICAgICAgfCAgMTAgKysNCmdjYy90cmVlLXZlY3Rvcml6 ZXIuaCAgICAgICB8ICAgOCArKw0KMyBmaWxlcyBjaGFuZ2VkLCAxOTkgaW5z ZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkNCiANCmRpZmYgLS1naXQgYS9n Y2MvdHJlZS12ZWN0LWxvb3AtbWFuaXAuY2MgYi9nY2MvdHJlZS12ZWN0LWxv b3AtbWFuaXAuY2MNCmluZGV4IGZmNjE1OWUwOGQ1Li45NGIzOGQxZTBmYiAx MDA2NDQNCi0tLSBhL2djYy90cmVlLXZlY3QtbG9vcC1tYW5pcC5jYw0KKysr IGIvZ2NjL3RyZWUtdmVjdC1sb29wLW1hbmlwLmNjDQpAQCAtMzg1LDYgKzM4 NSw2NiBAQCB2ZWN0X21heWJlX3Blcm11dGVfbG9vcF9tYXNrcyAoZ2ltcGxl X3NlcSAqc2VxLCByZ3JvdXBfY29udHJvbHMgKmRlc3RfcmdtLA0KICAgcmV0 dXJuIGZhbHNlOw0KfQ0KKy8qIFRyeSB0byB1c2UgYWRqdXN0IGxvb3AgbGVu cyBmb3Igbm9uLVNMUCBtdWx0aXBsZS1yZ3JvdXBzLg0KKw0KKyAgICAgXzM2 ID0gTUlOX0VYUFIgPGl2dG1wXzM0LCBWRj47DQorDQorICAgICBGaXJzdCBs ZW5ndGggKE1JTiAoWCwgVkYvTikpOg0KKyAgICAgICBsb29wX2xlbl8xNSA9 IE1JTl9FWFBSIDxfMzYsIFZGL04+Ow0KKw0KKyAgICAgU2Vjb25kIGxlbmd0 aDoNCisgICAgICAgdG1wID0gXzM2IC0gbG9vcF9sZW5fMTU7DQorICAgICAg IGxvb3BfbGVuXzE2ID0gTUlOICh0bXAsIFZGL04pOw0KKw0KKyAgICAgVGhp cmQgbGVuZ3RoOg0KKyAgICAgICB0bXAyID0gdG1wIC0gbG9vcF9sZW5fMTY7 DQorICAgICAgIGxvb3BfbGVuXzE3ID0gTUlOICh0bXAyLCBWRi9OKTsNCisN CisgICAgIExhc3QgbGVuZ3RoOg0KKyAgICAgICBsb29wX2xlbl8xOCA9IHRt cDIgLSBsb29wX2xlbl8xNzsNCisqLw0KKw0KK3N0YXRpYyB2b2lkDQordmVj dF9hZGp1c3RfbG9vcF9sZW5zX2NvbnRyb2wgKHRyZWUgaXZfdHlwZSwgZ2lt cGxlX3NlcSAqc2VxLA0KKyAgICAgICAgcmdyb3VwX2NvbnRyb2xzICpkZXN0 X3JnbSwNCisgICAgICAgIHJncm91cF9jb250cm9scyAqc3JjX3JnbSwgdHJl ZSBzdGVwKQ0KK3sNCisgIHRyZWUgY3RybF90eXBlID0gZGVzdF9yZ20tPnR5 cGU7DQorICBwb2x5X3VpbnQ2NCBuaXRlbXNfcGVyX2N0cmwNCisgICAgPSBU WVBFX1ZFQ1RPUl9TVUJQQVJUUyAoY3RybF90eXBlKSAqIGRlc3RfcmdtLT5m YWN0b3I7DQorICB0cmVlIGxlbmd0aF9saW1pdCA9IGJ1aWxkX2ludF9jc3Qg KGl2X3R5cGUsIG5pdGVtc19wZXJfY3RybCk7DQorDQorICBmb3IgKHVuc2ln bmVkIGludCBpID0gMDsgaSA8IGRlc3RfcmdtLT5jb250cm9scy5sZW5ndGgg KCk7ICsraSkNCisgICAgew0KKyAgICAgIGlmICghc3RlcCkNCisgc3RlcCA9 IHNyY19yZ20tPmNvbnRyb2xzW2kgLyBkZXN0X3JnbS0+Y29udHJvbHMubGVu Z3RoICgpXTsNCisgICAgICB0cmVlIGN0cmwgPSBkZXN0X3JnbS0+Y29udHJv bHNbaV07DQorICAgICAgaWYgKGkgPT0gMCkNCisgew0KKyAgIC8qIEZpcnN0 IGl0ZXJhdGlvbjogTUlOIChYLCBWRi9OKSBjYXBwZWQgdG8gdGhlIHJhbmdl IFswLCBWRi9OXS4gICovDQorICAgZ2Fzc2lnbiAqYXNzaWduDQorICAgICA9 IGdpbXBsZV9idWlsZF9hc3NpZ24gKGN0cmwsIE1JTl9FWFBSLCBzdGVwLCBs ZW5ndGhfbGltaXQpOw0KKyAgIGdpbXBsZV9zZXFfYWRkX3N0bXQgKHNlcSwg YXNzaWduKTsNCisgfQ0KKyAgICAgIGVsc2UgaWYgKGkgPT0gZGVzdF9yZ20t PmNvbnRyb2xzLmxlbmd0aCAoKSAtIDEpDQorIHsNCisgICAvKiBMYXN0IGl0 ZXJhdGlvbjogUmVtYWluIGNhcHBlZCB0byB0aGUgcmFuZ2UgWzAsIFZGL05d LiAgKi8NCisgICBnYXNzaWduICphc3NpZ24gPSBnaW1wbGVfYnVpbGRfYXNz aWduIChjdHJsLCBNSU5VU19FWFBSLCBzdGVwLA0KKyBkZXN0X3JnbS0+Y29u dHJvbHNbaSAtIDFdKTsNCisgICBnaW1wbGVfc2VxX2FkZF9zdG10IChzZXEs IGFzc2lnbik7DQorIH0NCisgICAgICBlbHNlDQorIHsNCisgICAvKiAoTUlO IChyZW1haW4sIFZGKkkvTikpIGNhcHBlZCB0byB0aGUgcmFuZ2UgWzAsIFZG L05dLiAgKi8NCisgICBzdGVwID0gZ2ltcGxlX2J1aWxkIChzZXEsIE1JTlVT X0VYUFIsIGl2X3R5cGUsIHN0ZXAsDQorICAgICAgICBkZXN0X3JnbS0+Y29u dHJvbHNbaSAtIDFdKTsNCisgICBnYXNzaWduICphc3NpZ24NCisgICAgID0g Z2ltcGxlX2J1aWxkX2Fzc2lnbiAoY3RybCwgTUlOX0VYUFIsIHN0ZXAsIGxl bmd0aF9saW1pdCk7DQorICAgZ2ltcGxlX3NlcV9hZGRfc3RtdCAoc2VxLCBh c3NpZ24pOw0KKyB9DQorICAgIH0NCit9DQorDQovKiBIZWxwZXIgZm9yIHZl Y3Rfc2V0X2xvb3BfY29uZGl0aW9uX3BhcnRpYWxfdmVjdG9ycy4gIEdlbmVy YXRlIGRlZmluaXRpb25zDQogICAgZm9yIGFsbCB0aGUgcmdyb3VwIGNvbnRy b2xzIGluIFJHQyBhbmQgcmV0dXJuIGEgY29udHJvbCB0aGF0IGlzIG5vbnpl cm8NCiAgICB3aGVuIHRoZSBsb29wIG5lZWRzIHRvIGl0ZXJhdGUuICBBZGQg YW55IG5ldyBwcmVoZWFkZXIgc3RhdGVtZW50cyB0bw0KQEAgLTQ2OCw5ICs1 MjgsNzggQEAgdmVjdF9zZXRfbG9vcF9jb250cm9sc19kaXJlY3RseSAoY2xh c3MgbG9vcCAqbG9vcCwgbG9vcF92ZWNfaW5mbyBsb29wX3ZpbmZvLA0KICAg Z2ltcGxlX3N0bXRfaXRlcmF0b3IgaW5jcl9nc2k7DQogICBib29sIGluc2Vy dF9hZnRlcjsNCiAgIHN0YW5kYXJkX2l2X2luY3JlbWVudF9wb3NpdGlvbiAo bG9vcCwgJmluY3JfZ3NpLCAmaW5zZXJ0X2FmdGVyKTsNCi0gIGNyZWF0ZV9p diAoYnVpbGRfaW50X2NzdCAoaXZfdHlwZSwgMCksIFBMVVNfRVhQUiwgbml0 ZW1zX3N0ZXAsIE5VTExfVFJFRSwNCi0gICAgICBsb29wLCAmaW5jcl9nc2ks IGluc2VydF9hZnRlciwgJmluZGV4X2JlZm9yZV9pbmNyLA0KLSAgICAgICZp bmRleF9hZnRlcl9pbmNyKTsNCisgIGlmIChMT09QX1ZJTkZPX1VTSU5HX0RF Q1JFTUVOVElOR19JVl9QIChsb29wX3ZpbmZvKSkNCisgICAgew0KKyAgICAg IG5pdGVtc190b3RhbCA9IGdpbXBsZV9jb252ZXJ0IChwcmVoZWFkZXJfc2Vx LCBpdl90eXBlLCBuaXRlbXNfdG90YWwpOw0KKyAgICAgIHRyZWUgc3RlcCA9 IG1ha2Vfc3NhX25hbWUgKGl2X3R5cGUpOw0KKyAgICAgIC8qIENyZWF0ZSBk ZWNyZW1lbnQgSVYuICAqLw0KKyAgICAgIGNyZWF0ZV9pdiAobml0ZW1zX3Rv dGFsLCBNSU5VU19FWFBSLCBzdGVwLCBOVUxMX1RSRUUsIGxvb3AsICZpbmNy X2dzaSwNCisgaW5zZXJ0X2FmdGVyLCAmaW5kZXhfYmVmb3JlX2luY3IsICZp bmRleF9hZnRlcl9pbmNyKTsNCisgICAgICB0cmVlIHRlbXAgPSBnaW1wbGVf YnVpbGQgKGhlYWRlcl9zZXEsIE1JTl9FWFBSLCBpdl90eXBlLA0KKyBpbmRl eF9iZWZvcmVfaW5jciwgbml0ZW1zX3N0ZXApOw0KKyAgICAgIGdpbXBsZV9z ZXFfYWRkX3N0bXQgKGhlYWRlcl9zZXEsIGdpbXBsZV9idWlsZF9hc3NpZ24g KHN0ZXAsIHRlbXApKTsNCisNCisgICAgICBpZiAocmdjLT5tYXhfbnNjYWxh cnNfcGVyX2l0ZXIgPT0gMSkNCisgew0KKyAgIC8qIHNpbmdsZSByZ3JvdXA6 DQorICAgICAgLi4uDQorICAgICAgXzEwID0gKHVuc2lnbmVkIGxvbmcpIGNv dW50XzEyKEQpOw0KKyAgICAgIC4uLg0KKyAgICAgICMgaXZ0bXBfOSA9IFBI SSA8aXZ0bXBfMzUoNiksIF8xMCg1KT4NCisgICAgICBfMzYgPSBNSU5fRVhQ UiA8aXZ0bXBfOSwgUE9MWV9JTlRfQ1NUIFs0LCA0XT47DQorICAgICAgLi4u DQorICAgICAgdmVjdF9fNC44XzI4ID0gLkxFTl9MT0FEIChfMTcsIDMyQiwg XzM2LCAwKTsNCisgICAgICAuLi4NCisgICAgICBpdnRtcF8zNSA9IGl2dG1w XzkgLSBfMzY7DQorICAgICAgLi4uDQorICAgICAgaWYgKGl2dG1wXzM1ICE9 IDApDQorICAgICAgICBnb3RvIDxiYiA0PjsgWzgzLjMzJV0NCisgICAgICBl bHNlDQorICAgICAgICBnb3RvIDxiYiA1PjsgWzE2LjY3JV0NCisgICAqLw0K KyAgIGdhc3NpZ24gKmFzc2lnbiA9IGdpbXBsZV9idWlsZF9hc3NpZ24gKHJn Yy0+Y29udHJvbHNbMF0sIHN0ZXApOw0KKyAgIGdpbXBsZV9zZXFfYWRkX3N0 bXQgKGhlYWRlcl9zZXEsIGFzc2lnbik7DQorIH0NCisgICAgICBlbHNlDQor IHsNCisgICAvKiBNdWx0aXBsZSByZ3JvdXAgKFNMUCk6DQorICAgICAgLi4u DQorICAgICAgXzM4ID0gKHVuc2lnbmVkIGxvbmcpIGJuZC43XzI5Ow0KKyAg ICAgIF8zOSA9IF8zOCAqIDI7DQorICAgICAgLi4uDQorICAgICAgIyBpdnRt cF80MSA9IFBISSA8aXZ0bXBfNDIoNiksIF8zOSg1KT4NCisgICAgICAuLi4N CisgICAgICBfNDMgPSBNSU5fRVhQUiA8aXZ0bXBfNDEsIDMyPjsNCisgICAg ICBsb29wX2xlbl8yNiA9IE1JTl9FWFBSIDxfNDMsIDE2PjsNCisgICAgICBs b29wX2xlbl8yNSA9IF80MyAtIGxvb3BfbGVuXzI2Ow0KKyAgICAgIC4uLg0K KyAgICAgIC5MRU5fU1RPUkUgKF82LCA4QiwgbG9vcF9sZW5fMjYsIC4uLik7 DQorICAgICAgLi4uDQorICAgICAgLkxFTl9TVE9SRSAoXzI1LCA4QiwgbG9v cF9sZW5fMjUsIC4uLik7DQorICAgICAgXzMzID0gbG9vcF9sZW5fMjYgLyAy Ow0KKyAgICAgIC4uLg0KKyAgICAgIC5MRU5fU1RPUkUgKF84LCAxNkIsIF8z MywgLi4uKTsNCisgICAgICBfMzYgPSBsb29wX2xlbl8yNSAvIDI7DQorICAg ICAgLi4uDQorICAgICAgLkxFTl9TVE9SRSAoXzE1LCAxNkIsIF8zNiwgLi4u KTsNCisgICAgICBpdnRtcF80MiA9IGl2dG1wXzQxIC0gXzQzOw0KKyAgICAg IC4uLg0KKyAgICAgIGlmIChpdnRtcF80MiAhPSAwKQ0KKyAgICAgICAgZ290 byA8YmIgND47IFs4My4zMyVdDQorICAgICAgZWxzZQ0KKyAgICAgICBnb3Rv IDxiYiA1PjsgWzE2LjY3JV0NCisgICAqLw0KKyAgIHZlY3RfYWRqdXN0X2xv b3BfbGVuc19jb250cm9sIChpdl90eXBlLCBoZWFkZXJfc2VxLCByZ2MsIE5V TEwsIHN0ZXApOw0KKyB9DQorICAgICAgcmV0dXJuIGluZGV4X2FmdGVyX2lu Y3I7DQorICAgIH0NCisgIGVsc2UNCisgICAgew0KKyAgICAgIC8qIENyZWF0 ZSBpbmNyZW1lbnQgSVYuICAqLw0KKyAgICAgIGNyZWF0ZV9pdiAoYnVpbGRf aW50X2NzdCAoaXZfdHlwZSwgMCksIFBMVVNfRVhQUiwgbml0ZW1zX3N0ZXAs IE5VTExfVFJFRSwNCisgbG9vcCwgJmluY3JfZ3NpLCBpbnNlcnRfYWZ0ZXIs ICZpbmRleF9iZWZvcmVfaW5jciwNCisgJmluZGV4X2FmdGVyX2luY3IpOw0K KyAgICB9DQogICB0cmVlIHplcm9faW5kZXggPSBidWlsZF9pbnRfY3N0IChj b21wYXJlX3R5cGUsIDApOw0KICAgdHJlZSB0ZXN0X2luZGV4LCB0ZXN0X2xp bWl0LCBmaXJzdF9saW1pdDsNCkBAIC03NTMsNiArODgyLDU1IEBAIHZlY3Rf c2V0X2xvb3BfY29uZGl0aW9uX3BhcnRpYWxfdmVjdG9ycyAoY2xhc3MgbG9v cCAqbG9vcCwNCiAgICAgIGNvbnRpbnVlOw0KICB9DQorIGlmIChMT09QX1ZJ TkZPX1VTSU5HX0RFQ1JFTUVOVElOR19JVl9QIChsb29wX3ZpbmZvKQ0KKyAg ICAgJiYgcmdjLT5tYXhfbnNjYWxhcnNfcGVyX2l0ZXIgPT0gMQ0KKyAgICAg JiYgcmdjICE9ICZMT09QX1ZJTkZPX0xFTlMgKGxvb3BfdmluZm8pWzBdKQ0K KyAgIHsNCisgICAgIC8qIE11bHRpcGxlIHJncm91cCAobm9uLVNMUCk6DQor ICAgICAgIC4uLg0KKyAgICAgICBfMzggPSAodW5zaWduZWQgbG9uZykgbl8x MihEKTsNCisgICAgICAgLi4uDQorICAgICAgICMgaXZ0bXBfMzggPSBQSEkg PGl2dG1wXzM5KDMpLCAxMDAoMik+DQorICAgICAgIC4uLg0KKyAgICAgICBf NDAgPSBNSU5fRVhQUiA8aXZ0bXBfMzgsIFBPTFlfSU5UX0NTVCBbOCwgOF0+ Ow0KKyAgICAgICBsb29wX2xlbl8yMSA9IE1JTl9FWFBSIDxfNDAsIFBPTFlf SU5UX0NTVCBbMiwgMl0+Ow0KKyAgICAgICBfNDEgPSBfNDAgLSBsb29wX2xl bl8yMTsNCisgICAgICAgbG9vcF9sZW5fMjAgPSBNSU5fRVhQUiA8XzQxLCBQ T0xZX0lOVF9DU1QgWzIsIDJdPjsNCisgICAgICAgXzQyID0gXzQwIC0gbG9v cF9sZW5fMjA7DQorICAgICAgIGxvb3BfbGVuXzE5ID0gTUlOX0VYUFIgPF80 MiwgUE9MWV9JTlRfQ1NUIFsyLCAyXT47DQorICAgICAgIF80MyA9IF80MCAt IGxvb3BfbGVuXzE5Ow0KKyAgICAgICBsb29wX2xlbl8xNiA9IE1JTl9FWFBS IDxfNDMsIFBPTFlfSU5UX0NTVCBbMiwgMl0+Ow0KKyAgICAgICAuLi4NCisg ICAgICAgdmVjdF9fNC44XzE1ID0gLkxFTl9MT0FEIChfNiwgNjRCLCBsb29w X2xlbl8yMSwgMCk7DQorICAgICAgIC4uLg0KKyAgICAgICB2ZWN0X180Ljlf OCA9IC5MRU5fTE9BRCAoXzEzLCA2NEIsIGxvb3BfbGVuXzIwLCAwKTsNCisg ICAgICAgLi4uDQorICAgICAgIHZlY3RfXzQuMTBfMjggPSAuTEVOX0xPQUQg KF80NiwgNjRCLCBsb29wX2xlbl8xOSwgMCk7DQorICAgICAgIC4uLg0KKyAg ICAgICB2ZWN0X180LjExXzMwID0gLkxFTl9MT0FEIChfNDksIDY0QiwgbG9v cF9sZW5fMTYsIDApOw0KKyAgICAgICB2ZWN0X183LjEzXzMxID0gVkVDX1BB Q0tfVFJVTkNfRVhQUiA8dmVjdF9fNC44XzE1LCB2ZWN0X180LjlfOD47DQor ICAgICAgIHZlY3RfXzcuMTNfMzIgPSBWRUNfUEFDS19UUlVOQ19FWFBSIDwu Li4+Ow0KKyAgICAgICB2ZWN0X183LjEyXzMzID0gVkVDX1BBQ0tfVFJVTkNf RVhQUiA8Li4uPjsNCisgICAgICAgLi4uDQorICAgICAgIC5MRU5fU1RPUkUg KF8xNCwgMTZCLCBfNDAsIHZlY3RfXzcuMTJfMzMsIDApOw0KKyAgICAgICBp dnRtcF8zOSA9IGl2dG1wXzM4IC0gXzQwOw0KKyAgICAgICAuLi4NCisgICAg ICAgaWYgKGl2dG1wXzM5ICE9IDApDQorIGdvdG8gPGJiIDM+OyBbOTIuMzEl XQ0KKyAgICAgICBlbHNlDQorIGdvdG8gPGJiIDQ+OyBbNy42OSVdDQorICAg ICAqLw0KKyAgICAgcmdyb3VwX2NvbnRyb2xzICpzdWJfcmdjDQorICAgICAg ID0gJigqY29udHJvbHMpW25tYXNrcyAvIHJnYy0+Y29udHJvbHMubGVuZ3Ro ICgpIC0gMV07DQorICAgICBpZiAoIXN1Yl9yZ2MtPmNvbnRyb2xzLmlzX2Vt cHR5ICgpKQ0KKyAgICAgICB7DQorIHRyZWUgaXZfdHlwZSA9IExPT1BfVklO Rk9fUkdST1VQX0lWX1RZUEUgKGxvb3BfdmluZm8pOw0KKyB2ZWN0X2FkanVz dF9sb29wX2xlbnNfY29udHJvbCAoaXZfdHlwZSwgJmhlYWRlcl9zZXEsIHJn YywNCisgICAgICAgIHN1Yl9yZ2MsIE5VTExfVFJFRSk7DQorIGNvbnRpbnVl Ow0KKyAgICAgICB9DQorICAgfQ0KKw0KLyogU2VlIHdoZXRoZXIgemVyby1i YXNlZCBJViB3b3VsZCBldmVyIGdlbmVyYXRlIGFsbC1mYWxzZSBtYXNrcw0K ICAgb3IgemVybyBsZW5ndGggYmVmb3JlIHdyYXBwaW5nIGFyb3VuZC4gICov DQpib29sIG1pZ2h0X3dyYXBfcCA9IHZlY3Rfcmdyb3VwX2l2X21pZ2h0X3dy YXBfcCAobG9vcF92aW5mbywgcmdjKTsNCmRpZmYgLS1naXQgYS9nY2MvdHJl ZS12ZWN0LWxvb3AuY2MgYi9nY2MvdHJlZS12ZWN0LWxvb3AuY2MNCmluZGV4 IGNmMTAxMzJiMGJmLi41M2FjNGQyYTZjMiAxMDA2NDQNCi0tLSBhL2djYy90 cmVlLXZlY3QtbG9vcC5jYw0KKysrIGIvZ2NjL3RyZWUtdmVjdC1sb29wLmNj DQpAQCAtMjcyNSw2ICsyNzI1LDE2IEBAIHN0YXJ0X292ZXI6DQogICAgICAg JiYgIXZlY3RfdmVyaWZ5X2xvb3BfbGVucyAobG9vcF92aW5mbykpDQogICAg IExPT1BfVklORk9fQ0FOX1VTRV9QQVJUSUFMX1ZFQ1RPUlNfUCAobG9vcF92 aW5mbykgPSBmYWxzZTsNCisgIC8qIElmIHdlJ3JlIHZlY3Rvcml6aW5nIGFu IGxvb3AgdGhhdCB1c2VzIGxlbmd0aCAiY29udHJvbHMiIGFuZA0KKyAgICAg Y2FuIGl0ZXJhdGUgbW9yZSB0aGFuIG9uY2UsIHdlIGFwcGx5IGRlY3JlbWVu dGluZyBJViBhcHByb2FjaA0KKyAgICAgaW4gbG9vcCBjb250cm9sLiAgKi8N CisgIGlmIChMT09QX1ZJTkZPX0NBTl9VU0VfUEFSVElBTF9WRUNUT1JTX1Ag KGxvb3BfdmluZm8pDQorICAgICAgJiYgIUxPT1BfVklORk9fTEVOUyAobG9v cF92aW5mbykuaXNfZW1wdHkgKCkNCisgICAgICAmJiAhKExPT1BfVklORk9f TklURVJTX0tOT1dOX1AgKGxvb3BfdmluZm8pDQorICAgICYmIGtub3duX2xl IChMT09QX1ZJTkZPX0lOVF9OSVRFUlMgKGxvb3BfdmluZm8pLA0KKyBMT09Q X1ZJTkZPX1ZFQ1RfRkFDVE9SIChsb29wX3ZpbmZvKSkpKQ0KKyAgICBMT09Q X1ZJTkZPX1VTSU5HX0RFQ1JFTUVOVElOR19JVl9QIChsb29wX3ZpbmZvKSA9 IHRydWU7DQorDQogICAvKiBJZiB3ZSdyZSB2ZWN0b3JpemluZyBhbiBlcGls b2d1ZSBsb29wLCB0aGUgdmVjdG9yaXplZCBsb29wIGVpdGhlciBuZWVkcw0K ICAgICAgdG8gYmUgYWJsZSB0byBoYW5kbGUgZmV3ZXIgdGhhbiBWRiBzY2Fs YXJzLCBvciBuZWVkcyB0byBoYXZlIGEgbG93ZXIgVkYNCiAgICAgIHRoYW4g dGhlIG1haW4gbG9vcC4gICovDQpkaWZmIC0tZ2l0IGEvZ2NjL3RyZWUtdmVj dG9yaXplci5oIGIvZ2NjL3RyZWUtdmVjdG9yaXplci5oDQppbmRleCAwMmQy YWQ2ZmJhMS4uZmJhMDliOWZmZDMgMTAwNjQ0DQotLS0gYS9nY2MvdHJlZS12 ZWN0b3JpemVyLmgNCisrKyBiL2djYy90cmVlLXZlY3Rvcml6ZXIuaA0KQEAg LTgxOCw2ICs4MTgsMTMgQEAgcHVibGljOg0KICAgICAgdGhlIHZlY3RvciBs b29wIGNhbiBoYW5kbGUgZmV3ZXIgdGhhbiBWRiBzY2FsYXJzLiAgKi8NCiAg IGJvb2wgdXNpbmdfcGFydGlhbF92ZWN0b3JzX3A7DQorICAvKiBUcnVlIGlm IHdlJ3ZlIGRlY2lkZWQgdG8gdXNlIGEgZGVjcmVtZW50aW5nIGxvb3AgY29u dHJvbCBJViB0aGF0IGNvdW50cw0KKyAgICAgc2NhbGFycy4gVGhpcyBjYW4g YmUgZG9uZSBmb3IgYW55IGxvb3AgdGhhdDoNCisNCisgKGEpIHVzZXMgbGVu Z3RoICJjb250cm9scyI7IGFuZA0KKyAoYikgY2FuIGl0ZXJhdGUgbW9yZSB0 aGFuIG9uY2UuICAqLw0KKyAgYm9vbCB1c2luZ19kZWNyZW1lbnRpbmdfaXZf cDsNCisNCiAgIC8qIFRydWUgaWYgd2UndmUgZGVjaWRlZCB0byB1c2UgcGFy dGlhbGx5LXBvcHVsYXRlZCB2ZWN0b3JzIGZvciB0aGUNCiAgICAgIGVwaWxv Z3VlIG9mIGxvb3AuICAqLw0KICAgYm9vbCBlcGlsX3VzaW5nX3BhcnRpYWxf dmVjdG9yc19wOw0KQEAgLTg5MCw2ICs4OTcsNyBAQCBwdWJsaWM6DQojZGVm aW5lIExPT1BfVklORk9fVkVDVE9SSVpBQkxFX1AoTCkgICAgICAgKEwpLT52 ZWN0b3JpemFibGUNCiNkZWZpbmUgTE9PUF9WSU5GT19DQU5fVVNFX1BBUlRJ QUxfVkVDVE9SU19QKEwpIChMKS0+Y2FuX3VzZV9wYXJ0aWFsX3ZlY3RvcnNf cA0KI2RlZmluZSBMT09QX1ZJTkZPX1VTSU5HX1BBUlRJQUxfVkVDVE9SU19Q KEwpIChMKS0+dXNpbmdfcGFydGlhbF92ZWN0b3JzX3ANCisjZGVmaW5lIExP T1BfVklORk9fVVNJTkdfREVDUkVNRU5USU5HX0lWX1AoTCkgKEwpLT51c2lu Z19kZWNyZW1lbnRpbmdfaXZfcA0KI2RlZmluZSBMT09QX1ZJTkZPX0VQSUxf VVNJTkdfUEFSVElBTF9WRUNUT1JTX1AoTCkgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwNCiAgIChMKS0+ZXBpbF91c2luZ19wYXJ0aWFsX3ZlY3Rv cnNfcA0KI2RlZmluZSBMT09QX1ZJTkZPX1BBUlRJQUxfTE9BRF9TVE9SRV9C SUFTKEwpIChMKS0+cGFydGlhbF9sb2FkX3N0b3JlX2JpYXMNCi0tIA0KMi4z Ni4zDQogDQo= ------=_001_NextPart643602551604_=------