From patchwork Sat May 25 15:38:39 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?R=C3=A9mi_Denis-Courmont?= X-Patchwork-Id: 49256 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:542:0:b0:460:55fa:d5ed with SMTP id 63csp2371682vqf; Sat, 25 May 2024 08:39:13 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVP3ePo/9Qrf3N66aNAVLDFHWT0cp2n8rUnI+Ism7ta4C9p0xr+X2xk/TZRxc6F+WhtFLu2YaR+l5JFlWWtUclaRulUwcYrGMZTBA== X-Google-Smtp-Source: AGHT+IHEg6/dN2PafRgpG+w2oqjHEiGQNPyUsWHbuh7MLiVO02pHYAXNFBnme2bjKPQVkbzz3r+e X-Received: by 2002:a05:6512:3da8:b0:51c:68a3:6f8e with SMTP id 2adb3069b0e04-52965198adamr3863902e87.31.1716651553018; Sat, 25 May 2024 08:39:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1716651553; cv=none; d=google.com; s=arc-20160816; b=JnqfR/65ewwYf3y93Xi42ARalwFVyX2+JS9PBauISGxKRPcIIu4UF9mTnUa2HcDVnc B9U/RoY0//peVPi415ixoaDk7gRukutEH2P4PT0LU7e0CIM8gf0LWacRi34Io9WNxLSW i/FnsG+6EPixzE6YOjqURR/CE7iPdpqme0MHAlkSKChWcsi5Z+V54C0iI+/K/W94M+Pb J74v3L/rzxjuv7665qQ+0Jt2tDz6xvklJMSVoRAKVBAnuCXr8yr+b5gPEE8Ue1Rew9fe Pix9WsYxA9KE4iHsQGjAMuZ/VPZ0V9B4jZG/76yV5zOSVrCJ9clP+fYbNaFnKIm8kwFF owgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:delivered-to; bh=4yGdXRFs5YDoztzdC3osCYuXG/4lvGkNI5Iq0XSDm6g=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=LMkzlducfarSvaIYJ5hZKx8bxGnSnzFxrPv3xLb3MPoXv/9oxmgxq4STMoOgJLWUGm sXizShanBgteI4SQAEJiqhhd01xcUUwF30y6AAX/s/WurCWSst5MCoZhqkC+Jv5m1FPZ z/hmTQ8ng2kM+6fsChbO7Sxk3qF4N3cAZ1ofXXUlIOFJNPSKeMV+U4Yaw2vvWeAaa967 IYPfqgrk8XGtv//kKPnXz0xvNWY7FT7iDqtXKwsnd60mWLFKB+Bcqep4ptbT72PWtrOT nz+7GG6U2uCppLOOL45aKHYLRH//ANzWS9/GJccf7Ose5jv2GGzaT5X+j2jAL4xZKt7Y n/3w==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 2adb3069b0e04-5297094b84esi1218330e87.427.2024.05.25.08.39.12; Sat, 25 May 2024 08:39:12 -0700 (PDT) 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; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id EBA0C68D565; Sat, 25 May 2024 18:38:49 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from ursule.remlab.net (vps-a2bccee9.vps.ovh.net [51.75.19.47]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7DE1D68BEFE for ; Sat, 25 May 2024 18:38:41 +0300 (EEST) Received: from basile.remlab.net (localhost [IPv6:::1]) by ursule.remlab.net (Postfix) with ESMTP id D4F8AC0215 for ; Sat, 25 May 2024 18:38:40 +0300 (EEST) From: =?utf-8?q?R=C3=A9mi_Denis-Courmont?= To: ffmpeg-devel@ffmpeg.org Date: Sat, 25 May 2024 18:38:39 +0300 Message-ID: <20240525153840.78147-4-remi@remlab.net> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20240525153840.78147-1-remi@remlab.net> References: <20240525153840.78147-1-remi@remlab.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 4/5] lavc/vp8dsp: save one R-V GPR 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: wMJWi/cRhYXO This saves one instruction and frees up A5, which will be repurposed in later changes. Unfortunately, we need to add quite a lot of alternative code for this. --- libavcodec/riscv/vp8dsp_rvv.S | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/libavcodec/riscv/vp8dsp_rvv.S b/libavcodec/riscv/vp8dsp_rvv.S index 545c2e9728..a4fcd158a5 100644 --- a/libavcodec/riscv/vp8dsp_rvv.S +++ b/libavcodec/riscv/vp8dsp_rvv.S @@ -202,23 +202,31 @@ func ff_put_vp8_epel\len\()_\type\()\size\()_rvv, zve32x 1: addi a4, a4, -1 .ifc \type,v - mv a5, a3 + sub t6, a2, a3 + add a7, a2, a3 .else - li a5, 1 + addi t6, a2, -1 + addi a7, a2, 1 .endif - sub t6, a2, a5 - add a7, a2, a5 - vle8.v v24, (a2) vle8.v v22, (t6) vle8.v v26, (a7) - add a7, a7, a5 +.ifc \type,v + add a7, a7, a3 +.else + addi a7, a7, 1 +.endif vle8.v v28, (a7) vwmulu.vx v16, v24, t2 vwmulu.vx v20, v26, t3 .ifc \size,6 - sub t6, t6, a5 - add a7, a7, a5 +.ifc \type,v + sub t6, t6, a3 + add a7, a7, a3 +.else + addi t6, t6, -1 + addi a7, a7, 1 +.endif vle8.v v24, (t6) vle8.v v26, (a7) vwmaccu.vx v16, t0, v24