diff include/SDL_endian.h @ 1662:782fd950bd46 SDL-1.3

Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API. WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid. The code is now run through a consistent indent format: indent -i4 -nut -nsc -br -ce The headers are being converted to automatically generate doxygen documentation.
author Sam Lantinga <slouken@libsdl.org>
date Sun, 28 May 2006 13:04:16 +0000
parents d45aefcac017
children 4da1ee79c9af
line wrap: on
line diff
--- a/include/SDL_endian.h	Sun May 21 17:27:13 2006 +0000
+++ b/include/SDL_endian.h	Sun May 28 13:04:16 2006 +0000
@@ -20,7 +20,11 @@
     slouken@libsdl.org
 */
 
-/* Functions for reading and writing endian-specific values */
+/**
+ * \file SDL_endian.h
+ *
+ * Functions for reading and writing endian-specific values
+ */
 
 #ifndef _SDL_endian_h
 #define _SDL_endian_h
@@ -31,7 +35,7 @@
 #define SDL_LIL_ENDIAN	1234
 #define SDL_BIG_ENDIAN	4321
 
-#ifndef SDL_BYTEORDER	/* Not defined in SDL_config.h? */
+#ifndef SDL_BYTEORDER           /* Not defined in SDL_config.h? */
 #if defined(__hppa__) || \
     defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
     (defined(__MIPS__) && defined(__MISPEB__)) || \
@@ -47,7 +51,9 @@
 #include "begin_code.h"
 /* Set up for C function definitions, even when using C++ */
 #ifdef __cplusplus
+/* *INDENT-OFF* */
 extern "C" {
+/* *INDENT-ON* */
 #endif
 
 /* Use inline functions for compilers that support them, and static
@@ -57,104 +63,125 @@
 */
 #if defined(__GNUC__) && defined(__i386__) && \
    !(__GNUC__ == 2 && __GNUC_MINOR__ == 95 /* broken gcc version */)
-static __inline__ Uint16 SDL_Swap16(Uint16 x)
+static __inline__ Uint16
+SDL_Swap16 (Uint16 x)
 {
-	__asm__("xchgb %b0,%h0" : "=q" (x) :  "0" (x));
-	return x;
+  __asm__ ("xchgb %b0,%h0": "=q" (x):"0" (x));
+    return x;
 }
 #elif defined(__GNUC__) && defined(__x86_64__)
-static __inline__ Uint16 SDL_Swap16(Uint16 x)
+static __inline__ Uint16
+SDL_Swap16 (Uint16 x)
 {
-	__asm__("xchgb %b0,%h0" : "=Q" (x) :  "0" (x));
-	return x;
+  __asm__ ("xchgb %b0,%h0": "=Q" (x):"0" (x));
+    return x;
 }
 #elif defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
-static __inline__ Uint16 SDL_Swap16(Uint16 x)
+static __inline__ Uint16
+SDL_Swap16 (Uint16 x)
 {
-	Uint16 result;
+    Uint16 result;
 
-	__asm__("rlwimi %0,%2,8,16,23" : "=&r" (result) : "0" (x >> 8), "r" (x));
-	return result;
+  __asm__ ("rlwimi %0,%2,8,16,23": "=&r" (result):"0" (x >> 8), "r" (x));
+    return result;
 }
 #elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__))
-static __inline__ Uint16 SDL_Swap16(Uint16 x)
+static __inline__ Uint16
+SDL_Swap16 (Uint16 x)
 {
-	__asm__("rorw #8,%0" : "=d" (x) :  "0" (x) : "cc");
-	return x;
+  __asm__ ("rorw #8,%0": "=d" (x): "0" (x):"cc");
+    return x;
 }
 #else
-static __inline__ Uint16 SDL_Swap16(Uint16 x) {
-	return((x<<8)|(x>>8));
+static __inline__ Uint16
+SDL_Swap16 (Uint16 x)
+{
+    return ((x << 8) | (x >> 8));
 }
 #endif
 
 #if defined(__GNUC__) && defined(__i386__)
-static __inline__ Uint32 SDL_Swap32(Uint32 x)
+static __inline__ Uint32
+SDL_Swap32 (Uint32 x)
 {
-	__asm__("bswap %0" : "=r" (x) : "0" (x));
-	return x;
+  __asm__ ("bswap %0": "=r" (x):"0" (x));
+    return x;
 }
 #elif defined(__GNUC__) && defined(__x86_64__)
-static __inline__ Uint32 SDL_Swap32(Uint32 x)
+static __inline__ Uint32
+SDL_Swap32 (Uint32 x)
 {
-	__asm__("bswapl %0" : "=r" (x) : "0" (x));
-	return x;
+  __asm__ ("bswapl %0": "=r" (x):"0" (x));
+    return x;
 }
 #elif defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
-static __inline__ Uint32 SDL_Swap32(Uint32 x)
+static __inline__ Uint32
+SDL_Swap32 (Uint32 x)
 {
-	Uint32 result;
+    Uint32 result;
 
-	__asm__("rlwimi %0,%2,24,16,23" : "=&r" (result) : "0" (x>>24), "r" (x));
-	__asm__("rlwimi %0,%2,8,8,15"   : "=&r" (result) : "0" (result),    "r" (x));
-	__asm__("rlwimi %0,%2,24,0,7"   : "=&r" (result) : "0" (result),    "r" (x));
-	return result;
+  __asm__ ("rlwimi %0,%2,24,16,23": "=&r" (result):"0" (x >> 24),
+             "r" (x));
+  __asm__ ("rlwimi %0,%2,8,8,15": "=&r" (result):"0" (result), "r" (x));
+  __asm__ ("rlwimi %0,%2,24,0,7": "=&r" (result):"0" (result), "r" (x));
+    return result;
 }
 #elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__))
-static __inline__ Uint32 SDL_Swap32(Uint32 x)
+static __inline__ Uint32
+SDL_Swap32 (Uint32 x)
 {
-	__asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0" : "=d" (x) :  "0" (x) : "cc");
-	return x;
+  __asm__ ("rorw #8,%0\n\tswap %0\n\trorw #8,%0": "=d" (x): "0" (x):"cc");
+    return x;
 }
 #else
-static __inline__ Uint32 SDL_Swap32(Uint32 x) {
-	return((x<<24)|((x<<8)&0x00FF0000)|((x>>8)&0x0000FF00)|(x>>24));
+static __inline__ Uint32
+SDL_Swap32 (Uint32 x)
+{
+    return ((x << 24) | ((x << 8) & 0x00FF0000) | ((x >> 8) & 0x0000FF00) |
+            (x >> 24));
 }
 #endif
 
 #ifdef SDL_HAS_64BIT_TYPE
 #if defined(__GNUC__) && defined(__i386__)
-static __inline__ Uint64 SDL_Swap64(Uint64 x)
+static __inline__ Uint64
+SDL_Swap64 (Uint64 x)
 {
-	union { 
-		struct { Uint32 a,b; } s;
-		Uint64 u;
-	} v;
-	v.u = x;
-	__asm__("bswapl %0 ; bswapl %1 ; xchgl %0,%1" 
-	        : "=r" (v.s.a), "=r" (v.s.b) 
-	        : "0" (v.s.a), "1" (v.s.b)); 
-	return v.u;
+    union
+    {
+        struct
+        {
+            Uint32 a, b;
+        } s;
+        Uint64 u;
+    } v;
+    v.u = x;
+  __asm__ ("bswapl %0 ; bswapl %1 ; xchgl %0,%1": "=r" (v.s.a), "=r" (v.s.b):"0" (v.s.a),
+             "1" (v.s.
+                  b));
+    return v.u;
 }
 #elif defined(__GNUC__) && defined(__x86_64__)
-static __inline__ Uint64 SDL_Swap64(Uint64 x)
+static __inline__ Uint64
+SDL_Swap64 (Uint64 x)
 {
-	__asm__("bswapq %0" : "=r" (x) : "0" (x));
-	return x;
+  __asm__ ("bswapq %0": "=r" (x):"0" (x));
+    return x;
 }
 #else
-static __inline__ Uint64 SDL_Swap64(Uint64 x)
+static __inline__ Uint64
+SDL_Swap64 (Uint64 x)
 {
-	Uint32 hi, lo;
+    Uint32 hi, lo;
 
-	/* Separate into high and low 32-bit values and swap them */
-	lo = (Uint32)(x&0xFFFFFFFF);
-	x >>= 32;
-	hi = (Uint32)(x&0xFFFFFFFF);
-	x = SDL_Swap32(lo);
-	x <<= 32;
-	x |= SDL_Swap32(hi);
-	return(x);
+    /* Separate into high and low 32-bit values and swap them */
+    lo = (Uint32) (x & 0xFFFFFFFF);
+    x >>= 32;
+    hi = (Uint32) (x & 0xFFFFFFFF);
+    x = SDL_Swap32 (lo);
+    x <<= 32;
+    x |= SDL_Swap32 (hi);
+    return (x);
 }
 #endif
 #else
@@ -185,8 +212,12 @@
 
 /* Ends C function definitions when using C++ */
 #ifdef __cplusplus
+/* *INDENT-OFF* */
 }
+/* *INDENT-ON* */
 #endif
 #include "close_code.h"
 
 #endif /* _SDL_endian_h */
+
+/* vi: set ts=4 sw=4 expandtab: */