OSDN Git Service

* config/spu/spu.c (spu_function_arg): Dereference CUM parameter.
authorfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 21 Oct 2010 21:44:03 +0000 (21:44 +0000)
committerfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 21 Oct 2010 21:44:03 +0000 (21:44 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165792 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/spu/spu.c

index 0ba444d..1570f86 100644 (file)
@@ -1,5 +1,9 @@
 2010-10-21  Nathan Froyd  <froydnj@codesourcery.com>
 
+       * config/spu/spu.c (spu_function_arg): Dereference CUM parameter.
+
+2010-10-21  Nathan Froyd  <froydnj@codesourcery.com>
+
        * ddg.c (add_cross_iteration_register_deps): Call gcc_assert instead
        of gcc_checking_assert.
        * sel-sched.c (code_motion_process_successors): Likewise.
index 254bd65..059c651 100644 (file)
@@ -4021,7 +4021,7 @@ spu_function_arg (CUMULATIVE_ARGS *cum,
 {
   int byte_size;
 
-  if (cum >= MAX_REGISTER_ARGS)
+  if (*cum >= MAX_REGISTER_ARGS)
     return 0;
 
   byte_size = ((mode == BLKmode)
@@ -4029,7 +4029,7 @@ spu_function_arg (CUMULATIVE_ARGS *cum,
 
   /* The ABI does not allow parameters to be passed partially in
      reg and partially in stack. */
-  if ((cum + (byte_size + 15) / 16) > MAX_REGISTER_ARGS)
+  if ((*cum + (byte_size + 15) / 16) > MAX_REGISTER_ARGS)
     return 0;
 
   /* Make sure small structs are left justified in a register. */
@@ -4042,12 +4042,12 @@ spu_function_arg (CUMULATIVE_ARGS *cum,
        byte_size = 4;
       smode = smallest_mode_for_size (byte_size * BITS_PER_UNIT, MODE_INT);
       gr_reg = gen_rtx_EXPR_LIST (VOIDmode,
-                                 gen_rtx_REG (smode, FIRST_ARG_REGNUM + cum),
+                                 gen_rtx_REG (smode, FIRST_ARG_REGNUM + *cum),
                                  const0_rtx);
       return gen_rtx_PARALLEL (mode, gen_rtvec (1, gr_reg));
     }
   else
-    return gen_rtx_REG (mode, FIRST_ARG_REGNUM + cum);
+    return gen_rtx_REG (mode, FIRST_ARG_REGNUM + *cum);
 }
 
 static void