History

avutil/cpu: Remove deprecated functions

Andreas Rheinhardt committed 5 years ago

Commit d40bb511 parent ef6a9e53 files · +0 −119Browse files

Unified · Split

3 files
  1. libavutil/cpu.c +0 −92
  2. libavutil/cpu.h +0 −24
  3. libavutil/version.h +0 −3
libavutil/cpu.c+0−92
@@ -102,98 +102,6 @@ int av_get_cpu_flags(void) · 101 unmodified lines
102 return flags;102 return flags;
103}103}
104 104
105#if FF_API_CPU_FLAGS
106void av_set_cpu_flags_mask(int mask)
107{
108 atomic_store_explicit(&cpu_flags, get_cpu_flags() & mask,
109 memory_order_relaxed);
110}
111
112int av_parse_cpu_flags(const char *s)
113{
114#define CPUFLAG_MMXEXT (AV_CPU_FLAG_MMX | AV_CPU_FLAG_MMXEXT | AV_CPU_FLAG_CMOV)
115#define CPUFLAG_3DNOW (AV_CPU_FLAG_3DNOW | AV_CPU_FLAG_MMX)
116#define CPUFLAG_3DNOWEXT (AV_CPU_FLAG_3DNOWEXT | CPUFLAG_3DNOW)
117#define CPUFLAG_SSE (AV_CPU_FLAG_SSE | CPUFLAG_MMXEXT)
118#define CPUFLAG_SSE2 (AV_CPU_FLAG_SSE2 | CPUFLAG_SSE)
119#define CPUFLAG_SSE2SLOW (AV_CPU_FLAG_SSE2SLOW | CPUFLAG_SSE2)
120#define CPUFLAG_SSE3 (AV_CPU_FLAG_SSE3 | CPUFLAG_SSE2)
121#define CPUFLAG_SSE3SLOW (AV_CPU_FLAG_SSE3SLOW | CPUFLAG_SSE3)
122#define CPUFLAG_SSSE3 (AV_CPU_FLAG_SSSE3 | CPUFLAG_SSE3)
123#define CPUFLAG_SSE4 (AV_CPU_FLAG_SSE4 | CPUFLAG_SSSE3)
124#define CPUFLAG_SSE42 (AV_CPU_FLAG_SSE42 | CPUFLAG_SSE4)
125#define CPUFLAG_AVX (AV_CPU_FLAG_AVX | CPUFLAG_SSE42)
126#define CPUFLAG_AVXSLOW (AV_CPU_FLAG_AVXSLOW | CPUFLAG_AVX)
127#define CPUFLAG_XOP (AV_CPU_FLAG_XOP | CPUFLAG_AVX)
128#define CPUFLAG_FMA3 (AV_CPU_FLAG_FMA3 | CPUFLAG_AVX)
129#define CPUFLAG_FMA4 (AV_CPU_FLAG_FMA4 | CPUFLAG_AVX)
130#define CPUFLAG_AVX2 (AV_CPU_FLAG_AVX2 | CPUFLAG_AVX)
131#define CPUFLAG_BMI2 (AV_CPU_FLAG_BMI2 | AV_CPU_FLAG_BMI1)
132#define CPUFLAG_AESNI (AV_CPU_FLAG_AESNI | CPUFLAG_SSE42)
133#define CPUFLAG_AVX512 (AV_CPU_FLAG_AVX512 | CPUFLAG_AVX2)
134 static const AVOption cpuflags_opts[] = {
135 { "flags" , NULL, 0, AV_OPT_TYPE_FLAGS, { .i64 = 0 }, INT64_MIN, INT64_MAX, .unit = "flags" },
136#if ARCH_PPC
137 { "altivec" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_ALTIVEC }, .unit = "flags" },
138#elif ARCH_X86
139 { "mmx" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_MMX }, .unit = "flags" },
140 { "mmxext" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_MMXEXT }, .unit = "flags" },
141 { "sse" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_SSE }, .unit = "flags" },
142 { "sse2" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_SSE2 }, .unit = "flags" },
143 { "sse2slow", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_SSE2SLOW }, .unit = "flags" },
144 { "sse3" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_SSE3 }, .unit = "flags" },
145 { "sse3slow", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_SSE3SLOW }, .unit = "flags" },
146 { "ssse3" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_SSSE3 }, .unit = "flags" },
147 { "atom" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_ATOM }, .unit = "flags" },
148 { "sse4.1" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_SSE4 }, .unit = "flags" },
149 { "sse4.2" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_SSE42 }, .unit = "flags" },
150 { "avx" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_AVX }, .unit = "flags" },
151 { "avxslow" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_AVXSLOW }, .unit = "flags" },
152 { "xop" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_XOP }, .unit = "flags" },
153 { "fma3" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_FMA3 }, .unit = "flags" },
154 { "fma4" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_FMA4 }, .unit = "flags" },
155 { "avx2" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_AVX2 }, .unit = "flags" },
156 { "bmi1" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_BMI1 }, .unit = "flags" },
157 { "bmi2" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_BMI2 }, .unit = "flags" },
158 { "3dnow" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_3DNOW }, .unit = "flags" },
159 { "3dnowext", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_3DNOWEXT }, .unit = "flags" },
160 { "cmov", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_CMOV }, .unit = "flags" },
161 { "aesni" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_AESNI }, .unit = "flags" },
162 { "avx512" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = CPUFLAG_AVX512 }, .unit = "flags" },
163#elif ARCH_ARM
164 { "armv5te", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_ARMV5TE }, .unit = "flags" },
165 { "armv6", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_ARMV6 }, .unit = "flags" },
166 { "armv6t2", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_ARMV6T2 }, .unit = "flags" },
167 { "vfp", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_VFP }, .unit = "flags" },
168 { "vfp_vm", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_VFP_VM }, .unit = "flags" },
169 { "vfpv3", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_VFPV3 }, .unit = "flags" },
170 { "neon", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_NEON }, .unit = "flags" },
171#elif ARCH_AARCH64
172 { "armv8", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_ARMV8 }, .unit = "flags" },
173 { "neon", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_NEON }, .unit = "flags" },
174 { "vfp", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_VFP }, .unit = "flags" },
175#elif ARCH_MIPS
176 { "mmi", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_MMI }, .unit = "flags" },
177 { "msa", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_CPU_FLAG_MSA }, .unit = "flags" },
178#endif
179 { NULL },
180 };
181 static const AVClass class = {
182 .class_name = "cpuflags",
183 .item_name = av_default_item_name,
184 .option = cpuflags_opts,
185 .version = LIBAVUTIL_VERSION_INT,
186 };
187
188 int flags = 0, ret;
189 const AVClass *pclass = &class;
190
191 if ((ret = av_opt_eval_flags(&pclass, &cpuflags_opts[0], s, &flags)) < 0)
192 return ret;
193
194 return flags & INT_MAX;
195}
196#endif
197int av_parse_cpu_caps(unsigned *flags, const char *s)105int av_parse_cpu_caps(unsigned *flags, const char *s)
198{106{
199 static const AVOption cpuflags_opts[] = {107 static const AVOption cpuflags_opts[] = {
libavutil/cpu.h+0−24
@@ -23,9 +23,6 @@ · 22 unmodified lines
23 23
24#include <stddef.h>24#include <stddef.h>
25 25
26#include "attributes.h"
27#include "version.h"
28
29#define AV_CPU_FLAG_FORCE 0x80000000 /* force usage of selected flags (OR) */26#define AV_CPU_FLAG_FORCE 0x80000000 /* force usage of selected flags (OR) */
30 27
31 /* lower 16 bits - CPU features */28 /* lower 16 bits - CPU features */
@@ -89,27 +86,6 @@ int av_get_cpu_flags(void); · 57 unmodified lines
89 */86 */
90void av_force_cpu_flags(int flags);87void av_force_cpu_flags(int flags);
91 88
92#if FF_API_CPU_FLAGS
93/**
94 * Set a mask on flags returned by av_get_cpu_flags().
95 * This function is mainly useful for testing.
96 * Please use av_force_cpu_flags() and av_get_cpu_flags() instead which are more flexible
97 */
98attribute_deprecated void av_set_cpu_flags_mask(int mask);
99
100/**
101 * Parse CPU flags from a string.
102 *
103 * The returned flags contain the specified flags as well as related unspecified flags.
104 *
105 * This function exists only for compatibility with libav.
106 * Please use av_parse_cpu_caps() when possible.
107 * @return a combination of AV_CPU_* flags, negative on error.
108 */
109attribute_deprecated
110int av_parse_cpu_flags(const char *s);
111#endif
112
113/**89/**
114 * Parse CPU caps from a string and update the given AV_CPU_* flags based on that.90 * Parse CPU caps from a string and update the given AV_CPU_* flags based on that.
115 *91 *
libavutil/version.h+0−3
@@ -108,9 +108,6 @@ · 107 unmodified lines
108#ifndef FF_API_CHILD_CLASS_NEXT108#ifndef FF_API_CHILD_CLASS_NEXT
109#define FF_API_CHILD_CLASS_NEXT (LIBAVUTIL_VERSION_MAJOR < 57)109#define FF_API_CHILD_CLASS_NEXT (LIBAVUTIL_VERSION_MAJOR < 57)
110#endif110#endif
111#ifndef FF_API_CPU_FLAGS
112#define FF_API_CPU_FLAGS (LIBAVUTIL_VERSION_MAJOR < 57)
113#endif
114#ifndef FF_API_D2STR111#ifndef FF_API_D2STR
115#define FF_API_D2STR (LIBAVUTIL_VERSION_MAJOR < 58)112#define FF_API_D2STR (LIBAVUTIL_VERSION_MAJOR < 58)
116#endif113#endif

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t