Mercurial > sdl-ios-xcode
comparison include/SDL_endian.h @ 3630:efb79807afe1
Merged r5194:5195 from branches/SDL-1.2: coldfire cpu arch support.
author | Ryan C. Gordon <icculus@icculus.org> |
---|---|
date | Sun, 10 Jan 2010 08:21:19 +0000 |
parents | d3baf5ac4e37 |
children | f7b03b6838cb |
comparison
equal
deleted
inserted
replaced
3629:102be1cdd2bb | 3630:efb79807afe1 |
---|---|
90 Uint16 result; | 90 Uint16 result; |
91 | 91 |
92 __asm__("rlwimi %0,%2,8,16,23": "=&r"(result):"0"(x >> 8), "r"(x)); | 92 __asm__("rlwimi %0,%2,8,16,23": "=&r"(result):"0"(x >> 8), "r"(x)); |
93 return result; | 93 return result; |
94 } | 94 } |
95 #elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__)) | 95 #elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__)) && !defined(__mcoldfire__) |
96 static __inline__ Uint16 | 96 static __inline__ Uint16 |
97 SDL_Swap16(Uint16 x) | 97 SDL_Swap16(Uint16 x) |
98 { | 98 { |
99 __asm__("rorw #8,%0": "=d"(x): "0"(x):"cc"); | 99 __asm__("rorw #8,%0": "=d"(x): "0"(x):"cc"); |
100 return x; | 100 return x; |
130 __asm__("rlwimi %0,%2,24,16,23": "=&r"(result):"0"(x >> 24), "r"(x)); | 130 __asm__("rlwimi %0,%2,24,16,23": "=&r"(result):"0"(x >> 24), "r"(x)); |
131 __asm__("rlwimi %0,%2,8,8,15": "=&r"(result):"0"(result), "r"(x)); | 131 __asm__("rlwimi %0,%2,8,8,15": "=&r"(result):"0"(result), "r"(x)); |
132 __asm__("rlwimi %0,%2,24,0,7": "=&r"(result):"0"(result), "r"(x)); | 132 __asm__("rlwimi %0,%2,24,0,7": "=&r"(result):"0"(result), "r"(x)); |
133 return result; | 133 return result; |
134 } | 134 } |
135 #elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__)) | 135 #elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__)) && !defined(__mcoldfire__) |
136 static __inline__ Uint32 | 136 static __inline__ Uint32 |
137 SDL_Swap32(Uint32 x) | 137 SDL_Swap32(Uint32 x) |
138 { | 138 { |
139 __asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0": "=d"(x): "0"(x):"cc"); | 139 __asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0": "=d"(x): "0"(x):"cc"); |
140 return x; | 140 return x; |