[SCM] libav/experimental: Make sure that sfence is used after any non temporal stores.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:57:22 UTC 2013


The following commit has been merged in the experimental branch:
commit 845e37e770d7aa3316f368db167eb299697e7f84
Author: Zuxy Meng <zuxy.meng at gmail.com>
Date:   Tue Jan 12 02:34:33 2010 +0000

    Make sure that sfence is used after any non temporal stores.
    
    Originally committed as revision 30287 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale

diff --git a/libswscale/x86/yuv2rgb_template.c b/libswscale/x86/yuv2rgb_template.c
index b6a1c3d..c8d7ca5 100644
--- a/libswscale/x86/yuv2rgb_template.c
+++ b/libswscale/x86/yuv2rgb_template.c
@@ -168,7 +168,7 @@
         : "r" (pu - index), "r" (pv - index), "r"(&c->redDither), "r" (py - 2*index) \
         ); \
     } \
-    __asm__ volatile (EMMS); \
+    __asm__ volatile (SFENCE"\n\t"EMMS); \
     return srcSliceH; \
 
 #define YUV2RGB_OPERANDS_ALPHA \
@@ -176,7 +176,7 @@
         : "r" (pu - index), "r" (pv - index), "r"(&c->redDither), "r" (py - 2*index), "r" (pa - 2*index) \
         ); \
     } \
-    __asm__ volatile (EMMS); \
+    __asm__ volatile (SFENCE"\n\t"EMMS); \
     return srcSliceH; \
 
 static inline int RENAME(yuv420_rgb16)(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list