aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/cris/cris.h12
2 files changed, 10 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e3843ed..28d0a13 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2005-05-17 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/cris/cris.h (EXTRA_CONSTRAINT_T): Remove FIXME and
+ tests for noncanonical versions of reg+constant and
+ reg+reg*{1,2,4}.
+
2005-05-16 Richard Henderson <rth@redhat.com>
Steven Bosscher <stevenb@suse.de>
diff --git a/gcc/config/cris/cris.h b/gcc/config/cris/cris.h
index dac03d2..bdf4823 100644
--- a/gcc/config/cris/cris.h
+++ b/gcc/config/cris/cris.h
@@ -667,19 +667,15 @@ enum reg_class
/* A BDAP constant: [reg+(8|16|32)bit offset]? */ \
&& ((BASE_P (XEXP (XEXP (X, 0), 0)) \
&& CONSTANT_INDEX_P (XEXP (XEXP (X, 0), 1))) \
- /* Swap arguments to the above. FIXME: gcc-2.9x? */ \
- || (BASE_P (XEXP (XEXP (X, 0), 1)) \
- && CONSTANT_INDEX_P (XEXP (XEXP (X, 0), 0))) \
/* A BDAP register: [reg+[reg(+)].S]? */ \
|| (BASE_P (XEXP (XEXP (X, 0), 0)) \
&& BDAP_INDEX_P(XEXP(XEXP(X, 0), 1))) \
- /* Same, but with swapped arguments. */ \
+ /* Same, but with swapped arguments (no canonical \
+ ordering between e.g. REG and MEM as of LAST_UPDATED \
+ "Thu May 12 03:59:11 UTC 2005"). */ \
|| (BASE_P (XEXP (XEXP (X, 0), 1)) \
&& BDAP_INDEX_P (XEXP (XEXP (X, 0), 0))) \
- /* A BIAP: [reg+reg.S]. */ \
- || (BASE_P (XEXP (XEXP (X, 0), 0)) \
- && BIAP_INDEX_P (XEXP (XEXP (X, 0), 1))) \
- /* Same, but with swapped arguments. */ \
+ /* A BIAP: [reg+reg.S] (MULT comes first). */ \
|| (BASE_P (XEXP (XEXP (X, 0), 1)) \
&& BIAP_INDEX_P (XEXP (XEXP (X, 0), 0)))))) \
)