xref: /netbsd-src/common/lib/libc/gen/bswap32.c (revision b1c86f5f087524e68db12794ee9c3e3da1ab17a0)
1 /*  $NetBSD: bswap32.c,v 1.2 2008/02/16 17:37:13 apb Exp $    */
2 
3 /*
4  * Written by Manuel Bouyer <bouyer@NetBSD.org>.
5  * Public domain.
6  */
7 
8 #include <sys/cdefs.h>
9 #if defined(LIBC_SCCS) && !defined(lint)
10 __RCSID("$NetBSD: bswap32.c,v 1.2 2008/02/16 17:37:13 apb Exp $");
11 #endif /* LIBC_SCCS and not lint */
12 
13 #include <sys/types.h>
14 #include <machine/bswap.h>
15 
16 #undef bswap32
17 
18 uint32_t
19 bswap32(x)
20 	uint32_t x;
21 {
22 	return	((x << 24) & 0xff000000 ) |
23 		((x <<  8) & 0x00ff0000 ) |
24 		((x >>  8) & 0x0000ff00 ) |
25 		((x >> 24) & 0x000000ff );
26 }
27