You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
x86inc: Disable vpbroadcastq workaround in newer yasm versions
The bug was fixed in 1.3.0, so only perform the workaround in earlier versions. Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
committed by
Michael Niedermayer
parent
7f46a641bf
commit
f151fbd9e5
@@ -1463,13 +1463,15 @@ FMA4_INSTR fnmsubps, fnmsub132ps, fnmsub213ps, fnmsub231ps
|
|||||||
FMA4_INSTR fnmsubsd, fnmsub132sd, fnmsub213sd, fnmsub231sd
|
FMA4_INSTR fnmsubsd, fnmsub132sd, fnmsub213sd, fnmsub231sd
|
||||||
FMA4_INSTR fnmsubss, fnmsub132ss, fnmsub213ss, fnmsub231ss
|
FMA4_INSTR fnmsubss, fnmsub132ss, fnmsub213ss, fnmsub231ss
|
||||||
|
|
||||||
; workaround: vpbroadcastq is broken in x86_32 due to a yasm bug
|
; workaround: vpbroadcastq is broken in x86_32 due to a yasm bug (fixed in 1.3.0)
|
||||||
%if ARCH_X86_64 == 0
|
%ifdef __YASM_VER__
|
||||||
%macro vpbroadcastq 2
|
%if __YASM_VERSION_ID__ < 0x01030000 && ARCH_X86_64 == 0
|
||||||
%if sizeof%1 == 16
|
%macro vpbroadcastq 2
|
||||||
|
%if sizeof%1 == 16
|
||||||
movddup %1, %2
|
movddup %1, %2
|
||||||
%else
|
%else
|
||||||
vbroadcastsd %1, %2
|
vbroadcastsd %1, %2
|
||||||
%endif
|
%endif
|
||||||
%endmacro
|
%endmacro
|
||||||
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Reference in New Issue
Block a user