va-i860.h

来自「gcclib This gcc 1.40 suits for Linux 」· C头文件 代码 · 共 54 行

H
54
字号
#ifndef _VA_LIST#define _VA_LISTstruct __va_struct { int fixed[12]; int floating[8]; };typedef struct __va_ctl{  struct __va_struct *__regs;  void *__stack;  int __nfixed, __nfloating;} va_list;#endif /* _VA_LIST */#define va_alist#define va_dcl#define va_start(pvar) \ (memcpy (&(pvar), (struct __va_ctl *) __builtin_saveregs (), 16))#define va_end(pvar)#define va_arg(pvar,type)					\({ type __va_temp;						\   *((__builtin_classify_type (__va_temp) < 8			\      && sizeof __va_temp < 8)					\     ? ((pvar).__nfixed < 12					\	? (type *) &(pvar).__regs->fixed[(pvar).__nfixed++]	\	: ({							\	     int temp						\	       = ((int) ((pvar).__stack + __alignof__ (type) - 1) \		  & ~(__alignof__ (type) - 1));			\	     (pvar).__stack = (void *) (temp + sizeof (type));	\	     (type *) temp; 					\	   }))							\     : __builtin_classify_type (__va_temp) < 9			\     ? ((pvar).__nfloating < 8					\	? ((pvar).__nfloating					\	     = (((pvar).__nfloating + 2 * (sizeof __va_temp / 4) - 1) \		& ~(sizeof __va_temp / 4 - 1)),			\	   (type *) &(pvar).__regs->floating[(pvar).__nfloating - (sizeof __va_temp / 4)]) \	: ({							\	     int temp						\	       = ((int) ((pvar).__stack + __alignof__ (type) - 1) \		  & ~(__alignof__ (type) - 1));			\	     (pvar).__stack = (void *) (temp + sizeof (type));	\	     (type *) temp; 					\	   }))							\     : ({							\	  int temp						\	    = ((int) ((pvar).__stack + __alignof__ (type) - 1)	\	       & ~(__alignof__ (type) - 1));			\	  (pvar).__stack = (void *) (temp + sizeof (type));	\	  (type *) temp; 					\	})); })

⌨️ 快捷键说明

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