*** empty log message ***

From-SVN: r393
This commit is contained in:
Jim Wilson 1992-03-04 13:58:05 -08:00
parent 724d9f3dde
commit 5840cf94b9
2 changed files with 12 additions and 10 deletions

View File

@ -22,6 +22,9 @@
#ifdef __mips__
#include "va-mips.h"
#else
#ifdef __sparc__
#include "va-sparc.h"
#else
#ifdef _HIDDEN_VA_LIST /* On OSF1, this means varargs.h is "half-loaded". */
#undef _VA_LIST
@ -43,14 +46,8 @@ typedef char *va_list;
#define __va_rounded_size(TYPE) \
(((sizeof (TYPE) + sizeof (int) - 1) / sizeof (int)) * sizeof (int))
#ifndef __sparc__
#define va_start(AP, LASTARG) \
(AP = ((char *) __builtin_next_arg ()))
#else
#define va_start(AP, LASTARG) \
(__builtin_saveregs (), \
AP = ((char *) __builtin_next_arg ()))
#endif
void va_end (va_list); /* Defined in libgcc.a */
#define va_end(AP)
@ -59,6 +56,7 @@ void va_end (va_list); /* Defined in libgcc.a */
(AP += __va_rounded_size (TYPE), \
*((TYPE *) (AP - __va_rounded_size (TYPE))))
#endif /* not sparc */
#endif /* not mips */
#endif /* not hp9000s800 */
#endif /* not i860 */

View File

@ -20,10 +20,14 @@ typedef char * __va___list;
/* The ... causes current_function_varargs to be set in cc1. */
#define va_dcl int __builtin_va_alist; __va_ellipsis
/* The difference is to store the stack address in both components
instead of in AP itself. */
#ifdef _STDARG_H
#define va_start(AP, LASTARG) \
(__builtin_saveregs (), AP = ((char *) __builtin_next_arg ()))
#else
#define va_start(AP) \
(__builtin_saveregs (), (AP) = ((char *) &__builtin_va_alist))
#endif
#define va_end(pvar)
#define __va_rounded_size(TYPE) \
@ -43,6 +47,6 @@ __extension__ \
({ TYPE __va_temp; \
((__builtin_classify_type (__va_temp) >= 12) \
? ((pvar) += __va_rounded_size (TYPE *), \
**(TYPE **) (pvar) - __va_rounded_size (TYPE *)) \
: ((pvar) += __va_rounded_size (TYPE), \
**(TYPE **) ((pvar) - __va_rounded_size (TYPE *))) \
: ((pvar) += __va_rounded_size (TYPE), \
*((TYPE *) ((pvar) - __va_rounded_size (TYPE)))));})