summaryrefslogtreecommitdiff
path: root/libavutil
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-04-07 02:15:09 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-04-07 02:15:18 +0200
commit4c57c6a7655fb3c1a7194c6f92a075c463d1b898 (patch)
treee86d0f975f4c9e7e4a607ec2b8e751e37636f688 /libavutil
parent541bebd41401d0bc3a2430541faebd55cc021149 (diff)
parent8675bcb0addb1c7fb0b04682d1f3f95d5b8dae14 (diff)
Merge commit '8675bcb0addb1c7fb0b04682d1f3f95d5b8dae14'
* commit '8675bcb0addb1c7fb0b04682d1f3f95d5b8dae14': aarch64: add armv8 CPU flag Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavutil')
-rw-r--r--libavutil/aarch64/cpu.c5
-rw-r--r--libavutil/aarch64/cpu.h1
-rw-r--r--libavutil/cpu.c2
-rw-r--r--libavutil/cpu.h1
4 files changed, 7 insertions, 2 deletions
diff --git a/libavutil/aarch64/cpu.c b/libavutil/aarch64/cpu.c
index 87e9d50561..8ef077aaea 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 |
- AV_CPU_FLAG_VFP * HAVE_VFP;
+ return AV_CPU_FLAG_ARMV8 * HAVE_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 d6af28126b..cf1b9cc516 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) CPUEXT(flags, 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 256bd237d5..c4517bab67 100644
--- a/libavutil/cpu.c
+++ b/libavutil/cpu.c
@@ -130,6 +130,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
@@ -263,6 +264,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 0ad400fefb..8ff14d3ada 100644
--- a/libavutil/cpu.h
+++ b/libavutil/cpu.h
@@ -63,6 +63,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.