ffmpeg/libavutil/x86
Dale Curtis 50e30d9bb7 Don't use _tzcnt instrinics with clang for windows w/o BMI.
Technically _tzcnt* intrinsics are only available when the BMI
instruction set is present. However the instruction encoding
degrades to "rep bsf" on older processors.

Clang for Windows debatably restricts the _tzcnt* instrinics behind
the __BMI__ architecture define, so check for its presence or
exclude the usage of these intrinics when clang is present.

See also:
https://ffmpeg.org/pipermail/ffmpeg-devel/2015-November/183404.html
https://bugs.llvm.org/show_bug.cgi?id=30506
http://lists.llvm.org/pipermail/cfe-dev/2016-October/051034.html

Signed-off-by: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Matt Oliver <protogonoi@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-25 21:50:37 +02:00
..
Makefile build: Generalize yasm/nasm-related variable names 2017-06-21 17:00:29 -03:00
asm.h
bswap.h
cpu.c avutil/cpu: split flag checks per arch in av_cpu_max_align() 2017-09-27 23:10:09 -03:00
cpu.h
cpuid.asm
emms.asm Merge commit '7911186ed616ae81dd8617d6d0e8b08c818db9d8' 2017-03-23 18:28:56 -03:00
emms.h Merge commit '7911186ed616ae81dd8617d6d0e8b08c818db9d8' 2017-03-23 18:28:56 -03:00
fixed_dsp.asm
fixed_dsp_init.c
float_dsp.asm x86/float_dsp: remove usage of integer instructions 2017-05-12 23:34:49 -03:00
float_dsp_init.c x86/float_dsp: add ff_vector_fmul_reverse_avx2 2017-04-11 21:35:35 -03:00
imgutils.asm Merge commit '6be7944ee2ec2f045e6eb9a93237e992c8b20ac4' 2017-03-23 18:05:27 -03:00
imgutils_init.c Merge commit 'd7bc52bf456deba0f32d9fe5c288ec441f1ebef5' 2017-03-20 08:34:10 +01:00
intmath.h Don't use _tzcnt instrinics with clang for windows w/o BMI. 2017-10-25 21:50:37 +02:00
intreadwrite.h
lls.asm
lls_init.c
pixelutils.asm
pixelutils.h
pixelutils_init.c
timer.h
w64xmmtest.h
x86inc.asm Merge commit '7abdd026df6a9a52d07d8174505b33cc89db7bf6' 2017-09-26 18:48:06 -03:00
x86util.asm Merge commit '994c4bc10751e39c7ed9f67ffd0c0dea5223daf2' 2017-10-21 12:15:57 -03:00