Mercurial > hg > dmlib
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