[FFmpeg-devel] [PATCH] riscv: Tweak names of cpu flags, print flags in libavutil/tests/cpu
James Almer
jamrial at gmail.com
Fri Dec 15 15:29:25 EET 2023
On 12/15/2023 10:05 AM, Martin Storsjö wrote:
> The names of the cpu flags are pased by the libavutil eval
> functions - names with dashes are parsed as a subtraction.
> Replace dashes with underscores.
>
> Add these cpu flags to libavutil/tests/cpu, so that the detected
> cpu flags also get printed when run, also as part of the
> fate-cpu test.
> ---
> libavutil/cpu.c | 10 +++++-----
> libavutil/tests/cpu.c | 10 ++++++++++
> 2 files changed, 15 insertions(+), 5 deletions(-)
>
> diff --git a/libavutil/cpu.c b/libavutil/cpu.c
> index 1e0607d581..8c1acc5e72 100644
> --- a/libavutil/cpu.c
> +++ b/libavutil/cpu.c
> @@ -186,12 +186,12 @@ int av_parse_cpu_caps(unsigned *flags, const char *s)
> { "rvi", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVI }, .unit = "flags" },
> { "rvf", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVF }, .unit = "flags" },
> { "rvd", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVD }, .unit = "flags" },
> - { "rvv-i32", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVV_I32 }, .unit = "flags" },
> - { "rvv-f32", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVV_F32 }, .unit = "flags" },
> - { "rvv-i64", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVV_I64 }, .unit = "flags" },
> + { "rvv_i32", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVV_I32 }, .unit = "flags" },
> + { "rvv_f32", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVV_F32 }, .unit = "flags" },
> + { "rvv_i64", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVV_I64 }, .unit = "flags" },
> { "rvv", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVV_F64 }, .unit = "flags" },
> - { "rvb-addr",NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVB_ADDR }, .unit = "flags" },
> - { "rvb-basic",NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVB_BASIC }, .unit = "flags" },
> + { "rvb_addr",NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVB_ADDR }, .unit = "flags" },
> + { "rvb_basic",NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_RVB_BASIC }, .unit = "flags" },
Use this change to add some vertical alignment while at it.
> #endif
> { NULL },
> };
> diff --git a/libavutil/tests/cpu.c b/libavutil/tests/cpu.c
> index 200f20388a..1cabd15b72 100644
> --- a/libavutil/tests/cpu.c
> +++ b/libavutil/tests/cpu.c
> @@ -84,6 +84,16 @@ static const struct {
> #elif ARCH_LOONGARCH
> { AV_CPU_FLAG_LSX, "lsx" },
> { AV_CPU_FLAG_LASX, "lasx" },
> +#elif ARCH_RISCV
> + { AV_CPU_FLAG_RVI, "rvi" },
> + { AV_CPU_FLAG_RVF, "rvf" },
> + { AV_CPU_FLAG_RVD, "rvd" },
> + { AV_CPU_FLAG_RVB_ADDR, "rvb_addr" },
> + { AV_CPU_FLAG_RVB_BASIC, "rvb_basic" },
> + { AV_CPU_FLAG_RVV_I32, "rvv_i32" },
> + { AV_CPU_FLAG_RVV_F32, "rvv_f32" },
> + { AV_CPU_FLAG_RVV_I64, "rvv_i64" },
> + { AV_CPU_FLAG_RVV_F64, "rvv" },
> #endif
> { 0 }
> };
More information about the ffmpeg-devel
mailing list