⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 scalar-by-value-y.h

📁 用于进行gcc测试
💻 H
字号:
extern void abort (void);#if USE_MEMCMP/* For comparing vectors.  */#define TEST_FUNCS(NAME, TYPE, PADT, VAL, VAL2) \void NAME##_f0 (TYPE a, PADT b)						\{									\  if (memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)			\    abort ();								\}									\									\void NAME##_f1 (PADT z0, TYPE a, PADT b)				\{									\  if (z0 != (PADT) 0							\      || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)		\    abort ();								\}									\									\void NAME##_f2 (PADT z0, PADT z1, TYPE a, PADT b)			\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)		\    abort ();								\}									\									\void NAME##_f3 (PADT z0, PADT z1, PADT z2, TYPE a, PADT b)		\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)		\    abort ();								\}									\									\void NAME##_f4 (PADT z0, PADT z1, PADT z2, PADT z3, TYPE a, PADT b)	\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)		\    abort ();								\}									\									\void NAME##_f5 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, TYPE a,	\		PADT b)							\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)		\    abort ();								\}									\									\void NAME##_f6 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5,	\		TYPE a, PADT b)						\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || z5 != (PADT) 0							\      || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)		\    abort ();								\}									\									\void NAME##_f7 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5,	\		PADT z6, TYPE a, PADT b)				\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || z5 != (PADT) 0							\      || z6 != (PADT) 0							\      || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)		\    abort ();								\}									\									\void NAME##_f8 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5,	\		PADT z6, PADT z7, TYPE a, PADT b)			\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || z5 != (PADT) 0							\      || z6 != (PADT) 0							\      || z7 != (PADT) 0							\      || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)		\    abort ();								\}									\									\void NAME##_f9 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5,	\		PADT z6, PADT z7, PADT z8, TYPE a, PADT b)		\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || z5 != (PADT) 0							\      || z6 != (PADT) 0							\      || z7 != (PADT) 0							\      || z8 != (PADT) 0							\      || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2)		\    abort ();								\}									\									\void NAME##_fv (int n, ...)						\{									\  __builtin_va_list ap;							\  TYPE x;								\  __builtin_va_start (ap, n);						\									\  while (n-- != 0)							\    if (__builtin_va_arg (ap, PADT) != (PADT) 0)			\      abort ();								\									\  x = __builtin_va_arg (ap, TYPE);					\  if (memcmp (&x, &VAL, sizeof (x)) != 0 )				\    abort ();								\									\  if (__builtin_va_arg (ap, PADT) != VAL2)				\    abort ();								\									\  __builtin_va_end (ap);						\}#else#define TEST_FUNCS(NAME, TYPE, PADT, VAL, VAL2) \void NAME##_f0 (TYPE a, PADT b)						\{									\  if (a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_f1 (PADT z0, TYPE a, PADT b)				\{									\  if (z0 != (PADT) 0							\      || a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_f2 (PADT z0, PADT z1, TYPE a, PADT b)			\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_f3 (PADT z0, PADT z1, PADT z2, TYPE a, PADT b)		\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_f4 (PADT z0, PADT z1, PADT z2, PADT z3, TYPE a, PADT b)	\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_f5 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, TYPE a,	\		PADT b)							\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_f6 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5,	\		TYPE a, PADT b)						\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || z5 != (PADT) 0							\      || a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_f7 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5,	\		PADT z6, TYPE a, PADT b)				\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || z5 != (PADT) 0							\      || z6 != (PADT) 0							\      || a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_f8 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5,	\		PADT z6, PADT z7, TYPE a, PADT b)			\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || z5 != (PADT) 0							\      || z6 != (PADT) 0							\      || z7 != (PADT) 0							\      || a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_f9 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5,	\		PADT z6, PADT z7, PADT z8, TYPE a, PADT b)		\{									\  if (z0 != (PADT) 0							\      || z1 != (PADT) 0							\      || z2 != (PADT) 0							\      || z3 != (PADT) 0							\      || z4 != (PADT) 0							\      || z5 != (PADT) 0							\      || z6 != (PADT) 0							\      || z7 != (PADT) 0							\      || z8 != (PADT) 0							\      || a != VAL || b != VAL2)						\    abort ();								\}									\									\void NAME##_fv (int n, ...)						\{									\  __builtin_va_list ap;							\									\  __builtin_va_start (ap, n);						\									\  while (n-- != 0)							\    if (__builtin_va_arg (ap, PADT) != (PADT) 0)			\      abort ();								\									\  if (__builtin_va_arg (ap, TYPE) != VAL)				\    abort ();								\									\  if (__builtin_va_arg (ap, PADT) != VAL2)				\    abort ();								\									\  __builtin_va_end (ap);						\}#endif

⌨️ 快捷键说明

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