diff options
author | Clinton Popetz <cpopetz@cygnus.com> | 2000-01-14 21:21:57 +0000 |
---|---|---|
committer | Clinton Popetz <cpopetz@gcc.gnu.org> | 2000-01-14 16:21:57 -0500 |
commit | f5c8ac96dc90c77efcc6edf6b89de6d9bfc0f775 (patch) | |
tree | 8cc1b1f6061ef44d3539d265751b54f731e06517 | |
parent | 5e4f624424df8c5a8a6a6a7a7f9b0709d4f1213e (diff) | |
download | gcc-f5c8ac96dc90c77efcc6edf6b89de6d9bfc0f775.zip gcc-f5c8ac96dc90c77efcc6edf6b89de6d9bfc0f775.tar.gz gcc-f5c8ac96dc90c77efcc6edf6b89de6d9bfc0f775.tar.bz2 |
mips.c (mips_va_arg): Fix fprv for the 32 bit eabi...
* config/mips/mips.c (mips_va_arg): Fix fprv for the 32 bit
eabi, and make sure queued POSTINCREMENT rtl is emitted at
the right point.
From-SVN: r31422
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/config/mips/mips.h | 7 |
2 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c2ea56d..76fdf3f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,8 +1,14 @@ 2000-01-14 Clinton Popetz <cpopetz@cygnus.com> + * config/mips/mips.c (mips_va_arg): Fix fprv for the 32 bit + eabi, and make sure queued POSTINCREMENT rtl is emitted at + the right point. + +2000-01-14 Clinton Popetz <cpopetz@cygnus.com> + * builtins.c (PAD_VARARGS_DOWN): Define. (std_expand_builtin_va_arg): Use the above macro. - * config/mips/mips.c (PAD_VARARGS_DOWN): Define. + * config/mips/mips.h (PAD_VARARGS_DOWN): Define. * tm.texi (Register Arguments): Document the above macro. 2000-01-14 Nick Clifton <nickc@cygnus.com> diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index 5e7195ef..b6d7559 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. MIPS version. - Copyright (C) 1989, 90-98, 1999 Free Software Foundation, Inc. + Copyright (C) 1989, 90-98, 1999, 2000 Free Software Foundation, Inc. Contributed by A. Lichnewsky (lich@inria.inria.fr). Changed by Michael Meissner (meissner@osf.org). 64 bit r4000 support by Ian Lance Taylor (ian@cygnus.com) and @@ -1438,6 +1438,11 @@ do { \ || TREE_CODE (TYPE) == UNION_TYPE \ || TREE_CODE (TYPE) == RECORD_TYPE)) ? BITS_PER_WORD : (ALIGN)) + +/* Force right-alignment for small varargs in 32 bit little_endian mode */ + +#define PAD_VARARGS_DOWN (TARGET_64BIT ? BYTES_BIG_ENDIAN : !BYTES_BIG_ENDIAN) + /* Define this macro if an argument declared as `char' or `short' in a prototype should actually be passed as an `int'. In addition to avoiding errors in certain cases of mismatch, it also makes for |