summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2001-11-16 01:17:22 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2001-11-16 01:17:22 +0000
commitbb5f1820102c0f28ae66d6fc8aab7be7d166ca72 (patch)
tree7d28eb7cea2d5aa425df07107964dd1e6e6cefa0 /sys
parent3cd52851680c36ba66344b78cfd0c6a53ddc9414 (diff)
mvme88k varargs cleanup 1/2
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/mvme88k/include/varargs.h193
1 files changed, 6 insertions, 187 deletions
diff --git a/sys/arch/mvme88k/include/varargs.h b/sys/arch/mvme88k/include/varargs.h
index 68fa41eab22..867f7bc0ffa 100644
--- a/sys/arch/mvme88k/include/varargs.h
+++ b/sys/arch/mvme88k/include/varargs.h
@@ -1,193 +1,12 @@
-/* $OpenBSD: varargs.h,v 1.4 2001/07/04 08:09:23 niklas Exp $ */
+/* $OpenBSD: varargs.h,v 1.5 2001/11/16 01:17:21 miod Exp $ */
-/* This file has local changes by MOTOROLA
-Thu Sep 9 09:06:29 CDT 1993 Dale Rahn (drahn@pacific)
- * (gstdarg.h, gvarargs.h) C-Front requires all builtins to
- be defined. This is to insert these definitions if
- __cplusplus is defined but not using the G++ compiler.
- */
-#ifndef __GNUC__
-/* Use the system's macros with the system's compiler. */
-#include <varargs.h>
-#else
-/* Record that this is varargs.h; this turns off stdarg.h. */
+#ifndef _M88K_VARARGS_H_
+#define _M88K_VARARGS_H_
-#ifndef _VARARGS_H
-#define _VARARGS_H
-
-#ifdef __sparc__
-#include <va-sparc.h>
-#else
-#ifdef __spur__
-#include <va-spur.h>
-#else
-#ifdef __mips__
-#include <va-mips.h>
-#else
-#ifdef __i860__
-#include <va-i860.h>
-#else
-#ifdef __pyr__
-#include <va-pyr.h>
-#else
-#ifdef __clipper__
-#include <va-clipper.h>
-#else
-#ifdef __m88k__
#include <machine/va-m88k.h>
-#else
-#if defined(__hppa__) || defined(hp800)
-#include <va-pa.h>
-#else
-#ifdef __i960__
-#include <va-i960.h>
-#else
-#ifdef __alpha__
-#include <va-alpha.h>
-#else
-
-#ifdef __NeXT__
-
-/* On Next, erase any vestiges of stdarg.h. */
-
-#ifdef _ANSI_STDARG_H_
-#define _VA_LIST_
-#endif
-#define _ANSI_STDARG_H_
-
-#undef va_alist
-#undef va_dcl
-#undef va_list
-#undef va_start
-#undef va_end
-#undef __va_rounded_size
-#undef va_arg
-#endif /* __NeXT__ */
-
-/* In GCC version 2, we want an ellipsis at the end of the declaration
- of the argument list. GCC version 1 can't parse it. */
-
-#if __GNUC__ > 1
-#define __va_ellipsis ...
-#else
-#define __va_ellipsis
-#endif
-
-/* These macros implement traditional (non-ANSI) varargs
- for GNU C. */
-
-#define va_alist __builtin_va_alist
-/* The ... causes current_function_varargs to be set in cc1. */
-#define va_dcl int __builtin_va_alist; __va_ellipsis
-
-/* Define __gnuc_va_list, just as in gstdarg.h. */
-
-#ifndef __GNUC_VA_LIST
-#define __GNUC_VA_LIST
-#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX)
-typedef char *__gnuc_va_list;
-#else
-typedef void *__gnuc_va_list;
-#endif
-#endif
-
-#define va_start(AP) AP=(char *) &__builtin_va_alist
-
-#define va_end(AP)
-
-#define __va_rounded_size(TYPE) \
- (((sizeof (TYPE) + sizeof (int) - 1) / sizeof (int)) * sizeof (int))
-
-#if defined (__arm__) || defined (__i386__) || defined (__ns32000__) || defined (__vax__)
-/* This is for little-endian machines; small args are padded upward. */
-#define va_arg(AP, TYPE) \
- (AP = (__gnuc_va_list) ((char *) (AP) + __va_rounded_size (TYPE)), \
- *((TYPE *) (void *) ((char *) (AP) - __va_rounded_size (TYPE))))
-#else /* big-endian */
-/* This is for big-endian machines; small args are padded downward. */
-#define va_arg(AP, TYPE) \
- (AP = (__gnuc_va_list) ((char *) (AP) + __va_rounded_size (TYPE)), \
- *((TYPE *) (void *) ((char *) (AP) - ((sizeof (TYPE) < 4 \
- ? sizeof (TYPE) \
- : __va_rounded_size (TYPE))))))
-#endif /* big-endian */
-
-#endif /* not alpha */
-#endif /* not i960 */
-#endif /* not hppa */
-#endif /* not m88k */
-#endif /* not clipper */
-#endif /* not pyr */
-#endif /* not i860 */
-#endif /* not mips */
-#endif /* not spur */
-#endif /* not sparc */
-#endif /* not _VARARGS_H */
/* Define va_list from __gnuc_va_list. */
+typedef __gnuc_va_list va_list;
+typedef _BSD_VA_LIST_ __gnuc_va_list
-#ifdef _HIDDEN_VA_LIST /* On OSF1, this means varargs.h is "half-loaded". */
-#undef _VA_LIST
-#endif
-
-#ifdef __svr4__
-/* SVR4.2 uses _VA_LIST for an internal alias for va_list,
- so we must avoid testing it and setting it here.
- SVR4 uses _VA_LIST as a flag in stdarg.h, but we should
- have no conflict with that. */
-#ifndef _VA_LIST_
-#define _VA_LIST_
-#ifdef __i860__
-#ifndef _VA_LIST
-#define _VA_LIST va_list
-#endif
-#endif /* __i860__ */
-typedef __gnuc_va_list va_list;
-#endif /* _VA_LIST_ */
-
-#else /* not __svr4__ */
-
-/* The macro _VA_LIST_ is the same thing used by this file in Ultrix.
- But on BSD NET2 we must not test or define or undef it.
- (Note that the comments in NET 2's ansi.h
- are incorrect for _VA_LIST_--see stdio.h!) */
-#if !defined (_VA_LIST_) || defined (__BSD_NET2__) || defined (____386BSD____)
-/* The macro _VA_LIST is used in SCO Unix 3.2. */
-#ifndef _VA_LIST
-/* The macro _VA_LIST_T_H is used in the Bull dpx2 */
-#ifndef _VA_LIST_T_H
-#define _VA_LIST_T_H
-#if !(defined (__BSD_NET2__) || defined (____386BSD____))
-#define _VA_LIST_
-#endif
-#define _VA_LIST
-typedef __gnuc_va_list va_list;
-#endif /* not _VA_LIST_T_H */
-#endif /* not _VA_LIST */
-#endif /* not _VA_LIST_ */
-
-#endif /* not __svr4__ */
-
-/* took this one out Nivas */
-/* The next BSD release (if there is one) wants this symbol to be
- undefined instead of _VA_LIST_. */
-#ifdef _BSD_VA_LIST_
-#undef _BSD_VA_LIST_
-#define _BSD_VA_LIST_ __gnuc_va_list
-#endif /* _BSD_VA_LIST_ */
-#if defined(__cplusplus) && !defined(__GNUG__)
-
-/* This is added to work with AT&T C++. */
-extern "C" {
- char *__builtin_next_arg(void);
- __gnuc_va_list *__builtin_saveregs(void);
- void *__builtin_saveregs2(int);
- int *__builtin_argptr(void);
- int __builtin_argsize(void);
- int __builtin_classify_type(...);
- int __alignof__(...);
-}
-#endif
-
-
-#endif /* __GNUC__ */
+#endif /* _M88K_VARARGS_H_ */