Disable m68k assembly for Coldfire CPUs SDL-1.2
authorPatrice Mandin <patmandin@gmail.com>
Fri, 06 Nov 2009 18:06:01 +0000
branchSDL-1.2
changeset 4374 124629b76853
parent 4373 ab06accf1b96
child 4375 a52047c790a2
Disable m68k assembly for Coldfire CPUs
include/SDL_endian.h
src/audio/SDL_mixer.c
src/audio/SDL_mixer_m68k.c
--- a/include/SDL_endian.h	Fri Nov 06 17:42:14 2009 +0000
+++ b/include/SDL_endian.h	Fri Nov 06 18:06:01 2009 +0000
@@ -86,7 +86,7 @@
 	__asm__("rlwimi %0,%2,8,16,23" : "=&r" (result) : "0" (x >> 8), "r" (x));
 	return result;
 }
-#elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__))
+#elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__)) && !defined(__mcoldfire__)
 static __inline__ Uint16 SDL_Swap16(Uint16 x)
 {
 	__asm__("rorw #8,%0" : "=d" (x) :  "0" (x) : "cc");
@@ -121,7 +121,7 @@
 	__asm__("rlwimi %0,%2,24,0,7"   : "=&r" (result) : "0" (result),    "r" (x));
 	return result;
 }
-#elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__))
+#elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__)) && !defined(__mcoldfire__)
 static __inline__ Uint32 SDL_Swap32(Uint32 x)
 {
 	__asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0" : "=d" (x) :  "0" (x) : "cc");
--- a/src/audio/SDL_mixer.c	Fri Nov 06 17:42:14 2009 +0000
+++ b/src/audio/SDL_mixer.c	Fri Nov 06 18:06:01 2009 +0000
@@ -111,7 +111,7 @@
 	switch (format) {
 
 		case AUDIO_U8: {
-#if defined(__GNUC__) && defined(__M68000__) && defined(SDL_ASSEMBLY_ROUTINES)
+#if defined(__GNUC__) && defined(__M68000__) && !defined(__mcoldfire__) && defined(SDL_ASSEMBLY_ROUTINES)
 			SDL_MixAudio_m68k_U8((char*)dst,(char*)src,(unsigned long)len,(long)volume,(char *)mix8);
 #else
 			Uint8 src_sample;
@@ -144,7 +144,7 @@
 #endif
 #endif
 
-#if defined(__GNUC__) && defined(__M68000__) && defined(SDL_ASSEMBLY_ROUTINES)
+#if defined(__GNUC__) && defined(__M68000__) && !defined(__mcoldfire__) && defined(SDL_ASSEMBLY_ROUTINES)
 			SDL_MixAudio_m68k_S8((char*)dst,(char*)src,(unsigned long)len,(long)volume);
 #else
 			{
@@ -193,7 +193,7 @@
 #endif
 #endif
 
-#if defined(__GNUC__) && defined(__M68000__) && defined(SDL_ASSEMBLY_ROUTINES)
+#if defined(__GNUC__) && defined(__M68000__) && !defined(__mcoldfire__) && defined(SDL_ASSEMBLY_ROUTINES)
 			SDL_MixAudio_m68k_S16LSB((short*)dst,(short*)src,(unsigned long)len,(long)volume);
 #else
 			{
--- a/src/audio/SDL_mixer_m68k.c	Fri Nov 06 17:42:14 2009 +0000
+++ b/src/audio/SDL_mixer_m68k.c	Fri Nov 06 18:06:01 2009 +0000
@@ -27,7 +27,7 @@
 	Patrice Mandin
 */
 
-#if defined(__M68000__) && defined(__GNUC__)
+#if defined(__M68000__) && !defined(__mcoldfire__) && defined(__GNUC__)
 void SDL_MixAudio_m68k_U8(char* dst, char* src, long len, long volume, char* mix8)
 {
     __asm__ __volatile__ (
@@ -208,4 +208,3 @@
 	 );
 }
 #endif
-