diff options
author | Stephen Clarke <stephen.clarke@superh.com> | 2002-09-19 13:17:57 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 2002-09-19 14:17:57 +0100 |
commit | fff08fd8dad02e4b83e37555da6acd2693ae3db7 (patch) | |
tree | e76a8e76e727450ab9e7acda86a21f5e4dfafdc0 | |
parent | eee3e0fb0b1783cae7e12a60b83e0fefd2a5923e (diff) | |
download | gcc-fff08fd8dad02e4b83e37555da6acd2693ae3db7.zip gcc-fff08fd8dad02e4b83e37555da6acd2693ae3db7.tar.gz gcc-fff08fd8dad02e4b83e37555da6acd2693ae3db7.tar.bz2 |
sh.h (UNSPEC_GOTOFF_P): Define.
2002-09-19 Stephen Clarke <stephen.clarke@superh.com>
* config/sh/sh.h (UNSPEC_GOTOFF_P): Define.
(GOTOFF_P): Extend to allow gotoff plus constant.
From-SVN: r57302
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/sh/sh.h | 10 |
2 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 40f48b7..90a1bf0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-09-19 Stephen Clarke <stephen.clarke@superh.com> + + * config/sh/sh.h (UNSPEC_GOTOFF_P): Define. + (GOTOFF_P): Extend to allow gotoff plus constant. + 2002-09-18 Richard Henderson <rth@redhat.com> * ifcvt.c (noce_process_if_block): Correctly detect X modified diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index a06984f..64a0f2a 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -2277,9 +2277,15 @@ while (0) (GET_CODE (OP) == CONST && GET_CODE (XEXP ((OP), 0)) == UNSPEC \ && XINT (XEXP ((OP), 0), 1) == UNSPEC_GOTPLT) +#define UNSPEC_GOTOFF_P(OP) \ + (GET_CODE (OP) == UNSPEC && XINT ((OP), 1) == UNSPEC_GOTOFF) + #define GOTOFF_P(OP) \ - (GET_CODE (OP) == CONST && GET_CODE (XEXP ((OP), 0)) == UNSPEC \ - && XINT (XEXP ((OP), 0), 1) == UNSPEC_GOTOFF) + (GET_CODE (OP) == CONST \ + && (UNSPEC_GOTOFF_P (XEXP ((OP), 0)) \ + || (GET_CODE (XEXP ((OP), 0)) == PLUS \ + && UNSPEC_GOTOFF_P (XEXP (XEXP ((OP), 0), 0)) \ + && GET_CODE (XEXP (XEXP ((OP), 0), 1)) == CONST_INT))) #define PIC_ADDR_P(OP) \ (GET_CODE (OP) == CONST && GET_CODE (XEXP ((OP), 0)) == UNSPEC \ |