summaryrefslogtreecommitdiffstats
path: root/StdLib/LibC/Main/bswap32.c
diff options
context:
space:
mode:
Diffstat (limited to 'StdLib/LibC/Main/bswap32.c')
-rw-r--r--StdLib/LibC/Main/bswap32.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/StdLib/LibC/Main/bswap32.c b/StdLib/LibC/Main/bswap32.c
new file mode 100644
index 0000000000..f573a54c6c
--- /dev/null
+++ b/StdLib/LibC/Main/bswap32.c
@@ -0,0 +1,25 @@
+/* $NetBSD: bswap32.c,v 1.1 2005/12/20 19:28:51 christos Exp $ */
+
+/*
+ * Written by Manuel Bouyer <bouyer@NetBSD.org>.
+ * Public domain.
+ */
+
+//#include <sys/cdefs.h>
+//#if defined(LIBC_SCCS) && !defined(lint)
+//__RCSID("$NetBSD: bswap32.c,v 1.1 2005/12/20 19:28:51 christos Exp $");
+//#endif /* LIBC_SCCS and not lint */
+
+//#include <sys/types.h>
+//#include <machine/bswap.h>
+
+#undef bswap32
+
+UINT32
+bswap32(UINT32 x)
+{
+ return ((x << 24) & 0xff000000 ) |
+ ((x << 8) & 0x00ff0000 ) |
+ ((x >> 8) & 0x0000ff00 ) |
+ ((x >> 24) & 0x000000ff );
+}