diff mbox series

[FFmpeg-devel,2/5] lavc/vp8dsp: expand single use R-V macros

Message ID 20240525153840.78147-2-remi@remlab.net
State New
Headers show
Series [FFmpeg-devel,1/5] lavc/vp8dsp: avoid one multiplication on RISC-V | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Rémi Denis-Courmont May 25, 2024, 3:38 p.m. UTC
---
 libavcodec/riscv/vp8dsp_rvv.S | 24 ++++++------------------
 1 file changed, 6 insertions(+), 18 deletions(-)
diff mbox series

Patch

diff --git a/libavcodec/riscv/vp8dsp_rvv.S b/libavcodec/riscv/vp8dsp_rvv.S
index cb9b0b8b5f..bb0c7bf02a 100644
--- a/libavcodec/riscv/vp8dsp_rvv.S
+++ b/libavcodec/riscv/vp8dsp_rvv.S
@@ -161,7 +161,8 @@  const subpel_filters
         .byte 0,  -1,  12, 123,  -6, 0
 endconst
 
-.macro epel_filter size type
+.macro epel len size type
+func ff_put_vp8_epel\len\()_\type\()\size\()_rvv, zve32x
 .ifc \type,v
         addi            t0, a6, -1
 .else
@@ -177,9 +178,9 @@  endconst
         lb              t5, 5(t0)
         lb              t0, (t0)
 .endif
-.endm
-
-.macro epel_load dst len size type
+        vsetvlstatic8   \len
+1:
+        addi            a4, a4, -1
 .ifc \type,v
         mv              a5, a3
 .else
@@ -212,21 +213,8 @@  endconst
         vnsra.wi        v24, v24, 7
         vmax.vx         v24, v24, zero
         vsetvlstatic8   \len
-        vnclipu.wi      \dst, v24, 0
-.endm
-
-.macro epel_load_inc dst len size type
-        epel_load       \dst \len \size \type
+        vnclipu.wi      v30, v24, 0
         add             a2, a2, a3
-.endm
-
-.macro epel len size type
-func ff_put_vp8_epel\len\()_\type\()\size\()_rvv, zve32x
-        epel_filter     \size \type
-        vsetvlstatic8   \len
-1:
-        addi            a4, a4, -1
-        epel_load_inc   v30 \len \size \type
         vse8.v          v30, (a0)
         add             a0, a0, a1
         bnez            a4, 1b