summaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
Diffstat (limited to 'contrib')
-rw-r--r--contrib/ffmpeg/A07-fmac-scalar-asm.patch40
1 files changed, 20 insertions, 20 deletions
diff --git a/contrib/ffmpeg/A07-fmac-scalar-asm.patch b/contrib/ffmpeg/A07-fmac-scalar-asm.patch
index 2ccaee8a2..b0ca0f084 100644
--- a/contrib/ffmpeg/A07-fmac-scalar-asm.patch
+++ b/contrib/ffmpeg/A07-fmac-scalar-asm.patch
@@ -1,20 +1,20 @@
-diff --git a/libavutil/x86/float_dsp_init.c b/libavutil/x86/float_dsp_init.c
-index d259a36..3729d91 100644
---- a/libavutil/x86/float_dsp_init.c
-+++ b/libavutil/x86/float_dsp_init.c
-@@ -38,11 +38,13 @@ void ff_float_dsp_init_x86(AVFloatDSPContext *fdsp)
-
- if (mm_flags & AV_CPU_FLAG_SSE && HAVE_SSE) {
- fdsp->vector_fmul = ff_vector_fmul_sse;
-- fdsp->vector_fmac_scalar = ff_vector_fmac_scalar_sse;
-+ // buggy under 64-bit Windows: http://bugzilla.libav.org/show_bug.cgi?id=336
-+ // fdsp->vector_fmac_scalar = ff_vector_fmac_scalar_sse;
- }
- if (mm_flags & AV_CPU_FLAG_AVX && HAVE_AVX) {
- fdsp->vector_fmul = ff_vector_fmul_avx;
-- fdsp->vector_fmac_scalar = ff_vector_fmac_scalar_avx;
-+ // buggy under 64-bit Windows: http://bugzilla.libav.org/show_bug.cgi?id=336
-+ // fdsp->vector_fmac_scalar = ff_vector_fmac_scalar_avx;
- }
- #endif
- }
+diff --git a/libavutil/x86/float_dsp.asm b/libavutil/x86/float_dsp.asm
+index c4e0c66..d379d8f 100644
+--- a/libavutil/x86/float_dsp.asm
++++ b/libavutil/x86/float_dsp.asm
+@@ -60,12 +60,12 @@ cglobal vector_fmac_scalar, 3,3,3, dst, src, len
+ %else
+ cglobal vector_fmac_scalar, 4,4,3, dst, src, mul, len
+ %endif
+-%if WIN64
+- SWAP 0, 2
+-%endif
+ %if ARCH_X86_32
+ VBROADCASTSS m0, mulm
+ %else
++%if WIN64
++ mova xmm0, xmm2
++%endif
+ shufps xmm0, xmm0, 0
+ %if cpuflag(avx)
+ vinsertf128 m0, m0, xmm0, 1