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
This commit is contained in:
Nick Clifton 2010-02-02 09:18:04 +00:00 committed by Nick Clifton
parent 4546b861fb
commit c9c27b723c
3 changed files with 11 additions and 4 deletions

View File

@ -1,3 +1,10 @@
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>
PR java/41991

View File

@ -2345,7 +2345,7 @@ rx_is_legitimate_constant (rtx x)
case SYMBOL_REF:
return true;
case CONST_DOUBLE:
return rx_max_constant_size == 0;
return (rx_max_constant_size == 0 || rx_max_constant_size == 4);
case CONST_VECTOR:
return false;
default:
@ -2353,7 +2353,7 @@ rx_is_legitimate_constant (rtx x)
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
used as operands, then any value is legitimate. */
return true;

View File

@ -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
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,
means that constants of any size are allowed.
The value @var{N} can be between 0 and 4. A value of 0 (the default)
or 4 means that constants of any size are allowed.
@item -mrelax
@opindex mrelax