This fixes an mmx compilation problem for some x86 users.
It has been confirmed byAshley Bostock.

-- Kyle Schlansker
--- mmx.h.orig  2005-01-28 00:45:31.389334736 +0000
+++ mmx.h       2005-01-28 00:44:58.887275800 +0000
@@ -282,7 +282,7 @@
                        mmx_trace.d[1], mmx_trace.d[0]); \
                __asm__ __volatile__ (#op " %0, %%" #reg \
                                      : /* nothing */ \
-                                     : "X" (mem)); \
+                                     : "m" (mem)); \
                __asm__ __volatile__ ("movq %%" #reg ", %0" \
                                      : "=X" (mmx_trace) \
                                      : /* nothing */ ); \
@@ -302,7 +302,7 @@
                printf(#mem "=0x%08x%08x) => ", \
                        mmx_trace.d[1], mmx_trace.d[0]); \
                __asm__ __volatile__ (#op " %%" #reg ", %0" \
-                                     : "=X" (mem) \
+                                     : "=m" (mem) \
                                      : /* nothing */ ); \
                mmx_trace = (mem); \
                printf(#mem "=0x%08x%08x\n", \
@@ -342,8 +342,8 @@
                __asm__ __volatile__ ("movq %0, %%mm0\n\t" \
                                      #op " %1, %%mm0\n\t" \
                                      "movq %%mm0, %0" \
-                                     : "=X" (memd) \
-                                     : "X" (mems)); \
+                                     : "=m" (memd) \
+                                     : "m" (mems)); \
                mmx_trace = (memd); \
                printf(#memd "=0x%08x%08x\n", \
                        mmx_trace.d[1], mmx_trace.d[0]); \
@@ -362,11 +362,11 @@
 #define        mmx_m2r(op, mem, reg) \
        __asm__ __volatile__ (#op " %0, %%" #reg \
                              : /* nothing */ \
-                             : "X" (mem))
+                             : "m" (mem))
 
 #define        mmx_r2m(op, reg, mem) \
        __asm__ __volatile__ (#op " %%" #reg ", %0" \
-                             : "=X" (mem) \
+                             : "=m" (mem) \
                              : /* nothing */ )
 
 #define        mmx_r2r(op, regs, regd) \
@@ -376,8 +376,8 @@
        __asm__ __volatile__ ("movq %0, %%mm0\n\t" \
                              #op " %1, %%mm0\n\t" \
                              "movq %%mm0, %0" \
-                             : "=X" (memd) \
-                             : "X" (mems))
+                             : "=m" (memd) \
+                             : "m" (mems))
 
 #endif
 
_______________________________________________
mythtv-dev mailing list
[email protected]
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev

Reply via email to