diff options
author | rms <rms@138bc75d-0d04-0410-961f-82ee72b054a4> | 1992-06-11 20:14:59 +0000 |
---|---|---|
committer | rms <rms@138bc75d-0d04-0410-961f-82ee72b054a4> | 1992-06-11 20:14:59 +0000 |
commit | 27648ec6ce3a7d77ddf0441db2a1a3effd4106f2 (patch) | |
tree | c665ea65701805476332a8ca533daa7322e1f3d5 /gcc/ginclude | |
parent | 55369351178afb5c4d26405eac498ec4b44d42e9 (diff) | |
download | gcc-27648ec6ce3a7d77ddf0441db2a1a3effd4106f2.tar.gz |
*** empty log message ***
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@1191 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ginclude')
-rw-r--r-- | gcc/ginclude/va-sparc.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/ginclude/va-sparc.h b/gcc/ginclude/va-sparc.h index cc423740a50..79d9938676a 100644 --- a/gcc/ginclude/va-sparc.h +++ b/gcc/ginclude/va-sparc.h @@ -54,5 +54,11 @@ __extension__ \ ((__builtin_classify_type (__va_temp) >= 12) \ ? ((pvar) += __va_rounded_size (TYPE *), \ **(TYPE **) ((pvar) - __va_rounded_size (TYPE *))) \ + : __va_rounded_size (TYPE) == 8 \ + ? ({ union {double d; int i[2];} u; \ + u.i[0] = ((int *) (pvar))[0]; \ + u.i[1] = ((int *) (pvar))[1]; \ + (pvar) += 8; \ + u.d; }) \ : ((pvar) += __va_rounded_size (TYPE), \ *((TYPE *) ((pvar) - __va_rounded_size (TYPE)))));}) |