|
|
|
@ -118,6 +118,7 @@ int av_parse_cpu_flags(const char *s) |
|
|
|
|
#define CPUFLAG_FMA4 (AV_CPU_FLAG_FMA4 | CPUFLAG_AVX) |
|
|
|
|
#define CPUFLAG_AVX2 (AV_CPU_FLAG_AVX2 | CPUFLAG_AVX) |
|
|
|
|
#define CPUFLAG_BMI2 (AV_CPU_FLAG_BMI2 | AV_CPU_FLAG_BMI1) |
|
|
|
|
#define CPUFLAG_AESNI (AV_CPU_FLAG_AESNI | CPUFLAG_SSE42) |
|
|
|
|
static const AVOption cpuflags_opts[] = { |
|
|
|
|
{ "flags" , NULL, 0, AV_OPT_TYPE_FLAGS, { .i64 = 0 }, INT64_MIN, INT64_MAX, .unit = "flags" }, |
|
|
|
|
#if ARCH_PPC |
|
|
|
@ -145,6 +146,7 @@ int av_parse_cpu_flags(const char *s) |
|
|
|
|
{ "3dnow" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_3DNOW }, .unit = "flags" }, |
|
|
|
|
{ "3dnowext", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_3DNOWEXT }, .unit = "flags" }, |
|
|
|
|
{ "cmov", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_CMOV }, .unit = "flags" }, |
|
|
|
|
{ "aesni" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_AESNI }, .unit = "flags" }, |
|
|
|
|
#elif ARCH_ARM |
|
|
|
|
{ "armv5te", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_ARMV5TE }, .unit = "flags" }, |
|
|
|
|
{ "armv6", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_ARMV6 }, .unit = "flags" }, |
|
|
|
@ -205,6 +207,7 @@ int av_parse_cpu_caps(unsigned *flags, const char *s) |
|
|
|
|
{ "3dnow" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_3DNOW }, .unit = "flags" }, |
|
|
|
|
{ "3dnowext", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_3DNOWEXT }, .unit = "flags" }, |
|
|
|
|
{ "cmov", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_CMOV }, .unit = "flags" }, |
|
|
|
|
{ "aesni", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_AESNI }, .unit = "flags" }, |
|
|
|
|
|
|
|
|
|
#define CPU_FLAG_P2 AV_CPU_FLAG_CMOV | AV_CPU_FLAG_MMX |
|
|
|
|
#define CPU_FLAG_P3 CPU_FLAG_P2 | AV_CPU_FLAG_MMX2 | AV_CPU_FLAG_SSE |
|
|
|
@ -340,6 +343,7 @@ static const struct { |
|
|
|
|
{ AV_CPU_FLAG_AVX2, "avx2" }, |
|
|
|
|
{ AV_CPU_FLAG_BMI1, "bmi1" }, |
|
|
|
|
{ AV_CPU_FLAG_BMI2, "bmi2" }, |
|
|
|
|
{ AV_CPU_FLAG_AESNI, "aesni" }, |
|
|
|
|
#endif |
|
|
|
|
{ 0 } |
|
|
|
|
}; |
|
|
|
|