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 B46283858D38 for ; Thu, 16 May 2024 12:19:24 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B46283858D38 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 B46283858D38 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=1715861969; cv=none; b=JpywDCkLQX7KekTn2mc/V2MZp3hgfS1B28bbswYd4JTs44iNIUiHA/MYnpCfyflYceCgrMe4U8SQSDatS80/NplqxkszQ9qxgz7w9ErV03nkjdq4P9KJV0serR2qtGe2blYZ6d7soM+jgOJ1MMF/TU03/qBt5+jCpP+efeYam2U= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1715861969; c=relaxed/simple; bh=C2WHnEebRWaiobPLOlhP/ntd5LrRMbeoeILwzYgXolw=; h=Date:From:To:Subject:Mime-Version:Message-ID; b=bIRbUoi4FTc2ejNOW9eVy0MwGTdA/MwqQuZ8Dtz0mjXSmL2B2mZSMYkRWxB57UuHfI6dnlYLfOHC1kL/LjdVNThinzpHeC0JlwIz6xCZFxUsKtIJ4h5ZsGpAEvz6t5uIqtqDlbD5XfRX4VvNa2DKPttzrC21PZ4zJ4I8jn6rZEQ= ARC-Authentication-Results: i=1; server2.sourceware.org X-QQ-mid: bizesmtpsz12t1715861952tq22ys X-QQ-Originating-IP: W+ywkDUT3V7Y7WFn9jSJ7ATipbCNDDATYcxbkEVlns0= Received: from LAPTOP-EPITNQBU ( [119.123.198.128]) by bizesmtp.qq.com (ESMTP) with id ; Thu, 16 May 2024 20:19:10 +0800 (CST) X-QQ-SSF: 01400000000000H0V000000A0000000 X-QQ-FEAT: K2/klV1qoGlgQFITSGxVBYOmm6fF+7t794Y4FjijB/QQAA4A7P3eLhCyShau5 tCmBvmICELrlthWhBzFGKJkoA+86x5a6CDSP/zlReog7opmAzNxBw/gy0Jo7G7zfyX/j1oM Mh2c+Y4cnDpQGpXV7dhb+lRJ8IISpLoXRTuWK4O6i7l7h+yptl05Kf+DrTrPPkZPbhp7KVx UPZ3ZmXRNu/5ObNLggcV6D9etr3T6pGMd8DZYi+yUlhtDMlwYBESQd88+O5jAxVXJK11996 yuOObevDA5A2W/kmTWFOFbKLqV9OEXFZcjFdsgWE1ZSx+2gnoMIhJklrD2bu2Xgb1+3H+tD 7teew0/gPl8knEutii//L8YUl7jrpPJINpLUc9Y2lVDPsCs0uj+l/dSgT8eP8UPXzv/2fwn IGuWJ33M+uzJ8ENi0XfhXnZpib9xiclh8n4lfKGFyKs= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 14748298437877834825 Date: Thu, 16 May 2024 20:19:10 +0800 From: "juzhe.zhong@rivai.ai" To: pan2.li , gcc-patches Cc: kito.cheng , tamar.christina , "Richard Biener" , richard.sandiford , pan2.li Subject: Re: [PATCH v2 2/3] RISC-V: Implement vectorizable early exit with vcond_mask_len References: <20240516040542.2734412-1-pan2.li@intel.com>, <20240516040542.2734412-2-pan2.li@intel.com> X-Priority: 3 X-GUID: 2FEE5498-DFD6-4BBA-9B54-1858DA1766AB X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: Content-Type: multipart/alternative; boundary="----=_001_NextPart302510523110_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtpsz:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-10.4 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,TRACKER_ID,TXREP 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_NextPart302510523110_=---- Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: base64 UklTQy1WIHBhcnQgTEdUTS4NCg0KDQoNCmp1emhlLnpob25nQHJpdmFpLmFp DQogDQpGcm9tOiBwYW4yLmxpDQpEYXRlOiAyMDI0LTA1LTE2IDEyOjA1DQpU bzogZ2NjLXBhdGNoZXMNCkNDOiBqdXpoZS56aG9uZzsga2l0by5jaGVuZzsg dGFtYXIuY2hyaXN0aW5hOyByaWNoYXJkLmd1ZW50aGVyOyBSaWNoYXJkLlNh bmRpZm9yZDsgUGFuIExpDQpTdWJqZWN0OiBbUEFUQ0ggdjIgMi8zXSBSSVND LVY6IEltcGxlbWVudCB2ZWN0b3JpemFibGUgZWFybHkgZXhpdCB3aXRoIHZj b25kX21hc2tfbGVuDQpGcm9tOiBQYW4gTGkgPHBhbjIubGlAaW50ZWwuY29t Pg0KIA0KQWZ0ZXIgd2Ugc3VwcG9ydCB0aGUgbG9vcCBsZW5zIGZvciB0aGUg dmVjdG9yaXphYmxlLCAgd2Ugd291bGQgbGlrZSB0bw0KaW1wbGVtZW50IHRo ZSBmZWF0dXJlIGZvciB0aGUgUklTQy1WIHRhcmdldC4gIEdpdmVuIGJlbG93 IGV4YW1wbGU6DQogDQp1bnNpZ25lZCB2ZWN0X2FbMTkyM107DQp1bnNpZ25l ZCB2ZWN0X2JbMTkyM107DQogDQp2b2lkIHRlc3QgKHVuc2lnbmVkIGxpbWl0 LCBpbnQgbikNCnsNCiAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspDQog ICAgew0KICAgICAgdmVjdF9iW2ldID0gbGltaXQgKyBpOw0KIA0KICAgICAg aWYgKHZlY3RfYVtpXSA+IGxpbWl0KQ0KICAgICAgICB7DQogICAgICAgICAg cmV0ID0gdmVjdF9iW2ldOw0KICAgICAgICAgIHJldHVybiByZXQ7DQogICAg ICAgIH0NCiANCiAgICAgIHZlY3RfYVtpXSA9IGxpbWl0Ow0KICAgIH0NCn0N CiANCkJlZm9yZSB0aGlzIHBhdGNoOg0KICAuLi4NCi5MODoNCiAgc3cgICAg YTMsMChhNSkNCiAgYWRkaXcgYTAsYTAsMQ0KICBhZGRpICBhNCxhNCw0DQog IGFkZGkgIGE1LGE1LDQNCiAgYmVxICAgYTEsYTAsLkwyDQouTDQ6DQogIHN3 ICAgIGEwLDAoYTQpDQogIGx3ICAgIGEyLDAoYTUpDQogIGJsZXUgIGEyLGEz LC5MOA0KICByZXQNCiANCkFmdGVyIHRoaXMgcGF0Y2g6DQogIC4uLg0KLkw1 Og0KICB2c2V0dmxpICAgYTUsYTMsZTgsbWY0LHRhLG1hDQogIHZtdjFyLnYg ICB2NCx2Mg0KICB2c2V0dmxpICAgdDQsemVybyxlMzIsbTEsdGEsbWENCiAg dm12LnYueCAgIHYxLGE1DQogIHZhZGQudnYgICB2Mix2Mix2MQ0KICB2c2V0 dmxpICAgemVybyxhNSxlMzIsbTEsdGEsbWENCiAgdmFkZC52diAgIHY1LHY0 LHYzDQogIHNsbGkgICAgICBhNixhNSwyDQogIHZsZTMyLnYgICB2MSwwKHQx KQ0KICB2bXNsdHUudnYgdjEsdjMsdjENCiAgdmNwb3AubSAgIHQ0LHYxDQog IGJlcSAgICAgICB0NCx6ZXJvLC5MNA0KICB2bXYueC5zICAgYTQsdjQNCi5M MzoNCiAgLi4uDQogDQpUaGUgYmVsb3cgdGVzdHMgYXJlIHBhc3NlZCBmb3Ig dGhpcyBwYXRjaDoNCjEuIFRoZSByaXNjdiBmdWxseSByZWdyZXNzaW9uIHRl c3RzLg0KIA0KZ2NjL0NoYW5nZUxvZzoNCiANCiogY29uZmlnL3Jpc2N2L2F1 dG92ZWMtb3B0Lm1kDQogICgqdmNvbmRfbWFza19sZW5fcG9wY291bnRfPFZC X1ZMUzptb2RlPjxQOm1vZGU+KToNCk5ldyBwYXR0ZXJuIG9mIHZjb25kX21h c2tfbGVuX3BvcGNvdW50IGZvciB2ZWN0b3IgYm9vbCBtb2RlLg0KKiBjb25m aWcvcmlzY3YvYXV0b3ZlYy5tZCAodmNvbmRfbWFza19sZW5fPG1vZGU+KTog TmV3IHBhdHRlcm4NCm9mIHZjb25kX21hc2tfbGVuIGZvciB2ZWN0b3IgYm9v bCBtb2RlLg0KKGNicmFuY2g8bW9kZT40KTogTmV3IHBhdHRlcm4gZm9yIHZl Y3RvciBib29sIG1vZGUuDQoqIGNvbmZpZy9yaXNjdi92ZWN0b3ItaXRlcmF0 b3JzLm1kOiBBZGQgbmV3IHVuc3BlYw0KICBVTlNQRUNfU0VMRUNUX01BU0su DQoqIGNvbmZpZy9yaXNjdi92ZWN0b3IubWQgKEBwcmVkX3BvcGNvdW50PFZC Om1vZGU+PFA6bW9kZT4pOiBBZGQNClZMUyBtb2RlIHRvIHBvcGNvdW50IHBh dHRlcm4uDQooQHByZWRfcG9wY291bnQ8VkJfVkxTOm1vZGU+PFA6bW9kZT4p OiBEaXR0by4NCiANCmdjYy90ZXN0c3VpdGUvQ2hhbmdlTG9nOg0KIA0KKiBn Y2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL2Vhcmx5LWJyZWFrLTEuYzog TmV3IHRlc3QuDQoqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvZWFy bHktYnJlYWstMi5jOiBOZXcgdGVzdC4NCiANClNpZ25lZC1vZmYtYnk6IFBh biBMaSA8cGFuMi5saUBpbnRlbC5jb20+DQotLS0NCmdjYy9jb25maWcvcmlz Y3YvYXV0b3ZlYy1vcHQubWQgICAgICAgICAgICAgICB8IDMzICsrKysrKysr KysNCmdjYy9jb25maWcvcmlzY3YvYXV0b3ZlYy5tZCAgICAgICAgICAgICAg ICAgICB8IDYxICsrKysrKysrKysrKysrKysrKysNCmdjYy9jb25maWcvcmlz Y3YvdmVjdG9yLWl0ZXJhdG9ycy5tZCAgICAgICAgICB8ICAxICsNCmdjYy9j b25maWcvcmlzY3YvdmVjdG9yLm1kICAgICAgICAgICAgICAgICAgICB8IDE4 ICsrKy0tLQ0KLi4uL3Jpc2N2L3J2di9hdXRvdmVjL2Vhcmx5LWJyZWFrLTEu YyAgICAgICAgIHwgMzQgKysrKysrKysrKysNCi4uLi9yaXNjdi9ydnYvYXV0 b3ZlYy9lYXJseS1icmVhay0yLmMgICAgICAgICB8IDM3ICsrKysrKysrKysr DQo2IGZpbGVzIGNoYW5nZWQsIDE3NSBpbnNlcnRpb25zKCspLCA5IGRlbGV0 aW9ucygtKQ0KY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9lYXJseS1icmVhay0xLmMNCmNy ZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2F1dG92ZWMvZWFybHktYnJlYWstMi5jDQogDQpkaWZmIC0tZ2l0 IGEvZ2NjL2NvbmZpZy9yaXNjdi9hdXRvdmVjLW9wdC5tZCBiL2djYy9jb25m aWcvcmlzY3YvYXV0b3ZlYy1vcHQubWQNCmluZGV4IDY0NWRjNTNkODY4Li4w NGY4NWQ4ZTQ1NSAxMDA2NDQNCi0tLSBhL2djYy9jb25maWcvcmlzY3YvYXV0 b3ZlYy1vcHQubWQNCisrKyBiL2djYy9jb25maWcvcmlzY3YvYXV0b3ZlYy1v cHQubWQNCkBAIC0xNDM2LDMgKzE0MzYsMzYgQEAgKGRlZmluZV9pbnNuX2Fu ZF9zcGxpdCAiKm48b3B0YWI+PG1vZGU+Ig0KICAgICBET05FOw0KICAgfQ0K ICAgWyhzZXRfYXR0ciAidHlwZSIgInZtYWx1IildKQ0KKw0KKzs7IE9wdGlt aXphdGlvbiBwYXR0ZXJuIGZvciBlYXJseSBicmVhayBhdXRvLXZlY3Rvcml6 YXRpb24NCis7OyB2Y29uZF9tYXNrX2xlbiAobWFzaywgb25lcywgemVyb3Ms IGxlbiwgYmlhcykgKyB2bG1heCBwb3Bjb3VudA0KKzs7IC0+IG5vbiB2bG1h eCBwb3Bjb3VudCAobWFzaywgbGVuKQ0KKyhkZWZpbmVfaW5zbl9hbmRfc3Bs aXQgIip2Y29uZF9tYXNrX2xlbl9wb3Bjb3VudF88VkJfVkxTOm1vZGU+PFA6 bW9kZT4iDQorICBbKHNldCAobWF0Y2hfb3BlcmFuZDpQIDAgInJlZ2lzdGVy X29wZXJhbmQiKQ0KKyAgICAocG9wY291bnQ6UA0KKyAgICAgKHVuc3BlYzpW Ql9WTFMgWw0KKyAgICAgICh1bnNwZWM6VkJfVkxTIFsNCisgICAgICAgKG1h dGNoX29wZXJhbmQ6VkJfVkxTIDEgInJlZ2lzdGVyX29wZXJhbmQiKQ0KKyAg ICAgICAobWF0Y2hfb3BlcmFuZDpWQl9WTFMgMiAiY29uc3RfMV9vcGVyYW5k IikNCisgICAgICAgKG1hdGNoX29wZXJhbmQ6VkJfVkxTIDMgImNvbnN0XzBf b3BlcmFuZCIpDQorICAgICAgIChtYXRjaF9vcGVyYW5kIDQgImF1dG92ZWNf bGVuZ3RoX29wZXJhbmQiKQ0KKyAgICAgICAobWF0Y2hfb3BlcmFuZCA1ICJj b25zdF8wX29wZXJhbmQiKV0gVU5TUEVDX1NFTEVDVF9NQVNLKQ0KKyAgICAg IChtYXRjaF9vcGVyYW5kIDYgImF1dG92ZWNfbGVuZ3RoX29wZXJhbmQiKQ0K KyAgICAgIChjb25zdF9pbnQgMSkNCisgICAgICAocmVnOlNJIFZMX1JFR05V TSkNCisgICAgICAocmVnOlNJIFZUWVBFX1JFR05VTSldIFVOU1BFQ19WUFJF RElDQVRFKSkpXQ0KKyAgIlRBUkdFVF9WRUNUT1INCisgICAmJiBjYW5fY3Jl YXRlX3BzZXVkb19wICgpDQorICAgJiYgcmlzY3ZfdmVjdG9yOjpnZXRfdmVj dG9yX21vZGUgKFBtb2RlLCBHRVRfTU9ERV9OVU5JVFMgKDxWQl9WTFM6TU9E RT5tb2RlKSkuZXhpc3RzICgpIg0KKyAgIiMiDQorICAiJiYgMSINCisgIFso Y29uc3RfaW50IDApXQ0KKyAgew0KKyAgICByaXNjdl92ZWN0b3I6OmVtaXRf bm9udmxtYXhfaW5zbiAoDQorIGNvZGVfZm9yX3ByZWRfcG9wY291bnQgKDxW Ql9WTFM6TU9ERT5tb2RlLCBQbW9kZSksDQorIHJpc2N2X3ZlY3Rvcjo6Q1BP UF9PUCwNCisgb3BlcmFuZHMsIG9wZXJhbmRzWzRdKTsNCisgICAgRE9ORTsN CisgIH0NCisgIFsoc2V0X2F0dHIgInR5cGUiICJ2ZWN0b3IiKV0NCispDQpk aWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9hdXRvdmVjLm1kIGIvZ2Nj L2NvbmZpZy9yaXNjdi9hdXRvdmVjLm1kDQppbmRleCBhYTFhZTBmZTA3NS4u MWVlM2M4MDUyZmIgMTAwNjQ0DQotLS0gYS9nY2MvY29uZmlnL3Jpc2N2L2F1 dG92ZWMubWQNCisrKyBiL2djYy9jb25maWcvcmlzY3YvYXV0b3ZlYy5tZA0K QEAgLTI2MTIsMyArMjYxMiw2NCBAQCAoZGVmaW5lX2V4cGFuZCAicmF3bWVt Y2hyPEFOWUk6bW9kZT4iDQogICAgIERPTkU7DQogICB9DQopDQorDQorOzsg PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KKzs7ID09IEVhcmx5IGJy ZWFrIGF1dG8tdmVjdG9yaXphdGlvbiBwYXR0ZXJucw0KKzs7ID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0NCisNCis7OyB2Y29uZF9tYXNrX2xlbiAo bWFzaywgMXMsIDBzLCBsZW4sIGJpYXMpDQorOzsgPT4gbWFza1tpXSA9IG1h c2tbaV0gJiYgaSA8IGxlbiA/IDEgOiAwDQorKGRlZmluZV9pbnNuX2FuZF9z cGxpdCAidmNvbmRfbWFza19sZW5fPG1vZGU+Ig0KKyAgWyhzZXQgKG1hdGNo X29wZXJhbmQ6VkIgMCAicmVnaXN0ZXJfb3BlcmFuZCIpDQorICAgICh1bnNw ZWM6IFZCIFsNCisgICAgIChtYXRjaF9vcGVyYW5kOlZCIDEgInJlZ2lzdGVy X29wZXJhbmQiKQ0KKyAgICAgKG1hdGNoX29wZXJhbmQ6VkIgMiAiY29uc3Rf MV9vcGVyYW5kIikNCisgICAgIChtYXRjaF9vcGVyYW5kOlZCIDMgImNvbnN0 XzBfb3BlcmFuZCIpDQorICAgICAobWF0Y2hfb3BlcmFuZCA0ICJhdXRvdmVj X2xlbmd0aF9vcGVyYW5kIikNCisgICAgIChtYXRjaF9vcGVyYW5kIDUgImNv bnN0XzBfb3BlcmFuZCIpXSBVTlNQRUNfU0VMRUNUX01BU0spKV0NCisgICJU QVJHRVRfVkVDVE9SDQorICAgJiYgY2FuX2NyZWF0ZV9wc2V1ZG9fcCAoKQ0K KyAgICYmIHJpc2N2X3ZlY3Rvcjo6Z2V0X3ZlY3Rvcl9tb2RlIChQbW9kZSwg R0VUX01PREVfTlVOSVRTICg8TU9ERT5tb2RlKSkuZXhpc3RzICgpIg0KKyAg IiMiDQorICAiJiYgMSINCisgIFsoY29uc3RfaW50IDApXQ0KKyAgew0KKyAg ICBtYWNoaW5lX21vZGUgbW9kZSA9IHJpc2N2X3ZlY3Rvcjo6Z2V0X3ZlY3Rv cl9tb2RlIChQbW9kZSwNCisgR0VUX01PREVfTlVOSVRTICg8TU9ERT5tb2Rl KSkucmVxdWlyZSAoKTsNCisgICAgcnR4IHJlZyA9IGdlbl9yZWdfcnR4ICht b2RlKTsNCisgICAgcmlzY3ZfdmVjdG9yOjpleHBhbmRfdmVjX3NlcmllcyAo cmVnLCBjb25zdDBfcnR4LCBjb25zdDFfcnR4KTsNCisgICAgcnR4IGR1cF9y dHggPSBnZW5fcnR4X1ZFQ19EVVBMSUNBVEUgKG1vZGUsIG9wZXJhbmRzWzRd KTsNCisgICAgaW5zbl9jb2RlIGljb2RlID0gY29kZV9mb3JfcHJlZF9jbXBf c2NhbGFyIChtb2RlKTsNCisgICAgcnR4IGNtcCA9IGdlbl9ydHhfZm10X2Vl IChMVFUsIDxNT0RFPm1vZGUsIHJlZywgZHVwX3J0eCk7DQorICAgIHJ0eCBv cHNbXSA9IHtvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzFd LCBjbXAsIHJlZywgb3BlcmFuZHNbNF19Ow0KKyAgICBlbWl0X3ZsbWF4X2lu c24gKGljb2RlLCByaXNjdl92ZWN0b3I6OkNPTVBBUkVfT1BfTVUsIG9wcyk7 DQorICAgIERPTkU7DQorICB9DQorICBbKHNldF9hdHRyICJ0eXBlIiAidmVj dG9yIildKQ0KKw0KKzs7IGNicmFuY2gNCisoZGVmaW5lX2V4cGFuZCAiY2Jy YW5jaDxtb2RlPjQiDQorICBbKHNldCAocGMpDQorIChpZl90aGVuX2Vsc2UN CisgICAobWF0Y2hfb3BlcmF0b3IgMCAiZXF1YWxpdHlfb3BlcmF0b3IiDQor ICAgICBbKG1hdGNoX29wZXJhbmQ6VkJfVkxTIDEgInJlZ2lzdGVyX29wZXJh bmQiKQ0KKyAgICAgIChtYXRjaF9vcGVyYW5kOlZCX1ZMUyAyICJyZWdfb3Jf MF9vcGVyYW5kIildKQ0KKyAgIChsYWJlbF9yZWYgKG1hdGNoX29wZXJhbmQg MyAiIikpDQorICAgKHBjKSkpXQ0KKyAgIlRBUkdFVF9WRUNUT1IiDQorICB7 DQorICAgIHJ0eCBwcmVkOw0KKyAgICBpZiAob3BlcmFuZHNbMl0gPT0gQ09O U1QwX1JUWCAoPE1PREU+bW9kZSkpDQorICAgICAgcHJlZCA9IG9wZXJhbmRz WzFdOw0KKyAgICBlbHNlDQorICAgICAgcHJlZCA9IGV4cGFuZF9iaW5vcCAo PE1PREU+bW9kZSwgeG9yX29wdGFiLCBvcGVyYW5kc1sxXSwNCisgICAgb3Bl cmFuZHNbMl0sIE5VTExfUlRYLCAwLA0KKyAgICBPUFRBQl9ESVJFQ1QpOw0K KyAgICBydHggcmVnID0gZ2VuX3JlZ19ydHggKFBtb2RlKTsNCisgICAgcnR4 IGNwb3Bfb3BzW10gPSB7cmVnLCBwcmVkfTsNCisgICAgZW1pdF92bG1heF9p bnNuIChjb2RlX2Zvcl9wcmVkX3BvcGNvdW50ICg8TU9ERT5tb2RlLCBQbW9k ZSksDQorICAgICAgcmlzY3ZfdmVjdG9yOjpDUE9QX09QLCBjcG9wX29wcyk7 DQorICAgIG9wZXJhbmRzWzFdID0gcmVnOw0KKyAgICBvcGVyYW5kc1syXSA9 IGNvbnN0MF9ydHg7DQorICB9DQorKQ0KZGlmZiAtLWdpdCBhL2djYy9jb25m aWcvcmlzY3YvdmVjdG9yLWl0ZXJhdG9ycy5tZCBiL2djYy9jb25maWcvcmlz Y3YvdmVjdG9yLWl0ZXJhdG9ycy5tZA0KaW5kZXggYTI0ZTFiZjA3OGYuLjc2 YzI3MDM1YTczIDEwMDY0NA0KLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0 b3ItaXRlcmF0b3JzLm1kDQorKysgYi9nY2MvY29uZmlnL3Jpc2N2L3ZlY3Rv ci1pdGVyYXRvcnMubWQNCkBAIC0xMDIsNiArMTAyLDcgQEAgKGRlZmluZV9j X2VudW0gInVuc3BlYyIgWw0KICAgVU5TUEVDX1dSRURVQ19TVU1VDQogICBV TlNQRUNfV1JFRFVDX1NVTV9PUkRFUkVEDQogICBVTlNQRUNfV1JFRFVDX1NV TV9VTk9SREVSRUQNCisgIFVOU1BFQ19TRUxFQ1RfTUFTSw0KXSkNCihkZWZp bmVfY19lbnVtICJ1bnNwZWN2IiBbDQpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZp Zy9yaXNjdi92ZWN0b3IubWQgYi9nY2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci5t ZA0KaW5kZXggMjI4ZDBmOWE3NjYuLjk1NDUxZGM3NjJiIDEwMDY0NA0KLS0t IGEvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3IubWQNCisrKyBiL2djYy9jb25m aWcvcmlzY3YvdmVjdG9yLm1kDQpAQCAtNjEyMSwyMSArNjEyMSwyMSBAQCAo ZGVmaW5lX2luc24gIkBwcmVkX25vdDxtb2RlPiINCiAgICAoc2V0X2F0dHIg InZsX29wX2lkeCIgIjQiKQ0KICAgIChzZXQgKGF0dHIgImF2bF90eXBlX2lk eCIpIChjb25zdF9pbnQgNSkpXSkNCi0oZGVmaW5lX2luc24gIkBwcmVkX3Bv cGNvdW50PFZCOm1vZGU+PFA6bW9kZT4iDQotICBbKHNldCAobWF0Y2hfb3Bl cmFuZDpQIDAgInJlZ2lzdGVyX29wZXJhbmQiICAgICAgICAgICAgICAgIj1y IikNCisoZGVmaW5lX2luc24gIkBwcmVkX3BvcGNvdW50PFZCX1ZMUzptb2Rl PjxQOm1vZGU+Ig0KKyAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6UCAwICJyZWdp c3Rlcl9vcGVyYW5kIiAgICAgICAgICAgICAgICAgICAiPXIiKQ0KKHBvcGNv dW50OlANCi0gICAodW5zcGVjOlZCDQotICAgICBbKGFuZDpWQg0KLSAgICAg ICAgKG1hdGNoX29wZXJhbmQ6VkIgMSAidmVjdG9yX21hc2tfb3BlcmFuZCIg InZtV2MxIikNCi0gICAgICAgIChtYXRjaF9vcGVyYW5kOlZCIDIgInJlZ2lz dGVyX29wZXJhbmQiICAgICIgICB2ciIpKQ0KLSAgICAgIChtYXRjaF9vcGVy YW5kIDMgInZlY3Rvcl9sZW5ndGhfb3BlcmFuZCIgICAgIiAgIHJLIikNCi0g ICAgICAobWF0Y2hfb3BlcmFuZCA0ICJjb25zdF9pbnRfb3BlcmFuZCIgICAg ICAgICIgICAgaSIpDQorICAgKHVuc3BlYzpWQl9WTFMNCisgICAgIFsoYW5k OlZCX1ZMUw0KKyAgICAgICAgKG1hdGNoX29wZXJhbmQ6VkJfVkxTIDEgInZl Y3Rvcl9tYXNrX29wZXJhbmQiICJ2bVdjMSIpDQorICAgICAgICAobWF0Y2hf b3BlcmFuZDpWQl9WTFMgMiAicmVnaXN0ZXJfb3BlcmFuZCIgICAgIiAgIHZy IikpDQorICAgICAgKG1hdGNoX29wZXJhbmQgMyAidmVjdG9yX2xlbmd0aF9v cGVyYW5kIiAgICAgICAgIiAgIHJLIikNCisgICAgICAobWF0Y2hfb3BlcmFu ZCA0ICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICAgICAgICAiICAgIGkiKQ0K ICAgICAocmVnOlNJIFZMX1JFR05VTSkNCiAgICAgKHJlZzpTSSBWVFlQRV9S RUdOVU0pXSBVTlNQRUNfVlBSRURJQ0FURSkpKV0NCiAgICJUQVJHRVRfVkVD VE9SIg0KICAgInZjcG9wLm1cdCUwLCUyJXAxIg0KICAgWyhzZXRfYXR0ciAi dHlwZSIgInZtcG9wIikNCi0gICAoc2V0X2F0dHIgIm1vZGUiICI8VkI6TU9E RT4iKV0pDQorICAgKHNldF9hdHRyICJtb2RlIiAiPFZCX1ZMUzpNT0RFPiIp XSkNCihkZWZpbmVfaW5zbiAiQHByZWRfZmZzPFZCOm1vZGU+PFA6bW9kZT4i DQogICBbKHNldCAobWF0Y2hfb3BlcmFuZDpQIDAgInJlZ2lzdGVyX29wZXJh bmQiICAgICAgICAgICAgICAgICAiPXIiKQ0KZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy9lYXJseS1i cmVhay0xLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2F1dG92ZWMvZWFybHktYnJlYWstMS5jDQpuZXcgZmlsZSBtb2RlIDEwMDY0 NA0KaW5kZXggMDAwMDAwMDAwMDAuLmY3MDk3OWU4MWYxDQotLS0gL2Rldi9u dWxsDQorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2F1dG92ZWMvZWFybHktYnJlYWstMS5jDQpAQCAtMCwwICsxLDM0IEBADQor LyogeyBkZy1kbyBjb21waWxlIH0gKi8NCisvKiB7IGRnLW9wdGlvbnMgIi1t YXJjaD1ydjY0Z2N2IC1tYWJpPWxwNjRkIC1PMyAtZm5vLXNjaGVkdWxlLWlu c25zIC1mbm8tc2NoZWR1bGUtaW5zbnMyIC1mZHVtcC10cmVlLXZlY3QtZGV0 YWlscyIgfSAqLw0KKy8qIHsgZGctZmluYWwgeyBjaGVjay1mdW5jdGlvbi1i b2RpZXMgIioqIiAiIiB9IH0gKi8NCisNCisjZGVmaW5lIE4gODAzDQorDQor dW5zaWduZWQgdmVjdF9hW05dOw0KK3Vuc2lnbmVkIHZlY3RfYltOXTsNCisN CisvKg0KKyoqIHRlc3Q6DQorKiogLi4uDQorKiogdm1zbHR1XC52dlxzK3Zb MC05XStccyosdlswLTldKyxccyp2WzAtOV0rDQorKiogdmNwb3BcLm1ccytb YXR4XVswLTldK1xzKix2WzAtOV0rDQorKiogLi4uDQorKi8NCit1bnNpZ25l ZCB0ZXN0ICh1bnNpZ25lZCB4LCBpbnQgbikNCit7DQorICB1bnNpZ25lZCBy ZXQgPSAwOw0KKw0KKyAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspDQor ICAgIHsNCisgICAgICB2ZWN0X2JbaV0gPSB4ICsgaTsNCisNCisgICAgICBp ZiAodmVjdF9hW2ldID4geCkNCisgICAgICAgIGJyZWFrOw0KKw0KKyAgICAg IHZlY3RfYVtpXSA9IHg7DQorICAgIH0NCisNCisgIHJldHVybiByZXQ7DQor fQ0KKw0KKy8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAi TE9PUCBWRUNUT1JJWkVEIiAxICJ2ZWN0IiB9IH0gKi8NCmRpZmYgLS1naXQg YS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMv ZWFybHktYnJlYWstMi5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9hdXRvdmVjL2Vhcmx5LWJyZWFrLTIuYw0KbmV3IGZpbGUgbW9k ZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAwLi5kNDA1NzgzZDJjNA0KLS0t IC9kZXYvbnVsbA0KKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9hdXRvdmVjL2Vhcmx5LWJyZWFrLTIuYw0KQEAgLTAsMCArMSwz NyBAQA0KKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQorLyogeyBkZy1vcHRp b25zICItbWFyY2g9cnY2NGdjdiAtbWFiaT1scDY0ZCAtTzMgLWZuby1zY2hl ZHVsZS1pbnNucyAtZm5vLXNjaGVkdWxlLWluc25zMiAtZmR1bXAtdHJlZS12 ZWN0LWRldGFpbHMiIH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgY2hlY2stZnVu Y3Rpb24tYm9kaWVzICIqKiIgIiIgfSB9ICovDQorDQorI2RlZmluZSBOIDE3 MjgNCisNCit1bnNpZ25lZCB2ZWN0X2FbTl07DQordW5zaWduZWQgdmVjdF9i W05dOw0KKw0KKy8qDQorKiogdGVzdDoNCisqKiAuLi4NCisqKiB2bXNsdHVc LnZ2XHMrdlswLTldK1xzKix2WzAtOV0rLFxzKnZbMC05XSsNCisqKiB2Y3Bv cFwubVxzK1thdHhdWzAtOV0rXHMqLHZbMC05XSsNCisqKiAuLi4NCisqLw0K K3Vuc2lnbmVkIHRlc3QgKHVuc2lnbmVkIGxpbWl0LCBpbnQgbikNCit7DQor ICB1bnNpZ25lZCByZXQgPSAwOw0KKw0KKyAgZm9yIChpbnQgaSA9IDA7IGkg PCBuOyBpKyspDQorICAgIHsNCisgICAgICB2ZWN0X2JbaV0gPSBsaW1pdCAr IGk7DQorDQorICAgICAgaWYgKHZlY3RfYVtpXSA+IGxpbWl0KQ0KKyB7DQor ICAgcmV0ID0gdmVjdF9iW2ldOw0KKyAgIHJldHVybiByZXQ7DQorIH0NCisN CisgICAgICB2ZWN0X2FbaV0gPSBsaW1pdDsNCisgICAgfQ0KKw0KKyAgcmV0 dXJuIHJldDsNCit9DQorDQorLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1k dW1wLXRpbWVzICJMT09QIFZFQ1RPUklaRUQiIDEgInZlY3QiIH0gfSAqLw0K LS0gDQoyLjM0LjENCiANCiANCg== ------=_001_NextPart302510523110_=------