History

lavu/riscv: require B or zba explicitly

Rémi Denis-Courmont committed 2 years ago

Commit 5f101731 parent e91a8cc2 files · +19 −19Browse files

Unified · Split

2 files
  1. libavutil/riscv/fixed_dsp_rvv.S +7 −7
  2. libavutil/riscv/float_dsp_rvv.S +12 −12
libavutil/riscv/fixed_dsp_rvv.S+7−7
@@ -20,7 +20,7 @@ · 19 unmodified lines
2020
2121 #include "asm.S"
2222
23−func ff_vector_fmul_window_scaled_rvv, zve64x
23+func ff_vector_fmul_window_scaled_rvv, zve64x, zba
2424 csrwi vxrm, 0
2525 vsetvli t0, zero, e16, m1, ta, ma
2626 sh2add a2, a4, a2
@@ -68,7 +68,7 @@ func ff_vector_fmul_window_scaled_rvv, zve64x · 41 unmodified lines
6868 ret
6969 endfunc
7070
71−func ff_vector_fmul_window_fixed_rvv, zve64x
71+func ff_vector_fmul_window_fixed_rvv, zve64x, zba
7272 csrwi vxrm, 0
7373 vsetvli t0, zero, e16, m1, ta, ma
7474 sh2add a2, a4, a2
@@ -112,7 +112,7 @@ func ff_vector_fmul_window_fixed_rvv, zve64x · 37 unmodified lines
112112 ret
113113 endfunc
114114
115−func ff_vector_fmul_fixed_rvv, zve32x
115+func ff_vector_fmul_fixed_rvv, zve32x, zba
116116 csrwi vxrm, 0
117117 1:
118118 vsetvli t0, a3, e32, m4, ta, ma
@@ -129,7 +129,7 @@ func ff_vector_fmul_fixed_rvv, zve32x · 10 unmodified lines
129129 ret
130130 endfunc
131131
132−func ff_vector_fmul_reverse_fixed_rvv, zve32x
132+func ff_vector_fmul_reverse_fixed_rvv, zve32x, zba
133133 csrwi vxrm, 0
134134 // e16/m4 and e32/m8 are possible but slow the gathers down.
135135 vsetvli t0, zero, e16, m1, ta, ma
@@ -155,7 +155,7 @@ func ff_vector_fmul_reverse_fixed_rvv, zve32x · 19 unmodified lines
155155 ret
156156 endfunc
157157
158−func ff_vector_fmul_add_fixed_rvv, zve32x
158+func ff_vector_fmul_add_fixed_rvv, zve32x, zba
159159 csrwi vxrm, 0
160160 1:
161161 vsetvli t0, a4, e32, m8, ta, ma
@@ -175,7 +175,7 @@ func ff_vector_fmul_add_fixed_rvv, zve32x · 13 unmodified lines
175175 ret
176176 endfunc
177177
178−func ff_scalarproduct_fixed_rvv, zve64x
178+func ff_scalarproduct_fixed_rvv, zve64x, zba
179179 li t1, 1 << 30
180180 vsetvli t0, zero, e64, m8, ta, ma
181181 vmv.v.x v8, zero
@@ -198,7 +198,7 @@ func ff_scalarproduct_fixed_rvv, zve64x · 16 unmodified lines
198198 endfunc
199199
200200 // (a0) = (a0) + (a1), (a1) = (a0) - (a1) [0..a2-1]
201−func ff_butterflies_fixed_rvv, zve32x
201+func ff_butterflies_fixed_rvv, zve32x, zba
202202 1:
203203 vsetvli t0, a2, e32, m4, ta, ma
204204 vle32.v v16, (a0)
libavutil/riscv/float_dsp_rvv.S+12−12
@@ -21,7 +21,7 @@ · 20 unmodified lines
2121 #include "asm.S"
2222
2323 // (a0) = (a1) * (a2) [0..a3-1]
24−func ff_vector_fmul_rvv, zve32f
24+func ff_vector_fmul_rvv, zve32f, zba
2525 1:
2626 vsetvli t0, a3, e32, m8, ta, ma
2727 vle32.v v16, (a1)
@@ -38,7 +38,7 @@ func ff_vector_fmul_rvv, zve32f · 10 unmodified lines
3838 endfunc
3939
4040 // (a0) += (a1) * fa0 [0..a2-1]
41−func ff_vector_fmac_scalar_rvv, zve32f
41+func ff_vector_fmac_scalar_rvv, zve32f, zba
4242 NOHWF fmv.w.x fa0, a2
4343 NOHWF mv a2, a3
4444 1:
@@ -57,7 +57,7 @@ NOHWF mv a2, a3 · 12 unmodified lines
5757 endfunc
5858
5959 // (a0) = (a1) * fa0 [0..a2-1]
60−func ff_vector_fmul_scalar_rvv, zve32f
60+func ff_vector_fmul_scalar_rvv, zve32f, zba
6161 NOHWF fmv.w.x fa0, a2
6262 NOHWF mv a2, a3
6363 1:
@@ -73,7 +73,7 @@ NOHWF mv a2, a3 · 9 unmodified lines
7373 ret
7474 endfunc
7575
76−func ff_vector_fmul_window_rvv, zve32f
76+func ff_vector_fmul_window_rvv, zve32f, zba
7777 // a0: dst, a1: src0, a2: src1, a3: window, a4: length
7878 // e16/m2 and e32/m4 are possible but slower due to gather.
7979 vsetvli t0, zero, e16, m1, ta, ma
@@ -113,7 +113,7 @@ func ff_vector_fmul_window_rvv, zve32f · 33 unmodified lines
113113 endfunc
114114
115115 // (a0) = (a1) * (a2) + (a3) [0..a4-1]
116−func ff_vector_fmul_add_rvv, zve32f
116+func ff_vector_fmul_add_rvv, zve32f, zba
117117 1:
118118 vsetvli t0, a4, e32, m8, ta, ma
119119 vle32.v v8, (a1)
@@ -133,7 +133,7 @@ endfunc · 13 unmodified lines
133133
134134 // TODO factor vrsub, separate last iteration?
135135 // (a0) = (a1) * reverse(a2) [0..a3-1]
136−func ff_vector_fmul_reverse_rvv, zve32f
136+func ff_vector_fmul_reverse_rvv, zve32f, zba
137137 // e16/m4 and e32/m8 are possible but slower due to gather.
138138 vsetvli t0, zero, e16, m1, ta, ma
139139 sh2add a2, a3, a2
@@ -159,7 +159,7 @@ func ff_vector_fmul_reverse_rvv, zve32f · 19 unmodified lines
159159 endfunc
160160
161161 // (a0) = (a0) + (a1), (a1) = (a0) - (a1) [0..a2-1]
162−func ff_butterflies_float_rvv, zve32f
162+func ff_butterflies_float_rvv, zve32f, zba
163163 1:
164164 vsetvli t0, a2, e32, m8, ta, ma
165165 vle32.v v16, (a0)
@@ -177,7 +177,7 @@ func ff_butterflies_float_rvv, zve32f · 11 unmodified lines
177177 endfunc
178178
179179 // a0 = (a0).(a1) [0..a2-1]
180−func ff_scalarproduct_float_rvv, zve32f
180+func ff_scalarproduct_float_rvv, zve32f, zba
181181 vsetvli t0, zero, e32, m8, ta, ma
182182 vmv.v.x v8, zero
183183 vmv.s.x v0, zero
@@ -199,7 +199,7 @@ NOHWF fmv.x.w a0, fa0 · 15 unmodified lines
199199 endfunc
200200
201201 // (a0) = (a1) * (a2) [0..a3-1]
202−func ff_vector_dmul_rvv, zve64d
202+func ff_vector_dmul_rvv, zve64d, zba
203203 1:
204204 vsetvli t0, a3, e64, m8, ta, ma
205205 vle64.v v16, (a1)
@@ -216,7 +216,7 @@ func ff_vector_dmul_rvv, zve64d · 10 unmodified lines
216216 endfunc
217217
218218 // (a0) += (a1) * fa0 [0..a2-1]
219−func ff_vector_dmac_scalar_rvv, zve64d
219+func ff_vector_dmac_scalar_rvv, zve64d, zba
220220 NOHWD fmv.d.x fa0, a2
221221 NOHWD mv a2, a3
222222 1:
@@ -234,7 +234,7 @@ NOHWD mv a2, a3 · 11 unmodified lines
234234 endfunc
235235
236236 // (a0) = (a1) * fa0 [0..a2-1]
237−func ff_vector_dmul_scalar_rvv, zve64d
237+func ff_vector_dmul_scalar_rvv, zve64d, zba
238238 NOHWD fmv.d.x fa0, a2
239239 NOHWD mv a2, a3
240240 1:
@@ -250,7 +250,7 @@ NOHWD mv a2, a3 · 9 unmodified lines
250250 ret
251251 endfunc
252252
253−func ff_scalarproduct_double_rvv, zve64f
253+func ff_scalarproduct_double_rvv, zve64f, zba
254254 vsetvli t0, zero, e64, m8, ta, ma
255255 vmv.v.x v8, zero
256256 vmv.s.x v0, zero

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t