From b085d1c8f2927f04a8b00d2ef3fbc27e1455e257 Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Thu, 24 Sep 1992 22:41:51 -0700 Subject: [PATCH] (va_start): Must access anonymous arg as offset from start of argument block. From-SVN: r2239 --- gcc/ginclude/va-i960.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gcc/ginclude/va-i960.h b/gcc/ginclude/va-i960.h index 549e9fec1ae..2308c292af4 100644 --- a/gcc/ginclude/va-i960.h +++ b/gcc/ginclude/va-i960.h @@ -31,8 +31,10 @@ typedef unsigned __gnuc_va_list[2]; * __vali (T) + __vsiz (T)) #ifdef _STDARG_H -#define va_start(AP, LASTARG) ((AP)[1] = 0, \ - *(AP) = (unsigned) __builtin_next_arg ()) +#define va_start(AP, LASTARG) \ +__extension__ \ +({ __asm__ ("st g14,%0" : "=m" (*(AP))); \ + (AP)[1] = (unsigned) __builtin_next_arg () - *AP; }) #else #define va_alist __builtin_va_alist -- 2.30.2