diff options
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/cris/cris.h | 12 |
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)))))) \ ) |