[FFmpeg-devel] [PATCH 2/5] lavc/vp8dsp: expand single use R-V macros
Rémi Denis-Courmont
remi at remlab.net
Sat May 25 18:38:37 EEST 2024
---
libavcodec/riscv/vp8dsp_rvv.S | 24 ++++++------------------
1 file changed, 6 insertions(+), 18 deletions(-)
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
--
2.45.1
More information about the ffmpeg-devel
mailing list