rs6000.c (print_operand, [...]): Use adjust_address_nv instead of plus_constant.
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>
Tue, 10 Jul 2001 20:24:06 +0000 (20:24 +0000)
committerRichard Kenner <kenner@gcc.gnu.org>
Tue, 10 Jul 2001 20:24:06 +0000 (16:24 -0400)
* config/rs6000/rs6000.c (print_operand, case 'L', 'Y', 'Z'): Use
adjust_address_nv instead of plus_constant.

From-SVN: r43909

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

index 5379265a7a4cf6e11be66394d06852850c149d4a..5e0d9137a939503b2af10a82e625ec55a47a55e8 100644 (file)
@@ -1,3 +1,8 @@
+Tue Jul 10 07:27:53 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * config/rs6000/rs6000.c (print_operand, case 'L', 'Y', 'Z'): Use
+       adjust_address_nv instead of plus_constant.
+
 2001-07-10  Neil Booth  <neil@daikokuya.demon.co.uk>
 
        * Makefile.in (toplev.o, sdbout.o, dbxout.o, dwarfout.o,
index 21c9f1810e2bd282d62298829368f2e1d472703a..a01bf6f7501354e54575e57279f63de586dbd0e6 100644 (file)
@@ -4004,7 +4004,9 @@ print_operand (file, x, code)
            output_address (plus_constant (XEXP (XEXP (x, 0), 0),
                                           UNITS_PER_WORD));
          else
-           output_address (plus_constant (XEXP (x, 0), UNITS_PER_WORD));
+           output_address (XEXP (adjust_address_nv (x, SImode,
+                                                    UNITS_PER_WORD),
+                                 0));
 
          if (small_data_operand (x, GET_MODE (x)))
            fprintf (file, "@%s(%s)", SMALL_DATA_RELOC,
@@ -4383,7 +4385,7 @@ print_operand (file, x, code)
              || GET_CODE (XEXP (x, 0)) == PRE_DEC)
            output_address (plus_constant (XEXP (XEXP (x, 0), 0), 8));
          else
-           output_address (plus_constant (XEXP (x, 0), 8));
+           output_address (XEXP (adjust_address_nv (x, SImode, 8), 0));
          if (small_data_operand (x, GET_MODE (x)))
            fprintf (file, "@%s(%s)", SMALL_DATA_RELOC,
                     reg_names[SMALL_DATA_REG]);
@@ -4434,7 +4436,7 @@ print_operand (file, x, code)
              || GET_CODE (XEXP (x, 0)) == PRE_DEC)
            output_address (plus_constant (XEXP (XEXP (x, 0), 0), 12));
          else
-           output_address (plus_constant (XEXP (x, 0), 12));
+           output_address (XEXP (adjust_address_nv (x, SImode, 12), 0));
          if (small_data_operand (x, GET_MODE (x)))
            fprintf (file, "@%s(%s)", SMALL_DATA_RELOC,
                     reg_names[SMALL_DATA_REG]);