re PR rtl-optimization/11271 ([arm-elf] regex.c ICEs for thumb multilib)
authorRichard Earnshaw <rearnsha@arm.com>
Fri, 31 Oct 2003 11:37:20 +0000 (11:37 +0000)
committerRichard Earnshaw <rearnsha@gcc.gnu.org>
Fri, 31 Oct 2003 11:37:20 +0000 (11:37 +0000)
PR target/11271
* reload.c (find_reloads_address): Handle any register in
(PLUS (PLUS (REG) (REG)) (CONST_INT).

From-SVN: r73136

gcc/ChangeLog
gcc/reload.c

index e28ecd5beec830f1bd7fef64773b98819b677bc1..528def53140f05fc4334d079d3e548f1a4ce1cc6 100644 (file)
@@ -1,3 +1,9 @@
+2003-10-31  Richard Earnshaw  <rearnsha@arm.com>
+
+       PR target/11271
+       * reload.c (find_reloads_address): Handle any register in
+       (PLUS (PLUS (REG) (REG)) (CONST_INT).
+
 2003-10-31  Richard Earnshaw  <rearnsha@arm.com>
 
        * ggc-page.c (ggc_pch_read): Wrap call to poison_pages in 
index 06bb3fb15bc54d2f904c36ef535ab4bda066a57b..8bd68c51bf5b48b36484b543cbd17dfeef7211a8 100644 (file)
@@ -4884,7 +4884,6 @@ find_reloads_address (enum machine_mode mode, rtx *memrefloc, rtx ad,
           && GET_CODE (XEXP (ad, 0)) == PLUS
           && GET_CODE (XEXP (XEXP (ad, 0), 0)) == REG
           && REGNO (XEXP (XEXP (ad, 0), 0)) < FIRST_PSEUDO_REGISTER
-          && REG_MODE_OK_FOR_BASE_P (XEXP (XEXP (ad, 0), 0), mode)
           && ! maybe_memory_address_p (mode, ad, &XEXP (XEXP (ad, 0), 1)))
     {
       *loc = ad = gen_rtx_PLUS (GET_MODE (ad),
@@ -4904,7 +4903,6 @@ find_reloads_address (enum machine_mode mode, rtx *memrefloc, rtx ad,
           && GET_CODE (XEXP (ad, 0)) == PLUS
           && GET_CODE (XEXP (XEXP (ad, 0), 1)) == REG
           && REGNO (XEXP (XEXP (ad, 0), 1)) < FIRST_PSEUDO_REGISTER
-          && REG_MODE_OK_FOR_BASE_P (XEXP (XEXP (ad, 0), 1), mode)
           && ! maybe_memory_address_p (mode, ad, &XEXP (XEXP (ad, 0), 0)))
     {
       *loc = ad = gen_rtx_PLUS (GET_MODE (ad),