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 53C8149E65 for ; Tue, 13 Aug 2024 14:04:29 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5316A68DA53; Tue, 13 Aug 2024 17:03:53 +0300 (EEST) Received: from fout6-smtp.messagingengine.com (fout6-smtp.messagingengine.com [103.168.172.149]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1EA7D68DA36 for ; Tue, 13 Aug 2024 17:03:47 +0300 (EEST) Received: from phl-compute-01.internal (phl-compute-01.nyi.internal [10.202.2.41]) by mailfout.nyi.internal (Postfix) with ESMTP id 256F81389716; Tue, 13 Aug 2024 10:03:46 -0400 (EDT) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-01.internal (MEProxy); Tue, 13 Aug 2024 10:03:46 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=itanimul.li; h= cc:cc:content-transfer-encoding:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to; s=fm1; t=1723557826; x= 1723644226; bh=wQvpUbJkcCRQ+ilfpPGEi6LjWrvpbJWQ/o0hYCrVscc=; b=j uMg+KFN7+JfwgPIYESjBmo7vez4Od2I8dN78cMAavhWXRO3H0FmueXRkW7NvgVmS 6qfJkUxL7ZHREHNxHa3agDNuG6S6EGzYGFmfYYjZwzwNNcSGVmmtuYyquYNofJmQ cKiFA9tD2TGkVOyU4VCiEjwNX8neyAfsECVUwhH5zicbEPxmAYz+ExyUaw/Bu0kU eu3SZ4UDBcX2jpC6UmyeBgoba4eGFaOLzoMS6BeuPEMzCCLlF3iLDDPGXrUZWzgh +0P40fYEeonYxfXwVB4TK5ANSKOeSFsSOkBlbFfn5dPjXq23x/US09kZz7g5wZ01 OILqb3CUt3N3baUkF9xbg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1723557826; x= 1723644226; bh=wQvpUbJkcCRQ+ilfpPGEi6LjWrvpbJWQ/o0hYCrVscc=; b=l eUl2ayT34fjdFBE/UUw1VWxlfeqfOL+G5z2HSFGNBRVAdd+EhRG273/QvWBXIYwP jcHu4kc+mmr3Ws9xi/SgdCL3h+D2PMEXw1vrmLrvipfv0yLTRYMxAxKTmQ93ATev DIYtexAhzlspEEyPOfWkCeJFyQ+wC0TEfL2Kz+yiBc1+2l8kExJHvnedDX2dB4VK YxG0R8vfDW3LokuUdxDJ+8dv5a1mr3ZmhxkHUhitSJQrsIp2axqdxPLemTZ0YlCF nDIMr5ox0iDFOH8Ct3/u6r4XsmMQoiq1En0Jz1eNA2Pb6HyUxAwgDaS9ZRLcmrPm xc5OqxrodabjyC9+QKOrg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeftddruddtvddgjedtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpefhvfevuf ffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpedflfdrucffvghkkhgvrhdfuceo jhguvghksehithgrnhhimhhulhdrlhhiqeenucggtffrrghtthgvrhhnpeelffefkeevle efffehiefhvdefheefffejffejkefgjedufeduveejffeuffdtteenucffohhmrghinhep hhdvieegrgguughpgigprhhvvhdrshgspdhhvdeigehiuggtthgprhhvvhdrshgspdhsth grrhhttghouggvpghrvhgsrdhssgdprghsmhdrshgsnecuvehluhhsthgvrhfuihiivgep tdenucfrrghrrghmpehmrghilhhfrhhomhepjhguvghksehithgrnhhimhhulhdrlhhipd hnsggprhgtphhtthhopedvpdhmohguvgepshhmthhpohhuthdprhgtphhtthhopehffhhm phgvghdquggvvhgvlhesfhhfmhhpvghgrdhorhhgpdhrtghpthhtohepghhitheshhgrrg hsnhdruggvvh X-ME-Proxy: Feedback-ID: i84994747:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 13 Aug 2024 10:03:45 -0400 (EDT) From: "J. Dekker" To: ffmpeg-devel@ffmpeg.org Date: Tue, 13 Aug 2024 16:03:33 +0200 Message-ID: <20240813140338.143045-4-jdek@itanimul.li> X-Mailer: git-send-email 2.44.1 In-Reply-To: <20240813140338.143045-1-jdek@itanimul.li> References: <20240813140338.143045-1-jdek@itanimul.li> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 4/7] avutil/riscv/asm: add stack pushing helpers 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 Cc: Niklas Haas Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: From: Niklas Haas Instead of duplicating these common macros in every file, add them to the shared utility file. Also add a base case for sanity. --- libavcodec/riscv/h264addpx_rvv.S | 10 ---------- libavcodec/riscv/h264idct_rvv.S | 10 ---------- libavcodec/riscv/startcode_rvb.S | 10 ---------- libavutil/riscv/asm.S | 34 ++++++++++++++++++++++++++++++++ 4 files changed, 34 insertions(+), 30 deletions(-) diff --git a/libavcodec/riscv/h264addpx_rvv.S b/libavcodec/riscv/h264addpx_rvv.S index 82739881d9..cf3b742294 100644 --- a/libavcodec/riscv/h264addpx_rvv.S +++ b/libavcodec/riscv/h264addpx_rvv.S @@ -26,16 +26,6 @@ #include "libavutil/riscv/asm.S" - .macro sx rd, addr -#if (__riscv_xlen == 32) - sw \rd, \addr -#elif (__riscv_xlen == 64) - sd \rd, \addr -#else - sq \rd, \addr -#endif - .endm - func ff_h264_add_pixels4_8_rvv, zve32x lpad 0 vsetivli zero, 4, e8, mf4, ta, ma diff --git a/libavcodec/riscv/h264idct_rvv.S b/libavcodec/riscv/h264idct_rvv.S index d2f77a5b47..076935a5d5 100644 --- a/libavcodec/riscv/h264idct_rvv.S +++ b/libavcodec/riscv/h264idct_rvv.S @@ -29,16 +29,6 @@ #include "libavutil/riscv/asm.S" - .macro sx rd, addr -#if (__riscv_xlen == 32) - sw \rd, \addr -#elif (__riscv_xlen == 64) - sd \rd, \addr -#else - sq \rd, \addr -#endif - .endm - .variant_cc ff_h264_idct4_rvv func ff_h264_idct4_rvv, zve32x vsra.vi v5, v1, 1 diff --git a/libavcodec/riscv/startcode_rvb.S b/libavcodec/riscv/startcode_rvb.S index eec92d3340..c131ebdf59 100644 --- a/libavcodec/riscv/startcode_rvb.S +++ b/libavcodec/riscv/startcode_rvb.S @@ -26,16 +26,6 @@ #include "libavutil/riscv/asm.S" - .macro lx rd, addr -#if (__riscv_xlen == 32) - lw \rd, \addr -#elif (__riscv_xlen == 64) - ld \rd, \addr -#else - lq \rd, \addr -#endif - .endm - func ff_startcode_find_candidate_rvb, zbb lpad 0 add a1, a0, a1 diff --git a/libavutil/riscv/asm.S b/libavutil/riscv/asm.S index ec68a042d1..175f2a8672 100644 --- a/libavutil/riscv/asm.S +++ b/libavutil/riscv/asm.S @@ -237,3 +237,37 @@ .macro vntypei rd, rs, n=1 vwtypei \rd, \rs, -(\n) .endm + + /** + * Write an XLEN-sized register to an address. + * @param rs source register + * @param addr address to write to + */ + .macro sx rs, addr +#if (__riscv_xlen == 32) + sw \rs, \addr +#elif (__riscv_xlen == 64) + sd \rs, \addr +#elif (__riscv_xlen == 128) + sq \rs, \addr +#else +#error Unhandled value of XLEN +#endif + .endm + + /** + * Read an XLEN-sized register from an address. + * @param[out] rd destination register + * @param addr address to read from + */ + .macro lx rd, addr +#if (__riscv_xlen == 32) + lw \rd, \addr +#elif (__riscv_xlen == 64) + ld \rd, \addr +#elif (__riscv_xlen == 128) + lq \rd, \addr +#else +#error Unhandled value of XLEN +#endif + .endm -- 2.45.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".