From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbg156.qq.com (smtpbg156.qq.com [15.184.82.18]) by sourceware.org (Postfix) with ESMTPS id DE80E3858D33 for ; Thu, 20 Apr 2023 02:24:44 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org DE80E3858D33 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: bizesmtp70t1681957458tp68533w Received: from LAPTOP-EPITNQBU ( [58.60.1.20]) by bizesmtp.qq.com (ESMTP) with id ; Thu, 20 Apr 2023 10:24:17 +0800 (CST) X-QQ-SSF: 01400000000000F0P000000A0000000 X-QQ-FEAT: cz3kOUyHDhXVxyHLromwlkKdxwD5CyE0oUPtJB+p8bv++CZ9fGogauhptAWLP sq+g+L4p1X/IaCOYDOiqa72HTFjM7K1BJG9uFoQ7ncw5auXDXrzmMmc9y7MyoYT5f1m8QnM qmj4tjUUvAsyaYqp/F+tjGuGSCJ4OXCsplybagEr+rBydbxorRnghmz5VMBveKcuV5umoqj 5dxXkNm3lwx9LfxpyF/0p3eAILpwJXuav+/dxSGItfirTU3wUP8z1a1vRE9cLJ7cvOffFXl MM221K/Y2sKPmabTawMqp/tHN/pqIR1im7Nzwm9NAgBVKK91mOBwWRPiAvPU4xD+2EGUF+T IaYOzmwdVTb14zVryEWZiZQvvwyS24EB/51eQgJGhajyXXi6wrkTrQ9ufXvf3X6GT2sDSVh OTTkRDnNjwbeMrBiZ2RXM5NiA+1iZ+sBtRaWYeR0B9c= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 14028888915412385217 Date: Thu, 20 Apr 2023 10:24:17 +0800 From: "juzhe.zhong@rivai.ai" To: collison , gcc-patches Cc: jeffreyalaw , Kito.cheng , kito.cheng , palmer , palmer , "Richard Biener" Subject: Re: [PATCH v4 05/10] RISC-V:autovec: Add autovectorization patterns for binary integer operations References: <20230417183701.2249183-1-collison@rivosinc.com>, <20230417183701.2249183-6-collison@rivosinc.com> X-Priority: 3 X-GUID: BC0022B5-A495-480D-ABB6-62A0470F7F8B X-Has-Attach: no X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: <38A0D0C38DD3239E+2023042010241661230530@rivai.ai> Content-Type: multipart/alternative; boundary="----=_001_NextPart321270503745_=----" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvr:qybglogicsvr7 X-Spam-Status: No, score=-9.5 required=5.0 tests=BAYES_00,GIT_PATCH_0,HK_OBFDOM,HTML_MESSAGE,KAM_DMARC_STATUS,KAM_SHORT,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,RCVD_IN_SORBS_WEB,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_NextPart321270503745_=---- Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MS4gV2Ugc2hvdWxkIG9ubHkgc3VwcG9ydCBsZW5fbG9hZC9sZW5fc3RvcmUg aW4gdGhlIGZpcnN0IHBhdGNoIGJlZm9yZSBhbnkgb3RoZXIgYXV0by12ZWN0 b3JpemF0aW9uIG9wZXJhdGlvbi4NCiAgICBJIGhhdmUgc2VudCB0aGUgcGF0 Y2g6DQogICAgaHR0cHM6Ly9nY2MuZ251Lm9yZy9waXBlcm1haWwvZ2NjLXBh dGNoZXMvMjAyMy1BcHJpbC82MTYyMjMuaHRtbCANCg0KMi4gY29uZF88b3B0 YWI+PG1vZGU+IGlzIHRoZSBjb25kaXRpb25hbCBhdXRvLXZlY3Rvcml6YXRp b24gcGF0dGVybiB1c2VkIGJ5IHJlZHVjdGlvbiBvcGVyYXRpb24gYW5kIGNv bXBhcmlzb24gc2VsZWN0aW5nLg0KICAgIElmIHdlIGRvbid0IGhhdmUgcmVk dWNlXyogcGF0dGVybiBhbmQgVkNPTkQvVkVDX0NNUC8uLi4gcGF0dGVybnMs IHdlIHNob3VsZCBub3QgaGF2ZSB0aGVtIG5vdy4NCg0KMy4rICBydHggbWVy Z2UgPSBSVlZfVlVOREVGICg8TU9ERT5tb2RlKTsNCisgIHJ0eCB2bCA9IGdl bl9yZWdfcnR4IChQbW9kZSk7DQorICBlbWl0X3ZsbWF4X3ZzZXR2bCAoPE1P REU+bW9kZSwgdmwpOw0KKyAgcnR4IG1hc2tfcG9saWN5ID0gZ2V0X21hc2tf cG9saWN5X25vX3ByZWQoKTsNCisgIHJ0eCB0YWlsX3BvbGljeSA9IGdldF90 YWlsX3BvbGljeV9ub19wcmVkKCk7DQorICBydHggbWFzayA9IENPTlNUTTFf UlRYKDxWTT5tb2RlKTsNCisgIHJ0eCB2bG1heF9hdmxfcCA9IGdldF9hdmxf dHlwZV9ydHgoTk9OVkxNQVgpOw0KDQpUaGVzZSBvcGVyYW5kcyBwcmVwYXJh dGlvbiBjb2RlcyBzaG91bGQgYmUgYWRkZWQgaW50byBhIHdyYXBwZXIuDQpI b3cgdG8gYWRkIGEgd3JhcHBlciwgeW91IGNhbiByZWZlcmVuY2UgImVtaXRf bm9udmxtYXhfb3AiICwgImVtaXRfcHJlZF9vcCIuLi4gZnVuY3Rpb25zLg0K DQpUaGFua3MuDQoNCg0KanV6aGUuemhvbmdAcml2YWkuYWkNCiANCkZyb206 IE1pY2hhZWwgQ29sbGlzb24NCkRhdGU6IDIwMjMtMDQtMTggMDI6MzYNClRv OiBnY2MtcGF0Y2hlcw0KU3ViamVjdDogW1BBVENIIHY0IDA1LzEwXSBSSVND LVY6YXV0b3ZlYzogQWRkIGF1dG92ZWN0b3JpemF0aW9uIHBhdHRlcm5zIGZv ciBiaW5hcnkgaW50ZWdlciBvcGVyYXRpb25zDQoyMDIzLTAzLTAyICBNaWNo YWVsIENvbGxpc29uICA8Y29sbGlzb25Acml2b3NpbmMuY29tPg0KICAgIEp1 emhlIFpob25nICA8anV6aGUuemhvbmdAcml2YWkuYWk+DQogDQoqIGNvbmZp Zy9yaXNjdi9yaXNjdi5tZCAocmlzY3ZfdmVjdG9yX3ByZWZlcnJlZF9zaW1k X21vZGUpOiBJbmNsdWRlDQp2ZWN0b3ItaXRlcmF0b3JzLm1kLg0KKiBjb25m aWcvcmlzY3YvdmVjdG9yLWF1dG8ubWQ6IE5ldyBmaWxlIGNvbnRhaW5pbmcN CmF1dG92ZWN0b3JpemF0aW9uIHBhdHRlcm5zLg0KKiBjb25maWcvcmlzY3Yv dmVjdG9yLWl0ZXJhdG9ycy5tZCAoVU5TUEVDX1ZBREQvVU5TUEVDX1ZTVUIp Og0KTmV3IHVuc3BlY3MgZm9yIGF1dG92ZWN0b3JpemF0aW9uIHBhdHRlcm5z Lg0KKiBjb25maWcvcmlzY3YvdmVjdG9yLm1kOiBSZW1vdmUgaW5jbHVkZSBv ZiB2ZWN0b3ItaXRlcmF0b3JzLm1kDQphbmQgaW5jbHVkZSB2ZWN0b3ItYXV0 by5tZC4NCi0tLQ0KZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5tZCAgICAgICAg ICAgIHwgIDEgKw0KZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3ItYXV0by5tZCAg ICAgIHwgNzkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0KZ2NjL2Nv bmZpZy9yaXNjdi92ZWN0b3ItaXRlcmF0b3JzLm1kIHwgIDIgKw0KZ2NjL2Nv bmZpZy9yaXNjdi92ZWN0b3IubWQgICAgICAgICAgIHwgIDQgKy0NCjQgZmls ZXMgY2hhbmdlZCwgODQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkN CmNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci1h dXRvLm1kDQogDQpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9yaXNj di5tZCBiL2djYy9jb25maWcvcmlzY3YvcmlzY3YubWQNCmluZGV4IGJjMzg0 ZDlhZWRmLi43ZjhmM2E2Y2IxOCAxMDA2NDQNCi0tLSBhL2djYy9jb25maWcv cmlzY3YvcmlzY3YubWQNCisrKyBiL2djYy9jb25maWcvcmlzY3YvcmlzY3Yu bWQNCkBAIC0xMzUsNiArMTM1LDcgQEANCihpbmNsdWRlICJwcmVkaWNhdGVz Lm1kIikNCihpbmNsdWRlICJjb25zdHJhaW50cy5tZCIpDQooaW5jbHVkZSAi aXRlcmF0b3JzLm1kIikNCisoaW5jbHVkZSAidmVjdG9yLWl0ZXJhdG9ycy5t ZCIpDQo7OyAuLi4uLi4uLi4uLi4uLi4uLi4uLg0KOzsNCmRpZmYgLS1naXQg YS9nY2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci1hdXRvLm1kIGIvZ2NjL2NvbmZp Zy9yaXNjdi92ZWN0b3ItYXV0by5tZA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQN CmluZGV4IDAwMDAwMDAwMDAwLi5kYzYyZjlhZjcwNQ0KLS0tIC9kZXYvbnVs bA0KKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3ItYXV0by5tZA0KQEAg LTAsMCArMSw3OSBAQA0KKzs7IE1hY2hpbmUgZGVzY3JpcHRpb24gZm9yIFJJ U0MtViAnVicgRXh0ZW5zaW9uIGZvciBHTlUgY29tcGlsZXIuDQorOzsgQ29w eXJpZ2h0IChDKSAyMDIyLTIwMjMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBJbmMuDQorOzsgQ29udHJpYnV0ZWQgYnkgSnV6aGUgWmhvbmcgKGp1emhl Lnpob25nQHJpdmFpLmFpKSwgUmlWQUkgVGVjaG5vbG9naWVzIEx0ZC4NCis7 OyBDb250cmlidXRlZCBieSBNaWNoYWVsIENvbGxpc29uIChjb2xsaXNvbkBy aXZvc2luYy5jb20sIFJpdm9zIEluYy4NCisNCis7OyBUaGlzIGZpbGUgaXMg cGFydCBvZiBHQ0MuDQorDQorOzsgR0NDIGlzIGZyZWUgc29mdHdhcmU7IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCis7OyBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieQ0KKzs7IHRoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMsIG9yIChhdCB5b3VyIG9wdGlv bikNCis7OyBhbnkgbGF0ZXIgdmVyc2lvbi4NCisNCis7OyBHQ0MgaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwN Cis7OyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KKzs7IE1FUkNIQU5UQUJJTElUWSBv ciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUN Cis7OyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRh aWxzLg0KKw0KKzs7IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQorOzsgYWxvbmcg d2l0aCBHQ0M7IHNlZSB0aGUgZmlsZSBDT1BZSU5HMy4gIElmIG5vdCBzZWUN Cis7OyA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uDQorDQorDQor OzsgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KKzs7IC0tLS0gW0lO VF0gQWRkaXRpb24NCis7OyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t DQorOzsgSW5jbHVkZXM6DQorOzsgLSB2YWRkLnZ2DQorOzsgLSB2YWRkLnZ4 DQorOzsgLSB2YWRkLnZpDQorOzsgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0KKw0KKyhkZWZpbmVfZXhwYW5kICI8b3B0YWI+PG1vZGU+MyINCisg IFsoc2V0IChtYXRjaF9vcGVyYW5kOlZJIDAgInJlZ2lzdGVyX29wZXJhbmQi KQ0KKyAoYW55X2ludF9iaW5vcDpWSSAobWF0Y2hfb3BlcmFuZDpWSSAxICJy ZWdpc3Rlcl9vcGVyYW5kIikNCisgICAobWF0Y2hfb3BlcmFuZDpWSSAyICJy ZWdpc3Rlcl9vcGVyYW5kIikpKV0NCisgICJUQVJHRVRfVkVDVE9SIg0KK3sN CisgIHVzaW5nIG5hbWVzcGFjZSByaXNjdl92ZWN0b3I7DQorDQorICBydHgg bWVyZ2UgPSBSVlZfVlVOREVGICg8TU9ERT5tb2RlKTsNCisgIHJ0eCB2bCA9 IGdlbl9yZWdfcnR4IChQbW9kZSk7DQorICBlbWl0X3ZsbWF4X3ZzZXR2bCAo PE1PREU+bW9kZSwgdmwpOw0KKyAgcnR4IG1hc2tfcG9saWN5ID0gZ2V0X21h c2tfcG9saWN5X25vX3ByZWQoKTsNCisgIHJ0eCB0YWlsX3BvbGljeSA9IGdl dF90YWlsX3BvbGljeV9ub19wcmVkKCk7DQorICBydHggbWFzayA9IENPTlNU TTFfUlRYKDxWTT5tb2RlKTsNCisgIHJ0eCB2bG1heF9hdmxfcCA9IGdldF9h dmxfdHlwZV9ydHgoTk9OVkxNQVgpOw0KKw0KKyAgZW1pdF9pbnNuKGdlbl9w cmVkXzxvcHRhYj48bW9kZT4ob3BlcmFuZHNbMF0sIG1hc2ssIG1lcmdlLCBv cGVyYW5kc1sxXSwgb3BlcmFuZHNbMl0sDQorIHZsLCB0YWlsX3BvbGljeSwg bWFza19wb2xpY3ksIHZsbWF4X2F2bF9wKSk7DQorDQorICBET05FOw0KK30p DQorDQorKGRlZmluZV9leHBhbmQgImNvbmRfPG9wdGFiPjxtb2RlPjMiDQor ICBbKHNldCAobWF0Y2hfb3BlcmFuZDpWSSAwICJyZWdpc3Rlcl9vcGVyYW5k IikNCisgKGlmX3RoZW5fZWxzZTpWSQ0KKyAodW5zcGVjOjxWTT4NCisgICBb KG1hdGNoX29wZXJhbmQ6PFZNPiAxICJyZWdpc3Rlcl9vcGVyYW5kIildIFVO U1BFQ19WUFJFRElDQVRFKQ0KKyAoYW55X2ludF9iaW5vcDpWSQ0KKyAgICht YXRjaF9vcGVyYW5kOlZJIDIgInJlZ2lzdGVyX29wZXJhbmQiKQ0KKyAgICht YXRjaF9vcGVyYW5kOlZJIDMgInJlZ2lzdGVyX29wZXJhbmQiKSkNCisgKG1h dGNoX29wZXJhbmQ6VkkgNCAicmVnaXN0ZXJfb3BlcmFuZCIpKSldDQorICAi VEFSR0VUX1ZFQ1RPUiINCit7DQorICB1c2luZyBuYW1lc3BhY2UgcmlzY3Zf dmVjdG9yOw0KKw0KKyAgcnR4IG1lcmdlID0gb3BlcmFuZHNbNF07DQorICBy dHggdmwgPSBnZW5fcmVnX3J0eCAoUG1vZGUpOw0KKyAgZW1pdF92bG1heF92 c2V0dmwgKDxNT0RFPm1vZGUsIHZsKTsNCisgIHJ0eCBtYXNrX3BvbGljeSA9 IGdldF9tYXNrX3BvbGljeV9ub19wcmVkKCk7DQorICBydHggdGFpbF9wb2xp Y3kgPSBnZXRfdGFpbF9wb2xpY3lfbm9fcHJlZCgpOw0KKyAgcnR4IG1hc2sg PSBvcGVyYW5kc1sxXTsNCisgIHJ0eCB2bG1heF9hdmxfcCA9IGdldF9hdmxf dHlwZV9ydHgoTk9OVkxNQVgpOw0KKw0KKyAgZW1pdF9pbnNuKGdlbl9wcmVk XzxvcHRhYj48bW9kZT4ob3BlcmFuZHNbMF0sIG1hc2ssIG1lcmdlLCBvcGVy YW5kc1syXSwgb3BlcmFuZHNbM10sDQorIHZsLCB0YWlsX3BvbGljeSwgbWFz a19wb2xpY3ksIHZsbWF4X2F2bF9wKSk7DQorICBET05FOw0KK30pDQorDQpk aWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3ItaXRlcmF0b3Jz Lm1kIGIvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3ItaXRlcmF0b3JzLm1kDQpp bmRleCA3MGFkODViNjYxYi4uN2ZhZTg3OTY4ZDcgMTAwNjQ0DQotLS0gYS9n Y2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci1pdGVyYXRvcnMubWQNCisrKyBiL2dj Yy9jb25maWcvcmlzY3YvdmVjdG9yLWl0ZXJhdG9ycy5tZA0KQEAgLTM0LDYg KzM0LDggQEANCiAgIFVOU1BFQ19WTVVMSFUNCiAgIFVOU1BFQ19WTVVMSFNV DQorICBVTlNQRUNfVkFERA0KKyAgVU5TUEVDX1ZTVUINCiAgIFVOU1BFQ19W QURDDQogICBVTlNQRUNfVlNCQw0KICAgVU5TUEVDX1ZNQURDDQpkaWZmIC0t Z2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3IubWQgYi9nY2MvY29uZmln L3Jpc2N2L3ZlY3Rvci5tZA0KaW5kZXggMGVjY2E5OGYyMGMuLjJhYzViNzQ0 NTAzIDEwMDY0NA0KLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3IubWQN CisrKyBiL2djYy9jb25maWcvcmlzY3YvdmVjdG9yLm1kDQpAQCAtMjYsOCAr MjYsNiBAQA0KOzsgLSBBdXRvLXZlY3Rvcml6YXRpb24gKFRCRCkNCjs7IC0g Q29tYmluZSBvcHRpbWl6YXRpb24gKFRCRCkNCi0oaW5jbHVkZSAidmVjdG9y LWl0ZXJhdG9ycy5tZCIpDQotDQooZGVmaW5lX2NvbnN0YW50cyBbDQogICAg KElOVkFMSURfQVRUUklCVVRFICAgICAgICAgICAgMjU1KQ0KICAgIChYMF9S RUdOVU0gICAgICAgICAgICAgICAgICAgICAgMCkNCkBAIC0zNTEsNiArMzQ5 LDggQEANCiAgIChzeW1ib2xfcmVmICJJTlRWQUwgKG9wZXJhbmRzWzRdKSIp XQ0KKGNvbnN0X2ludCBJTlZBTElEX0FUVFJJQlVURSkpKQ0KKyhpbmNsdWRl ICJ2ZWN0b3ItYXV0by5tZCIpDQorDQo7OyAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQ0KOzsgLS0tLSBNaXNjZWxsYW5lb3VzIE9wZXJhdGlvbnMNCjs7IC0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tDQotLSANCjIuMzQuMQ0K ------=_001_NextPart321270503745_=------