From patchwork Fri Feb 2 05:04:03 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: flow gg X-Patchwork-Id: 45972 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1a28:b0:199:de12:6fa6 with SMTP id cj40csp730577pzb; Thu, 1 Feb 2024 21:04:26 -0800 (PST) X-Google-Smtp-Source: AGHT+IGg5YA+s17b2PF4vGpjD4PHVHMVWV9/2vq5T2KLPLcY4iay4+WIN9C7r4LWr6cYr7YYmmHC X-Received: by 2002:ac2:4463:0:b0:50e:7c08:1a55 with SMTP id y3-20020ac24463000000b0050e7c081a55mr2926216lfl.18.1706850265426; Thu, 01 Feb 2024 21:04:25 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706850265; cv=none; d=google.com; s=arc-20160816; b=RPtaSMrY8EByWJCskkukvD5vYmNb/MBW4fAdABYZ2b13ujhZkzDXEc0tOTBVtUqVdE fbVIhRFxdjsG2Fs4/sO9/arXHDVq588u2U8c6etNbLrHITSGsYxEzVkFpuBbjWwVNjud JA0LBnlBgIUyiqB7INjbw/Rl/DFlpC99oo8Ai8NarZIORcEL/CrxtjHWD2KGOTlBJ7MD j7g20y2f7oUjHBSrfEKKiDqxfAiXLRZJWlT9J9Y/Z1QyVKVsnwlnbjmFp7HqOUSMSMiI F07YVy6DTTRdXSQpDpxW/rllgjMFOJslZTuZRIZ/ltqTagyzkVLG64YYe1tbx50GFVFS 0HnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:reply-to:list-subscribe:list-help:list-post :list-archive:list-unsubscribe:list-id:precedence:subject:to :message-id:date:from:mime-version:dkim-signature:delivered-to; bh=3kurN5c1QmH5rI2d+1Zk+X5DfJXiWqbS4qBeak5kYLA=; fh=kfSKeF0foQrRaQA0QPMKBlFKQV/P+CIl5GlxSx3O558=; b=VunLdXX1NQ2uFA8Ll5n3FtmEoeq53Y4WPcyYetOtIBNHisZIZIJGqGQQz3xwzHDusi 24he4ldwSDBZcE48pCwUj+c8hWtfidByuXuj+BuL+n6D32bsrtxcYc7zoaZ+GV9Ra7rd 0tvAPIdVrBmFbeMAK+5r9CtZEWrXaupLqHhg5YunBTMHQByTrlfe37OGUd0TmP5q4Hbi 1VmGi2mW8+gm3pw/wv+vd3lQTfe3/bNmr+XFDaz5klRxXyyR8Rdf4v6LEzgYB3hsjuCe YXuVPwuLp5g1FsF0AiE9s5rgsFdkvYjGILEIhikpdZCME2ax2NCPVOZ3ENqfL/XSUZO3 RFeg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=YUpWsRDA; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com X-Forwarded-Encrypted: i=0; AJvYcCU4uHQGPo/o4ybwujWgvMwtCwcCIf3Kh040IOU0r5tTz1RXj+C1/U5ak5B363r2h78fBl8o2eAAajSpGzwALZW9cEcxevVPNL70QQM7qJfzejVg+4LsUKk8gRzNzRc9WykLrKvmAk1Iu9/bUVdJ5oEeZL8J6yGmIqBJ4Fz3TJPar9CYuhIJ2Zp+BJPHYfvO6ov88dx2ad/4rTlnKU3junJ9WDdlGaMjNrUSFpUxTCS1EDb9P0TJZ/vCAl/9hNf9/iELBmU2zP2HUJ2ifo0Z5DrnE4RpwAVeHI0iU8TC0ZIvrtDepxeOa+z2U9K888gjd6DotpiISoNgLviuaUKEcuTfALq7io+CIM6ZupP9EZhrvScg1rxVaXl1RKd+/ZhMDgBGwvd7YoRFYbe03tOMQ2frEZ6P9nDlGTjHnMahBgtkgjOp7gw6WWDJnxcyZIKs7L2z/mD+TT+/puTb+FeVnwQW0eGh5xtpSfHrC6xY4M/JpNAFIYXaYVAhBecGEceDSxNvgF+YOzleJIIgp5DBP5nlofwPWn/yPt7sPOfo9yVoJY1I2tZ0DE8Xj38fG8C9yeSNFSfQjupj3xnwb5s+I5WN8jwg0ctfH1tHm/VZXu2Cncquc3v1K3K8sjhV+5p5t7HK+yOkzKpZHiR3LoELWDlEBNpgv/VZmCc61f8djjxz5nb/ME8n32/4AqIvHFKf5DN4Pim3QVSDXqbnbvILBLwlXDoG+eqx+fFtBVB/UFuwK5s+zuRuETYB0F2gW1nMxj2CYftYzeDipfy9ObN1Kxupbep7RHOZYvixEpJAN1PcHmvHsoaN0i3NhmNy+DfPdh37jITI4l0yaxxaslvDZJu5rk9k8G1fmpbpF6Ok80ul5MViWJRBTV+jvJRiB9TBZCGQhDa6pBN87UO+2CXsV5J1n5B+0eR0NaLtRhJ0GvmhbGUS1Y1ERHZL8yoFPVHe51Fg8p kR8dOa1Rgqqu5XqvyE2HAIG9cRFhKQNZHq7R97OxSEho8N4Lw7dtIB7y1TH0YbyYUekfka08a/tAlIxnnMnzExHnD8kv+kEU6lv1TwW6CrXGZ+5KjnwDd6Dq+msHhYDSKAHzI7vlJxhM3BBQVGVnGE8CBt04B5HD8fsO6OtnORD1y2/Bho8Yq68mDn9VjN8vIE0PI8pbBJM9Y0LidTvil/spO7YL4uouhX93qvaRV5YxbXqAfdyRWjwr8pXl1FnAkZh9YFdecB8udpZrbjPBCLUJ9kjtXTAqvixlepFKatp4gIovlDXPCNXc0IZJYKtPHcS4ljA97edzRkbljDTQirutIH0+dvwiWeXnTGpJIRDSmLEEAaZ66Xoa+x3EPjcYFrB8qQsQtYGd85vIzGzwgZeEV708xY6J/yJt8WIE650Ytw987yK3tGnNnZNIp7mJ+CxEDacUJumPSIvHBbcd8b/hGVEL0DXnX0DioIQAoMOyxNwI15QorFuOjRNgteN+mFA9s5K/yjWHosTeGwKKANEQ7q8zvviPIZEpUIe/BWWZyE4VNvNOi7YwYq/2o5NuPc4/C8NkUWJdoTPhor2z7+wejq6tJVHZn1eSXRALR0 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id l16-20020a170906415000b00a3684f489aasi445501ejk.411.2024.02.01.21.04.25; Thu, 01 Feb 2024 21:04:25 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=YUpWsRDA; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D77C968D104; Fri, 2 Feb 2024 07:04:22 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ua1-f48.google.com (mail-ua1-f48.google.com [209.85.222.48]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B7A9D68D104 for ; Fri, 2 Feb 2024 07:04:15 +0200 (EET) Received: by mail-ua1-f48.google.com with SMTP id a1e0cc1a2514c-7d317aafbd1so767728241.2 for ; Thu, 01 Feb 2024 21:04:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706850254; x=1707455054; darn=ffmpeg.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=Q3kwdfSQKbDlODx9qzf4O5+7TUcN5VquUG/+U6nWGoM=; b=YUpWsRDAHvUxQgkr1FrYMQVkhwUz/Z4dcs2Bwro7PI755a5S5Vm9I3Avm5EFRQVFY0 nwq+On//ZeapA03oaC4woWyXPHTc9hbltMp7UvNQ5Td9X6bwI8zGVkXw0tMLGHWDeJ25 CbwkcJoUNsw4ETz3NYXwqMEp2mniM283+hX8zJr3Vz5Xd4iINopVgt2skq7rCqkVsy07 bEqfCAbfmZWHrvmL4r9NXW1Fxz2zQBnGcHzVOY1J5QKfOBj+fNBKrX68Dfxat0uFhUDs wnK92Hkmky2SaPvlHdabwrYKGhZE/YBfCCi9FiUWOEVutInzPjNNDDTW6RfT469qMk30 gyWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706850254; x=1707455054; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Q3kwdfSQKbDlODx9qzf4O5+7TUcN5VquUG/+U6nWGoM=; b=BKWNUg9kS2UkoYzGe9nBdkA1DlcJs0OBMQkALU/vC/hAhkMY6Ls89Rn1GwuY461Nci TEuG8GRK1Wew98mlQ/TO+aRBKNMxqB4qbmO41yBm4WfLA3UMoFV9smgmSjsLJRN0Au8h NsOX5nnwBdX7BwUavWpvVli0UEQSKvita+coEvQnWhZ/BEqfwlRL0DFcEZO93gwjRMBp Eqz/Ii15dPq1meOOLVZN0vMaou11gcW/s1/M3Tuea+J+4Gf2DOaZpzH3BxqCbWqsXV5H pwsrGWtPHkXeRWL/87w+iHxtAFwTd/NoV/i8hIZ4OBAxghqONhhuAezS7yhYfHLJVn7d 1uMw== X-Gm-Message-State: AOJu0YyAT9Fqtu32Ifr8HK2WNKwboKwrH8ajK4GIV0lO8NadATHgvpWv ZOi3ekIHS0Z6Cs53mET1+LmQxTrkjI2TSqAy1OQZuN2FDtq3XuJaXJTiF+LBD/cGrEzUYLwlaJk TxKaGtjRg6/Ly5ivbN2UdCLc/d/MXnc5TMCY= X-Received: by 2002:a05:6102:236f:b0:46b:33f0:1b42 with SMTP id o15-20020a056102236f00b0046b33f01b42mr6277974vsa.23.1706850254349; Thu, 01 Feb 2024 21:04:14 -0800 (PST) MIME-Version: 1.0 From: flow gg Date: Fri, 2 Feb 2024 13:04:03 +0800 Message-ID: To: FFmpeg development discussions and patches X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [FFmpeg-devel] [PATCH 3/3] lavc/vp8dsp: R-V V vp8_idct_dc_add4uv 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 0nkPjIfnc+yQ From 71df566c93a0b7538405cd9bb2da6da155084283 Mon Sep 17 00:00:00 2001 From: sunyuechi Date: Fri, 2 Feb 2024 12:50:50 +0800 Subject: [PATCH 3/3] lavc/vp8dsp: R-V V vp8_idct_dc_add4uv c908: vp8_idct_dc_add4uv_c: 387.7 vp8_idct_dc_add4uv_rvv_i32: 134.5 --- libavcodec/riscv/vp8dsp_init.c | 2 ++ libavcodec/riscv/vp8dsp_rvv.S | 13 +++++++++++++ 2 files changed, 15 insertions(+) diff --git a/libavcodec/riscv/vp8dsp_init.c b/libavcodec/riscv/vp8dsp_init.c index 6615d3d440..58f0afa6f9 100644 --- a/libavcodec/riscv/vp8dsp_init.c +++ b/libavcodec/riscv/vp8dsp_init.c @@ -27,6 +27,7 @@ void ff_vp8_idct_dc_add_rvv(uint8_t *dst, int16_t block[16], ptrdiff_t stride); void ff_vp8_idct_dc_add4y_rvv(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride); +void ff_vp8_idct_dc_add4uv_rvv(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride); av_cold void ff_vp8dsp_init_riscv(VP8DSPContext *c) { @@ -36,6 +37,7 @@ av_cold void ff_vp8dsp_init_riscv(VP8DSPContext *c) if (flags & AV_CPU_FLAG_RVV_I32 && ff_get_rv_vlenb() >= 16) { c->vp8_idct_dc_add = ff_vp8_idct_dc_add_rvv; c->vp8_idct_dc_add4y = ff_vp8_idct_dc_add4y_rvv; + c->vp8_idct_dc_add4uv = ff_vp8_idct_dc_add4uv_rvv; } #endif } diff --git a/libavcodec/riscv/vp8dsp_rvv.S b/libavcodec/riscv/vp8dsp_rvv.S index 87c369fb16..eb93111055 100644 --- a/libavcodec/riscv/vp8dsp_rvv.S +++ b/libavcodec/riscv/vp8dsp_rvv.S @@ -58,3 +58,16 @@ func ff_vp8_idct_dc_add4y_rvv, zve32x ret endfunc + +func ff_vp8_idct_dc_add4uv_rvv, zve32x + vsetivli zero, 4, e8, mf4, ta, ma + vp8_idct_dc_addy + vp8_idct_dc_add + addi a0, a0, -4 + sh2add a0, a2, a0 + addi a1, a1, 32 + vp8_idct_dc_addy + vp8_idct_dc_add + + ret +endfunc -- 2.43.0