rs6000.c (function_arg): Set inner mode of V1DI to SI.
authorAldy Hernandez <aldyh@redhat.com>
Wed, 16 Oct 2002 23:08:43 +0000 (23:08 +0000)
committerAldy Hernandez <aldyh@gcc.gnu.org>
Wed, 16 Oct 2002 23:08:43 +0000 (23:08 +0000)
2002-10-16  Aldy Hernandez  <aldyh@redhat.com>

* config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
SI.

From-SVN: r58227

gcc/ChangeLog
gcc/config/rs6000/rs6000.c

index ec6b25d308256878881acccc2b3c10e2d2ef60a9..76ac7276ea0da9710e1dc55bdfd617c0e30483bf 100644 (file)
@@ -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.
index 82892891609a616248066efcd82829f0218e12a5..73b8db111ef04d5ee34d2b94faaec7cd48bd607c 100644 (file)
@@ -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);