From cae39851201b7781f1262e1c23627b45e6e80bb4 Mon Sep 17 00:00:00 2001 From: James Almer Date: Tue, 26 May 2015 14:29:07 -0300 Subject: x86: Add helper macros to check for slow cpuflags Signed-off-by: James Almer Signed-off-by: Luca Barbato --- libavutil/cpu_internal.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'libavutil/cpu_internal.h') diff --git a/libavutil/cpu_internal.h b/libavutil/cpu_internal.h index 3bfe8a82d8..49c7b070e4 100644 --- a/libavutil/cpu_internal.h +++ b/libavutil/cpu_internal.h @@ -24,7 +24,17 @@ #define CPUEXT_SUFFIX(flags, suffix, cpuext) \ (HAVE_ ## cpuext ## suffix && ((flags) & AV_CPU_FLAG_ ## cpuext)) +#define CPUEXT_SUFFIX_FAST(flags, suffix, cpuext) \ + (HAVE_ ## cpuext ## suffix && ((flags) & AV_CPU_FLAG_ ## cpuext) && \ + !((flags) & AV_CPU_FLAG_ ## cpuext ## SLOW)) + +#define CPUEXT_SUFFIX_SLOW(flags, suffix, cpuext) \ + (HAVE_ ## cpuext ## suffix && ((flags) & AV_CPU_FLAG_ ## cpuext) && \ + ((flags) & AV_CPU_FLAG_ ## cpuext ## SLOW)) + #define CPUEXT(flags, cpuext) CPUEXT_SUFFIX(flags, , cpuext) +#define CPUEXT_FAST(flags, cpuext) CPUEXT_SUFFIX_FAST(flags, , cpuext) +#define CPUEXT_SLOW(flags, cpuext) CPUEXT_SUFFIX_SLOW(flags, , cpuext) int ff_get_cpu_flags_aarch64(void); int ff_get_cpu_flags_arm(void); -- cgit v1.2.3