From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbguseast2.qq.com (smtpbguseast2.qq.com [54.204.34.130]) by sourceware.org (Postfix) with ESMTPS id D7C8F3858C50 for ; Thu, 3 Aug 2023 22:22:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D7C8F3858C50 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: bizesmtp62t1691101336tz5aggoz Received: from TABLET-POE6JQHH ( [222.125.138.247]) by bizesmtp.qq.com (ESMTP) with id ; Fri, 04 Aug 2023 06:22:15 +0800 (CST) X-QQ-SSF: 01400000000000G0V000000A0000000 X-QQ-FEAT: C/uo4i9hlaJNXqtGwuCd1m/8u/g0h5HTWCKk2INdAjARMVwpQJctvKscEiVkN o8Y/Bokl/D91WWhemE8ekjNe9h7dZ2+4oXMp2CSBjhOD/X9d8u4zZ/UwLFbm8GzNtKnmKED aXniwRNeQQxjG2voyA0QqBXEQ4avaZnawRjc29QQcVNwKOMMcwZx+jOK8rliVeuLDYRSd2O ceCGD3FMJVoHMcIAffAWpbwhXjWXCNAaHF8I8MA6L1IA5kEk44AqTJpjDjkwP1vAWIeItug n6RyravJj/IzN6n//iRAJPhmYNYOowH8klopq9fWUt1+ryQje9UipWBp4IdxPAXBmFOhqvr 65er6h8cRZ6oqqx4hm0PePPw8JaAgyim5oghr4pgTHewspQhrwhUm024iccCbgq3m5D2aZw uri+5EAwhhlhKFaFANRWTw== X-QQ-GoodBg: 2 X-BIZMAIL-ID: 1995663292326585019 Date: Fri, 4 Aug 2023 06:22:14 +0800 From: =?GB2312?B?1tO+09Xc?= To: pan2.li , gcc-patches Cc: pan2.li , yanzhang.wang , kito.cheng Subject: Re: [PATCH v1] RISC-V: Support RVV VFMACC rounding mode intrinsic API References: <20230803143837.2092129-1-pan2.li@intel.com> X-Priority: 3 X-GUID: 71779187-9D99-49C3-9CA2-E439C6F36301 X-Has-Attach: no X-Mailer: Foxmail 7.2.23.121[cn] Mime-Version: 1.0 Message-ID: <353BC0CB0C694068+202308040622139371963@rivai.ai> Content-Type: multipart/alternative; boundary="----=_001_NextPart725041710780_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-8.4 required=5.0 tests=BAYES_00,CHARSET_FARAWAY_HEADER,GIT_PATCH_0,HTML_MESSAGE,KAM_DMARC_STATUS,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H4,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_NextPart725041710780_=---- Content-Type: text/plain; charset="GB2312" Content-Transfer-Encoding: base64 TEdUTQ0KDQoNCg0KanV6aGUuemhvbmdAcml2YWkuYWkNCiANCkZyb206IHBh bjIubGkNCkRhdGU6IDIwMjMtMDgtMDMgMjI6MzgNClRvOiBnY2MtcGF0Y2hl cw0KQ0M6IGp1emhlLnpob25nOyBwYW4yLmxpOyB5YW56aGFuZy53YW5nOyBr aXRvLmNoZW5nDQpTdWJqZWN0OiBbUEFUQ0ggdjFdIFJJU0MtVjogU3VwcG9y dCBSVlYgVkZNQUNDIHJvdW5kaW5nIG1vZGUgaW50cmluc2ljIEFQSQ0KRnJv bTogUGFuIExpIDxwYW4yLmxpQGludGVsLmNvbT4NCiANClRoaXMgcGF0Y2gg d291bGQgbGlrZSB0byBzdXBwb3J0IHRoZSByb3VuZGluZyBtb2RlIEFQSSBm b3IgdGhlDQpWRk1BQ0MgZm9yIHRoZSBiZWxvdyBzYW1wbGVzLg0KIA0KKiBf X3Jpc2N2X3ZmbWFjY192dl9mMzJtMV9ybQ0KKiBfX3Jpc2N2X3ZmbWFjY192 dl9mMzJtMV9ybV9tDQoqIF9fcmlzY3ZfdmZtYWNjX3ZmX2YzMm0xX3JtDQoq IF9fcmlzY3ZfdmZtYWNjX3ZmX2YzMm0xX3JtX20NCiANClNpZ25lZC1vZmYt Ynk6IFBhbiBMaSA8cGFuMi5saUBpbnRlbC5jb20+DQogDQpnY2MvQ2hhbmdl TG9nOg0KIA0KKiBjb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5z LWJhc2VzLmNjDQooY2xhc3MgdmZtYWNjX2ZybSk6IE5ldyBjbGFzcyBmb3Ig dmZtYWNjIGZybS4NCih2Zm1hY2NfZnJtX29iaik6IE5ldyBkZWNsYXJhdGlv bi4NCihCQVNFKTogRGl0dG8uDQoqIGNvbmZpZy9yaXNjdi9yaXNjdi12ZWN0 b3ItYnVpbHRpbnMtYmFzZXMuaDogRGl0dG8uDQoqIGNvbmZpZy9yaXNjdi9y aXNjdi12ZWN0b3ItYnVpbHRpbnMtZnVuY3Rpb25zLmRlZg0KKHZmbWFjY19m cm0pOiBOZXcgZnVuY3Rpb24gZGVmaW5pdGlvbi4NCiogY29uZmlnL3Jpc2N2 L3Jpc2N2LXZlY3Rvci1idWlsdGlucy5jYw0KKGZ1bmN0aW9uX2V4cGFuZGVy Ojp1c2VfdGVybm9wX2luc24pOiBBZGQgZnJtIG9wZXJhbmQgc3VwcG9ydC4N CiogY29uZmlnL3Jpc2N2L3ZlY3Rvci5tZDogQWRkIHZmbXVsYWRkIHRvIGZy bV9tb2RlLg0KIA0KZ2NjL3Rlc3RzdWl0ZS9DaGFuZ2VMb2c6DQogDQoqIGdj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvZmxvYXQtcG9pbnQtc2luZ2xlLW11 bHRpcGx5LWFkZC5jOiBOZXcgdGVzdC4NCi0tLQ0KLi4uL3Jpc2N2L3Jpc2N2 LXZlY3Rvci1idWlsdGlucy1iYXNlcy5jYyAgICAgIHwgMjUgKysrKysrKysr Kw0KLi4uL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlucy1iYXNlcy5oICAg ICAgIHwgIDEgKw0KLi4uL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlucy1m dW5jdGlvbnMuZGVmIHwgIDIgKw0KZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12 ZWN0b3ItYnVpbHRpbnMuY2MgICAgIHwgMjIgKysrKysrKy0tDQpnY2MvY29u ZmlnL3Jpc2N2L3ZlY3Rvci5tZCAgICAgICAgICAgICAgICAgICAgfCAgMiAr LQ0KLi4uL2Jhc2UvZmxvYXQtcG9pbnQtc2luZ2xlLW11bHRpcGx5LWFkZC5j ICAgIHwgNDcgKysrKysrKysrKysrKysrKysrKw0KNiBmaWxlcyBjaGFuZ2Vk LCA5MyBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQ0KY3JlYXRlIG1v ZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YmFzZS9mbG9hdC1wb2ludC1zaW5nbGUtbXVsdGlwbHktYWRkLmMNCiANCmRp ZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWls dGlucy1iYXNlcy5jYyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9y LWJ1aWx0aW5zLWJhc2VzLmNjDQppbmRleCA4ZDY4OWYwYzkzNS4uMjA0ZWE3 N2MzNzIgMTAwNjQ0DQotLS0gYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZl Y3Rvci1idWlsdGlucy1iYXNlcy5jYw0KKysrIGIvZ2NjL2NvbmZpZy9yaXNj di9yaXNjdi12ZWN0b3ItYnVpbHRpbnMtYmFzZXMuY2MNCkBAIC0zNTUsNiAr MzU1LDI5IEBAIHB1YmxpYzoNCiAgIH0NCn07DQorLyogSW1wbGVtZW50cyBi ZWxvdyBpbnN0cnVjdGlvbnMgZm9yIGZybQ0KKyAgIC0gdmZtYWNjDQorKi8N CitjbGFzcyB2Zm1hY2NfZnJtIDogcHVibGljIGZ1bmN0aW9uX2Jhc2UNCit7 DQorcHVibGljOg0KKyAgYm9vbCBoYXNfcm91bmRpbmdfbW9kZV9vcGVyYW5k X3AgKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQ0KKw0KKyAg Ym9vbCBoYXNfbWVyZ2Vfb3BlcmFuZF9wICgpIGNvbnN0IG92ZXJyaWRlIHsg cmV0dXJuIGZhbHNlOyB9DQorDQorICBydHggZXhwYW5kIChmdW5jdGlvbl9l eHBhbmRlciAmZSkgY29uc3Qgb3ZlcnJpZGUNCisgIHsNCisgICAgaWYgKGUu b3BfaW5mby0+b3AgPT0gT1BfVFlQRV92ZikNCisgICAgICByZXR1cm4gZS51 c2VfdGVybm9wX2luc24gKHRydWUsDQorIGNvZGVfZm9yX3ByZWRfbXVsX3Nj YWxhciAoUExVUywNCisgICBlLnZlY3Rvcl9tb2RlICgpKSk7DQorICAgIGlm IChlLm9wX2luZm8tPm9wID09IE9QX1RZUEVfdnYpDQorICAgICAgcmV0dXJu IGUudXNlX3Rlcm5vcF9pbnNuICh0cnVlLA0KKyBjb2RlX2Zvcl9wcmVkX211 bCAoUExVUywgZS52ZWN0b3JfbW9kZSAoKSkpOw0KKyAgICBnY2NfdW5yZWFj aGFibGUgKCk7DQorICB9DQorfTsNCisNCi8qIEltcGxlbWVudHMgdnJzdWIu ICAqLw0KY2xhc3MgdnJzdWIgOiBwdWJsaWMgZnVuY3Rpb25fYmFzZQ0Kew0K QEAgLTIxMTUsNiArMjEzOCw3IEBAIHN0YXRpYyBDT05TVEVYUFIgY29uc3Qg cmV2ZXJzZV9iaW5vcF9mcm08RElWPiB2ZnJkaXZfZnJtX29iajsNCnN0YXRp YyBDT05TVEVYUFIgY29uc3Qgd2lkZW5fYmlub3A8TVVMVD4gdmZ3bXVsX29i ajsNCnN0YXRpYyBDT05TVEVYUFIgY29uc3Qgd2lkZW5fYmlub3BfZnJtPE1V TFQ+IHZmd211bF9mcm1fb2JqOw0Kc3RhdGljIENPTlNURVhQUiBjb25zdCB2 Zm1hY2MgdmZtYWNjX29iajsNCitzdGF0aWMgQ09OU1RFWFBSIGNvbnN0IHZm bWFjY19mcm0gdmZtYWNjX2ZybV9vYmo7DQpzdGF0aWMgQ09OU1RFWFBSIGNv bnN0IHZmbm1zYWMgdmZubXNhY19vYmo7DQpzdGF0aWMgQ09OU1RFWFBSIGNv bnN0IHZmbWFkZCB2Zm1hZGRfb2JqOw0Kc3RhdGljIENPTlNURVhQUiBjb25z dCB2Zm5tc3ViIHZmbm1zdWJfb2JqOw0KQEAgLTIzNTAsNiArMjM3NCw3IEBA IEJBU0UgKHZmcmRpdl9mcm0pDQpCQVNFICh2ZndtdWwpDQpCQVNFICh2Zndt dWxfZnJtKQ0KQkFTRSAodmZtYWNjKQ0KK0JBU0UgKHZmbWFjY19mcm0pDQpC QVNFICh2Zm5tc2FjKQ0KQkFTRSAodmZtYWRkKQ0KQkFTRSAodmZubXN1YikN CmRpZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1i dWlsdGlucy1iYXNlcy5oIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0 b3ItYnVpbHRpbnMtYmFzZXMuaA0KaW5kZXggMmQyYjUyYTMxMmMuLjY3ZDE4 NDEyYjRjIDEwMDY0NA0KLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12 ZWN0b3ItYnVpbHRpbnMtYmFzZXMuaA0KKysrIGIvZ2NjL2NvbmZpZy9yaXNj di9yaXNjdi12ZWN0b3ItYnVpbHRpbnMtYmFzZXMuaA0KQEAgLTE2MCw2ICsx NjAsNyBAQCBleHRlcm4gY29uc3QgZnVuY3Rpb25fYmFzZSAqY29uc3QgdmZy ZGl2X2ZybTsNCmV4dGVybiBjb25zdCBmdW5jdGlvbl9iYXNlICpjb25zdCB2 ZndtdWw7DQpleHRlcm4gY29uc3QgZnVuY3Rpb25fYmFzZSAqY29uc3QgdmZ3 bXVsX2ZybTsNCmV4dGVybiBjb25zdCBmdW5jdGlvbl9iYXNlICpjb25zdCB2 Zm1hY2M7DQorZXh0ZXJuIGNvbnN0IGZ1bmN0aW9uX2Jhc2UgKmNvbnN0IHZm bWFjY19mcm07DQpleHRlcm4gY29uc3QgZnVuY3Rpb25fYmFzZSAqY29uc3Qg dmZubXNhYzsNCmV4dGVybiBjb25zdCBmdW5jdGlvbl9iYXNlICpjb25zdCB2 Zm1hZGQ7DQpleHRlcm4gY29uc3QgZnVuY3Rpb25fYmFzZSAqY29uc3QgdmZu bXN1YjsNCmRpZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LXZl Y3Rvci1idWlsdGlucy1mdW5jdGlvbnMuZGVmIGIvZ2NjL2NvbmZpZy9yaXNj di9yaXNjdi12ZWN0b3ItYnVpbHRpbnMtZnVuY3Rpb25zLmRlZg0KaW5kZXgg ZDQzYjMzZGVkMTcuLjM5MDZmMmU2MjQ4IDEwMDY0NA0KLS0tIGEvZ2NjL2Nv bmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMtZnVuY3Rpb25zLmRl Zg0KKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRp bnMtZnVuY3Rpb25zLmRlZg0KQEAgLTM0OCw2ICszNDgsOCBAQCBERUZfUlZW X0ZVTkNUSU9OICh2Zm5tYWRkLCBhbHUsIGZ1bGxfcHJlZHMsIGZfdnZ2dl9v cHMpDQpERUZfUlZWX0ZVTkNUSU9OICh2Zm5tYWRkLCBhbHUsIGZ1bGxfcHJl ZHMsIGZfdnZmdl9vcHMpDQpERUZfUlZWX0ZVTkNUSU9OICh2Zm1zdWIsIGFs dSwgZnVsbF9wcmVkcywgZl92dnZ2X29wcykNCkRFRl9SVlZfRlVOQ1RJT04g KHZmbXN1YiwgYWx1LCBmdWxsX3ByZWRzLCBmX3Z2ZnZfb3BzKQ0KK0RFRl9S VlZfRlVOQ1RJT04gKHZmbWFjY19mcm0sIGFsdV9mcm0sIGZ1bGxfcHJlZHMs IGZfdnZ2dl9vcHMpDQorREVGX1JWVl9GVU5DVElPTiAodmZtYWNjX2ZybSwg YWx1X2ZybSwgZnVsbF9wcmVkcywgZl92dmZ2X29wcykNCi8vIDEzLjcuIFZl Y3RvciBXaWRlbmluZyBGbG9hdGluZy1Qb2ludCBGdXNlZCBNdWx0aXBseS1B ZGQgSW5zdHJ1Y3Rpb25zDQpERUZfUlZWX0ZVTkNUSU9OICh2ZndtYWNjLCBh bHUsIGZ1bGxfcHJlZHMsIGZfd3d2dl9vcHMpDQpkaWZmIC0tZ2l0IGEvZ2Nj L2NvbmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMuY2MgYi9nY2Mv Y29uZmlnL3Jpc2N2L3Jpc2N2LXZlY3Rvci1idWlsdGlucy5jYw0KaW5kZXgg NTI4ZGNhN2FlODUuLmFiYWIwNmMwMGVkIDEwMDY0NA0KLS0tIGEvZ2NjL2Nv bmZpZy9yaXNjdi9yaXNjdi12ZWN0b3ItYnVpbHRpbnMuY2MNCisrKyBiL2dj Yy9jb25maWcvcmlzY3YvcmlzY3YtdmVjdG9yLWJ1aWx0aW5zLmNjDQpAQCAt MzczMCwxNyArMzczMCwyOSBAQCBmdW5jdGlvbl9leHBhbmRlcjo6dXNlX3Rl cm5vcF9pbnNuIChib29sIHZkX2FjY3VtX3AsIGluc25fY29kZSBpY29kZSkN CiAgICAgfQ0KICAgZm9yIChpbnQgYXJnbm8gPSBhcmdfb2Zmc2V0OyBhcmdu byA8IGNhbGxfZXhwcl9uYXJncyAoZXhwKTsgYXJnbm8rKykNCi0gICAgYWRk X2lucHV0X29wZXJhbmQgKGFyZ25vKTsNCisgICAgew0KKyAgICAgIGlmIChi YXNlLT5oYXNfcm91bmRpbmdfbW9kZV9vcGVyYW5kX3AgKCkNCisgICAmJiBh cmdubyA9PSBjYWxsX2V4cHJfbmFyZ3MgKGV4cCkgLSAyKQ0KKyB7DQorICAg LyogU2luY2UgdGhlIHJvdW5kaW5nIG1vZGUgYXJndW1lbnQgcG9zaXRpb24g aXMgbm90IGNvbnNpc3RlbnQgd2l0aA0KKyAgICAgIHRoZSBpbnN0cnVjdGlv biBwYXR0ZXJuLCB3ZSBuZWVkIHRvIHNraXAgcm91bmRpbmcgbW9kZSBhcmd1 bWVudA0KKyAgICAgIGhlcmUuICAqLw0KKyAgIGNvbnRpbnVlOw0KKyB9DQor ICAgICAgYWRkX2lucHV0X29wZXJhbmQgKGFyZ25vKTsNCisgICAgfQ0KICAg YWRkX2lucHV0X29wZXJhbmQgKFBtb2RlLCBnZXRfdGFpbF9wb2xpY3lfZm9y X3ByZWQgKHByZWQpKTsNCiAgIGFkZF9pbnB1dF9vcGVyYW5kIChQbW9kZSwg Z2V0X21hc2tfcG9saWN5X2Zvcl9wcmVkIChwcmVkKSk7DQogICBhZGRfaW5w dXRfb3BlcmFuZCAoUG1vZGUsIGdldF9hdmxfdHlwZV9ydHggKGF2bF90eXBl OjpOT05WTE1BWCkpOw0KLSAgLyogVE9ETzogQ3VycmVudGx5LCB3ZSBkb24n dCBzdXBwb3J0IGludHJpbnNpYyB0aGF0IGlzIG1vZGVsaW5nIHJvdW5kaW5n IG1vZGUuDQotICAgICBXZSBhZGQgZGVmYXVsdCByb3VuZGluZyBtb2RlIGZv ciB0aGUgaW50cmluc2ljcyB0aGF0IGRpZG4ndCBtb2RlbCByb3VuZGluZw0K LSAgICAgbW9kZSB5ZXQuICAqLw0KKyAgaWYgKGJhc2UtPmhhc19yb3VuZGlu Z19tb2RlX29wZXJhbmRfcCAoKSkNCisgICAgYWRkX2lucHV0X29wZXJhbmQg KGNhbGxfZXhwcl9uYXJncyAoZXhwKSAtIDIpOw0KKw0KKyAgLyogVGhlIFJW ViBmbG9hdGluZy1wb2ludCBvbmx5IHN1cHBvcnQgZHluYW1pYyByb3VuZGlu ZyBtb2RlIGluIHRoZQ0KKyAgICAgRlJNIHJlZ2lzdGVyLiAgKi8NCiAgIGlm IChvcG5vICE9IGluc25fZGF0YVtpY29kZV0ubl9nZW5lcmF0b3JfYXJncykN Ci0gICAgYWRkX2lucHV0X29wZXJhbmQgKFBtb2RlLCBjb25zdDBfcnR4KTsN CisgICAgYWRkX2lucHV0X29wZXJhbmQgKFBtb2RlLCBnZW5faW50X21vZGUg KHJpc2N2X3ZlY3Rvcjo6RlJNX0RZTiwgUG1vZGUpKTsNCiAgIHJldHVybiBn ZW5lcmF0ZV9pbnNuIChpY29kZSk7DQp9DQpkaWZmIC0tZ2l0IGEvZ2NjL2Nv bmZpZy9yaXNjdi92ZWN0b3IubWQgYi9nY2MvY29uZmlnL3Jpc2N2L3ZlY3Rv ci5tZA0KaW5kZXggNzUwYjJkZThkZjkuLjAxZGM3YjBmZDVmIDEwMDY0NA0K LS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3IubWQNCisrKyBiL2djYy9j b25maWcvcmlzY3YvdmVjdG9yLm1kDQpAQCAtODY2LDcgKzg2Niw3IEBAIChk ZWZpbmVfYXR0ciAidnhybV9tb2RlIiAicm51LHJuZSxyZG4scm9kLG5vbmUi DQo7OyBEZWZpbmVzIHJvdW5kaW5nIG1vZGUgb2YgYW4gZmxvYXRpbmctcG9p bnQgb3BlcmF0aW9uLg0KKGRlZmluZV9hdHRyICJmcm1fbW9kZSIgInJuZSxy dHoscmRuLHJ1cCxybW0sZHluLGR5bl9leGl0LGR5bl9jYWxsLG5vbmUiDQot ICAoY29uZCBbKGVxX2F0dHIgInR5cGUiICJ2ZmFsdSx2ZndhbHUsdmZtdWws dmZkaXYsdmZ3bXVsIikNCisgIChjb25kIFsoZXFfYXR0ciAidHlwZSIgInZm YWx1LHZmd2FsdSx2Zm11bCx2ZmRpdix2ZndtdWwsdmZtdWxhZGQiKQ0KICAg ICAgICAgIChjb25kDQogICBbKG1hdGNoX3Rlc3QgIklOVFZBTCAob3BlcmFu ZHNbOV0pID09IHJpc2N2X3ZlY3Rvcjo6RlJNX1JORSIpDQogICAgKGNvbnN0 X3N0cmluZyAicm5lIikNCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvZmxvYXQtcG9pbnQtc2luZ2xlLW11 bHRpcGx5LWFkZC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9iYXNlL2Zsb2F0LXBvaW50LXNpbmdsZS1tdWx0aXBseS1hZGQuYw0K bmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAwLi5kZjI5 ZjRkMjQwZg0KLS0tIC9kZXYvbnVsbA0KKysrIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL2Zsb2F0LXBvaW50LXNpbmdsZS1t dWx0aXBseS1hZGQuYw0KQEAgLTAsMCArMSw0NyBAQA0KKy8qIHsgZGctZG8g Y29tcGlsZSB9ICovDQorLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdj diAtbWFiaT1scDY0IC1PMyAtV25vLXBzYWJpIiB9ICovDQorDQorI2luY2x1 ZGUgInJpc2N2X3ZlY3Rvci5oIg0KKw0KK3R5cGVkZWYgZmxvYXQgZmxvYXQz Ml90Ow0KKw0KK3ZmbG9hdDMybTFfdA0KK3Rlc3RfcmlzY3ZfdmZtYWNjX3Z2 X2YzMm0xX3JtICh2ZmxvYXQzMm0xX3QgdmQsIHZmbG9hdDMybTFfdCBvcDEs DQorICAgICAgICB2ZmxvYXQzMm0xX3Qgb3AyLCBzaXplX3QgdmwpIHsNCisg IHJldHVybiBfX3Jpc2N2X3ZmbWFjY192dl9mMzJtMV9ybSAodmQsIG9wMSwg b3AyLCAwLCB2bCk7DQorfQ0KKw0KK3ZmbG9hdDMybTFfdA0KK3Rlc3RfdmZt YWNjX3Z2X2YzMm0xX3JtX20gKHZib29sMzJfdCBtYXNrLCB2ZmxvYXQzMm0x X3QgdmQsIHZmbG9hdDMybTFfdCBvcDEsDQorICAgIHZmbG9hdDMybTFfdCBv cDIsIHNpemVfdCB2bCkgew0KKyAgcmV0dXJuIF9fcmlzY3ZfdmZtYWNjX3Z2 X2YzMm0xX3JtX20gKG1hc2ssIHZkLCBvcDEsIG9wMiwgMSwgdmwpOw0KK30N CisNCit2ZmxvYXQzMm0xX3QNCit0ZXN0X3ZmbWFjY192Zl9mMzJtMV9ybSAo dmZsb2F0MzJtMV90IHZkLCBmbG9hdDMyX3Qgb3AxLCB2ZmxvYXQzMm0xX3Qg b3AyLA0KKyBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZmbWFj Y192Zl9mMzJtMV9ybSAodmQsIG9wMSwgb3AyLCAyLCB2bCk7DQorfQ0KKw0K K3ZmbG9hdDMybTFfdA0KK3Rlc3RfdmZtYWNjX3ZmX2YzMm0xX3JtX20gKHZm bG9hdDMybTFfdCB2ZCwgdmJvb2wzMl90IG1hc2ssIGZsb2F0MzJfdCBvcDEs DQorICAgIHZmbG9hdDMybTFfdCBvcDIsIHNpemVfdCB2bCkgew0KKyAgcmV0 dXJuIF9fcmlzY3ZfdmZtYWNjX3ZmX2YzMm0xX3JtX20gKG1hc2ssIHZkLCBv cDEsIG9wMiwgMywgdmwpOw0KK30NCisNCit2ZmxvYXQzMm0xX3QNCit0ZXN0 X3Jpc2N2X3ZmbWFjY192dl9mMzJtMSAodmZsb2F0MzJtMV90IHZkLCB2Zmxv YXQzMm0xX3Qgb3AxLCB2ZmxvYXQzMm0xX3Qgb3AyLA0KKyAgICAgc2l6ZV90 IHZsKSB7DQorICByZXR1cm4gX19yaXNjdl92Zm1hY2NfdnZfZjMybTEgKHZk LCBvcDEsIG9wMiwgdmwpOw0KK30NCisNCit2ZmxvYXQzMm0xX3QNCit0ZXN0 X3ZmbWFjY192dl9mMzJtMV9tICh2Ym9vbDMyX3QgbWFzaywgdmZsb2F0MzJt MV90IHZkLCB2ZmxvYXQzMm0xX3Qgb3AxLA0KKyB2ZmxvYXQzMm0xX3Qgb3Ay LCBzaXplX3QgdmwpIHsNCisgIHJldHVybiBfX3Jpc2N2X3ZmbWFjY192dl9m MzJtMV9tIChtYXNrLCB2ZCwgb3AxLCBvcDIsIHZsKTsNCit9DQorDQorLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2Zm1hY2NcLnZb dmZdXHMrdlswLTldKyxccypbZmF2XStbMC05XSssXHMqdlswLTldK30gNiB9 IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMg e2Zycm1ccytbYXhzXVswLTldK30gNCB9IH0gKi8NCisvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge2Zzcm1ccytbYXhzXVswLTldK30g NCB9IH0gKi8NCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGlt ZXMge2Zzcm1pXHMrWzAxMjM0XX0gNCB9IH0gKi8NCi0tIA0KMi4zNC4xDQog DQogDQo= ------=_001_NextPart725041710780_=------