[FFmpeg-cvslog] r30287 - trunk/libswscale/x86/yuv2rgb_template.c

zuxy subversion
Tue Jan 12 03:34:33 CET 2010


Author: zuxy
Date: Tue Jan 12 03:34:33 2010
New Revision: 30287

Log:
Make sure that sfence is used after any non temporal stores.

Modified:
   trunk/libswscale/x86/yuv2rgb_template.c

Modified: trunk/libswscale/x86/yuv2rgb_template.c
==============================================================================
--- trunk/libswscale/x86/yuv2rgb_template.c	Mon Jan 11 22:06:00 2010	(r30286)
+++ trunk/libswscale/x86/yuv2rgb_template.c	Tue Jan 12 03:34:33 2010	(r30287)
@@ -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,



More information about the ffmpeg-cvslog mailing list