rs6000.c (rs6000_internal_arg_pointer): Only return a reg rtx.
authorAaron Sawdey <acsawdey@linux.vnet.ibm.com>
Tue, 30 Jan 2018 17:27:16 +0000 (17:27 +0000)
committerAaron Sawdey <acsawdey@gcc.gnu.org>
Tue, 30 Jan 2018 17:27:16 +0000 (11:27 -0600)
2018-01-30  Aaron Sawdey  <acsawdey@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (rs6000_internal_arg_pointer): Only return
a reg rtx.

From-SVN: r257193

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

index 0d2e8d53139bf5fee5676aa9b9591faba8bc0ea4..5e9801a8e99c12053cd7379094a3eb6dda14ca3c 100644 (file)
@@ -1,3 +1,8 @@
+2018-01-30  Aaron Sawdey  <acsawdey@linux.vnet.ibm.com>
+
+       * config/rs6000/rs6000.c (rs6000_internal_arg_pointer): Only return
+       a reg rtx.
+
 2018-01-30  Richard Biener  <rguenther@suse.de>
            Jakub Jelinek  <jakub@redhat.com>
 
index 145ac86d41d89606d9f43d5f65cd5805373f10a4..a37ebd88cce1895258a2de104d8fd03f78f346bd 100644 (file)
@@ -29602,8 +29602,9 @@ rs6000_internal_arg_pointer (void)
          emit_insn_after (pat, get_insns ());
          pop_topmost_sequence ();
        }
-      return plus_constant (Pmode, cfun->machine->split_stack_arg_pointer,
-                           FIRST_PARM_OFFSET (current_function_decl));
+      rtx ret = plus_constant (Pmode, cfun->machine->split_stack_arg_pointer,
+                              FIRST_PARM_OFFSET (current_function_decl));
+      return copy_to_reg (ret);
     }
   return virtual_incoming_args_rtx;
 }