---
This should fix the failures on wine/win64. I'm guessing it worked
on real win64 because the memcpy there doesn't use sse.
Can someone please test this?
---
libavcodec/x86/fft_mmx.asm | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/libavcodec/x86/fft_mmx.asm b/libavcodec/x86/fft_mmx.asm
index 1cacfb7..5143611 100644
--- a/libavcodec/x86/fft_mmx.asm
+++ b/libavcodec/x86/fft_mmx.asm
@@ -640,19 +640,21 @@ cglobal fft_permute, 2,7,1
%if ARCH_X86_64
mov r0, r1
mov r1, r5
+%endif
+%if WIN64
+ sub rsp, 8
+ call memcpy
+ add rsp, 8
+ RET
+%elif ARCH_X86_64
+ jmp memcpy
%else
push r2
push r5
push r1
-%endif
-%if ARCH_X86_64 && WIN64 == 0
- jmp memcpy
-%else
call memcpy
-%if ARCH_X86_32
add esp, 12
-%endif
- REP_RET
+ RET
%endif
cglobal imdct_calc, 3,5,3
--
1.7.10.2
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel