summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2016-01-15 17:08:37 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2016-01-15 17:08:37 +0100
commitda6f34516b60aea0ea2e4864976706d11ef2b687 (patch)
tree87f282e6a900a0192c793cee0e38355c2000cbb5 /libavcodec
parent48f5244df7ea5f764a63402147235cfa5355d388 (diff)
avcodec/x86/fmtconvert: Add emms to int32_to_float_fmul_array8_sse()
this should fix checkasm on x86_64-archlinux-gcc-valgrind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/x86/fmtconvert.asm9
1 files changed, 8 insertions, 1 deletions
diff --git a/libavcodec/x86/fmtconvert.asm b/libavcodec/x86/fmtconvert.asm
index b4220e21ea..8f62a0a093 100644
--- a/libavcodec/x86/fmtconvert.asm
+++ b/libavcodec/x86/fmtconvert.asm
@@ -107,7 +107,14 @@ cglobal int32_to_float_fmul_array8, 5, 5, 5, c, dst, src, mul, len
add mulq, 4
add lenq, 32
jl .loop
- REP_RET
+%if notcpuflag(sse2)
+ ;; cvtpi2ps switches to MMX even if the source is a memory location
+ ;; possible an error in documentation since every tested CPU disagrees with
+ ;; that. Use emms anyway since the vast majority of machines will use the
+ ;; SSE2 variant
+ emms
+%endif
+ RET
%endmacro
INIT_XMM sse