moved in libavcodec
authorFabrice Bellard <fabrice@bellard.org>
Sat, 25 May 2002 22:36:01 +0000 (22:36 +0000)
committerFabrice Bellard <fabrice@bellard.org>
Sat, 25 May 2002 22:36:01 +0000 (22:36 +0000)
Originally committed as revision 594 to svn://svn.ffmpeg.org/ffmpeg/trunk

bswap.h [deleted file]
libavcodec/bswap.h [new file with mode: 0644]

diff --git a/bswap.h b/bswap.h
deleted file mode 100644 (file)
index 21ef3a7..0000000
--- a/bswap.h
+++ /dev/null
@@ -1,91 +0,0 @@
-#ifndef __BSWAP_H__
-#define __BSWAP_H__
-
-/* It's need for ffmpeg. Else where will be defined ARCH_X86?*/
-#include "config.h"
-
-#ifdef HAVE_BYTESWAP_H
-#include <byteswap.h>
-#else
-
-#include <inttypes.h>
-
-#ifdef ARCH_X86
-inline static unsigned short ByteSwap16(unsigned short x)
-{
-  __asm("xchgb %b0,%h0"        :
-        "=q" (x)       :
-        "0" (x));
-    return x;
-}
-#define bswap_16(x) ByteSwap16(x)
-
-inline static unsigned int ByteSwap32(unsigned int x)
-{
-#if __CPU__ > 386
- __asm("bswap  %0":
-      "=r" (x)     :
-#else
- __asm("xchgb  %b0,%h0\n"
-      "        rorl    $16,%0\n"
-      "        xchgb   %b0,%h0":
-      "=q" (x)         :
-#endif
-      "0" (x));
-  return x;
-}
-#define bswap_32(x) ByteSwap32(x)
-
-inline static unsigned long long int ByteSwap64(unsigned long long int x)
-{
-  register union { __extension__ unsigned long long int __ll;
-          unsigned long int __l[2]; } __x;
-  asm("xchgl   %0,%1":
-      "=r"(__x.__l[0]),"=r"(__x.__l[1]):
-      "0"(bswap_32((unsigned long)x)),"1"(bswap_32((unsigned long)(x>>32))));
-  return __x.__ll;
-}
-#define bswap_64(x) ByteSwap64(x)
-
-#else
-
-#define bswap_16(x) (((x) & 0x00ff) << 8 | ((x) & 0xff00) >> 8)
-                       
-
-// code from bits/byteswap.h (C) 1997, 1998 Free Software Foundation, Inc.
-#define bswap_32(x) \
-     ((((x) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >>  8) | \
-      (((x) & 0x0000ff00) <<  8) | (((x) & 0x000000ff) << 24))
-
-#define bswap_64(x) \
-     (__extension__                                            \
-      ({ union { __extension__ unsigned long long int __ll;    \
-                 unsigned long int __l[2]; } __w, __r;         \
-         __w.__ll = (x);                                       \
-         __r.__l[0] = bswap_32 (__w.__l[1]);                   \
-         __r.__l[1] = bswap_32 (__w.__l[0]);                   \
-         __r.__ll; }))
-#endif /* !ARCH_X86 */
-
-#endif /* !HAVE_BYTESWAP_H */
-
-// be2me ... BigEndian to MachineEndian
-// le2me ... LittleEndian to MachineEndian
-
-#ifdef WORDS_BIGENDIAN
-#define be2me_16(x) (x)
-#define be2me_32(x) (x)
-#define be2me_64(x) (x)
-#define le2me_16(x) bswap_16(x)
-#define le2me_32(x) bswap_32(x)
-#define le2me_64(x) bswap_64(x)
-#else
-#define be2me_16(x) bswap_16(x)
-#define be2me_32(x) bswap_32(x)
-#define be2me_64(x) bswap_64(x)
-#define le2me_16(x) (x)
-#define le2me_32(x) (x)
-#define le2me_64(x) (x)
-#endif
-
-#endif
diff --git a/libavcodec/bswap.h b/libavcodec/bswap.h
new file mode 100644 (file)
index 0000000..af80e50
--- /dev/null
@@ -0,0 +1,86 @@
+#ifndef __BSWAP_H__
+#define __BSWAP_H__
+
+#ifdef HAVE_BYTESWAP_H
+#include <byteswap.h>
+#else
+
+#ifdef ARCH_X86
+inline static unsigned short ByteSwap16(unsigned short x)
+{
+  __asm("xchgb %b0,%h0"        :
+        "=q" (x)       :
+        "0" (x));
+    return x;
+}
+#define bswap_16(x) ByteSwap16(x)
+
+inline static unsigned int ByteSwap32(unsigned int x)
+{
+#if __CPU__ > 386
+ __asm("bswap  %0":
+      "=r" (x)     :
+#else
+ __asm("xchgb  %b0,%h0\n"
+      "        rorl    $16,%0\n"
+      "        xchgb   %b0,%h0":
+      "=q" (x)         :
+#endif
+      "0" (x));
+  return x;
+}
+#define bswap_32(x) ByteSwap32(x)
+
+inline static unsigned long long int ByteSwap64(unsigned long long int x)
+{
+  register union { __extension__ unsigned long long int __ll;
+          unsigned long int __l[2]; } __x;
+  asm("xchgl   %0,%1":
+      "=r"(__x.__l[0]),"=r"(__x.__l[1]):
+      "0"(bswap_32((unsigned long)x)),"1"(bswap_32((unsigned long)(x>>32))));
+  return __x.__ll;
+}
+#define bswap_64(x) ByteSwap64(x)
+
+#else
+
+#define bswap_16(x) (((x) & 0x00ff) << 8 | ((x) & 0xff00) >> 8)
+                       
+
+// code from bits/byteswap.h (C) 1997, 1998 Free Software Foundation, Inc.
+#define bswap_32(x) \
+     ((((x) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >>  8) | \
+      (((x) & 0x0000ff00) <<  8) | (((x) & 0x000000ff) << 24))
+
+#define bswap_64(x) \
+     (__extension__                                            \
+      ({ union { __extension__ unsigned long long int __ll;    \
+                 unsigned long int __l[2]; } __w, __r;         \
+         __w.__ll = (x);                                       \
+         __r.__l[0] = bswap_32 (__w.__l[1]);                   \
+         __r.__l[1] = bswap_32 (__w.__l[0]);                   \
+         __r.__ll; }))
+#endif /* !ARCH_X86 */
+
+#endif /* !HAVE_BYTESWAP_H */
+
+// be2me ... BigEndian to MachineEndian
+// le2me ... LittleEndian to MachineEndian
+
+#ifdef WORDS_BIGENDIAN
+#define be2me_16(x) (x)
+#define be2me_32(x) (x)
+#define be2me_64(x) (x)
+#define le2me_16(x) bswap_16(x)
+#define le2me_32(x) bswap_32(x)
+#define le2me_64(x) bswap_64(x)
+#else
+#define be2me_16(x) bswap_16(x)
+#define be2me_32(x) bswap_32(x)
+#define be2me_64(x) bswap_64(x)
+#define le2me_16(x) (x)
+#define le2me_32(x) (x)
+#define le2me_64(x) (x)
+#endif
+
+#endif /* __BSWAP_H__ */