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>
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. */