aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2002-10-16 23:08:43 +0000
committerAldy Hernandez <aldyh@gcc.gnu.org>2002-10-16 23:08:43 +0000
commitf9dd72da28d0932c200fb1885f350e9908186582 (patch)
tree54316e805745f9055f8a3c5721f0e164dea003fc /gcc
parentfc76a969ebc282f783412cbd73d6c3805781b147 (diff)
downloadgcc-f9dd72da28d0932c200fb1885f350e9908186582.zip
gcc-f9dd72da28d0932c200fb1885f350e9908186582.tar.gz
gcc-f9dd72da28d0932c200fb1885f350e9908186582.tar.bz2
rs6000.c (function_arg): Set inner mode of V1DI to SI.
2002-10-16 Aldy Hernandez <aldyh@redhat.com> * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to SI. From-SVN: r58227
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/rs6000/rs6000.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ec6b25d..76ac727 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2002-10-16 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
+ SI.
+
2002-10-16 Ulrich Weigand <uweigand@de.ibm.com>
* config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove.
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 8289289..73b8db1 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -3163,6 +3163,9 @@ function_arg (cum, mode, type, named)
rtx r1, r2;
enum machine_mode m = GET_MODE_INNER (mode);
+ if (mode == V1DImode)
+ m = SImode;
+
r1 = gen_rtx_REG (m, gregno);
r1 = gen_rtx_EXPR_LIST (m, r1, const0_rtx);
r2 = gen_rtx_REG (m, gregno + 1);