From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id DB31344437 for ; Fri, 9 Sep 2022 15:51:06 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 1AEC268BB92; Fri, 9 Sep 2022 18:49:20 +0300 (EEST) Received: from ursule.remlab.net (vps-a2bccee9.vps.ovh.net [51.75.19.47]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 42C0D68BB47 for ; Fri, 9 Sep 2022 18:49:05 +0300 (EEST) Received: from basile.remlab.net (localhost [IPv6:::1]) by ursule.remlab.net (Postfix) with ESMTP id ECEEFC00B6 for ; Fri, 9 Sep 2022 18:49:00 +0300 (EEST) From: remi@remlab.net To: ffmpeg-devel@ffmpeg.org Date: Fri, 9 Sep 2022 18:48:51 +0300 Message-Id: <20220909154859.68954-10-remi@remlab.net> X-Mailer: git-send-email 2.37.2 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 10/18] lavu/riscv: float vector-scalar multiplication with RVV X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: RnJvbTogUsOpbWkgRGVuaXMtQ291cm1vbnQgPHJlbWlAcmVtbGFiLm5ldD4KClRoaXMgaXMgYmFz ZWQgb24gZXhpc3RpbmcgY29kZSBmcm9tIHRoZSBWTEMgZ2l0IHRyZWUgd2l0aCB0d28gbWlub3IK Y2hhbmdlcyB0byBhY2NvdW50IGZvciB0aGUgZGlmZmVyZW50IGZ1bmN0aW9uIHByb3RvdHlwZXMu Ci0tLQogbGliYXZ1dGlsL2Zsb2F0X2RzcC5jICAgICAgICAgICAgfCAgMiArKwogbGliYXZ1dGls L2Zsb2F0X2RzcC5oICAgICAgICAgICAgfCAgMSArCiBsaWJhdnV0aWwvcmlzY3YvTWFrZWZpbGUg ICAgICAgICB8ICA0ICsrLQogbGliYXZ1dGlsL3Jpc2N2L2Zsb2F0X2RzcF9pbml0LmMgfCA0MyAr KysrKysrKysrKysrKysrKysrKysrKysKIGxpYmF2dXRpbC9yaXNjdi9mbG9hdF9kc3BfcnZ2LlMg IHwgNTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDUgZmlsZXMgY2hhbmdlZCwg MTA1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJh dnV0aWwvcmlzY3YvZmxvYXRfZHNwX2luaXQuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmF2dXRp bC9yaXNjdi9mbG9hdF9kc3BfcnZ2LlMKCmRpZmYgLS1naXQgYS9saWJhdnV0aWwvZmxvYXRfZHNw LmMgYi9saWJhdnV0aWwvZmxvYXRfZHNwLmMKaW5kZXggODY3NmM4YjBmOC4uNzQyZGQ2NzlkMiAx MDA2NDQKLS0tIGEvbGliYXZ1dGlsL2Zsb2F0X2RzcC5jCisrKyBiL2xpYmF2dXRpbC9mbG9hdF9k c3AuYwpAQCAtMTU2LDYgKzE1Niw4IEBAIGF2X2NvbGQgQVZGbG9hdERTUENvbnRleHQgKmF2cHJp dl9mbG9hdF9kc3BfYWxsb2MoaW50IGJpdF9leGFjdCkKICAgICBmZl9mbG9hdF9kc3BfaW5pdF9h cm0oZmRzcCk7CiAjZWxpZiBBUkNIX1BQQwogICAgIGZmX2Zsb2F0X2RzcF9pbml0X3BwYyhmZHNw LCBiaXRfZXhhY3QpOworI2VsaWYgQVJDSF9SSVNDVgorICAgIGZmX2Zsb2F0X2RzcF9pbml0X3Jp c2N2KGZkc3ApOwogI2VsaWYgQVJDSF9YODYKICAgICBmZl9mbG9hdF9kc3BfaW5pdF94ODYoZmRz cCk7CiAjZWxpZiBBUkNIX01JUFMKZGlmZiAtLWdpdCBhL2xpYmF2dXRpbC9mbG9hdF9kc3AuaCBi L2xpYmF2dXRpbC9mbG9hdF9kc3AuaAppbmRleCA5YzY2NDU5MmJkLi43Y2FkOWZjNjIyIDEwMDY0 NAotLS0gYS9saWJhdnV0aWwvZmxvYXRfZHNwLmgKKysrIGIvbGliYXZ1dGlsL2Zsb2F0X2RzcC5o CkBAIC0yMDUsNiArMjA1LDcgQEAgZmxvYXQgYXZwcml2X3NjYWxhcnByb2R1Y3RfZmxvYXRfYyhj b25zdCBmbG9hdCAqdjEsIGNvbnN0IGZsb2F0ICp2MiwgaW50IGxlbik7CiB2b2lkIGZmX2Zsb2F0 X2RzcF9pbml0X2FhcmNoNjQoQVZGbG9hdERTUENvbnRleHQgKmZkc3ApOwogdm9pZCBmZl9mbG9h dF9kc3BfaW5pdF9hcm0oQVZGbG9hdERTUENvbnRleHQgKmZkc3ApOwogdm9pZCBmZl9mbG9hdF9k c3BfaW5pdF9wcGMoQVZGbG9hdERTUENvbnRleHQgKmZkc3AsIGludCBzdHJpY3QpOwordm9pZCBm Zl9mbG9hdF9kc3BfaW5pdF9yaXNjdihBVkZsb2F0RFNQQ29udGV4dCAqZmRzcCk7CiB2b2lkIGZm X2Zsb2F0X2RzcF9pbml0X3g4NihBVkZsb2F0RFNQQ29udGV4dCAqZmRzcCk7CiB2b2lkIGZmX2Zs b2F0X2RzcF9pbml0X21pcHMoQVZGbG9hdERTUENvbnRleHQgKmZkc3ApOwogCmRpZmYgLS1naXQg YS9saWJhdnV0aWwvcmlzY3YvTWFrZWZpbGUgYi9saWJhdnV0aWwvcmlzY3YvTWFrZWZpbGUKaW5k ZXggMWY4MTgwNDNkYy4uODlhOGQwZDk5MCAxMDA2NDQKLS0tIGEvbGliYXZ1dGlsL3Jpc2N2L01h a2VmaWxlCisrKyBiL2xpYmF2dXRpbC9yaXNjdi9NYWtlZmlsZQpAQCAtMSArMSwzIEBACi1PQkpT ICs9IHJpc2N2L2NwdS5vCitPQkpTICs9ICAgICByaXNjdi9mbG9hdF9kc3BfaW5pdC5vIFwKKyAg ICAgICAgICAgIHJpc2N2L2NwdS5vCitSVlYtT0JKUyArPSByaXNjdi9mbG9hdF9kc3BfcnZ2Lm8K ZGlmZiAtLWdpdCBhL2xpYmF2dXRpbC9yaXNjdi9mbG9hdF9kc3BfaW5pdC5jIGIvbGliYXZ1dGls L3Jpc2N2L2Zsb2F0X2RzcF9pbml0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMC4uN2M1NTNlOTE3MwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmF2dXRpbC9yaXNjdi9mbG9h dF9kc3BfaW5pdC5jCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBUaGlzIGZpbGUgaXMgcGFydCBv ZiBGRm1wZWcuCisgKgorICogRkZtcGVnIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0 cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIuMSBvZiB0aGUgTGlj ZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBGRm1w ZWcgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV UlBPU0UuICBTZWUgdGhlIEdOVQorICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y IG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9m IHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFsb25nIHdpdGggRkZt cGVnOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJ bmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEz MDEgVVNBCisgKi8KKworI2luY2x1ZGUgPHN0ZGludC5oPgorCisjaW5jbHVkZSAibGliYXZ1dGls L2F0dHJpYnV0ZXMuaCIKKyNpbmNsdWRlICJsaWJhdnV0aWwvY3B1LmgiCisjaW5jbHVkZSAibGli YXZ1dGlsL2Zsb2F0X2RzcC5oIgorCit2b2lkIGZmX3ZlY3Rvcl9mbXVsX3NjYWxhcl9ydnYoZmxv YXQgKmRzdCwgY29uc3QgZmxvYXQgKnNyYywgZmxvYXQgbXVsLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBpbnQgbGVuKTsKKwordm9pZCBmZl92ZWN0b3JfZG11bF9zY2FsYXJfcnZ2 KGRvdWJsZSAqZHN0LCBjb25zdCBkb3VibGUgKnNyYywgZG91YmxlIG11bCwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaW50IGxlbik7CisKK2F2X2NvbGQgdm9pZCBmZl9mbG9hdF9k c3BfaW5pdF9yaXNjdihBVkZsb2F0RFNQQ29udGV4dCAqZmRzcCkKK3sKKyNpZiBIQVZFX1JWVgor ICAgIGludCBmbGFncyA9IGF2X2dldF9jcHVfZmxhZ3MoKTsKKworICAgIGlmIChmbGFncyAmIEFW X0NQVV9GTEFHX1pWRTMyRikgeworICAgICAgICBmZHNwLT52ZWN0b3JfZm11bF9zY2FsYXIgPSBm Zl92ZWN0b3JfZm11bF9zY2FsYXJfcnZ2OworCisgICAgICAgIGlmIChmbGFncyAmIEFWX0NQVV9G TEFHX1pWRTY0RCkKKyAgICAgICAgICAgIGZkc3AtPnZlY3Rvcl9kbXVsX3NjYWxhciA9IGZmX3Zl Y3Rvcl9kbXVsX3NjYWxhcl9ydnY7CisgICAgfQorI2VuZGlmCit9CmRpZmYgLS1naXQgYS9saWJh dnV0aWwvcmlzY3YvZmxvYXRfZHNwX3J2di5TIGIvbGliYXZ1dGlsL3Jpc2N2L2Zsb2F0X2RzcF9y dnYuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi4zNjVlMDAxOTBjCi0t LSAvZGV2L251bGwKKysrIGIvbGliYXZ1dGlsL3Jpc2N2L2Zsb2F0X2RzcF9ydnYuUwpAQCAtMCww ICsxLDU2IEBACisvKgorICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgRkZtcGVnLgorICoKKyAqIEZG bXBlZyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAq IG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJs aWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b247IGVpdGhlcgorICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9w dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogRkZtcGVnIGlzIGRpc3RyaWJ1dGVkIGlu IHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FS UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRB QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUK KyAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgor ICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5l cmFsIFB1YmxpYworICogTGljZW5zZSBhbG9uZyB3aXRoIEZGbXBlZzsgaWYgbm90LCB3cml0ZSB0 byB0aGUgRnJlZSBTb2Z0d2FyZQorICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3Ry ZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxIFVTQQorICovCisKKyNpbmNs dWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJhc20uUyIKKworLy8gKGEwKSA9IChhMSkgKiBmYTAg WzAuLmEyLTFdCitmdW5jIGZmX3ZlY3Rvcl9mbXVsX3NjYWxhcl9ydnYsIHp2ZTMyZgorTk9IV0Yg ICBmbXYudy54ICBmYTAsIGEyCitOT0hXRiAgIG12ICAgICAgIGEyLCBhMworCisxOiAgICAgIHZz ZXR2bGkgIHQwLCBhMiwgZTMyLCBtOCwgdGEsIG1hCisgICAgICAgIHNsbGkgICAgIHQxLCB0MCwg MgorICAgICAgICB2bGUzMi52ICB2MTYsIChhMSkKKyAgICAgICAgYWRkICAgICAgYTEsIGExLCB0 MQorICAgICAgICB2Zm11bC52ZiB2MTYsIHYxNiwgZmEwCisgICAgICAgIHN1YiAgICAgIGEyLCBh MiwgdDAKKyAgICAgICAgdnNlMzIudiAgdjE2LCAoYTApCisgICAgICAgIGFkZCAgICAgIGEwLCBh MCwgdDEKKyAgICAgICAgYm5leiAgICAgYTIsIDFiCisKKyAgICAgICAgcmV0CitlbmRmdW5jCisK Ky8vIChhMCkgPSAoYTEpICogZmEwIFswLi5hMi0xXQorZnVuYyBmZl92ZWN0b3JfZG11bF9zY2Fs YXJfcnZ2LCB6dmU2NGQKK05PSFdEICAgZm12LmQueCAgZmEwLCBhMgorTk9IV0QgICBtdiAgICAg ICBhMiwgYTMKKworMTogICAgICB2c2V0dmxpICB0MCwgYTIsIGU2NCwgbTgsIHRhLCBtYQorICAg ICAgICBzbGxpICAgICB0MSwgdDAsIDMKKyAgICAgICAgdmxlNjQudiAgdjE2LCAoYTEpCisgICAg ICAgIGFkZCAgICAgIGExLCBhMSwgdDEKKyAgICAgICAgdmZtdWwudmYgdjE2LCB2MTYsIGZhMAor ICAgICAgICBzdWIgICAgICBhMiwgYTIsIHQwCisgICAgICAgIHZzZTY0LnYgIHYxNiwgKGEwKQor ICAgICAgICBhZGQgICAgICBhMCwgYTAsIHQxCisgICAgICAgIGJuZXogICAgIGEyLCAxYgorCisg ICAgICAgIHJldAorZW5kZnVuYwotLSAKMi4zNy4yCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1k ZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBl Zy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBl Zy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==