Date: Wed, 31 Mar 2004 09:15:57 -0600
authorSam Lantinga <slouken@libsdl.org>
Thu, 08 Apr 2004 21:13:14 +0000
changeset 879 2bacec7930b1
parent 878 c7ca0f3cbca2
child 880 9ef41050100c
Date: Wed, 31 Mar 2004 09:15:57 -0600 From: Tyler Montbriand Subject: [SDL] Opteron MMX patches for SDL_RLEaccel.c The inline MMX assembly in SDL_RLEaccel.c compiles unmodified if the typedefs are adjusted to accept __x86_64__. The diff from SDL-1.2.7 is attached.
src/video/SDL_RLEaccel.c
--- a/src/video/SDL_RLEaccel.c	Thu Apr 08 21:06:10 2004 +0000
+++ b/src/video/SDL_RLEaccel.c	Thu Apr 08 21:13:14 2004 +0000
@@ -102,7 +102,11 @@
 #include "SDL_memops.h"
 #include "SDL_RLEaccel_c.h"
 
-#if defined(i386) && defined(__GNUC__) && defined(USE_ASMBLIT)
+#if defined(i386) || defined(__x86_64__)
+#define MMX_CAPABLE
+#endif
+
+#if defined(MMX_CAPABLE) && defined(__GNUC__) && defined(USE_ASMBLIT)
 #include "mmx.h"
 #include "SDL_cpuinfo.h"
 #endif
@@ -130,7 +134,7 @@
 #define OPAQUE_BLIT(to, from, length, bpp, alpha)	\
     PIXEL_COPY(to, from, length, bpp)
 
-#if defined(i386) && defined(__GNUC__) && defined(USE_ASMBLIT)
+#if defined(MMX_CAPABLE) && defined(__GNUC__) && defined(USE_ASMBLIT)
 
 #define ALPHA_BLIT32_888MMX(to, from, length, bpp, alpha)	\
     do {							\
@@ -511,7 +515,7 @@
 	}								\
     } while(0)
 
-#if defined(i386) && defined(__GNUC__) && defined(USE_ASMBLIT)
+#if defined(MMX_CAPABLE) && defined(__GNUC__) && defined(USE_ASMBLIT)
 
 #define ALPHA_BLIT32_888_50MMX(to, from, length, bpp, alpha)		\
     do {								\
@@ -624,7 +628,7 @@
 #define ALPHA_BLIT16_555_50(to, from, length, bpp, alpha)	\
     ALPHA_BLIT16_50(to, from, length, bpp, alpha, 0xfbde)
 
-#if defined(i386) && defined(__GNUC__) && defined(USE_ASMBLIT)
+#if defined(MMX_CAPABLE) && defined(__GNUC__) && defined(USE_ASMBLIT)
 
 #define CHOOSE_BLIT(blitter, alpha, fmt)				\
     do {								\