diff options
author | Rodeo <[email protected]> | 2012-09-08 22:08:24 +0000 |
---|---|---|
committer | Rodeo <[email protected]> | 2012-09-08 22:08:24 +0000 |
commit | cfe9bebf28ddcadcfa095400b74a531a9f1faa65 (patch) | |
tree | a27200003c2dc37b29151be885a04ca6a6260342 | |
parent | 78f2400f0f78715017c5ee596c717540825f24c4 (diff) |
Update the fmac scalar patch. Instead of a workaround, apply the fix from Libav, so that the patch can be dropped on the next bump.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4943 b64f7644-9d1e-0410-96f1-a4d463321fa5
-rw-r--r-- | contrib/ffmpeg/A07-fmac-scalar-asm.patch | 40 |
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 |