OSDN Git Service

PR 11591
authorhpenner <hpenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 30 Mar 2004 06:43:51 +0000 (06:43 +0000)
committerhpenner <hpenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 30 Mar 2004 06:43:51 +0000 (06:43 +0000)
      * config/rs6000/rs6000.c (rs6000_legitimate_address):
        Allow any offset to argument pointer in no-strict case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80075 138bc75d-0d04-0410-961f-82ee72b054a4

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

index 8b60350..e0b5a35 100644 (file)
@@ -1,3 +1,9 @@
+2004-03-30  Hartmut Penner  <hpenner@de.ibm.com>
+
+       PR 11591        
+       * config/rs6000/rs6000.c (rs6000_legitimate_address): 
+       Allow any offset to argument pointer in no-strict case.
+
 2004-03-30  Jan Hubicka  <jh@suse.cz>
 
        * toplev.c (backend_init): Add missing call to inint_optimization_passes.
index dc45a50..c8854b0 100644 (file)
@@ -3267,7 +3267,8 @@ rs6000_legitimate_address (enum machine_mode mode, rtx x, int reg_ok_strict)
   if (! reg_ok_strict
       && GET_CODE (x) == PLUS
       && GET_CODE (XEXP (x, 0)) == REG
-      && XEXP (x, 0) == virtual_stack_vars_rtx
+      && (XEXP (x, 0) == virtual_stack_vars_rtx
+         || XEXP (x, 0) == arg_pointer_rtx)
       && GET_CODE (XEXP (x, 1)) == CONST_INT)
     return 1;
   if (legitimate_offset_address_p (mode, x, reg_ok_strict))