From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbg153.qq.com (smtpbg153.qq.com [13.245.218.24]) by sourceware.org (Postfix) with ESMTPS id A2733385843A for ; Wed, 24 May 2023 14:10:13 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A2733385843A 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: bizesmtp80t1684937406tq3hpcyi Received: from TABLET-POE6JQHH ( [115.44.118.116]) by bizesmtp.qq.com (ESMTP) with id ; Wed, 24 May 2023 22:10:05 +0800 (CST) X-QQ-SSF: 01400000000000F0R000000A0000000 X-QQ-FEAT: TJeOPFdxx0t2euAcllHeq+ZbX+rwTXISeGSBx0mcf3pvs0Z1Dbw5WPwE1f1sD g0hAMZ8jYr4IWxFO0xlC+3qtQUqObDnZB4JEilSoCRvg9Kt1rXJSsBZK96MZqsLmSs+voKS a7GmGCK7xhTPBbwa+ULZKzAT8cVcXLchCBhx7lfZhBQqVQn4njSqQ65x/daQx3TVFIBScqY 2jRjtt/G6av3mpfUjGUKLmOXtZHr4bSpepTfFKJbkBDQozG4hE06n3pUrEP+9+H9m0FCMkx YhnGWCT0g9UKluBV00ZhlPC2gHL9fIJPKaNExn/B08J74yJWiEMOWddZupL3LNegPfXkWYd oXRpHwkdW5y01LnJTIX3OHYmGaPrybcuU4zE6V/xv2O1r8Jj+RlSE2t3kBHMmXUfN6P+BDF BubQrXXmdfEs7jSYTCVVnBchK2co7ADC X-QQ-GoodBg: 2 X-BIZMAIL-ID: 4096990130763351939 Date: Wed, 24 May 2023 22:10:04 +0800 From: =?UTF-8?B?6ZKf5bGF5ZOy?= To: richard.sandiford Cc: gcc-patches , rguenther Subject: Re: Re: [PATCH V12] VECT: Add decrement IV iteration loop control by variable amount support References: <20230522083814.1647787-1-juzhe.zhong@rivai.ai>, , , , <19FAF964BA45AEBD+202305242126582416128@rivai.ai>, X-Priority: 3 X-GUID: 238B5E38-7AEC-4414-A677-9CD130F016EA X-Has-Attach: no X-Mailer: Foxmail 7.2.23.121[cn] Mime-Version: 1.0 Message-ID: <06E734ABE7B3641F+2023052422100415521814@rivai.ai> Content-Type: multipart/alternative; boundary="----=_001_NextPart144611642840_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-4.0 required=5.0 tests=BAYES_00,BODY_8BITS,HTML_MESSAGE,KAM_DMARC_STATUS,RCVD_IN_DNSWL_NONE,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_NextPart144611642840_=---- Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 Pj4gQm90aCBhcHByb2FjaGVzIGFyZSBmaW5lLiAgSSdtIG5vdCBhZ2FpbnN0 IG9uZSBvciB0aGUgb3RoZXIuDQoNCj4+IFdoYXQgSSBkaWRuJ3QgdW5kZXJz dGFuZCB3YXMgd2h5IHlvdXIgcGF0Y2ggb25seSByZXVzZXMgZXhpc3Rpbmcg SVZzDQo+PiBmb3IgbWF4X25zY2FsYXJzX3Blcl9pdGVyID09IDEuICBXYXMg aXQgdG8gYXZvaWQgaGF2aW5nIHRvIGRvIGENCj4+IG11bHRpcGxpY2F0aW9u ICh3ZWxsLCByZWFsbHkgYSBzaGlmdCBsZWZ0KSB3aGVuIG1vdmluZyBmcm9t IG9uZQ0KPj4gcmdyb3VwIHRvIGFub3RoZXI/ICBFLmcuIGlmIG9uZSByZ3Jv dXAgaGFkOw0KDQo+PiAgIG5zY2FsYXJzX3Blcl9pdGVyID09IDIgJiYgZmFj dG9yID09IDENCg0KPj4gYW5kIGFub3RoZXIgaGFkOg0KDQo+PiAgIG5zY2Fs YXJzX3Blcl9pdGVyID09IDQgJiYgZmFjdG9yID09IDENCg0KPj4gdGhlbiB3 ZSB3b3VsZCBuZWVkIHRvIG11bGl0cGx5IGJ5IDIgd2hlbiBnb2luZyBmcm9t IHRoZSBmaXJzdCByZ3JvdXANCj4+IHRvIHRoZSBzZWNvbmQuDQoNCj4+IElm IHNvLCBhdm9pZGluZyBhIG11bHRpcGxpY2F0aW9uIHNlZW1zIGxpa2UgYSBn b29kIHJlYXNvbiBmb3IgdGhlIGNob2ljZQ0KPj4geW91IHdlcmUgbWFraW5n IGluIHRoZSBwYXRoLiAgQnV0IHdlIHRoZW4gbmVlZCB0byBjaGVjaw0KPj4g bWF4X25zY2FsYXJzX3Blcl9pdGVyID09IDEgZm9yIGJvdGggdGhlIHNvdXJj ZSByZ3JvdXAgYW5kIHRoZQ0KPj4gZGVzdGluYXRpb24gcmdyb3VwLCBub3Qg anVzdCB0aGUgZGVzdGluYXRpb24uICBBbmQgSSB0aGluayB0aGUNCj4+IGNv bmRpdGlvbiBmb3Ig4oCcbm8gbXVsdGlwbGljYXRpb24gbmVlZGVk4oCdIHNo b3VsZCBiZSB0aGF0Og0KDQpPaCwgSSBkaWRuJ3QgcmVhbGl6ZSBzdWNoIGNv bXBsaWNhdGVkIHByb2JsZW0uIEZyYW5rbHksIEkgZGlkbid0IHVuZGVyc3Rh bmQgd2VsbA0Kcmdyb3VwLiBTb3JyeSBhYm91dCB0aGF0IDopLg0KDQpJIGp1 c3QgcmVtZW1iZXIgbGFzdCB0aW1lIHlvdSBzYWlkIEkgbmVlZCB0byBoYW5k bGUgbXVsdGlwbGUtcmdyb3VwDQpub3Qgb25seSBmb3IgU0xQIGJ1dCBhbHNv IG5vbi1TTFAgKHdoaWNoIGlzIHZlY19wYWNrX3RydW5rIHRoYXQgSSB0ZXN0 ZWQpLg0KVGhlbiBJIGFza2VkIHlvdSB3aGVuIGlzIG5vbi1TTFAsIHlvdSBz YWlkIG1heF9uc2NhbGFyc19wZXJfaXRlciA9PSAxLg0KVGhlbiBJIHVzZSBt YXhfbnNjYWxhcnNfcGVyX2l0ZXIgPT0gMSBoZXJlIChJIGRpZG4ndCByZWFs bHkgbGVhbiB2ZXJ5IHdlbGwgZnJvbSB0aGlzLCBqdXN0IGFkZCBpdCBhcyB5 b3Ugc2FpZCkuIA0KDQpBY3R1YWxseSwgSSBqdXN0IHdhbnQgdG8gaGFubGRl IG11bHRpcC1yZ3JvdXAgZm9yIG5vbi1TTFAgaGVyZSwgSSBhbSB0cnlpbmcg dG8gYXZvaWQgIG11bHRpcGxpY2F0aW9uIGFuZCBJIHRoaW5rDQpzY2FsYXIg bXVsdGlwbGljYXRpb24gKG5vdCBjb3N0IHRvbyBtdWNoKSBpcyBmaW5lIGlu IG1vZGVybiBDUFUuDQoNClNvLCB3aGF0IGRvIHlvdSBzdWdnZXN0IHRoYXQg SSBoYW5kbGUgbXVsdGlwbGUtcmdyb3VwIGZvciBub24tU0xQLg0KDQpUaGFu a3MuDQoNCg0KanV6aGUuemhvbmdAcml2YWkuYWkNCiANCkZyb206IFJpY2hh cmQgU2FuZGlmb3JkDQpEYXRlOiAyMDIzLTA1LTI0IDIyOjAxDQpUbzog6ZKf 5bGF5ZOyDQpDQzogZ2NjLXBhdGNoZXM7IHJndWVudGhlcg0KU3ViamVjdDog UmU6IFtQQVRDSCBWMTJdIFZFQ1Q6IEFkZCBkZWNyZW1lbnQgSVYgaXRlcmF0 aW9uIGxvb3AgY29udHJvbCBieSB2YXJpYWJsZSBhbW91bnQgc3VwcG9ydA0K 6ZKf5bGF5ZOyIDxqdXpoZS56aG9uZ0ByaXZhaS5haT4gd3JpdGVzOg0KPj4+ IEluIG90aGVyIHdvcmRzLCB3aHkgaXMgdGhpcyBkaWZmZXJlbnQgZnJvbSB3 aGF0DQo+Pj52ZWN0X3NldF9sb29wX2NvbnRyb2xzX2RpcmVjdGx5IHdvdWxk IGRvPw0KPiBPaCwgSSBzZWUuICBZb3UgYXJlIGNvbmZ1c2VkIHRoYXQgd2h5 IEkgZG8gbm90IG1ha2UgbXVsdGlwbGUtcmdyb3VwIHZlY190cnVuaw0KPiBo YW5kbGluZyBpbnNpZGUgInZlY3Rfc2V0X2xvb3BfY29udHJvbHNfZGlyZWN0 bHkiLg0KPg0KPiBXZWxsLiBGcmFua2x5LCBJIGp1c3QgcmVwbGljYXRlIHRo ZSBoYW5kbGluZyBvZiBBUk0gU1ZFOg0KPiB1bnNpZ25lZCBpbnQgbm1hc2tz ID0gaSArIDE7DQo+ICAgICAgICAgaWYgKHVzZV9tYXNrc19wICYmIChubWFz a3MgJiAxKSA9PSAwKQ0KPiAgICAgICAgICAgew0KPiAgICAgICAgICAgICBy Z3JvdXBfY29udHJvbHMgKmhhbGZfcmdjID0gJigqY29udHJvbHMpW25tYXNr cyAvIDIgLSAxXTsNCj4gICAgICAgICAgICAgaWYgKCFoYWxmX3JnYy0+Y29u dHJvbHMuaXNfZW1wdHkgKCkNCj4gICAgICAgICAgICAgICAgICYmIHZlY3Rf bWF5YmVfcGVybXV0ZV9sb29wX21hc2tzICgmaGVhZGVyX3NlcSwgcmdjLCBo YWxmX3JnYykpDQo+ICAgICAgICAgICAgICAgY29udGludWU7DQo+ICAgICAg ICAgICB9DQo+DQo+IC8qIFRyeSB0byB1c2UgcGVybXV0ZXMgdG8gZGVmaW5l IHRoZSBtYXNrcyBpbiBERVNUX1JHTSB1c2luZyB0aGUgbWFza3MNCj4gICAg aW4gU1JDX1JHTSwgZ2l2ZW4gdGhhdCB0aGUgZm9ybWVyIGhhcyB0d2ljZSBh cyBtYW55IG1hc2tzIGFzIHRoZQ0KPiAgICBsYXR0ZXIuICBSZXR1cm4gdHJ1 ZSBvbiBzdWNjZXNzLCBhZGRpbmcgYW55IG5ldyBzdGF0ZW1lbnRzIHRvIFNF US4gICovDQo+DQo+IHN0YXRpYyBib29sDQo+IHZlY3RfbWF5YmVfcGVybXV0 ZV9sb29wX21hc2tzIChnaW1wbGVfc2VxICpzZXEsIHJncm91cF9jb250cm9s cyAqZGVzdF9yZ20sDQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICByZ3JvdXBfY29udHJvbHMgKnNyY19yZ20pDQo+IHsNCj4gICB0cmVlIHNy Y19tYXNrdHlwZSA9IHNyY19yZ20tPnR5cGU7DQo+ICAgdHJlZSBkZXN0X21h c2t0eXBlID0gZGVzdF9yZ20tPnR5cGU7DQo+ICAgbWFjaGluZV9tb2RlIHNy Y19tb2RlID0gVFlQRV9NT0RFIChzcmNfbWFza3R5cGUpOw0KPiAgIGluc25f Y29kZSBpY29kZTEsIGljb2RlMjsNCj4gICBpZiAoZGVzdF9yZ20tPm1heF9u c2NhbGFyc19wZXJfaXRlciA8PSBzcmNfcmdtLT5tYXhfbnNjYWxhcnNfcGVy X2l0ZXINCj4gICAgICAgJiYgKGljb2RlMSA9IG9wdGFiX2hhbmRsZXIgKHZl Y191bnBhY2t1X2hpX29wdGFiLA0KPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc3JjX21vZGUpKSAhPSBDT0RFX0ZPUl9ub3RoaW5nDQo+ ICAgICAgICYmIChpY29kZTIgPSBvcHRhYl9oYW5kbGVyICh2ZWNfdW5wYWNr dV9sb19vcHRhYiwNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHNyY19tb2RlKSkgIT0gQ09ERV9GT1Jfbm90aGluZykNCj4gICAgIHsN Cj4gICAgICAgLyogVW5wYWNraW5nIHRoZSBzb3VyY2UgbWFza3MgZ2l2ZXMg YXQgbGVhc3QgYXMgbWFueSBtYXNrIGJpdHMgYXMNCj4gICAgICAgICAgd2Ug bmVlZC4gIFdlIGNhbiB0aGVuIFZJRVdfQ09OVkVSVCBhbnkgZXhjZXNzIGJp dHMgYXdheS4gICovDQo+ICAgICAgIG1hY2hpbmVfbW9kZSBkZXN0X21vZGUg PSBpbnNuX2RhdGFbaWNvZGUxXS5vcGVyYW5kWzBdLm1vZGU7DQo+ICAgICAg IGdjY19hc3NlcnQgKGRlc3RfbW9kZSA9PSBpbnNuX2RhdGFbaWNvZGUyXS5v cGVyYW5kWzBdLm1vZGUpOw0KPiAgICAgICB0cmVlIHVucGFja19tYXNrdHlw ZSA9IHZlY3RfaGFsdmVfbWFza19udW5pdHMgKHNyY19tYXNrdHlwZSwgZGVz dF9tb2RlKTsNCj4gICAgICAgZm9yICh1bnNpZ25lZCBpbnQgaSA9IDA7IGkg PCBkZXN0X3JnbS0+Y29udHJvbHMubGVuZ3RoICgpOyArK2kpDQo+ICAgICAg ICAgew0KPiAgICAgICAgICAgdHJlZSBzcmMgPSBzcmNfcmdtLT5jb250cm9s c1tpIC8gMl07DQo+ICAgICAgICAgICB0cmVlIGRlc3QgPSBkZXN0X3JnbS0+ Y29udHJvbHNbaV07DQo+ICAgICAgICAgICB0cmVlX2NvZGUgY29kZSA9ICgo aSAmIDEpID09IChCWVRFU19CSUdfRU5ESUFOID8gMCA6IDEpDQo+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA/IFZFQ19VTlBBQ0tfSElfRVhQUg0K PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBWRUNfVU5QQUNLX0xP X0VYUFIpOw0KPiAgICAgICAgICAgZ2Fzc2lnbiAqc3RtdDsNCj4gICAgICAg ICAgIGlmIChkZXN0X21hc2t0eXBlID09IHVucGFja19tYXNrdHlwZSkNCj4g ICAgICAgICAgICAgc3RtdCA9IGdpbXBsZV9idWlsZF9hc3NpZ24gKGRlc3Qs IGNvZGUsIHNyYyk7DQo+ICAgICAgICAgICBlbHNlDQo+ICAgICAgICAgICAg IHsNCj4gICAgICAgICAgICAgICB0cmVlIHRlbXAgPSBtYWtlX3NzYV9uYW1l ICh1bnBhY2tfbWFza3R5cGUpOw0KPiAgICAgICAgICAgICAgIHN0bXQgPSBn aW1wbGVfYnVpbGRfYXNzaWduICh0ZW1wLCBjb2RlLCBzcmMpOw0KPiAgICAg ICAgICAgICAgIGdpbXBsZV9zZXFfYWRkX3N0bXQgKHNlcSwgc3RtdCk7DQo+ ICAgICAgICAgICAgICAgc3RtdCA9IGdpbXBsZV9idWlsZF9hc3NpZ24gKGRl c3QsIFZJRVdfQ09OVkVSVF9FWFBSLA0KPiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBidWlsZDEgKFZJRVdfQ09OVkVSVF9F WFBSLA0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGRlc3RfbWFza3R5cGUsIHRlbXApKTsNCj4gICAgICAg ICAgICAgfQ0KPiAgICAgICAgICAgZ2ltcGxlX3NlcV9hZGRfc3RtdCAoc2Vx LCBzdG10KTsNCj4gICAgICAgICB9DQo+ICAgICAgIHJldHVybiB0cnVlOw0K PiAgICAgfQ0KPiAgIHZlY19wZXJtX2luZGljZXMgaW5kaWNlc1syXTsNCj4g ICBpZiAoZGVzdF9tYXNrdHlwZSA9PSBzcmNfbWFza3R5cGUNCj4gICAgICAg JiYgaW50ZXJsZWF2ZV9zdXBwb3J0ZWRfcCAoJmluZGljZXNbMF0sIHNyY19t YXNrdHlwZSwgMCkNCj4gICAgICAgJiYgaW50ZXJsZWF2ZV9zdXBwb3J0ZWRf cCAoJmluZGljZXNbMV0sIHNyY19tYXNrdHlwZSwgMSkpDQo+ICAgICB7DQo+ ICAgICAgIC8qIFRoZSBkZXN0aW5hdGlvbiByZXF1aXJlcyB0d2ljZSBhcyBt YW55IG1hc2sgYml0cyBhcyB0aGUgc291cmNlLCBzbw0KPiAgICAgICAgICB3 ZSBjYW4gdXNlIGludGVybGVhdmluZyBwZXJtdXRlcyB0byBkb3VibGUgdXAg dGhlIG51bWJlciBvZiBiaXRzLiAgKi8NCj4gICAgICAgdHJlZSBtYXNrc1sy XTsNCj4gICAgICAgZm9yICh1bnNpZ25lZCBpbnQgaSA9IDA7IGkgPCAyOyAr K2kpDQo+ICAgICAgICAgbWFza3NbaV0gPSB2ZWN0X2dlbl9wZXJtX21hc2tf Y2hlY2tlZCAoc3JjX21hc2t0eXBlLCBpbmRpY2VzW2ldKTsNCj4gICAgICAg Zm9yICh1bnNpZ25lZCBpbnQgaSA9IDA7IGkgPCBkZXN0X3JnbS0+Y29udHJv bHMubGVuZ3RoICgpOyArK2kpDQo+ICAgICAgICAgew0KPiAgICAgICAgICAg dHJlZSBzcmMgPSBzcmNfcmdtLT5jb250cm9sc1tpIC8gMl07DQo+ICAgICAg ICAgICB0cmVlIGRlc3QgPSBkZXN0X3JnbS0+Y29udHJvbHNbaV07DQo+ICAg ICAgICAgICBnaW1wbGUgKnN0bXQgPSBnaW1wbGVfYnVpbGRfYXNzaWduIChk ZXN0LCBWRUNfUEVSTV9FWFBSLA0KPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc3JjLCBzcmMsIG1hc2tzW2kgJiAx XSk7DQo+ICAgICAgICAgICBnaW1wbGVfc2VxX2FkZF9zdG10IChzZXEsIHN0 bXQpOw0KPiAgICAgICAgIH0NCj4gICAgICAgcmV0dXJuIHRydWU7DQo+ICAg ICB9DQo+ICAgcmV0dXJuIGZhbHNlOw0KPiB9DQo+DQo+IEkga25vdyB0aGlz IGlzIGp1c3Qgb3B0aW1pemF0aW9uIGZvciBBUk0gU1ZFIHdpdGggc3ViX3Jn YyAoaW50MTYpICBpcyBoYWxmIHNpemUgb2YgcmdjIChpbnQ4KS4NCj4gQnV0 IHdoZW4gSSBqdXN0IGNvcHkgdGhlIGNvZGVzIGZyb20gQVJNIFNWRSBhbmQg bWFrZSBpdCBnZW5lcmFsIGZvciBhbGwgY2FzZXMgKGludDggPC0+IGludDY0 KS4NCj4gVGhleSBhbGwgd29yayB3ZWxsIGFuZCBjb2RlZ2VuIGlzIGdvb2Qu IA0KPg0KPiBJZiB5b3UgZG9uJ3QgbGlrZSB0aGlzIHdheSwgd291bGQgeW91 IG1pbmQgZ2l2ZSBtZSBzb21lIHN1Z2dlc3Rpb25zPw0KIA0KSXQncyBub3Qg YSBjYXNlIG9mIGRpc2xpa2luZyBvbmUgYXBwcm9hY2ggb3IgZGlzbGlraW5n IGFub3RoZXIuDQpUaGVyZSBhcmUgdHdvIHNlcGFyYXRlIHBhcnRzIG9mIHRo aXM6IG9uZSBzcGVjaWZpYyBhbmQgb25lIGdlbmVyYWwuDQogDQpUaGUgc3Bl Y2lmaWMgcGFydCBpcyB0aGF0IHRoZSBjb2RlIGhhZDoNCiANCiAgICByZ3Jv dXBfY29udHJvbHMgKnN1Yl9yZ2MNCiAgICAgID0gJigqY29udHJvbHMpW25t YXNrcyAvIHJnYy0+Y29udHJvbHMubGVuZ3RoICgpIC0gMV07DQogICAgaWYg KCFzdWJfcmdjLT5jb250cm9scy5pc19lbXB0eSAoKSkNCiAgICAgIHsNCnRy ZWUgaXZfdHlwZSA9IExPT1BfVklORk9fUkdST1VQX0lWX1RZUEUgKGxvb3Bf dmluZm8pOw0KdmVjdF9hZGp1c3RfbG9vcF9sZW5zX2NvbnRyb2wgKGl2X3R5 cGUsICZoZWFkZXJfc2VxLCByZ2MsDQogICAgICAgc3ViX3JnYywgTlVMTF9U UkVFKTsNCmNvbnRpbnVlOw0KICAgICAgfQ0KIA0KQnV0IEFJVUksIG5tYXNr cyBpcyBhbHdheXMgZXF1YWwgdG8gcmdjLT5jb250cm9scy5sZW5ndGggKCkN CihpZiByZ2MtPmNvbnRyb2xzIGlzIG5vbi1lbXB0eSkuICBTbyBJIHRoaW5r IHRoaXMgYWx3YXlzIHVzZWQNCigqY29udHJvbHMpWzBdIGFzIHRoZSBzb3Vy Y2Ugcmdyb3VwLiAgQW5kIEkgdGhpbmsgdGhhdCdzIHRoZQ0Kb25seSBjYXNl IHRoYXQgd291bGQgd29yaywgc2luY2UgdmVjdF9hZGp1c3RfbG9vcF9sZW5z X2NvbnRyb2wNCm9ubHkgcmVhZHMgZnJvbSBzdWJfcmdjIG9uY2UuICBJcyB0 aGF0IHJpZ2h0Pw0KIA0KSXQgd291bGQgYmUgcG9zc2libGUgdG8gbWFrZSBv dGhlciBzb3VyY2Ugcmdyb3VwcyB3b3JrLCBidXQgaXQNCndvdWxkIGludm9s dmUgcmVhZGluZyBldmVyeSBlbGVtZW50IG9mIHN1Yl9yZ2MtPmNvbnRyb2xz LCBub3QganVzdA0Kc3ViX3JnYy0+Y29udHJvbHNbMF0uICAoVGhpcyBpcyBh bHNvIHdoYXQgdGhlIFNWRSBjb2RlIGRvZXMuKQ0KIA0KVGhlIGdlbmVyYWwg cG9pbnQgaXMgdGhhdCB0aGVyZSBhcmUgdHdvIGV4dHJlbWUgYXBwcm9hY2hl czoNCiANCigxKSBVc2Ugb25lIElWLCBhbmQgYmFzZSBldmVyeXRoaW5nIG9m ZiB0aGF0Lg0KIA0KKDIpIFVzZSBhIHNlcGFyYXRlIElWIGZvciBldmVyeSBy Z3JvdXAuDQogDQpJdCdzIGFsc28gcG9zc2libGUgdG8gZG8gc29tZXRoaW5n IGJldHdlZW4gdGhlc2UgdHdvIGV4dHJlbWVzLg0KKEFuZCB3ZSBzaG91bGQs IGlmIGl0IGdpdmVzIGJldHRlciBjb2RlLikNCiANClRoZSBjb2RlIGFib3Zl IHJldXNlcyBhbiBleGlzdGluZyBJVi4gIERvaW5nIHRoYXQgZm9yIGFsbCBt dWx0aS1jb250cm9sDQpyZ3JvdXBzIHdvdWxkIGdpdmUgKDEpLiAgQXQgdGhl IG90aGVyIGV4dHJlbWUsICgyKSB3b3VsZCBpbnZvbHZlIGNhbGxpbmcNCnZl Y3Rfc2V0X2xvb3BfY29udHJvbHNfZGlyZWN0bHkgZm9yIGV2ZXJ5IHJncm91 cC4NCiANCkJvdGggYXBwcm9hY2hlcyBhcmUgZmluZS4gIEknbSBub3QgYWdh aW5zdCBvbmUgb3IgdGhlIG90aGVyLg0KIA0KV2hhdCBJIGRpZG4ndCB1bmRl cnN0YW5kIHdhcyB3aHkgeW91ciBwYXRjaCBvbmx5IHJldXNlcyBleGlzdGlu ZyBJVnMNCmZvciBtYXhfbnNjYWxhcnNfcGVyX2l0ZXIgPT0gMS4gIFdhcyBp dCB0byBhdm9pZCBoYXZpbmcgdG8gZG8gYQ0KbXVsdGlwbGljYXRpb24gKHdl bGwsIHJlYWxseSBhIHNoaWZ0IGxlZnQpIHdoZW4gbW92aW5nIGZyb20gb25l DQpyZ3JvdXAgdG8gYW5vdGhlcj8gIEUuZy4gaWYgb25lIHJncm91cCBoYWQ7 DQogDQogIG5zY2FsYXJzX3Blcl9pdGVyID09IDIgJiYgZmFjdG9yID09IDEN CiANCmFuZCBhbm90aGVyIGhhZDoNCiANCiAgbnNjYWxhcnNfcGVyX2l0ZXIg PT0gNCAmJiBmYWN0b3IgPT0gMQ0KIA0KdGhlbiB3ZSB3b3VsZCBuZWVkIHRv IG11bGl0cGx5IGJ5IDIgd2hlbiBnb2luZyBmcm9tIHRoZSBmaXJzdCByZ3Jv dXANCnRvIHRoZSBzZWNvbmQuDQogDQpJZiBzbywgYXZvaWRpbmcgYSBtdWx0 aXBsaWNhdGlvbiBzZWVtcyBsaWtlIGEgZ29vZCByZWFzb24gZm9yIHRoZSBj aG9pY2UNCnlvdSB3ZXJlIG1ha2luZyBpbiB0aGUgcGF0aC4gIEJ1dCB3ZSB0 aGVuIG5lZWQgdG8gY2hlY2sNCm1heF9uc2NhbGFyc19wZXJfaXRlciA9PSAx IGZvciBib3RoIHRoZSBzb3VyY2Ugcmdyb3VwIGFuZCB0aGUNCmRlc3RpbmF0 aW9uIHJncm91cCwgbm90IGp1c3QgdGhlIGRlc3RpbmF0aW9uLiAgQW5kIEkg dGhpbmsgdGhlDQpjb25kaXRpb24gZm9yIOKAnG5vIG11bHRpcGxpY2F0aW9u IG5lZWRlZOKAnSBzaG91bGQgYmUgdGhhdDoNCiANCiAgbWF4X25zY2FsYXJz X3Blcl9pdGVyICogZmFjdG9yDQogDQooYWthICJuaXRlbXNfcGVyX2l0ZXIi KSBpcyB0aGUgc2FtZSBmb3IgYm90aCBncm91cHMuDQogDQpUaGFua3MsDQpS aWNoYXJkDQogDQo= ------=_001_NextPart144611642840_=------