re PR target/11183 ([arm] ICE in change_address_1 (3.3) / subreg_hard_regno (3.4))
authorRichard Earnshaw <rearnsha@arm.com>
Sat, 14 Jun 2003 14:16:39 +0000 (14:16 +0000)
committerRichard Earnshaw <rearnsha@gcc.gnu.org>
Sat, 14 Jun 2003 14:16:39 +0000 (14:16 +0000)
PR target/11183
* arm.c (output_move_double): Pass SImode to adjust_address.

From-SVN: r67943

gcc/ChangeLog
gcc/config/arm/arm.c

index d824921..094a407 100644 (file)
@@ -1,3 +1,8 @@
+2003-06-14  Richard Earnshaw  <rearnsha@arm.com>
+
+       PR target/11183
+       * arm.c (output_move_double): Pass SImode to adjust_address.
+
 2003-06-14  Neil Booth  <neil@daikokuya.co.uk>
 
        * Makefile.in: Update to use common.opt and lang_opt_files.
index f9f5474..23500fe 100644 (file)
@@ -7264,7 +7264,7 @@ output_move_double (rtx *operands)
                 }
               else
                 {
-                 otherops[1] = adjust_address (operands[1], VOIDmode, 4);
+                 otherops[1] = adjust_address (operands[1], SImode, 4);
                  /* Take care of overlapping base/data reg.  */
                  if (reg_mentioned_p (operands[0], operands[1]))
                    {
@@ -7330,7 +7330,7 @@ output_move_double (rtx *operands)
          /* Fall through */
 
         default:
-         otherops[0] = adjust_address (operands[0], VOIDmode, 4);
+         otherops[0] = adjust_address (operands[0], SImode, 4);
          otherops[1] = gen_rtx_REG (SImode, 1 + REGNO (operands[1]));
          output_asm_insn ("str%?\t%1, %0", operands);
          output_asm_insn ("str%?\t%1, %0", otherops);