From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out30-101.freemail.mail.aliyun.com (out30-101.freemail.mail.aliyun.com [115.124.30.101]) by sourceware.org (Postfix) with ESMTPS id 24A093857727 for ; Fri, 12 May 2023 08:53:17 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 24A093857727 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=linux.alibaba.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linux.alibaba.com X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R731e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018045192;MF=sinan.lin@linux.alibaba.com;NM=1;PH=DW;RN=3;SR=0;TI=W4_0.1.47_DEFAULT_210DE1B0_1683879254378_o7001c308i; Received: from WS-web (sinan.lin@linux.alibaba.com[W4_0.1.47_DEFAULT_210DE1B0_1683879254378_o7001c308i]) at Fri, 12 May 2023 16:53:12 +0800 Date: Fri, 12 May 2023 16:53:12 +0800 From: "Sinan" To: "Kito Cheng" , "Jiawei" Cc: "gcc-patches" Reply-To: "Sinan" Message-ID: <87bb2c5a-934d-4e9e-a9a3-760d4d5bba80.sinan.lin@linux.alibaba.com> Subject: =?UTF-8?B?UmU6IFtQQVRDSCA0LzVdIFJJU0MtVjogQWRkIFpjbXAgZXh0ZW5zaW9uIHN1cHBvcnRzLg==?= X-Mailer: [Alimail-Mailagent revision 29][W4_0.1.47][DEFAULT][Chrome] MIME-Version: 1.0 References: <20230406062118.47431-1-jiawei@iscas.ac.cn> <20230406062118.47431-5-jiawei@iscas.ac.cn>,<07720619-dd69-4816-987e-ff0e14d9a348.> x-aliyun-mail-creator: W4_0.1.47_DEFAULT_QvNTW96aWxsYS81LjAgKE1hY2ludG9zaDsgSW50ZWwgTWFjIE9TIFggMTBfMTVfNykgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzExMy4wLjAuMCBTYWZhcmkvNTM3LjM2La In-Reply-To: <07720619-dd69-4816-987e-ff0e14d9a348.> Content-Type: multipart/alternative; boundary="----=ALIBOUNDARY_128124_7fe6ef669700_645dfe78_705bb" X-Spam-Status: No, score=-20.6 required=5.0 tests=BAYES_00,ENV_AND_HDR_SPF_MATCH,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE,UNPARSEABLE_RELAY,USER_IN_DEF_SPF_WL 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: ------=ALIBOUNDARY_128124_7fe6ef669700_645dfe78_705bb Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 SGksIEtpdG8gYW5kIEppYXdlaQpJIGhhdmUgbm90aWNlZCBzZXZlcmFsIGNv bW1lbnRzIGFyZSBub3QgYWNjdXJhdGUgb3Igbm8gbG9uZ2VyIHZhbGlkKGUu Zy4gb25seSBmb3IgemMgMC41KSBhbmQgdGhleSBuZWVkIGFuIHVwZGF0ZSBv ciBpbXByb3ZlbWVudC4KPiArCj4+ICtuYW1lc3BhY2Ugewo+PiArCj4+ICsv Kgo+PiArIDEuIHByZXByb2Nlc3Npbmc6Cj4+ICsgMS4xLiBpZiB0aGVyZSBp cyBubyBwdXNoIHJ0eCwgdGhlbiBqdXN0IHJldHVybi4gZS5nLgo+PiArIChu b3RlIDUgMSAyMiAyIFtiYiAyXSBOT1RFX0lOU05fQkFTSUNfQkxPQ0spCj4+ ICsgKGluc24vZiAyMiA1IDIzIDIgKHNldCAocmVnL2Y6U0kgMiBzcCkKPj4g KyAocGx1czpTSSAocmVnL2Y6U0kgMiBzcCkKPj4gKyAoY29uc3RfaW50IC0z MiBbMHhmZmZmZmZmZmZmZmZmZmUwXSkpKQo+PiArIChuaWwpKQo+PiArIChu b3RlIDIzIDIyIDIgMiBOT1RFX0lOU05fUFJPTE9HVUVfRU5EKQo+PiArIDEu Mi4gaWYgcHVzaCBydHggZXhpc3RzLCB0aGVuIHdlIGNvbXB1dGUgdGhlIG51 bWJlciBvZgo+PiArIHB1c2hlZCBzLXJlZ2lzdGVycywgbl9zcmVnLgo+PiAr Cj4+ICsgcHVzaCBydHggc2hvdWxkIGJlIGZpbmQgYmVmb3JlIE5PVEVfSU5T Tl9QUk9MT0dVRV9FTkQgdGFnCj4+ICsKPj4gKyBbMiBhbmQgMyBoYXBwZW5k IHNpbXVsdGFuZW91c2x5XQo+PiArIDIuIGZpbmQgdmFsaWQgbW92ZSBwYXR0 ZXJuLCBtdiBzTiwgYU4sIHdoZXJlIE4gPCBuX3NyZWcsCj4+ICsgYW5kIGFO IGlzIG5vdCB1c2VkIHRoZSBtb3ZlIHBhdHRlcm4sIGFuZCBzTiBpcyBub3QK Pj4gKyBkZWZpbmVkIGJlZm9yZSB0aGUgbW92ZSBwYXR0ZXJuIChmcm9tIHBy b2xvZ3VlIHRvIHRoZQo+PiArIHBvc2l0aW9uIG9mIG1vdmUgcGF0dGVybiku Cj4+ICsgMy4gYW5hbHlzaXMgdXNlIGFuZCByZWFjaCBvZiBldmVyeSBpbnN0 cnVjdGlvbiBmcm9tIHByb2xvZ3VlCj4+ICsgdG8gdGhlIHBvc2l0aW9uIG9m IG1vdmUgcGF0dGVybi4KPj4gKyBpZiBhbnkgc04gaXMgdXNlZCwgdGhlbiB3 ZSBtYXJrIHRoZSBjb3JyZXNwb25kaW5nIGFyZ3VtZW50IGxpc3QKPj4gKyBj YW5kaWRhdGUgYXMgaW52YWxpZC4KPj4gKyBlLmcuCj4+ICsgcHVzaCB7cmEs czAtczN9LCB7fSwgLTMyCj4+ICsgc3cgczAsNDQoc3ApICMgczAgaXMgdXNl ZCwgdGhlbiBhcmd1bWVudCBsaXN0IGlzIGludmFsaWQKPj4gKyBtdiBhMCxh NSAjIGEwIGlzIGRlZmluZWQsIHRoZW4gYXJndW1lbnQgbGlzdCBpcyBpbnZh bGlkCj4+ICsgLi4uCj4+ICsgbXYgczAsYTAKPj4gKyBtdiBzMSxhMQo+PiAr IG12IHMyLGEyCj4+ICsKPj4gKyA0LiBpZiB0aGVyZSBpcyBhIHZhbGlkIGFy Z3VtZW50IGxpc3QsIHRoZW4gcmVwbGFjZSB0aGUgcG9wCj4+ICsgcHVzaCBw YXJhbGxlbCBpbnNuLCBhbmQgZGVsZXRlIG12IHBhdHRlcm4uCj4+ICsgaWYg bm90LCBza2lwLgo+PiArKi8KPgo+SSBhbSBub3Qgc3VyZSBJIHVuZGVyc3Rh bmQgdGhpcyBvcHRpbWl6YXRpb24gcGFzcyBjb3JyZWN0bHksCj5jb3VsZCB5 b3UgZ2l2ZSBtb3JlIGV4YW1wbGUgb3IgaW5kaWNhdGUgd2hpY2ggdGVzdGNh c2UgY2FuIGRlbW9uc3RyYXRlCj50aGlzIHBhc3M/Cj4KPkFuZCBJIHdvdWxk IHByZWZlciB0aGlzIHBhc3Mgc3BsaXQgZnJvbSB0aGlzIHBhdGNoLCBsZXQg aXQgYmVjb21lIGEgc2VwYXJhdGVkCj5wYXRjaCBpbmNsdWRpbmcgdGVzdGNh c2UuClRoaXMgY29tbWVudCBpcyBpbmNvcnJlY3QuCnRoaXMgcGFzcyBpcyB0 byBzZWFyY2ggYHJldGAsIGBjbS5wb3BgIGFuZCBgbXYgYTAsIDBgIGFuZCB0 cnkgdG8gY29tYmluZSB0aGVtIGludG8gY20ucG9wcmV0eiBhbmQgeW91IGNh biBmaW5kIHJlbGV2YW50IGNtLnBvcHJldHogdGVzdGNhc2VzIGZyb20gaHR0 cHM6Ly93d3cubWFpbC1hcmNoaXZlLmNvbS9nY2MtcGF0Y2hlc0BnY2MuZ251 Lm9yZy9tc2czMDQ1NDUuaHRtbAo+IEBAIC00Nzc3LDYgKzQ4ODEsNjYgQEAg cmlzY3ZfdXNlX3NhdmVfbGliY2FsbCAoY29uc3Qgc3RydWN0IHJpc2N2X2Zy YW1lX2luZm8gKmZyYW1lKQo+PiByZXR1cm4gZnJhbWUtPnNhdmVfbGliY2Fs bF9hZGp1c3RtZW50ICE9IDA7Cj4+IH0KPj4KPj4gKy8qIERldGVybWluZSBo b3cgbWFueSBpbnN0cnVjdGlvbnMgcmVsYXRlZCB0byBwdXNoL3BvcCBpbnN0 cnVjdGlvbnMuICovCj4+ICsKPj4gK3N0YXRpYyB1bnNpZ25lZAo+PiArcmlz Y3Zfc2F2ZV9wdXNoX3BvcF9jb3VudCAodW5zaWduZWQgbWFzaykKPj4gK3sK Pj4gKyBpZiAoIUJJVFNFVF9QIChtYXNrLCBHUF9SRUdfRklSU1QgKyBSRVRV Uk5fQUREUl9SRUdOVU0pKQo+PiArIHJldHVybiAwOwo+PiArIGZvciAodW5z aWduZWQgbiA9IEdQX1JFR19MQVNUOyBuID4gR1BfUkVHX0ZJUlNUOyBuLS0p Cj4+ICsgaWYgKEJJVFNFVF9QIChtYXNrLCBuKQo+PiArICYmICFjYWxsX3Vz ZWRfcmVncyBbbl0pCj4+ICsgLyogYWRkIHJhIHNhdmluZyBhbmQgc3AgYWRq dXN0LiAqLwo+PiArIHJldHVybiBDQUxMRUVfU0FWRURfUkVHX05VTUJFUiAo bikgKyAxICsgMjsKPgo+V2hhdCB0aGUgbWFnaWMgbnVtYmVyIG9mIGArIDEg KyAyYD8Kd2VsbCwgaXQgaXMgcmVhbGx5IG1pc2xlYWRpbmcgaGVyZSwgYW5k IGl0IGlzIGJldHRlciB0byBtYWtlIGl0IG1vcmUgY2xlYXIgLi4uCmByaXNj dl9zYXZlX3B1c2hfcG9wX2NvdW50YCBpcyB1c2VkIHRvIGNhbGN1bGF0ZSB0 aGUgZXhwZWN0ZWQgc2l6ZSBvZiB0aGUgcHVzaC9wb3AgcGFyYWxsZWwgcGF0 dGVybih0aGUgbnVtYmVyIHNhdmVkL3Jlc3RvcmVkIHJlZ2lzdGVycyBwbHVz IG9uZSBzcCBhZGp1c3QgcGF0dGVybiksIHNvCnRoZSBudW1iZXIgb2YgeHJl ZyBzYXZlZC9yZXN0b3JlZCA9IENBTExFRV9TQVZFRF9SRUdfTlVNQkVSIChu KSArIDEgYW5kIHRoZW4gdGhlIGArMmAgaXMgZm9yIHJhIGFuZCBzcCBhZGp1 c3RtZW50IHBhdHRlcm5zIC4uLgo+PiArcmlzY3ZfZW1pdF9wdXNoX2luc24g KHN0cnVjdCByaXNjdl9mcmFtZV9pbmZvICpmcmFtZSwgSE9TVF9XSURFX0lO VCBzaXplKQo+PiArewo+PiArIHVuc2lnbmVkIGludCB2ZWNsZW4gPSByaXNj dl9zYXZlX3B1c2hfcG9wX2NvdW50IChmcmFtZS0+bWFzayk7Cj4+ICsgdW5z aWduZWQgaW50IG5fcmVnID0gdmVjbGVuIC0gMTsKPgo+IE5lZWQgY29tbWVu dCB0byBleHBsYWluIHdoeSBgLSAxYCBoZXJlLgpzbyB3ZSBjb3VsZCB1c2Ug YC0xYCB0byBjYWxjdWxhdGUgaG93IG1hbnkgcmVnaXN0ZXJzIGFyZSBzYXZl ZC9yZXN0b3JlZCBoZXJlLgpCUiwKU2luYW4KLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tClNlbmRlcjpLaXRvIENoZW5nIDxraXRvLmNoZW5nQGdtYWlsLmNvbT4K U2VudCBBdDoyMDIzIE1heSA0IChUaHUuKSAxNzowNApSZWNpcGllbnQ6Smlh d2VpIDxqaWF3ZWlAaXNjYXMuYWMuY24+CkNjOmdjYy1wYXRjaGVzIDxnY2Mt cGF0Y2hlc0BnY2MuZ251Lm9yZz47IGtpdG8uY2hlbmcgPGtpdG8uY2hlbmdA c2lmaXZlLmNvbT47IHBhbG1lciA8cGFsbWVyQGRhYmJlbHQuY29tPjsgY2hy aXN0b3BoLm11ZWxsbmVyIDxjaHJpc3RvcGgubXVlbGxuZXJAdnJ1bGwuZXU+ OyBqZXJlbXkuYmVubmV0dCA8amVyZW15LmJlbm5ldHRAZW1iZWNvc20uY29t PjsgbWFyeS5iZW5uZXR0IDxtYXJ5LmJlbm5ldHRAZW1iZWNvc20uY29tPjsg bmFuZG5pLmphbW5hZGFzIDxuYW5kbmkuamFtbmFkYXNAZW1iZWNvc20uY29t PjsgY2hhcmxpZS5rZWFuZXkgPGNoYXJsaWUua2VhbmV5QGVtYmVjb3NtLmNv bT47IHNpbW9uLmNvb2sgPHNpbW9uLmNvb2tAZW1iZWNvc20uY29tPjsgdGFy aXEua3VyZCA8dGFyaXEua3VyZEBjb2Rhc2lwLmNvbT47IGlicmFoaW0uYWJ1 LmtoYXJtZWgxIDxpYnJhaGltLmFidS5raGFybWVoMUBodWF3ZWkuY29tPjsg c2luYW4ubGluIDxzaW5hbi5saW5AbGludXguYWxpYmFiYS5jb20+OyB3dXdl aTIwMTYgPHd1d2VpMjAxNkBpc2Nhcy5hYy5jbj47IHNoaWh1YSA8c2hpaHVh QGlzY2FzLmFjLmNuPjsgc2hpeXVsb25nIDxzaGl5dWxvbmdAaXNjYXMuYWMu Y24+OyBjaGVueWl4dWFuIDxjaGVueWl4dWFuQGlzY2FzLmFjLmNuPgpTdWJq ZWN0OlJlOiBbUEFUQ0ggNC81XSBSSVNDLVY6IEFkZCBaY21wIGV4dGVuc2lv biBzdXBwb3J0cy4KQ291bGQgeW91IHJlYmFzZSB0aGlzIHBhdGNoLCB3ZSBo YXZlIHNvbWUgY2hhbmdlcyBvbgo+IEFsbCAiemNtcGUiIG1lYW5zIFpjbXAg d2l0aCBSVkUgZXh0ZW5zaW9uLgpVc2UgemNtcF9ydmUgaW5zdGVhZCwgemNt cGUgc2VlbXMgbGlrZSBhIG5ldyBleHQuIG5hbWUKPiBkaWZmIC0tZ2l0IGEv Z2NjL2NvbmZpZy9yaXNjdi9yaXNjdi16Y21wLXBvcHJldC5jYyBiL2djYy9j b25maWcvcmlzY3YvcmlzY3YtemNtcC1wb3ByZXQuY2MKPiBuZXcgZmlsZSBt b2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAwMDAwLi5kN2I0MGY2YTNlMgo+ IC0tLSAvZGV2L251bGwKPiArKysgYi9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2 LXpjbXAtcG9wcmV0LmNjCj4gQEAgLTAsMCArMSwyNjAgQEAKTmVlZCBhIGhl YWRlciBoZXJlIGxpa2UgIl4jJCUgZm9yIFJJU0MtViBDb3B5cmlnaHQgKEMp IDIwMjMgRnJlZQpTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuIiBoZXJlCj4g KyNpbmNsdWRlICJjb25maWcuaCIKLi4uCj4gKyNpbmNsdWRlICJjZmdydGwu aCIKPiArCj4gKyNkZWZpbmUgSU5fVEFSR0VUX0NPREUgMQpUaGlzIHNob3Vs ZCBhcHBlYXIgYmVmb3JlIGluY2x1ZGUgYW55dGhpbmcuCj4gKwo+ICtuYW1l c3BhY2Ugewo+ICsKPiArLyoKPiArIDEuIHByZXByb2Nlc3Npbmc6Cj4gKyAx LjEuIGlmIHRoZXJlIGlzIG5vIHB1c2ggcnR4LCB0aGVuIGp1c3QgcmV0dXJu LiBlLmcuCj4gKyAobm90ZSA1IDEgMjIgMiBbYmIgMl0gTk9URV9JTlNOX0JB U0lDX0JMT0NLKQo+ICsgKGluc24vZiAyMiA1IDIzIDIgKHNldCAocmVnL2Y6 U0kgMiBzcCkKPiArIChwbHVzOlNJIChyZWcvZjpTSSAyIHNwKQo+ICsgKGNv bnN0X2ludCAtMzIgWzB4ZmZmZmZmZmZmZmZmZmZlMF0pKSkKPiArIChuaWwp KQo+ICsgKG5vdGUgMjMgMjIgMiAyIE5PVEVfSU5TTl9QUk9MT0dVRV9FTkQp Cj4gKyAxLjIuIGlmIHB1c2ggcnR4IGV4aXN0cywgdGhlbiB3ZSBjb21wdXRl IHRoZSBudW1iZXIgb2YKPiArIHB1c2hlZCBzLXJlZ2lzdGVycywgbl9zcmVn Lgo+ICsKPiArIHB1c2ggcnR4IHNob3VsZCBiZSBmaW5kIGJlZm9yZSBOT1RF X0lOU05fUFJPTE9HVUVfRU5EIHRhZwo+ICsKPiArIFsyIGFuZCAzIGhhcHBl bmQgc2ltdWx0YW5lb3VzbHldCj4gKyAyLiBmaW5kIHZhbGlkIG1vdmUgcGF0 dGVybiwgbXYgc04sIGFOLCB3aGVyZSBOIDwgbl9zcmVnLAo+ICsgYW5kIGFO IGlzIG5vdCB1c2VkIHRoZSBtb3ZlIHBhdHRlcm4sIGFuZCBzTiBpcyBub3QK PiArIGRlZmluZWQgYmVmb3JlIHRoZSBtb3ZlIHBhdHRlcm4gKGZyb20gcHJv bG9ndWUgdG8gdGhlCj4gKyBwb3NpdGlvbiBvZiBtb3ZlIHBhdHRlcm4pLgo+ ICsgMy4gYW5hbHlzaXMgdXNlIGFuZCByZWFjaCBvZiBldmVyeSBpbnN0cnVj dGlvbiBmcm9tIHByb2xvZ3VlCj4gKyB0byB0aGUgcG9zaXRpb24gb2YgbW92 ZSBwYXR0ZXJuLgo+ICsgaWYgYW55IHNOIGlzIHVzZWQsIHRoZW4gd2UgbWFy ayB0aGUgY29ycmVzcG9uZGluZyBhcmd1bWVudCBsaXN0Cj4gKyBjYW5kaWRh dGUgYXMgaW52YWxpZC4KPiArIGUuZy4KPiArIHB1c2gge3JhLHMwLXMzfSwg e30sIC0zMgo+ICsgc3cgczAsNDQoc3ApICMgczAgaXMgdXNlZCwgdGhlbiBh cmd1bWVudCBsaXN0IGlzIGludmFsaWQKPiArIG12IGEwLGE1ICMgYTAgaXMg ZGVmaW5lZCwgdGhlbiBhcmd1bWVudCBsaXN0IGlzIGludmFsaWQKPiArIC4u Lgo+ICsgbXYgczAsYTAKPiArIG12IHMxLGExCj4gKyBtdiBzMixhMgo+ICsK PiArIDQuIGlmIHRoZXJlIGlzIGEgdmFsaWQgYXJndW1lbnQgbGlzdCwgdGhl biByZXBsYWNlIHRoZSBwb3AKPiArIHB1c2ggcGFyYWxsZWwgaW5zbiwgYW5k IGRlbGV0ZSBtdiBwYXR0ZXJuLgo+ICsgaWYgbm90LCBza2lwLgo+ICsqLwpJ IGFtIG5vdCBzdXJlIEkgdW5kZXJzdGFuZCB0aGlzIG9wdGltaXphdGlvbiBw YXNzIGNvcnJlY3RseSwKY291bGQgeW91IGdpdmUgbW9yZSBleGFtcGxlIG9y IGluZGljYXRlIHdoaWNoIHRlc3RjYXNlIGNhbiBkZW1vbnN0cmF0ZQp0aGlz IHBhc3M/CkFuZCBJIHdvdWxkIHByZWZlciB0aGlzIHBhc3Mgc3BsaXQgZnJv bSB0aGlzIHBhdGNoLCBsZXQgaXQgYmVjb21lIGEgc2VwYXJhdGVkCnBhdGNo IGluY2x1ZGluZyB0ZXN0Y2FzZS4KPiBkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZp Zy9yaXNjdi9yaXNjdi5jYyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YuY2MK PiBpbmRleCA1ZjhjYmZjMTVlZC4uMTdkZjJmM2Y4Y2YgMTAwNjQ0Cj4gKy8q IE9yZGVyIGZvciB0aGUgQ0xPQkJFUnMvVVNFcyBvZiBwdXNoL3BvcC4gKi8K PiArc3RhdGljIGNvbnN0IHVuc2lnbmVkIHB1c2hfc2F2ZV9yZWdfb3JkZXJb XSA9IHsKcHVzaF9zYXZlX3JlZ19vcmRlciAtPiB6Y21wX3B1c2hfc2F2ZV9y ZWdfb3JkZXIKPiArIElOVkFMSURfUkVHTlVNLCBSRVRVUk5fQUREUl9SRUdO VU0sIFMwX1JFR05VTSwKPiArIFMxX1JFR05VTSwgUzJfUkVHTlVNLCBTM19S RUdOVU0sIFM0X1JFR05VTSwKPiArIFM1X1JFR05VTSwgUzZfUkVHTlVNLCBT N19SRUdOVU0sIFM4X1JFR05VTSwKPiArIFM5X1JFR05VTSwgUzEwX1JFR05V TSwgUzExX1JFR05VTQo+ICt9Owo+ICsKPiArLyogT3JkZXIgZm9yIHRoZSBD TE9CQkVScy9VU0VzIG9mIHB1c2gvcG9wIGluIHJ2ZS4gKi8KPiArc3RhdGlj IGNvbnN0IHVuc2lnbmVkIHB1c2hfc2F2ZV9yZWdfb3JkZXJfemNtcGVbXSA9 IHsKcHVzaF9zYXZlX3JlZ19vcmRlcl96Y21wZSAtPiB6Y21wX3J2ZV9wdXNo X3NhdmVfcmVnX29yZGVyCj4gQEAgLTQ3NzcsNiArNDg4MSw2NiBAQCByaXNj dl91c2Vfc2F2ZV9saWJjYWxsIChjb25zdCBzdHJ1Y3QgcmlzY3ZfZnJhbWVf aW5mbyAqZnJhbWUpCj4gcmV0dXJuIGZyYW1lLT5zYXZlX2xpYmNhbGxfYWRq dXN0bWVudCAhPSAwOwo+IH0KPgo+ICsvKiBEZXRlcm1pbmUgaG93IG1hbnkg aW5zdHJ1Y3Rpb25zIHJlbGF0ZWQgdG8gcHVzaC9wb3AgaW5zdHJ1Y3Rpb25z LiAqLwo+ICsKPiArc3RhdGljIHVuc2lnbmVkCj4gK3Jpc2N2X3NhdmVfcHVz aF9wb3BfY291bnQgKHVuc2lnbmVkIG1hc2spCj4gK3sKPiArIGlmICghQklU U0VUX1AgKG1hc2ssIEdQX1JFR19GSVJTVCArIFJFVFVSTl9BRERSX1JFR05V TSkpCj4gKyByZXR1cm4gMDsKPiArIGZvciAodW5zaWduZWQgbiA9IEdQX1JF R19MQVNUOyBuID4gR1BfUkVHX0ZJUlNUOyBuLS0pCj4gKyBpZiAoQklUU0VU X1AgKG1hc2ssIG4pCj4gKyAmJiAhY2FsbF91c2VkX3JlZ3MgW25dKQo+ICsg LyogYWRkIHJhIHNhdmluZyBhbmQgc3AgYWRqdXN0LiAqLwo+ICsgcmV0dXJu IENBTExFRV9TQVZFRF9SRUdfTlVNQkVSIChuKSArIDEgKyAyOwpXaGF0IHRo ZSBtYWdpYyBudW1iZXIgb2YgYCsgMSArIDJgPwo+ICsgYWJvcnQgKCk7Cj4g K30KPiArCj4gKy8qIENhbGN1bGF0ZSB0aGUgbWF4aW11bSBzcCBhZGp1c3Rt ZW50IG9mIHB1c2gvcG9wIGluc3RydWN0aW9uLiAqLwo+ICsKPiArc3RhdGlj IHVuc2lnbmVkCj4gK3Jpc2N2X3B1c2hfcG9wX2Jhc2Vfc3BfYWRqdXN0ICh1 bnNpZ25lZCBtYXNrKQo+ICt7Cj4gKyB1bnNpZ25lZCBuX3JlZ3MgPSByaXNj dl9zYXZlX3B1c2hfcG9wX2NvdW50IChtYXNrKSAtIDE7Cj4gKyByZXR1cm4g KG5fcmVncyAqIFVOSVRTX1BFUl9XT1JEICsgMTUpICYgKH4weGYpOwpVc2Ug Uk9VTkRfVVAKPiBAQCAtNTE3MSw2ICs1MzM3LDg2IEBAIHJpc2N2X2Zvcl9l YWNoX3NhdmVkX3JlZyAocG9seV9pbnQ2NCBzcF9vZmZzZXQsIHJpc2N2X3Nh dmVfcmVzdG9yZV9mbiBmbiwKPiB9Cj4gfQo+Cj4gK3N0YXRpYyB2b2lkCj4g K3Jpc2N2X2VtaXRfcG9wX2luc24gKHN0cnVjdCByaXNjdl9mcmFtZV9pbmZv ICpmcmFtZSwgSE9TVF9XSURFX0lOVCBvZmZzZXQsIEhPU1RfV0lERV9JTlQg c2l6ZSkKPiArewo+ICsgdW5zaWduZWQgaW50IHZlY2xlbiA9IHJpc2N2X3Nh dmVfcHVzaF9wb3BfY291bnQgKGZyYW1lLT5tYXNrKTsKPiArIHVuc2lnbmVk IGludCBuX3JlZyA9IHZlY2xlbiAtIDE7Cj4gKyBydHZlYyB2ZWMgPSBydHZl Y19hbGxvYyAodmVjbGVuKTsKPiArIEhPU1RfV0lERV9JTlQgc3BfYWRqdXN0 Owo+ICsgcnR4IGR3YXJmID0gTlVMTF9SVFg7Cj4gKwo+ICsgY29uc3QgdW5z aWduZWQgKnJlZ19vcmRlciA9IChUQVJHRVRfWkNNUCAmJiBUQVJHRVRfUlZF KQo+ICsgPyBwdXNoX3NhdmVfcmVnX29yZGVyX3pjbXBlCj4gKyA6IHB1c2hf c2F2ZV9yZWdfb3JkZXI7Cj4gKwo+ICsgZ2NjX2Fzc2VydCAobl9yZWcgPj0g MQo+ICsgJiYgVEFSR0VUX1pDTVAKPiArICYmICgoVEFSR0VUX1JWRSAmJiAo bl9yZWcgPD0gQVJSQVlfU0laRSAocHVzaF9zYXZlX3JlZ19vcmRlcl96Y21w ZSkpKQo+ICsgfHwgKFRBUkdFVF9aQ01QICYmIChuX3JlZyA8PSBBUlJBWV9T SVpFIChwdXNoX3NhdmVfcmVnX29yZGVyKSkpKSk7Cj4gKwo+ICsgLyogc3Ag YWRqdXN0IHBhdHRlcm4gKi8KPiArIGludCBtYXhfYWxsb3dfc3BfYWRqdXN0 ID0gcmlzY3ZfcHVzaF9wb3BfYmFzZV9zcF9hZGp1c3QgKGZyYW1lLT5tYXNr KSArIDQ4Owo+ICsgaW50IGFsaWduZWRfc2l6ZSA9IHNpemU7Cj4gKwo+ICsg LyogaWYgc3AgYWRqdXN0bWVudCBpcyB0b28gbGFyZ2UsIHdlIHNob3VsZCBz cGxpdCBpdCBmaXJzdC4gKi8KPiArIGlmIChhbGlnbmVkX3NpemUgPiBtYXhf YWxsb3dfc3BfYWRqdXN0KQo+ICsgewo+ICsgcnR4IGR3YXJmX3ByZV9zcF9h ZGp1c3QgPSBOVUxMX1JUWDsKPiArIHJ0eCBwcmVfYWRqdXN0X3J0eCA9IGdl bl9hZGQzX2luc24gKHN0YWNrX3BvaW50ZXJfcnR4LAo+ICsgc3RhY2tfcG9p bnRlcl9ydHgsCj4gKyBHRU5fSU5UIChhbGlnbmVkX3NpemUgLSBtYXhfYWxs b3dfc3BfYWRqdXN0KSk7Cj4gKyBydHggaW5zbiA9IGVtaXRfaW5zbiAocHJl X2FkanVzdF9ydHgpOwo+ICsKPiArIHJ0eCBjZmFfcHJlX2FkanVzdF9ydHgg PSBnZW5fcnR4X1BMVVMgKFBtb2RlLCBzdGFja19wb2ludGVyX3J0eCwKPiAr IEdFTl9JTlQgKGFsaWduZWRfc2l6ZSAtIG1heF9hbGxvd19zcF9hZGp1c3Qp KTsKPiArIGR3YXJmX3ByZV9zcF9hZGp1c3QgPSBhbGxvY19yZWdfbm90ZSAo UkVHX0NGQV9ERUZfQ0ZBLAo+ICsgY2ZhX3ByZV9hZGp1c3RfcnR4LAo+ICsg ZHdhcmZfcHJlX3NwX2FkanVzdCk7Cj4gKwo+ICsgUlRYX0ZSQU1FX1JFTEFU RURfUCAoaW5zbikgPSAxOwo+ICsgUkVHX05PVEVTIChpbnNuKSA9IGR3YXJm X3ByZV9zcF9hZGp1c3Q7Cj4gKwo+ICsgc3BfYWRqdXN0ID0gbWF4X2FsbG93 X3NwX2FkanVzdDsKPiArIH0KPiArIGVsc2UKPiArIHNwX2FkanVzdCA9IChh bGlnbmVkX3NpemUgKyAxNSkgJiAofjB4Zik7ClVzZSBST1VORF9VUAo+IEBA IC01MjcwLDYgKzU1MTYsMTQ2IEBAIHJpc2N2X2VtaXRfc3RhY2tfdGllICh2 b2lkKQo+IGVtaXRfaW5zbiAoZ2VuX3N0YWNrX3RpZWRpIChzdGFja19wb2lu dGVyX3J0eCwgaGFyZF9mcmFtZV9wb2ludGVyX3J0eCkpOwo+IH0KPgo+ICti b29sCj4gK3Jpc2N2X2NoZWNrX3JlZ25vKHJ0eCBwYXQsIHVuc2lnbmVkIHJl Z25vKQo+ICt7Cj4gKyByZXR1cm4gUkVHX1AgKHBhdCkKPiArICYmIFJFR05P IChwYXQpID09IHJlZ25vOwo+ICt9Cj4gKwo+ICsvKiBGdW5jdGlvbiB0byBj aGVjayB3aGV0aGVyIHRoZSBPUCBpcyBhIHZhbGlkIHN0YWNrIHB1c2gvcG9w IG9wZXJhdGlvbi4KPiArIFRoaXMgcGFydCBpcyBib3Jyb3dlZCBmcm9tIG5k czMyIG5kczMyX3ZhbGlkX3N0YWNrX3B1c2hfcG9wX3AgKi8KPiArCj4gK2Jv b2wKPiArcmlzY3ZfdmFsaWRfc3RhY2tfcHVzaF9wb3BfcCAocnR4IG9wLCBi b29sIHB1c2hfcCkKPiArewo+ICsgaW50IGluZGV4Owo+ICsgaW50IHRvdGFs X2NvdW50Owo+ICsgaW50IHNwX2FkanVzdF9ydHhfaW5kZXg7Cj4gKyBydHgg ZWx0Owo+ICsgcnR4IGVsdF9yZWc7Cj4gKyBydHggZWx0X3BsdXM7Cj4gKwo+ ICsgaWYgKCFUQVJHRVRfWkNNUCkKPiArIHJldHVybiBmYWxzZTsKPiArCj4g KyB0b3RhbF9jb3VudCA9IFhWRUNMRU4gKG9wLCAwKTsKPiArIHNwX2FkanVz dF9ydHhfaW5kZXggPSBwdXNoX3AgPyAwIDogdG90YWxfY291bnQgLSAxOwo+ ICsKPiArIC8qIEF0IGxlYXN0IHNwICsgb25lIGNhbGxlZSBzYXZlL3Jlc3Rv cmUgcmVnaXN0ZXIgcnR4ICovCj4gKyBpZiAodG90YWxfY291bnQgPCAyKQo+ ICsgcmV0dXJuIGZhbHNlOwo+ICsKPiArIC8qIFBlcmZvcm0gc29tZSBxdWlj ayBjaGVjayBmb3IgdGhhdCBldmVyeSBlbGVtZW50IHNob3VsZCBiZSAnc2V0 JywKPiArIGZvciBwb3AsIGl0IG1pZ2h0IGNvbnRhaW4gYHJldGAgYW5kIGBy ZXQgdmFsdWVgIHBhdHRlcm4uICovCj4gKyBmb3IgKGluZGV4ID0gMDsgaW5k ZXggPCB0b3RhbF9jb3VudDsgaW5kZXgrKykKPiArIHsKPiArIGVsdCA9IFhW RUNFWFAgKG9wLCAwLCBpbmRleCk7Cj4gKwo+ICsgLyogc2tpcCBwb3AgcmV0 dXJuIHZhbHVlIHJ0eCAqLwo+ICsgaWYgKCFwdXNoX3AgJiYgR0VUX0NPREUg KGVsdCkgPT0gU0VUCj4gKyAmJiByaXNjdl9jaGVja19yZWdubyAoU0VUX0RF U1QgKGVsdCksIFJFVFVSTl9WQUxVRV9SRUdOVU0pCj4gKyAmJiB0b3RhbF9j b3VudCA+PSA0Cj4gKyAmJiBpbmRleCArIDEgPCB0b3RhbF9jb3VudAo+ICsg JiYgR0VUX0NPREUgKFhWRUNFWFAgKG9wLCAwLCBpbmRleCArIDEpKSA9PSBV U0UpCj4gKyB7Cj4gKyBydHggdXNlX3JlZyA9IFhFWFAgKFhWRUNFWFAgKG9w LCAwLCBpbmRleCArIDEpLCAwKTsKPiArCj4gKyBpZiAoIXJpc2N2X2NoZWNr X3JlZ25vICh1c2VfcmVnLCBSRVRVUk5fVkFMVUVfUkVHTlVNKSkKPiArIHJl dHVybiBmYWxzZTsKPiArCj4gKyBpbmRleCArPSAxOwo+ICsgY29udGludWU7 Cj4gKyB9Cj4gKwo+ICsgLyogc2tpcCByZXQgcnR4ICovCj4gKyBpZiAoIXB1 c2hfcCAmJiBHRVRfQ09ERSAoZWx0KSA9PSBTSU1QTEVfUkVUVVJOCj4gKyAm JiB0b3RhbF9jb3VudCA+PSA0Cj4gKyAmJiBpbmRleCArIDEgPCB0b3RhbF9j b3VudAo+ICsgJiYgR0VUX0NPREUgKFhWRUNFWFAgKG9wLCAwLCBpbmRleCAr IDEpKSA9PSBVU0UpCj4gKyB7Cj4gKyBydHggdXNlX3JlZyA9IFhFWFAgKFhW RUNFWFAgKG9wLCAwLCBpbmRleCArIDEpLCAwKTsKPiArCj4gKyBpZiAoIXJp c2N2X2NoZWNrX3JlZ25vICh1c2VfcmVnLCBSRVRVUk5fQUREUl9SRUdOVU0p KQo+ICsgcmV0dXJuIGZhbHNlOwo+ICsKPiArIGluZGV4ICs9IDE7Cj4gKyBz cF9hZGp1c3RfcnR4X2luZGV4IC09IDI7Cj4gKyBjb250aW51ZTsKPiArIH0K PiArCj4gKyBpZiAoR0VUX0NPREUgKGVsdCkgIT0gU0VUKQo+ICsgcmV0dXJu IGZhbHNlOwo+ICsgfQo+ICsKPiArIGVsdCA9IFhWRUNFWFAgKG9wLCAwLCBz cF9hZGp1c3RfcnR4X2luZGV4KTsKPiArIGVsdF9yZWcgPSBTRVRfREVTVCAo ZWx0KTsKPiArIGVsdF9wbHVzID0gU0VUX1NSQyAoZWx0KTsKPiArCj4gKyAv KiBDaGVjayB0aGlzIGlzIChzZXQgKHN0YWNrX3JlZykgKHBsdXMgc3RhY2tf cmVnIGNvbnN0KSkgcGF0dGVybi4gKi8KPiArIGlmIChHRVRfQ09ERSAoZWx0 X3BsdXMpICE9IFBMVVMKPiArIHx8ICFyaXNjdl9jaGVja19yZWdubyAoZWx0 X3JlZywgU1RBQ0tfUE9JTlRFUl9SRUdOVU0pKQo+ICsgcmV0dXJuIGZhbHNl Owo+ICsKPiArIC8qIFBhc3MgYWxsIHRlc3QsIHRoaXMgaXMgYSB2YWxpZCBy dHguICovCj4gKyByZXR1cm4gdHJ1ZTsKPiArfQo+ICsKPiArLyogR2VuZXJh dGUgcHVzaC9wb3AgcnR4ICovCj4gKwo+ICtzdGF0aWMgdm9pZAo+ICtyaXNj dl9lbWl0X3B1c2hfaW5zbiAoc3RydWN0IHJpc2N2X2ZyYW1lX2luZm8gKmZy YW1lLCBIT1NUX1dJREVfSU5UIHNpemUpCj4gK3sKPiArIHVuc2lnbmVkIGlu dCB2ZWNsZW4gPSByaXNjdl9zYXZlX3B1c2hfcG9wX2NvdW50IChmcmFtZS0+ bWFzayk7Cj4gKyB1bnNpZ25lZCBpbnQgbl9yZWcgPSB2ZWNsZW4gLSAxOwpO ZWVkIGNvbW1lbnQgdG8gZXhwbGFpbiB3aHkgYC0gMWAgaGVyZS4KPiArIHJ0 dmVjIHZlYyA9IHJ0dmVjX2FsbG9jICh2ZWNsZW4pOwo+ICsKPiArIGNvbnN0 IHVuc2lnbmVkICpyZWdfb3JkZXIgPSAoVEFSR0VUX1pDTVAgJiYgVEFSR0VU X1JWRSkKPiArID8gcHVzaF9zYXZlX3JlZ19vcmRlcl96Y21wZQo+ICsgOiBw dXNoX3NhdmVfcmVnX29yZGVyOwo+ICsKPiArIGludCBhbGlnbmVkX3NpemUg PSAoc2l6ZSArIDE1KSAmICh+MHhmKTsKVXNlIFJPVU5EX1VQCj4gKwo+ICsg Z2NjX2Fzc2VydCAobl9yZWcgPj0gMQo+ICsgJiYgVEFSR0VUX1pDTVAKPiAr ICYmICgoVEFSR0VUX1JWRSAmJiAobl9yZWcgPD0gQVJSQVlfU0laRSAocHVz aF9zYXZlX3JlZ19vcmRlcl96Y21wZSkpKQo+ICsgfHwgKFRBUkdFVF9aQ01Q ICYmIChuX3JlZyA8PSBBUlJBWV9TSVpFIChwdXNoX3NhdmVfcmVnX29yZGVy KSkpKSk7Cj4gKwo+ICsgLyogc3AgYWRqdXN0IHBhdHRlcm4gKi8KPiArIGlu dCBtYXhfYWxsb3dfc3BfYWRqdXN0ID0gcmlzY3ZfcHVzaF9wb3BfYmFzZV9z cF9hZGp1c3QgKGZyYW1lLT5tYXNrKSArIDQ4OwpXaGF0J3MgdGhlIG1hZ2lj IG51bWJlciBvZiA0OD8KPiArIGludCBzcF9hZGp1c3QgPSBhbGlnbmVkX3Np emUgPiBtYXhfYWxsb3dfc3BfYWRqdXN0ID8KPiArIG1heF9hbGxvd19zcF9h ZGp1c3QKPiArIDogYWxpZ25lZF9zaXplOwo+ICsKPiArIC8qVE9ETzogbW92 ZSB0aGlzIHBhcnQgdG8gZnJhbWUgY29tcHV0YXRpb24gZnVuY3Rpb24uICov CklzIGl0IHBvc3NpYmxlIHRvIHJlc29sdmUgdGhpcyBUT0RPPwo+ICsgZnJh bWUtPmdwX3NwX29mZnNldCA9ICh2ZWNsZW4gLSAxKSAqIFVOSVRTX1BFUl9X T1JEOwo+ICsgZnJhbWUtPnB1c2hfcG9wX3NwX2FkanVzdCA9IHNwX2FkanVz dDsKPiBkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5oIGIv Z2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5oCj4gaW5kZXggZDA1YjFkNTk4NTMu LjZlNmUzZWUyYzI1IDEwMDY0NAo+IC0tLSBhL2djYy9jb25maWcvcmlzY3Yv cmlzY3YuaAo+ICsrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YuaAo+IEBA IC0zODMsNiArMzgzLDcgQEAgQVNNX01JU0FfU1BFQwo+ICNkZWZpbmUgSEFS RF9GUkFNRV9QT0lOVEVSX1JFR05VTSA4Cj4gI2RlZmluZSBTVEFDS19QT0lO VEVSX1JFR05VTSAyCj4gI2RlZmluZSBUSFJFQURfUE9JTlRFUl9SRUdOVU0g NAo+ICsjZGVmaW5lIFJFVFVSTl9WQUxVRV9SRUdOVU0gMTAKPgo+IC8qIFRo ZXNlIHR3byByZWdpc3RlcnMgZG9uJ3QgcmVhbGx5IGV4aXN0OiB0aGV5IGdl dCBlbGltaW5hdGVkIHRvIGVpdGhlcgo+IHRoZSBzdGFjayBvciBoYXJkIGZy YW1lIHBvaW50ZXIuICovCj4gQEAgLTEwOTcsNCArMTA5OCw3IEBAIGV4dGVy biB2b2lkIHJpc2N2X3JlbW92ZV91bm5lZWRlZF9zYXZlX3Jlc3RvcmVfY2Fs bHMgKHZvaWQpOwo+ICNkZWZpbmUgRFdBUkZfUkVHX1RPX1VOV0lORF9DT0xV TU4oUkVHTk8pIFwKPiAoKFJFR05PID09IFJJU0NWX0RXQVJGX1ZMRU5CKSA/ IChGSVJTVF9QU0VVRE9fUkVHSVNURVIgKyAxKSA6IFJFR05PKQo+Cj4gKyNk ZWZpbmUgUklTQ1ZfWkNFX1BVU0hfUE9QX01BU0sgMHgwZmZjMDMwMnUKUklT Q1ZfWkNFX1BVU0hfUE9QX01BU0sgLT4gUklTQ1ZfWkNNUF9QVVNIX1BPUF9N QVNLCj4gKyNkZWZpbmUgUklTQ1ZfWkNNUEVfUFVTSF9QT1BfTUFTSyAweDMw MnUKUklTQ1ZfWkNNUEVfUFVTSF9QT1BfTUFTSyAtPiBSSVNDVl9aQ01QX1JW RV9QVVNIX1BPUF9NQVNLCj4gZGlmZiAtLWdpdCBhL2djYy9jb25maWcvcmlz Y3YvdC1yaXNjdiBiL2djYy9jb25maWcvcmlzY3YvdC1yaXNjdgo+IGluZGV4 IDZlMzI2ZmM3ZTAyLi45ZWY1MjIzMDZhNSAxMDA2NDQKPiAtLS0gYS9nY2Mv Y29uZmlnL3Jpc2N2L3QtcmlzY3YKPiArKysgYi9nY2MvY29uZmlnL3Jpc2N2 L3QtcmlzY3YKPiBAQCAtOTAsNiArOTAsMTAgQEAgcmlzY3Ytdi5vOiAkKHNy Y2RpcikvY29uZmlnL3Jpc2N2L3Jpc2N2LXYuY2MgXAo+ICQoQ09NUElMRSkg JDwKPiAkKFBPU1RDT01QSUxFKQo+Cj4gK3Jpc2N2LXpjbXAtcG9wcmV0Lm86 ICQoc3JjZGlyKS9jb25maWcvcmlzY3YvcmlzY3YtemNtcC1wb3ByZXQuY2MK UGx6IGFkZCByaWdodCBkZXBlbmRlbmN5IGhlcmUuCj4gZGlmZiAtLWdpdCBh L2djYy9jb25maWcvcmlzY3YvemMubWQgYi9nY2MvY29uZmlnL3Jpc2N2L3pj Lm1kCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAw MC4uM2FkMzRkYWNkNDkKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZ2NjL2Nv bmZpZy9yaXNjdi96Yy5tZAo+IEBAIC0wLDAgKzEsNDcgQEAKPiArOzsgTWFj aGluZSBkZXNjcmlwdGlvbiBmb3IgWkNFIGV4dGVuc2lvbi4KWkNFIGV4dGVu c2lvbi4gLT4gWmMqIGV4dGVuc2lvbgo= ------=ALIBOUNDARY_128124_7fe6ef669700_645dfe78_705bb--