re PR middle-end/37316 (Small structs are not passed correctly on hppa64-*-*)
authorJakub Jelinek <jakub@redhat.com>
Sat, 22 Nov 2008 08:27:04 +0000 (09:27 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Sat, 22 Nov 2008 08:27:04 +0000 (09:27 +0100)
PR middle-end/37316
* function.c (assign_parm_remove_parallels): Pass
data->passed_type as third argument to emit_group_store.

From-SVN: r142115

gcc/ChangeLog
gcc/function.c

index 0fafb1f..ca87591 100644 (file)
@@ -1,5 +1,9 @@
 2008-11-22  Jakub Jelinek  <jakub@redhat.com>
 
+       PR middle-end/37316
+       * function.c (assign_parm_remove_parallels): Pass
+       data->passed_type as third argument to emit_group_store.
+
        PR target/37170
        * final.c (mark_symbol_refs_as_used): New function.
        * output.h (mark_symbol_refs_as_used): New prototype.
index 233ff6d..8320790 100644 (file)
@@ -2436,7 +2436,7 @@ assign_parm_remove_parallels (struct assign_parm_data_one *data)
   if (GET_CODE (entry_parm) == PARALLEL && GET_MODE (entry_parm) != BLKmode)
     {
       rtx parmreg = gen_reg_rtx (GET_MODE (entry_parm));
-      emit_group_store (parmreg, entry_parm, NULL_TREE,
+      emit_group_store (parmreg, entry_parm, data->passed_type,
                        GET_MODE_SIZE (GET_MODE (entry_parm)));
       entry_parm = parmreg;
     }