# HG changeset patch # User Sam Lantinga # Date 1081458794 0 # Node ID 2bacec7930b18ab7bcea9acf6cadbff024237ec3 # Parent c7ca0f3cbca2fb15aa6efd5f18b3a2a5225130c3 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. diff -r c7ca0f3cbca2 -r 2bacec7930b1 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 { \