1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-21 10:55:51 +02:00
FFmpeg/libavutil/riscv
Rémi Denis-Courmont 96a83ceea4 riscv: fix scalar product initialisation
VSETVLI xd, x0, ...' has rather nonobvious semantics:
- If xd is x0, then it preserves the current vector length.
- If xd is not x0, it sets the vector length to the supported maximum.

Also somewhat confusingly, while VMV.X.S always does its thing
regardless of the selected vector length, VMV.S.X does _nothing_ if the
selected vector length is zero.

So the current code breaks fails to initialise the accumulator if we
are unlucky to have a selected vector length of zero on entry. Fix it
by forcing the vector length to one.
2022-10-13 10:17:38 +02:00
..
asm.S lavu/riscv: helper macro for VTYPE encoding 2022-10-10 02:22:12 +02:00
bswap.h
cpu.c lavu/riscv: CPU flag for the Zbb extension 2022-10-05 08:26:19 +02:00
cpu.h lavu/riscv: helper to read the vector length 2022-09-28 11:43:17 +02:00
fixed_dsp_init.c lavu/fixeddsp: RISC-V V butterflies_fixed 2022-09-27 13:19:52 +02:00
fixed_dsp_rvv.S riscv: remove unnecessary #include's 2022-10-05 06:54:56 +02:00
float_dsp_init.c lavu/floatdsp: RISC-V V scalarproduct_float 2022-09-27 13:19:52 +02:00
float_dsp_rvv.S riscv: fix scalar product initialisation 2022-10-13 10:17:38 +02:00
intmath.h lavu/riscv: fix off-by-one in bit-magnitude clip 2022-09-15 18:11:12 -03:00
Makefile lavu/fixeddsp: RISC-V V butterflies_fixed 2022-09-27 13:19:52 +02:00
timer.h