changeset 17:a60fe802636a

Add register clobbers to SIMD inline asm.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 28 Sep 2012 14:50:14 +0300
parents d9251dd496ce
children 022eee2e7de6
files dmblitfunc.h
diffstat 1 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/dmblitfunc.h	Fri Sep 28 14:47:54 2012 +0300
+++ b/dmblitfunc.h	Fri Sep 28 14:50:14 2012 +0300
@@ -127,7 +127,7 @@
         "movd        %%mm1,  %0\n"		\
         : "=m" (*dp)				\
         : "m" (*dp), "m" (sp[FP_GETH(xv)]), "m" (qpdmask), "m" (qpdrm)	\
-        : "memory" ); dp++;
+        : "memory", "%mm1", "%mm2", "%mm3", "%mm4", "%mm5" ); dp++;
 
 #define DM_SCALED_FINISH asm("emms\n");
 
@@ -197,7 +197,7 @@
         "movd        %%mm1,  %0\n"		\
         : "=m" (*dp)				\
         : "m" (*dp), "m" (pal[sp[FP_GETH(xv)]])	\
-        : "memory" ); dp++;
+        : "memory", "%mm1", "%mm2" ); dp++;
 
 #define DM_SCALED_FINISH asm("emms\n");
 #else
@@ -230,7 +230,7 @@
         "movd        %%mm1,  %0\n"		\
         : "=m" (*dp)				\
         : "m" (*dp), "m" (sp[FP_GETH(xv)])	\
-        : "memory" ); dp++;
+        : "memory", "%mm1", "%mm2" ); dp++;
 
 #define DM_SCALED_FINISH asm("emms\n");
 #else