Wu Jianhua
f629ea2e18
avutil/cpu: add AVX512 Icelake flag
...
Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
Reviewed-by: Henrik Gramner <henrik@gramner.com>
Signed-off-by: James Almer <jamrial@gmail.com>
3 years ago
James Almer
8c2d2fd6cc
avutil/cpu: move slow gather checks below in the function
...
Put them together with other similar slow flag checks.
Signed-off-by: James Almer <jamrial@gmail.com>
3 years ago
Alan Kelly
ffbab99f2c
libavutil/cpu: Add AV_CPU_FLAG_SLOW_GATHER.
...
This flag is set on Haswell and earlier and all AMD cpus.
3 years ago
alexander schmid
b23c4a9dbd
lavu/x86/cpu: Fix aesni detection
6 years ago
James Darnley
e2218ed8ce
avutil: add alignment needed for AVX-512
7 years ago
James Darnley
4783a01c11
avutil: detect when AVX-512 is available
7 years ago
James Almer
3d828c9fd5
cpu: split flag checks per arch in av_cpu_max_align()
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
7 years ago
James Almer
3b345d389b
avutil/cpu: split flag checks per arch in av_cpu_max_align()
...
Signed-off-by: James Almer <jamrial@gmail.com>
7 years ago
Diego Biurrun
fd502f4f5f
build: Generalize yasm/nasm-related variable names
...
None of them are specific to the YASM assembler.
(Cherry-picked from libav commit 39e208f4d4
)
Signed-off-by: James Almer <jamrial@gmail.com>
8 years ago
Diego Biurrun
39e208f4d4
build: Generalize yasm/nasm-related variable names
...
None of them are specific to the YASM assembler.
8 years ago
Fiona Glaser
8e9cd81d29
x86: cpu: Detect Conroe CPUs and their slow shuffle unit
8 years ago
Matthieu Bouron
9eb3da2f99
asm: FF_-prefix internal macros used in inline assembly
...
See merge commit '39d6d3618d48625decaff7d9bdbb45b44ef2a805'.
9 years ago
Diego Biurrun
1e9c5bf4c1
asm: FF_-prefix internal macros used in inline assembly
...
These warnings conflict with system macros on Solaris, producing
truckloads of warnings about macro redefinition.
9 years ago
Vittorio Giovara
41ed7ab45f
cosmetics: Fix spelling mistakes
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
9 years ago
James Almer
be22bd32fe
x86/cpu: set avxslow cpuflag on btver2 CPUs
...
They are also slow when using 256 bit wide registers
Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
9 years ago
Rodger Combs
1e477a970f
lavu: add AESNI CPU flag
9 years ago
James Almer
f7cafb5d02
x86: add AV_CPU_FLAG_AVXSLOW flag
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years ago
James Almer
c312bfac4c
x86/cpu: add AV_CPU_FLAG_AVXSLOW flag
...
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
10 years ago
lvqcl
e58fc44649
avutil/x86/cpu: fix cpuid sub-leaf selection
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
James Almer
2d9821a208
x86/cpu: check for OS support before enabling AVX2
...
AV_CPU_FLAG_AVX is enabled at this point only if there's OS support.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
d59fcdaff3
x86: add detection for Bit Manipulation Instruction sets
...
Based on x264 code
Signed-off-by: James Almer <jamrial@gmail.com>
11 years ago
James Almer
1b932eb150
x86: add detection for FMA3 instruction set
...
Based on x264 code
Signed-off-by: James Almer <jamrial@gmail.com>
11 years ago
James Almer
0bc3de19ff
x86: add detection for Bit Manipulation Instruction sets
...
Based on x264 code
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
a2af8eddab
x86: add detection for FMA3 instruction set
...
Based on x264 code
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Kieran Kunhya
865b70bc5d
Add AVX2 capable CPU detection. Patch based on x264's AVX2 detection
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Kieran Kunhya
4d6ee07255
libavutil: x86: Add AVX2 capable CPU detection.
...
Patch based on x264's AVX2 detection
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
11 years ago
Diego Biurrun
b78b10c4b7
avutil: Move internal CPU detection function declarations to private header
11 years ago
Diego Biurrun
490df522c7
x86: cpu: Drop unused HAVE_RWEFLAGS condition
...
The test for rweflags was dropped in a previous commit.
12 years ago
Diego Biurrun
a7329e5fc2
x86: get_cpu_flags: add necessary ifdefs around function body
...
ff_get_cpu_flags_x86() requires cpuid(), which is conditionally defined
elsewhere in the file. Surrounding the function body with ifdefs allows
building even when cpuid is not defined. An empty cpuflags mask is
returned in this case.
12 years ago
Diego Biurrun
f6fbce761e
x86: Drop CPU detection intrinsics
...
Now that there is CPU detection in YASM, there will always be one of
inline or external assembly enabled, which obviates the need to fall
back on CPU detection through compiler intrinsics.
12 years ago
Diego Biurrun
1f6d86991f
x86: Add YASM implementations of cpuid and xgetbv from x264
...
This allows detecting CPU features with builds that have neither
gcc inline assembly nor the right compiler intrinsics enabled.
12 years ago
Diego Biurrun
54b243141e
x86: cpu: Break out test for cpuid capabilities into separate function
12 years ago
Diego Biurrun
cc5e9e5ff0
x86: ff_get_cpu_flags_x86(): Avoid a pointless variable indirection
12 years ago
Diego Biurrun
a886b279a0
x86: cosmetics: Comment some #endifs for better readability
12 years ago
Mans Rullgard
c318626ce2
x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.h
...
This puts x86-specific things in the x86/ subdirectory where they
belong.
Signed-off-by: Mans Rullgard <mans@mansr.com>
12 years ago
Diego Biurrun
239fdf1b4a
x86: build: replace mmx2 by mmxext
...
Refactoring mmx2/mmxext YASM code with cpuflags will force renames.
So switching to a consistent naming scheme beforehand is sensible.
The name "mmxext" is more official and widespread and also the name
of the CPU flag, as reported e.g. by the Linux kernel.
12 years ago
Mans Rullgard
e346176de9
x86: cpu: clean up check for cpuid instruction support
...
This adds macros for accessing the EFLAGS register and uses
these instead of coding the entire check in inline asm.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Ronald S. Bultje
358d854df8
x86/cpu: implement get/set_eflags using intrinsics
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Ronald S. Bultje
c0ee695bd7
x86/cpu: implement support for cpuid through intrinsics
...
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Ronald S. Bultje
3f150ffba3
x86/cpu: implement support for xgetbv through intrinsics
...
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Mans Rullgard
889c1ec4cc
x86: cpu: clean up check for cpuid instruction support
...
This adds macros for accessing the EFLAGS register and uses
these instead of coding the entire check in inline asm.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Mans Rullgard
963cdf39b4
x86: cpu: whitespace (mostly) cosmetics
...
This adds whitespace around operators, aligns line continuation
backslashes, and breaks long lines. Also fixes an ifdef halfway
through a statement. The one line of duplication this saved is
not worth the ugliness.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Diego Biurrun
65345a5a30
x86: Add CPU flag for the i686 cmov instruction
13 years ago
Reimar Döffinger
b223035511
Detect and check for CMOV.
...
Some MMX-only CPUs do not have support for CMOV.
All SSE/MMX2 CPUs should be fine, thus no check was
added to those functions.
See also https://sourceforge.net/tracker/?func=detail&aid=3358347&group_id=205275&atid=992986
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Sean McGovern
be0675ce67
x86 cpuid: set vendor union members separately
...
Solaris Studio (suncc) has difficulty with filling in
members of a union. Instead, let's retrieve and store the
cpuid() results separately. This is still a compiler bug,
however this fix does not cause a regression on other platforms.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
13 years ago
Jason Garrett-Glaser
96a59cf37b
x86: XOP/FMA4 CPU detection support
13 years ago
Sean McGovern
5938e02185
cpu detection: avoid a signed overflow
...
1<<31 overflows because 1 is signed, so force it to unsigned.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Justin Ruggles
45ed822550
cosmetics: indentation
14 years ago
Justin Ruggles
eba586b0d9
Add a CPU flag for the Atom processor.
...
The Atom has SSSE3 support, which is useful in many cases, but sometimes the
SSSE3 version is slower than the SSE2 equivalent on the Atom, but is generally
faster on other processors supporting SSSE3. This flag allows for selectively
disabling certain SSSE3 functions on the Atom.
14 years ago
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago