All RX opcodes which take a dsp:8 also take a dsp:16 so we can relax
this offset check.  Committed.

        * config/rx/rx.c (rx_mode_dependent_address_p): Allow offsets up
        to 16 bits.

Index: config/rx/rx.c
===================================================================
--- config/rx/rx.c      (revision 204792)
+++ config/rx/rx.c      (working copy)
@@ -341,15 +341,15 @@ rx_mode_dependent_address_p (const_rtx a
        case REG:
          /* REG+REG only works in SImode.  */
          return true;
 
        case CONST_INT:
          /* REG+INT is only mode independent if INT is a
-            multiple of 4, positive and will fit into 8-bits.  */
+            multiple of 4, positive and will fit into 16-bits.  */
          if (((INTVAL (addr) & 3) == 0)
-             && IN_RANGE (INTVAL (addr), 4, 252))
+             && IN_RANGE (INTVAL (addr), 4, 0xfffc))
            return false;
          return true;
 
        case SYMBOL_REF:
        case LABEL_REF:
          return true;

Reply via email to