Commit c9c27b72 by Nick Clifton Committed by Nick Clifton

rx.c (rx_is_legitimate_constant): Treat a maximum constant size of 4 as being the same as 0.

       * config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
       constant size of 4 as being the same as 0.
       * doc/invoke.texi (RX Options): Document that -mmax-constant-size
       can take values in the range 0..4.

From-SVN: r156447
parent 4546b861
2010-02-02 Nick Clifton <nickc@redhat.com>
* config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
constant size of 4 as being the same as 0.
* doc/invoke.texi (RX Options): Document that -mmax-constant-size
can take values in the range 0..4.
2010-02-02 Jack Howarth <howarth@bromo.med.uc.edu> 2010-02-02 Jack Howarth <howarth@bromo.med.uc.edu>
PR java/41991 PR java/41991
......
...@@ -2345,7 +2345,7 @@ rx_is_legitimate_constant (rtx x) ...@@ -2345,7 +2345,7 @@ rx_is_legitimate_constant (rtx x)
case SYMBOL_REF: case SYMBOL_REF:
return true; return true;
case CONST_DOUBLE: case CONST_DOUBLE:
return rx_max_constant_size == 0; return (rx_max_constant_size == 0 || rx_max_constant_size == 4);
case CONST_VECTOR: case CONST_VECTOR:
return false; return false;
default: default:
...@@ -2353,7 +2353,7 @@ rx_is_legitimate_constant (rtx x) ...@@ -2353,7 +2353,7 @@ rx_is_legitimate_constant (rtx x)
break; break;
} }
if (rx_max_constant_size == 0) if (rx_max_constant_size == 0 || rx_max_constant_size == 4)
/* If there is no constraint on the size of constants /* If there is no constraint on the size of constants
used as operands, then any value is legitimate. */ used as operands, then any value is legitimate. */
return true; return true;
......
...@@ -15554,8 +15554,8 @@ circumstances it can be beneficial to restrict the size of constants ...@@ -15554,8 +15554,8 @@ circumstances it can be beneficial to restrict the size of constants
that are used in instructions. Constants that are too big are instead that are used in instructions. Constants that are too big are instead
placed into a constant pool and referenced via register indirection. placed into a constant pool and referenced via register indirection.
The value @var{N} can be between 0 and 3. A value of 0, the default, The value @var{N} can be between 0 and 4. A value of 0 (the default)
means that constants of any size are allowed. or 4 means that constants of any size are allowed.
@item -mrelax @item -mrelax
@opindex mrelax @opindex mrelax
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment