This cannot beat the Zbb implementation, and it is unlikely that a real meaningful CPU design would support V and not Zbb. The best loop rewrite that I could come up with (4 shifts, 2 ands, 3 ors) is still ~40% slower than Zbb. A proper faster vector implementation should be feasible with the cryptographic vector extensions, but that is a story for another time. |
||
|---|---|---|
| .. | ||
| aacpsdsp_init.c | ||
| aacpsdsp_rvv.S | ||
| alacdsp_init.c | ||
| alacdsp_rvv.S | ||
| audiodsp_init.c | ||
| audiodsp_rvf.S | ||
| audiodsp_rvv.S | ||
| bswapdsp_init.c | ||
| bswapdsp_rvb.S | ||
| bswapdsp_rvv.S | ||
| fmtconvert_init.c | ||
| fmtconvert_rvv.S | ||
| h264_chroma_init_riscv.c | ||
| h264_mc_chroma.S | ||
| idctdsp_init.c | ||
| idctdsp_rvv.S | ||
| Makefile | ||
| opusdsp_init.c | ||
| opusdsp_rvv.S | ||
| pixblockdsp_init.c | ||
| pixblockdsp_rvi.S | ||
| pixblockdsp_rvv.S | ||
| vorbisdsp_init.c | ||
| vorbisdsp_rvv.S | ||