From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbgau1.qq.com (smtpbgau1.qq.com [54.206.16.166]) by sourceware.org (Postfix) with ESMTPS id 149003858C98 for ; Tue, 27 Feb 2024 01:22:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 149003858C98 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 149003858C98 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=54.206.16.166 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1708996978; cv=none; b=S9zf+NEhAwQKVUYa/cmhsEFjrACq8m7aMkAThw3gAEqVj8DZ6Q4punXlxriAc2+krgN1uhq/sip0mdUWMLxF5odgtP6kCAKMSHYnG+YihuZ5VDeVCsbbZr1gZYAxnvwDcRDjo/z1/OYdaAIFwnn90iEkQ4T9XzJ6IcGbZNx5LGY= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1708996978; c=relaxed/simple; bh=YHbkQZQzVSDoM+a64fGsVuRYo1vlMNKvC42vKTMNibU=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=iNaMdMbmznWm11pwKKv4rdDJIHJa8ra+I19VNaA0snHacUt9dCtVLasz4Nq2KLO3zzKTWODJ24OAzxDg2PB31Pstn1bXlt1IsZUbCXyNxJlZ4CA0xDEetzRfB14li1HpsFNJjSLW1DcozWHjOruF7hHYLnZKBF0v8iztLh1mR+s= ARC-Authentication-Results: i=1; server2.sourceware.org X-QQ-mid: bizesmtp78t1708996953t5remmx9 X-QQ-Originating-IP: ys3BOvAW+0JFsoCuz63y8uL1pH5p7JOdgt3y3948H6I= Received: from LAPTOP-EPITNQBU ( [113.104.210.141]) by bizesmtp.qq.com (ESMTP) with id ; Tue, 27 Feb 2024 09:22:32 +0800 (CST) X-QQ-SSF: 01400000000000G0V000000A0000000 X-QQ-FEAT: jZjPcLZVW7RWrV6iqj5J0EW9sYHipntO3ORJoz9eA29JRrsj2J4aTLbiDTFy7 R7ZhiWVLNwCkpVKNAgMrSTEeOVNMhplHzUW/9W0T0gn8J+vuky0kGJ6k2frCBEE/nQD5W3y 1oXd+za8XUDoHsxnclubejBgYj995yZmXJtgHqEuCfZG5Va08LWlQq6nq6smoiqNqMGWuI/ 6Zv1RSt/Et17jYmkZ3aWArEIAET4Qoyv18f+uiPIxHHBoHl6/d8Rm5rHC3fWvZTIEXsPFc6 L5cQ1EWYMgP+ig8PJd/HEfdSl5OR30h0hiVDplHB8g5KIucb6SkIX+gtnEUry6/REV1N3h4 s5GGjAsWJpvOlOSfozw9G8OAWIMKkm7UMN+kXSqml5+f/WQ7QvKVMV7isRlCl5Yl79VtDfg s9Bs7fvfNoM= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 12945022321043343037 Date: Tue, 27 Feb 2024 09:22:32 +0800 From: "juzhe.zhong@rivai.ai" To: "Li Xu" , gcc-patches Cc: kito.cheng , palmer , zhengyu , "Li Xu" Subject: Re: [PATCH] RISC-V: Add riscv_vector_cc function attribute References: <20240227011714.25482-1-xuli1@eswincomputing.com> X-Priority: 3 X-GUID: 19A62AE2-A205-42B9-A6A3-0B192E3ED490 X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: Content-Type: multipart/alternative; boundary="----=_001_NextPart330088603808_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-10.1 required=5.0 tests=BAYES_00,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,KAM_SHORT,MIME_BASE64_TEXT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,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_NextPart330088603808_=---- Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: base64 VGhhbmtzIGZvciBzdXBwb3J0aW5nIHRoaXMuDQpJJ2QgcmF0aGVyIGxlYXZl IHRoaXMgcGF0Y2ggcmV2aWV3IHRvIGtpdG8ncyBzaW5jZSBpdCdzIGtpdG8n cyBwcm9wb3NhbC4NCg0KDQoNCmp1emhlLnpob25nQHJpdmFpLmFpDQogDQpG cm9tOiBMaSBYdQ0KRGF0ZTogMjAyNC0wMi0yNyAwOToxNw0KVG86IGdjYy1w YXRjaGVzDQpDQzoga2l0by5jaGVuZzsgcGFsbWVyOyBqdXpoZS56aG9uZzsg emhlbmd5dTsgeHVsaQ0KU3ViamVjdDogW1BBVENIXSBSSVNDLVY6IEFkZCBy aXNjdl92ZWN0b3JfY2MgZnVuY3Rpb24gYXR0cmlidXRlDQpGcm9tOiB4dWxp IDx4dWxpMUBlc3dpbmNvbXB1dGluZy5jb20+DQogDQpTdGFuZGFyZCB2ZWN0 b3IgY2FsbGluZyBjb252ZW50aW9uIHZhcmlhbnQgd2lsbCBvbmx5IGVuYWJs ZWQgd2hlbiBmdW5jdGlvbg0KaGFzIHZlY3RvciBhcmd1bWVudCBvciByZXR1 cm5pbmcgdmFsdWUgYnkgZGVmYXVsdCwgaG93ZXZlciB1c2VyIG1heSBhbHNv DQp3YW50IHRvIGludm9rZSBmdW5jdGlvbiB3aXRob3V0IHRoYXQgZHVyaW5n IGEgdmVjdG9yaXplZCBsb29wIGF0IHNvbWUgc2l0dWF0aW9uLA0KYnV0IGl0 IHdpbGwgY2F1c2UgYSBodWdlIHBlcmZvcm1hbmNlIHBlbmFsdHkgZHVlIHRv IHZlY3RvciByZWdpc3RlciBzdG9yZS9yZXN0b3JlLg0KIA0KU28gdXNlciBj YW4gZGVjbGFyZSBmdW5jdGlvbiB3aXRoIHRoaXMgcmlzY3ZfdmVjdG9yX2Nj IGF0dHJpYnV0ZSBsaWtlIGJlbG93LCB0aGF0IGNvdWxkIGVuZm9yY2UNCmZ1 bmN0aW9uIHdpbGwgdXNlIHN0YW5kYXJkIHZlY3RvciBjYWxsaW5nIGNvbnZl bnRpb24gdmFyaWFudC4NCiANCnZvaWQgZm9vKCkgX19hdHRyaWJ1dGVfXygo cmlzY3ZfdmVjdG9yX2NjKSk7DQpbW3Jpc2N2Ojp2ZWN0b3JfY2NdXSB2b2lk IGZvbygpOyAvLyBGb3IgQysrMTEgYW5kIEMyMw0KIA0KRm9yIG1vcmUgZGV0 YWlscyBwbGVhc2UgcmVmZXJlbmNlIHRoZSBiZWxvdyBsaW5rLg0KaHR0cHM6 Ly9naXRodWIuY29tL3Jpc2N2LW5vbi1pc2EvcmlzY3YtYy1hcGktZG9jL3B1 bGwvNjcNCiANCmdjYy9DaGFuZ2VMb2c6DQogDQoqIGNvbmZpZy9yaXNjdi9y aXNjdi5jYyAoVEFSR0VUX0dOVV9BVFRSSUJVVEVTKTogQWRkIHJpc2N2X3Zl Y3Rvcl9jYw0KYXR0cmlidXRlIHRvIHJpc2N2X2F0dHJpYnV0ZV90YWJsZS4N CihyaXNjdl92ZWN0b3JfY2NfZnVuY3Rpb25fcCk6IFJldHVybiB0cnVlIGlm IEZVTkMgaXMgYSByaXNjdl92ZWN0b3JfY2MgZnVuY3Rpb24uDQoocmlzY3Zf Zm50eXBlX2FiaSk6IEFkZCByaXNjdl92ZWN0b3JfY2MgYXR0cmlidXRlIGNo ZWNrLg0KKiBkb2MvZXh0ZW5kLnRleGk6IEFkZCByaXNjdl92ZWN0b3JfY2Mg YXR0cmlidXRlIGRlc2NyaXB0aW9uLg0KIA0KZ2NjL3Rlc3RzdWl0ZS9DaGFu Z2VMb2c6DQogDQoqIGcrKy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvYXR0cmli dXRlLXJpc2N2X3ZlY3Rvcl9jYy1lcnJvci5DOiBOZXcgdGVzdC4NCiogZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYmFzZS9hdHRyaWJ1dGUtcmlzY3ZfdmVjdG9y X2NjLWNhbGxlZS1zYXZlZC5jOiBOZXcgdGVzdC4NCiogZ2NjLnRhcmdldC9y aXNjdi9ydnYvYmFzZS9hdHRyaWJ1dGUtcmlzY3ZfdmVjdG9yX2NjLWVycm9y LmM6IE5ldyB0ZXN0Lg0KLS0tDQpnY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNj ICAgICAgICAgICAgICAgICAgICAgfCAgNTUgKysrKysrLS0NCmdjYy9kb2Mv ZXh0ZW5kLnRleGkgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxMiAr Kw0KLi4uL2Jhc2UvYXR0cmlidXRlLXJpc2N2X3ZlY3Rvcl9jYy1lcnJvci5D ICAgIHwgIDIyICsrKysNCi4uLi9hdHRyaWJ1dGUtcmlzY3ZfdmVjdG9yX2Nj LWNhbGxlZS1zYXZlZC5jICB8IDExNyArKysrKysrKysrKysrKysrKysNCi4u Li9iYXNlL2F0dHJpYnV0ZS1yaXNjdl92ZWN0b3JfY2MtZXJyb3IuYyAgICB8 ICAxMSArKw0KNSBmaWxlcyBjaGFuZ2VkLCAyMDkgaW5zZXJ0aW9ucygrKSwg OCBkZWxldGlvbnMoLSkNCmNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1 aXRlL2crKy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvYXR0cmlidXRlLXJpc2N2 X3ZlY3Rvcl9jYy1lcnJvci5DDQpjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL2F0dHJpYnV0ZS1y aXNjdl92ZWN0b3JfY2MtY2FsbGVlLXNhdmVkLmMNCmNyZWF0ZSBtb2RlIDEw MDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2Uv YXR0cmlidXRlLXJpc2N2X3ZlY3Rvcl9jYy1lcnJvci5jDQogDQpkaWZmIC0t Z2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYyBiL2djYy9jb25maWcv cmlzY3YvcmlzY3YuY2MNCmluZGV4IDQxMDBhYmM5ZGQxLi43ZjM3ZjIzMTc5 NiAxMDA2NDQNCi0tLSBhL2djYy9jb25maWcvcmlzY3YvcmlzY3YuY2MNCisr KyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YuY2MNCkBAIC01MzcsMjQgKzUz Nyw1MiBAQCBzdGF0aWMgdHJlZSByaXNjdl9oYW5kbGVfZm5kZWNsX2F0dHJp YnV0ZSAodHJlZSAqLCB0cmVlLCB0cmVlLCBpbnQsIGJvb2wgKik7DQpzdGF0 aWMgdHJlZSByaXNjdl9oYW5kbGVfdHlwZV9hdHRyaWJ1dGUgKHRyZWUgKiwg dHJlZSwgdHJlZSwgaW50LCBib29sICopOw0KLyogRGVmaW5pbmcgdGFyZ2V0 LXNwZWNpZmljIHVzZXMgb2YgX19hdHRyaWJ1dGVfXy4gICovDQotVEFSR0VU X0dOVV9BVFRSSUJVVEVTIChyaXNjdl9hdHRyaWJ1dGVfdGFibGUsDQorc3Rh dGljIGNvbnN0IGF0dHJpYnV0ZV9zcGVjIHJpc2N2X2dudV9hdHRyaWJ1dGVz W10gPQ0Kew0KICAgLyogU3ludGF4OiB7IG5hbWUsIG1pbl9sZW4sIG1heF9s ZW4sIGRlY2xfcmVxdWlyZWQsIHR5cGVfcmVxdWlyZWQsDQogICAgICAgZnVu Y3Rpb25fdHlwZV9yZXF1aXJlZCwgYWZmZWN0c190eXBlX2lkZW50aXR5LCBo YW5kbGVyLA0KICAgICAgIGV4Y2x1ZGUgfSAqLw0KICAgLyogVGhlIGF0dHJp YnV0ZSB0ZWxsaW5nIG5vIHByb2xvZ3VlL2VwaWxvZ3VlLiAgKi8NCi0gIHsg Im5ha2VkIiwgMCwgIDAsIHRydWUsIGZhbHNlLCBmYWxzZSwgZmFsc2UsDQot ICAgIHJpc2N2X2hhbmRsZV9mbmRlY2xfYXR0cmlidXRlLCBOVUxMIH0sDQor ICB7Im5ha2VkIiwgMCwgMCwgdHJ1ZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwg cmlzY3ZfaGFuZGxlX2ZuZGVjbF9hdHRyaWJ1dGUsDQorICAgTlVMTH0sDQog ICAvKiBUaGlzIGF0dHJpYnV0ZSBnZW5lcmF0ZXMgcHJvbG9ndWUvZXBpbG9n dWUgZm9yIGludGVycnVwdCBoYW5kbGVycy4gICovDQotICB7ICJpbnRlcnJ1 cHQiLCAwLCAxLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsDQotICAgIHJp c2N2X2hhbmRsZV90eXBlX2F0dHJpYnV0ZSwgTlVMTCB9LA0KKyAgeyJpbnRl cnJ1cHQiLCAwLCAxLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIHJpc2N2 X2hhbmRsZV90eXBlX2F0dHJpYnV0ZSwNCisgICBOVUxMfSwNCiAgIC8qIFRo ZSBmb2xsb3dpbmcgdHdvIGFyZSB1c2VkIGZvciB0aGUgYnVpbHQtaW4gcHJv cGVydGllcyBvZiB0aGUgVmVjdG9yIHR5cGUNCiAgICAgIGFuZCBhcmUgbm90 IHVzZWQgZXh0ZXJuYWxseSAqLw0KICAgeyJSVlYgc2l6ZWxlc3MgdHlwZSIs IDQsIDQsIGZhbHNlLCB0cnVlLCBmYWxzZSwgdHJ1ZSwgTlVMTCwgTlVMTH0s DQotICB7IlJWViB0eXBlIiwgMCwgMCwgZmFsc2UsIHRydWUsIGZhbHNlLCB0 cnVlLCBOVUxMLCBOVUxMfQ0KLX0pOw0KKyAgeyJSVlYgdHlwZSIsIDAsIDAs IGZhbHNlLCB0cnVlLCBmYWxzZSwgdHJ1ZSwgTlVMTCwgTlVMTH0sDQorICAv KiBUaGlzIGF0dHJpYnV0ZSBpcyB1c2VkIHRvIGRlY2xhcmUgYSBmdW5jdGlv biwgZm9yY2luZyBpdCB0byB1c2UgdGhlDQorICAgIHN0YW5kYXJkIHZlY3Rv ciBjYWxsaW5nIGNvbnZlbnRpb24gdmFyaWFudC4gU3ludGF4Og0KKyAgICBf X2F0dHJpYnV0ZV9fKChyaXNjdl92ZWN0b3JfY2MpKS4gKi8NCisgIHsicmlz Y3ZfdmVjdG9yX2NjIiwgMCwgMCwgZmFsc2UsIHRydWUsIHRydWUsIHRydWUs IE5VTEwsIE5VTEx9DQorfTsNCisNCitzdGF0aWMgY29uc3Qgc2NvcGVkX2F0 dHJpYnV0ZV9zcGVjcyByaXNjdl9nbnVfYXR0cmlidXRlX3RhYmxlICA9DQor ew0KKyAgImdudSIsIHtyaXNjdl9nbnVfYXR0cmlidXRlc30NCit9Ow0KKw0K K3N0YXRpYyBjb25zdCBhdHRyaWJ1dGVfc3BlYyByaXNjdl9hdHRyaWJ1dGVz W10gPQ0KK3sNCisgIC8qIFRoaXMgYXR0cmlidXRlIGlzIHVzZWQgdG8gZGVj bGFyZSBhIGZ1bmN0aW9uLCBmb3JjaW5nIGl0IHRvIHVzZSB0aGUNCisgICAg IHN0YW5kYXJkIHZlY3RvciBjYWxsaW5nIGNvbnZlbnRpb24gdmFyaWFudC4g U3ludGF4Og0KKyAgICAgW1tyaXNjdjo6dmVjdG9yX2NjXV0uICovDQorICB7 InZlY3Rvcl9jYyIsIDAsIDAsIGZhbHNlLCB0cnVlLCB0cnVlLCB0cnVlLCBO VUxMLCBOVUxMfQ0KK307DQorDQorc3RhdGljIGNvbnN0IHNjb3BlZF9hdHRy aWJ1dGVfc3BlY3MgcmlzY3Zfbm9uZ251X2F0dHJpYnV0ZV90YWJsZSA9DQor ew0KKyAgInJpc2N2Iiwge3Jpc2N2X2F0dHJpYnV0ZXN9DQorfTsNCisNCitz dGF0aWMgY29uc3Qgc2NvcGVkX2F0dHJpYnV0ZV9zcGVjcyAqY29uc3Qgcmlz Y3ZfYXR0cmlidXRlX3RhYmxlW10gPQ0KK3sNCisgICZyaXNjdl9nbnVfYXR0 cmlidXRlX3RhYmxlLA0KKyAgJnJpc2N2X25vbmdudV9hdHRyaWJ1dGVfdGFi bGUNCit9Ow0KLyogT3JkZXIgZm9yIHRoZSBDTE9CQkVScy9VU0VzIG9mIGdw cl9zYXZlLiAgKi8NCnN0YXRpYyBjb25zdCB1bnNpZ25lZCBncHJfc2F2ZV9y ZWdfb3JkZXJbXSA9IHsNCkBAIC01NDI1LDYgKzU0NTMsMTYgQEAgcmlzY3Zf YXJndW1lbnRzX2lzX3ZlY3Rvcl90eXBlX3AgKGNvbnN0X3RyZWUgZm50eXBl KQ0KICAgcmV0dXJuIGZhbHNlOw0KfQ0KKy8qIFJldHVybiB0cnVlIGlmIEZV TkMgaXMgYSByaXNjdl92ZWN0b3JfY2MgZnVuY3Rpb24uDQorICAgRm9yIG1v cmUgZGV0YWlscyBwbGVhc2UgcmVmZXJlbmNlIHRoZSBiZWxvdyBsaW5rLg0K KyAgIGh0dHBzOi8vZ2l0aHViLmNvbS9yaXNjdi1ub24taXNhL3Jpc2N2LWMt YXBpLWRvYy9wdWxsLzY3ICovDQorc3RhdGljIGJvb2wNCityaXNjdl92ZWN0 b3JfY2NfZnVuY3Rpb25fcCAoY29uc3RfdHJlZSBmbnR5cGUpDQorew0KKyAg cmV0dXJuIGxvb2t1cF9hdHRyaWJ1dGUgKCJ2ZWN0b3JfY2MiLCBUWVBFX0FU VFJJQlVURVMgKGZudHlwZSkpICE9IE5VTExfVFJFRQ0KKyB8fCBsb29rdXBf YXR0cmlidXRlICgicmlzY3ZfdmVjdG9yX2NjIiwgVFlQRV9BVFRSSUJVVEVT IChmbnR5cGUpKSAhPSBOVUxMX1RSRUU7DQorfQ0KKw0KLyogSW1wbGVtZW50 IFRBUkdFVF9GTlRZUEVfQUJJLiAgKi8NCnN0YXRpYyBjb25zdCBwcmVkZWZp bmVkX2Z1bmN0aW9uX2FiaSAmDQpAQCAtNTQzNCw3ICs1NDcyLDggQEAgcmlz Y3ZfZm50eXBlX2FiaSAoY29uc3RfdHJlZSBmbnR5cGUpDQogICAgICByZWZl cmVuY2UgdGhlIGJlbG93IGxpbmsuDQogICAgICBodHRwczovL2dpdGh1Yi5j b20vcmlzY3Ytbm9uLWlzYS9yaXNjdi1lbGYtcHNhYmktZG9jL3B1bGwvMzg5 ICAqLw0KICAgaWYgKHJpc2N2X3JldHVybl92YWx1ZV9pc192ZWN0b3JfdHlw ZV9wIChmbnR5cGUpDQotICAgfHwgcmlzY3ZfYXJndW1lbnRzX2lzX3ZlY3Rv cl90eXBlX3AgKGZudHlwZSkpDQorICAgfHwgcmlzY3ZfYXJndW1lbnRzX2lz X3ZlY3Rvcl90eXBlX3AgKGZudHlwZSkNCisgICB8fCByaXNjdl92ZWN0b3Jf Y2NfZnVuY3Rpb25fcCAoZm50eXBlKSkNCiAgICAgcmV0dXJuIHJpc2N2X3Zf YWJpICgpOw0KICAgcmV0dXJuIGRlZmF1bHRfZnVuY3Rpb25fYWJpOw0KZGlm ZiAtLWdpdCBhL2djYy9kb2MvZXh0ZW5kLnRleGkgYi9nY2MvZG9jL2V4dGVu ZC50ZXhpDQppbmRleCAyMTM1ZGZkZTljOC4uYWZlNDg2YmE0N2IgMTAwNjQ0 DQotLS0gYS9nY2MvZG9jL2V4dGVuZC50ZXhpDQorKysgYi9nY2MvZG9jL2V4 dGVuZC50ZXhpDQpAQCAtNjMxNCw2ICs2MzE0LDE4IEBAIFBlcm1pc3NpYmxl IHZhbHVlcyBmb3IgdGhpcyBwYXJhbWV0ZXIgYXJlIEBjb2Rle3VzZXJ9LCBA Y29kZXtzdXBlcnZpc29yfSwNCmFuZCBAY29kZXttYWNoaW5lfS4gIElmIHRo ZXJlIGlzIG5vIHBhcmFtZXRlciwgdGhlbiBpdCBkZWZhdWx0cyB0bw0KQGNv ZGV7bWFjaGluZX0uDQorQGNpbmRleCBAY29kZXtyaXNjdl92ZWN0b3JfY2N9 IGZ1bmN0aW9uIGF0dHJpYnV0ZSwgUklTQy1WDQorQGl0ZW0gcmlzY3ZfdmVj dG9yX2NjDQorVXNlIHRoaXMgYXR0cmlidXRlIHRvIGZvcmNlIHRoZSBmdW5j dGlvbiB0byB1c2UgdGhlIHZlY3RvciBjYWxsaW5nDQorY29udmVudGlvbiB2 YXJpYW50Lg0KK0ZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHJpc2N2X3ZlY3Rv cl9jYywgcGxlYXNlIHNlZQ0KK0B1cmVme2h0dHBzOi8vZ2l0aHViLmNvbS9y aXNjdi1ub24taXNhL3Jpc2N2LWMtYXBpLWRvYy9wdWxsLzY3fQ0KKw0KK0Bz bWFsbGV4YW1wbGUNCit2b2lkIGZvbygpIF9fYXR0cmlidXRlX18oKHJpc2N2 X3ZlY3Rvcl9jYykpOw0KK1tbcmlzY3Y6OnZlY3Rvcl9jY11dIHZvaWQgZm9v KCk7IC8vIEZvciBDKysxMSBhbmQgQzIzDQorQGVuZCBzbWFsbGV4YW1wbGUN CisNCkBlbmQgdGFibGUNClRoZSBmb2xsb3dpbmcgdGFyZ2V0LXNwZWNpZmlj IGZ1bmN0aW9uIGF0dHJpYnV0ZXMgYXJlIGF2YWlsYWJsZSBmb3IgdGhlDQpk aWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nKysudGFyZ2V0L3Jpc2N2L3J2 di9iYXNlL2F0dHJpYnV0ZS1yaXNjdl92ZWN0b3JfY2MtZXJyb3IuQyBiL2dj Yy90ZXN0c3VpdGUvZysrLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9hdHRyaWJ1 dGUtcmlzY3ZfdmVjdG9yX2NjLWVycm9yLkMNCm5ldyBmaWxlIG1vZGUgMTAw NjQ0DQppbmRleCAwMDAwMDAwMDAwMC4uN2E1NDdiNWU3ZmYNCi0tLSAvZGV2 L251bGwNCisrKyBiL2djYy90ZXN0c3VpdGUvZysrLnRhcmdldC9yaXNjdi9y dnYvYmFzZS9hdHRyaWJ1dGUtcmlzY3ZfdmVjdG9yX2NjLWVycm9yLkMNCkBA IC0wLDAgKzEsMjIgQEANCisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KKy8q IHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3YgLW1hYmk9bHA2NGQgLU8x IiB9ICovDQorDQorDQorW1tyaXNjdjo6dmVjdG9yX2NjXV0gdm9pZCBmb28o KTsvLyBGb3IgQysrMTEgYW5kIEMyMw0KKw0KK1tbcmlzY3Y6OnZlY3Rvcl9j Y11dIGludCB2YXI7IC8qIHsgZGctd2FybmluZyAiJ3ZlY3Rvcl9jYycgYXR0 cmlidXRlIG9ubHkgYXBwbGllcyB0byBmdW5jdGlvbiB0eXBlcyIgfSAqLw0K Kw0KK3ZvaWQgX19hdHRyaWJ1dGVfXygocmlzY3ZfdmVjdG9yX2NjKSkgZnVu YygpOw0KK3ZvaWQgX19hdHRyaWJ1dGVfXygocmlzY3ZfdmVjdG9yX2NjKDEp KSkgZnVuY19pbnZhbGlkKCk7IC8qIHsgZGctZXJyb3IgIndyb25nIG51bWJl ciBvZiBhcmd1bWVudHMgc3BlY2lmaWVkIGZvciAncmlzY3ZfdmVjdG9yX2Nj JyBhdHRyaWJ1dGUiIH0gKi8NCisNCit2b2lkIHRlc3Rfbm9fYXR0cmlidXRl KGludCk7DQordm9pZCAgX19hdHRyaWJ1dGVfXygocmlzY3ZfdmVjdG9yX2Nj KSkgdGVzdF9ub19hdHRyaWJ1dGUoaW50IHgpIHsgfQ0KKw0KK2NsYXNzIHRl c3RfY2Mgew0KKyAgIF9fYXR0cmlidXRlX18oKHJpc2N2X3ZlY3Rvcl9jYykp IHZvaWQgbWVtYmVyX2Z1bmMoKTsNCit9Ow0KKw0KK3ZvaWQgdGVzdF9sYW1i ZGEoKSB7DQorICAgX19hdHRyaWJ1dGVfXygocmlzY3ZfdmVjdG9yX2NjKSkg YXV0byBsYW1iZGEgPSBbXSgpIHsgLyogeyBkZy13YXJuaW5nICIncmlzY3Zf dmVjdG9yX2NjJyBhdHRyaWJ1dGUgb25seSBhcHBsaWVzIHRvIGZ1bmN0aW9u IHR5cGVzIiB9ICovDQorICB9Ow0KK30NCmRpZmYgLS1naXQgYS9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvYXR0cmlidXRlLXJp c2N2X3ZlY3Rvcl9jYy1jYWxsZWUtc2F2ZWQuYyBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9hdHRyaWJ1dGUtcmlzY3ZfdmVj dG9yX2NjLWNhbGxlZS1zYXZlZC5jDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0K aW5kZXggMDAwMDAwMDAwMDAuLjdkYjlkODc0YmNkDQotLS0gL2Rldi9udWxs DQorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jh c2UvYXR0cmlidXRlLXJpc2N2X3ZlY3Rvcl9jYy1jYWxsZWUtc2F2ZWQuYw0K QEAgLTAsMCArMSwxMTcgQEANCisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0K Ky8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3YgLW1hYmk9bHA2NGQg LU8xIiB9ICovDQorLyogeyBkZy1maW5hbCB7IGNoZWNrLWZ1bmN0aW9uLWJv ZGllcyAiKioiICIiIH0gfSAqLw0KKw0KKyNpbmNsdWRlIDxzdGRpbnQuaD4N CisNCit2b2lkIF9fYXR0cmlidXRlX18oKHJpc2N2X3ZlY3Rvcl9jYykpIGJh cjEgKGludCBhKTsNCit2b2lkIGJhcjIgKCk7DQorDQorLyoNCisqKiBmb28x Og0KKyoqICAgYWRkaVx0c3Asc3AsLTE2DQorKiogICBzZFx0cmEsOFwoc3Bc KQ0KKyoqICAgY2FsbFx0YmFyMQ0KKyoqICAgbGRcdHJhLDhcKHNwXCkNCisq KiAgIGFkZGlcdHNwLHNwLDE2DQorKiogICBqclx0cmENCisqLw0KK3ZvaWQg X19hdHRyaWJ1dGVfXygocmlzY3ZfdmVjdG9yX2NjKSkNCitmb28xIChpbnQg YSkNCit7DQorICBiYXIxIChhKTsNCit9DQorDQorLyoNCisqKiAgZm9vMjoN CisqKiAgICBhZGRpXHRzcCxzcCwtMTYNCisqKiAgICBzZFx0cmEsOFwoc3Bc KQ0KKyoqICAgIGNzcnJcdHQwLHZsZW5iDQorKiogICAgc3ViXHRzcCxzcCx0 MA0KKyoqICAgIHZzMXJcLnZcdHYxLDBcKHNwXCkNCisqKiAgICBzdWJcdHNw LHNwLHQwDQorKiogICAgdnMxclwudlx0djIsMFwoc3BcKQ0KKyoqICAgIHN1 Ylx0c3Asc3AsdDANCisqKiAgICB2czFyXC52XHR2MywwXChzcFwpDQorKiog ICAgc3ViXHRzcCxzcCx0MA0KKyoqICAgIHZzMXJcLnZcdHY0LDBcKHNwXCkN CisqKiAgICBzdWJcdHNwLHNwLHQwDQorKiogICAgdnMxclwudlx0djUsMFwo c3BcKQ0KKyoqICAgIHN1Ylx0c3Asc3AsdDANCisqKiAgICB2czFyXC52XHR2 NiwwXChzcFwpDQorKiogICAgc3ViXHRzcCxzcCx0MA0KKyoqICAgIHZzMXJc LnZcdHY3LDBcKHNwXCkNCisqKiAgICBzdWJcdHNwLHNwLHQwDQorKiogICAg dnMxclwudlx0djI0LDBcKHNwXCkNCisqKiAgICBzdWJcdHNwLHNwLHQwDQor KiogICAgdnMxclwudlx0djI1LDBcKHNwXCkNCisqKiAgICBzdWJcdHNwLHNw LHQwDQorKiogICAgdnMxclwudlx0djI2LDBcKHNwXCkNCisqKiAgICBzdWJc dHNwLHNwLHQwDQorKiogICAgdnMxclwudlx0djI3LDBcKHNwXCkNCisqKiAg ICBzdWJcdHNwLHNwLHQwDQorKiogICAgdnMxclwudlx0djI4LDBcKHNwXCkN CisqKiAgICBzdWJcdHNwLHNwLHQwDQorKiogICAgdnMxclwudlx0djI5LDBc KHNwXCkNCisqKiAgICBzdWJcdHNwLHNwLHQwDQorKiogICAgdnMxclwudlx0 djMwLDBcKHNwXCkNCisqKiAgICBzdWJcdHNwLHNwLHQwDQorKiogICAgdnMx clwudlx0djMxLDBcKHNwXCkNCisqKiAgICBjYWxsXHRiYXIyDQorKiogICAg Y3Nyclx0dDAsdmxlbmINCisqKiAgICB2bDFyZTY0XC52XHR2MzEsMFwoc3Bc KQ0KKyoqICAgIGFkZFx0c3Asc3AsdDANCisqKiAgICB2bDFyZTY0XC52XHR2 MzAsMFwoc3BcKQ0KKyoqICAgIGFkZFx0c3Asc3AsdDANCisqKiAgICB2bDFy ZTY0XC52XHR2MjksMFwoc3BcKQ0KKyoqICAgIGFkZFx0c3Asc3AsdDANCisq KiAgICB2bDFyZTY0XC52XHR2MjgsMFwoc3BcKQ0KKyoqICAgIGFkZFx0c3As c3AsdDANCisqKiAgICB2bDFyZTY0XC52XHR2MjcsMFwoc3BcKQ0KKyoqICAg IGFkZFx0c3Asc3AsdDANCisqKiAgICB2bDFyZTY0XC52XHR2MjYsMFwoc3Bc KQ0KKyoqICAgIGFkZFx0c3Asc3AsdDANCisqKiAgICB2bDFyZTY0XC52XHR2 MjUsMFwoc3BcKQ0KKyoqICAgIGFkZFx0c3Asc3AsdDANCisqKiAgICB2bDFy ZTY0XC52XHR2MjQsMFwoc3BcKQ0KKyoqICAgIGFkZFx0c3Asc3AsdDANCisq KiAgICB2bDFyZTY0XC52XHR2NywwXChzcFwpDQorKiogICAgYWRkXHRzcCxz cCx0MA0KKyoqICAgIHZsMXJlNjRcLnZcdHY2LDBcKHNwXCkNCisqKiAgICBh ZGRcdHNwLHNwLHQwDQorKiogICAgdmwxcmU2NFwudlx0djUsMFwoc3BcKQ0K KyoqICAgIGFkZFx0c3Asc3AsdDANCisqKiAgICB2bDFyZTY0XC52XHR2NCww XChzcFwpDQorKiogICAgYWRkXHRzcCxzcCx0MA0KKyoqICAgIHZsMXJlNjRc LnZcdHYzLDBcKHNwXCkNCisqKiAgICBhZGRcdHNwLHNwLHQwDQorKiogICAg dmwxcmU2NFwudlx0djIsMFwoc3BcKQ0KKyoqICAgIGFkZFx0c3Asc3AsdDAN CisqKiAgICB2bDFyZTY0XC52XHR2MSwwXChzcFwpDQorKiogICAgYWRkXHRz cCxzcCx0MA0KKyoqICAgIGxkXHRyYSw4XChzcFwpDQorKiogICAgYWRkaVx0 c3Asc3AsMTYNCisqKiAgICBqclx0cmENCisqLw0KK3ZvaWQgX19hdHRyaWJ1 dGVfXygocmlzY3ZfdmVjdG9yX2NjKSkNCitmb28yIChpbnQgYSkNCit7DQor ICBpbnQ4X3QgZGF0YVsxMDI0XTsNCisgIGJhcjIgKCk7DQorfQ0KKw0KKy8q DQorKiogZm9vMzoNCisqKiAgIGFkZGlcdHNwLHNwLC0xNg0KKyoqICAgc2Rc dHJhLDhcKHNwXCkNCisqKiAgIGx3XHRhMCwwXChhMFwpDQorKiogICBjYWxs XHRiYXIxDQorKiogICBsZFx0cmEsOFwoc3BcKQ0KKyoqICAgYWRkaVx0c3As c3AsMTYNCisqKiAgIGpyXHRyYQ0KKyovDQordm9pZA0KK2ZvbzMgKGludCAq YSkNCit7DQorICBiYXIxICgqYSk7DQorfQ0KZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9hdHRyaWJ1dGUt cmlzY3ZfdmVjdG9yX2NjLWVycm9yLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvYXR0cmlidXRlLXJpc2N2X3ZlY3Rvcl9j Yy1lcnJvci5jDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAw MDAwMDAuLmNlYjVlNWJmNmRkDQotLS0gL2Rldi9udWxsDQorKysgYi9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvYXR0cmlidXRl LXJpc2N2X3ZlY3Rvcl9jYy1lcnJvci5jDQpAQCAtMCwwICsxLDExIEBADQor LyogeyBkZy1kbyBjb21waWxlIH0gKi8NCisvKiB7IGRnLW9wdGlvbnMgIi1t YXJjaD1ydjY0Z2N2IC1tYWJpPWxwNjRkIC1PMSIgfSAqLw0KKw0KK19fYXR0 cmlidXRlX18oKHJpc2N2X3ZlY3Rvcl9jYykpIGludCB2YXI7IC8qIHsgZGct d2FybmluZyAiJ3Jpc2N2X3ZlY3Rvcl9jYycgYXR0cmlidXRlIG9ubHkgYXBw bGllcyB0byBmdW5jdGlvbiB0eXBlcyIgfSAqLw0KK1tbcmlzY3Y6OnZlY3Rv cl9jY11dIGludCB2YXIxOyAvKiB7IGRnLXdhcm5pbmcgIid2ZWN0b3JfY2Mn IGF0dHJpYnV0ZSBvbmx5IGFwcGxpZXMgdG8gZnVuY3Rpb24gdHlwZXMiIH0g Ki8NCisNCit2b2lkIF9fYXR0cmlidXRlX18oKHJpc2N2X3ZlY3Rvcl9jYykp IGZ1bmMoKTsNCit2b2lkIF9fYXR0cmlidXRlX18oKHJpc2N2X3ZlY3Rvcl9j YygxKSkpIGZ1bmNfaW52YWxpZCgpOyAvKiB7IGRnLWVycm9yICJ3cm9uZyBu dW1iZXIgb2YgYXJndW1lbnRzIHNwZWNpZmllZCBmb3IgJ3Jpc2N2X3ZlY3Rv cl9jYycgYXR0cmlidXRlIiB9ICovDQorDQordm9pZCB0ZXN0X25vX2F0dHJp YnV0ZShpbnQpOw0KK3ZvaWQgX19hdHRyaWJ1dGVfXygocmlzY3ZfdmVjdG9y X2NjKSkgdGVzdF9ub19hdHRyaWJ1dGUoaW50IHgpIHsgfQ0KLS0gDQoyLjE3 LjENCiANCiANCg== ------=_001_NextPart330088603808_=------