h8300.h (RETURN_IN_MEMORY): Accept DImode if !TARGET_H8300.
authorKazu Hirata <kazu@cs.umass.edu>
Wed, 11 Jun 2003 12:05:04 +0000 (12:05 +0000)
committerKazu Hirata <kazu@gcc.gnu.org>
Wed, 11 Jun 2003 12:05:04 +0000 (12:05 +0000)
* config/h8300/h8300.h (RETURN_IN_MEMORY): Accept DImode if
!TARGET_H8300.

From-SVN: r67759

gcc/ChangeLog
gcc/config/h8300/h8300.h

index 1575492b6a31c814e140037d4fe09e557ec76da1..7a495fa43a6341bb6379c69eeb0050910766429d 100644 (file)
@@ -1,3 +1,8 @@
+2003-06-11  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.h (RETURN_IN_MEMORY): Accept DImode if
+       !TARGET_H8300.
+
 2003-06-11  Kazu Hirata  <kazu@cs.umass.edu>
 
        * config/h8300/h8300.c (final_prescan_insn): Don't dump rtl.
index f57c0a1fb66b49a7e92cc507a9da4d241b4124b4..90143eb9b5f8902acca1a4ead6de97a27c5862d2 100644 (file)
@@ -635,8 +635,9 @@ enum reg_class {
 #define STRUCT_VALUE 0
 
 /* Return true if X should be returned in memory.  */
-#define RETURN_IN_MEMORY(X) \
-  (TYPE_MODE (X) == BLKmode || GET_MODE_SIZE (TYPE_MODE (X)) > 4)
+#define RETURN_IN_MEMORY(X)                                    \
+  (TYPE_MODE (X) == BLKmode                                    \
+   || GET_MODE_SIZE (TYPE_MODE (X)) > (TARGET_H8300 ? 4 : 8))
 
 /* When defined, the compiler allows registers explicitly used in the
    rtl to be used as spill registers but prevents the compiler from