byteorder.h

来自「嵌入式系统设计与实例开发实验教材二源码 多线程应用程序设计 串行端口程序设计」· C头文件 代码 · 共 48 行

H
48
字号
/* $Id: byteorder.h,v 1.1 2000/07/10 16:32:31 bjornw Exp $ */#ifndef _CRIS_BYTEORDER_H#define _CRIS_BYTEORDER_H#include <asm/types.h>#ifdef __GNUC__/* we just define these two (as we can do the swap in a single * asm instruction in CRIS) and the arch-independent files will put * them together into ntohl etc. */static __inline__ __const__ __u32 ___arch__swab32(__u32 x){	__asm__ ("swapwb %0" : "=r" (x) : "0" (x));  	return(x);}static __inline__ __const__ __u16 ___arch__swab16(__u16 x){	__asm__ ("swapb %0" : "=r" (x) : "0" (x));		return(x);}/* defines are necessary because the other files detect the presence * of a defined __arch_swab32, not an inline */#define __arch__swab32(x) ___arch__swab32(x)#define __arch__swab16(x) ___arch__swab16(x)#if !defined(__STRICT_ANSI__) || defined(__KERNEL__)#  define __BYTEORDER_HAS_U64__#  define __SWAB_64_THRU_32__#endif#endif /* __GNUC__ */#include <linux/byteorder/little_endian.h>#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?