diff options
| author | Richard Sandiford <rsandifo@gcc.gnu.org> | 2003-10-04 08:11:06 +0000 |
|---|---|---|
| committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2003-10-04 08:11:06 +0000 |
| commit | 78e82bbe0b7adf406b7b55fb6af0054a57d304d4 (patch) | |
| tree | 326b591ae18445ff2989fd10a33f01607b35a53d /gcc/config/mips/mips.c | |
| parent | 184b434cf8085d86167c60beffaa093af47bb197 (diff) | |
| download | gcc-78e82bbe0b7adf406b7b55fb6af0054a57d304d4.zip gcc-78e82bbe0b7adf406b7b55fb6af0054a57d304d4.tar.gz gcc-78e82bbe0b7adf406b7b55fb6af0054a57d304d4.tar.bz2 | |
mips.c (mips_pad_arg_upward): Pad floating-point arguments downward for big-endian o64.
* config/mips/mips.c (mips_pad_arg_upward): Pad floating-point
arguments downward for big-endian o64.
From-SVN: r72088
Diffstat (limited to 'gcc/config/mips/mips.c')
| -rw-r--r-- | gcc/config/mips/mips.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index 6f49f6f..ae27af1 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -3833,6 +3833,11 @@ mips_pad_arg_upward (enum machine_mode mode, tree type) : GET_MODE_CLASS (mode) == MODE_INT) return false; + /* Big-endian o64 pads floating-point arguments downward. */ + if (mips_abi == ABI_O64) + if (type != 0 ? FLOAT_TYPE_P (type) : GET_MODE_CLASS (mode) == MODE_FLOAT) + return false; + /* Other types are padded upward for o32, o64, n32 and n64. */ if (mips_abi != ABI_EABI) return true; |
