aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2010-02-02 09:18:04 +0000
committerNick Clifton <nickc@gcc.gnu.org>2010-02-02 09:18:04 +0000
commitc9c27b723cf59fc765f46c4bc0fbda82840c0f5b (patch)
tree205ad4cd94fa03aaee5be026dfc17468510acf98 /gcc
parent4546b861fba352876c796c09ce323090a96f9725 (diff)
downloadgcc-c9c27b723cf59fc765f46c4bc0fbda82840c0f5b.zip
gcc-c9c27b723cf59fc765f46c4bc0fbda82840c0f5b.tar.gz
gcc-c9c27b723cf59fc765f46c4bc0fbda82840c0f5b.tar.bz2
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/rx/rx.c4
-rw-r--r--gcc/doc/invoke.texi4
3 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 68ad754..7440bce 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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
diff --git a/gcc/config/rx/rx.c b/gcc/config/rx/rx.c
index b8d4619..4309998 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 44bbd4a..07dd762 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