diff options
author | Jim Wilson <wilson@gcc.gnu.org> | 1992-09-24 22:41:51 -0700 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1992-09-24 22:41:51 -0700 |
commit | b085d1c8f2927f04a8b00d2ef3fbc27e1455e257 (patch) | |
tree | f714718df040d0dcaeceef2634e475bffaae232f /gcc/ginclude | |
parent | 76d76a0e1cdcf2aa34d97e383c9ad148230ff9e5 (diff) | |
download | gcc-b085d1c8f2927f04a8b00d2ef3fbc27e1455e257.zip gcc-b085d1c8f2927f04a8b00d2ef3fbc27e1455e257.tar.gz gcc-b085d1c8f2927f04a8b00d2ef3fbc27e1455e257.tar.bz2 |
(va_start): Must access anonymous arg as offset from start of argument block.
From-SVN: r2239
Diffstat (limited to 'gcc/ginclude')
-rw-r--r-- | gcc/ginclude/va-i960.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/ginclude/va-i960.h b/gcc/ginclude/va-i960.h index 549e9fe..2308c29 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 |