diff options
author | Kazu Hirata <kazu@hxi.com> | 2000-07-31 12:51:11 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2000-07-31 06:51:11 -0600 |
commit | 184ef18e6a32fe5c97037aa4f6ea9f36ba1890f0 (patch) | |
tree | 077e54d302c533a40a3ae08dc5a498ba943003a5 | |
parent | 9492393e341dc647bae76005a1597bbbd1daa686 (diff) | |
download | gcc-184ef18e6a32fe5c97037aa4f6ea9f36ba1890f0.zip gcc-184ef18e6a32fe5c97037aa4f6ea9f36ba1890f0.tar.gz gcc-184ef18e6a32fe5c97037aa4f6ea9f36ba1890f0.tar.bz2 |
h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and HImode on all architectures and a...
* h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and
HImode on all architectures and a combination of HImode and SImode
on H8/300H and H8/S.
From-SVN: r35372
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/h8300/h8300.h | 8 |
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d1d5440..2210188 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2000-07-31 Kazu Hirata <kazu@hxi.com> + * h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and + HImode on all architectures and a combination of HImode and SImode + on H8/300H and H8/S. + * h8300.c (split_adds_subs): Rearrange code for conciseness. Mon Jul 31 12:27:55 MET DST 2000 Jan Hubicka <jh@suse.cz> diff --git a/gcc/config/h8300/h8300.h b/gcc/config/h8300/h8300.h index 5c4604a..6e6bd44 100644 --- a/gcc/config/h8300/h8300.h +++ b/gcc/config/h8300/h8300.h @@ -308,7 +308,13 @@ do { \ when one has mode MODE1 and one has mode MODE2. If HARD_REGNO_MODE_OK could produce different values for MODE1 and MODE2, for any hard reg, then this must be 0 for correct output. */ -#define MODES_TIEABLE_P(MODE1, MODE2) ((MODE1) == (MODE2)) +#define MODES_TIEABLE_P(MODE1, MODE2) \ + ((MODE1) == (MODE2) \ + || ((MODE1) == HImode && (MODE2) == QImode) \ + || ((MODE1) == QImode && (MODE2) == HImode) \ + || ((TARGET_H8300H || TARGET_H8300S) \ + && (((MODE1) == SImode && (MODE2) == HImode) \ + || ((MODE1) == HImode && (MODE2) == SImode)))) /* Specify the registers used for certain standard purposes. The values of these macros are register numbers. */ |