From c9c27b723cf59fc765f46c4bc0fbda82840c0f5b Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Tue, 2 Feb 2010 09:18:04 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 7 +++++++ gcc/config/rx/rx.c | 4 ++-- gcc/doc/invoke.texi | 4 ++-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 68ad754ce71..7440bce6a0c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2010-02-02 Nick Clifton + + * 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 PR java/41991 diff --git a/gcc/config/rx/rx.c b/gcc/config/rx/rx.c index b8d4619427b..43099984948 100644 --- a/gcc/config/rx/rx.c +++ b/gcc/config/rx/rx.c @@ -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; diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 44bbd4a7794..07dd7624e6f 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -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