From: Janne Grunau <[email protected]>

---
 libavutil/aarch64/cpu.c | 3 ++-
 libavutil/aarch64/cpu.h | 1 +
 libavutil/cpu.c         | 2 ++
 libavutil/cpu.h         | 1 +
 4 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/libavutil/aarch64/cpu.c b/libavutil/aarch64/cpu.c
index 2cc2ccd..4ad19b4 100644
--- a/libavutil/aarch64/cpu.c
+++ b/libavutil/aarch64/cpu.c
@@ -22,6 +22,7 @@
 
 int ff_get_cpu_flags_aarch64(void)
 {
-    return AV_CPU_FLAG_NEON * HAVE_NEON |
+    return AV_CPU_FLAG_ARMV8            |
+           AV_CPU_FLAG_NEON * HAVE_NEON |
            AV_CPU_FLAG_VFP  * HAVE_VFP;
 }
diff --git a/libavutil/aarch64/cpu.h b/libavutil/aarch64/cpu.h
index 704df48..1821fc8 100644
--- a/libavutil/aarch64/cpu.h
+++ b/libavutil/aarch64/cpu.h
@@ -23,6 +23,7 @@
 #include "libavutil/cpu.h"
 #include "libavutil/cpu_internal.h"
 
+#define have_armv8(flags) ((flags) & AV_CPU_FLAG_ARMV8)
 #define have_neon(flags) CPUEXT(flags, NEON)
 #define have_vfp(flags)  CPUEXT(flags, VFP)
 
diff --git a/libavutil/cpu.c b/libavutil/cpu.c
index d651eb2..e755d15 100644
--- a/libavutil/cpu.c
+++ b/libavutil/cpu.c
@@ -126,6 +126,7 @@ int av_parse_cpu_flags(const char *s)
         { "vfpv3",    NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_VFPV3   
 },    .unit = "flags" },
         { "neon",     NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_NEON    
 },    .unit = "flags" },
 #elif ARCH_AARCH64
+        { "armv8",    NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_ARMV8   
 },    .unit = "flags" },
         { "neon",     NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_NEON    
 },    .unit = "flags" },
         { "vfp",      NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_VFP     
 },    .unit = "flags" },
 #endif
@@ -185,6 +186,7 @@ static const struct {
     const char *name;
 } cpu_flag_tab[] = {
 #if   ARCH_AARCH64
+    { AV_CPU_FLAG_ARMV8,     "armv8"      },
     { AV_CPU_FLAG_NEON,      "neon"       },
     { AV_CPU_FLAG_VFP,       "vfp"        },
 #elif ARCH_ARM
diff --git a/libavutil/cpu.h b/libavutil/cpu.h
index 517c520..7cecccc 100644
--- a/libavutil/cpu.h
+++ b/libavutil/cpu.h
@@ -61,6 +61,7 @@
 #define AV_CPU_FLAG_VFP          (1 << 3)
 #define AV_CPU_FLAG_VFPV3        (1 << 4)
 #define AV_CPU_FLAG_NEON         (1 << 5)
+#define AV_CPU_FLAG_ARMV8        (1 << 6)
 
 /**
  * Return the flags which specify extensions supported by the CPU.
-- 
1.9.1

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to