* config/ia64/ia64.h (MUST_PASS_IN_STACK): Define.
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 6 Dec 2003 05:40:14 +0000 (05:40 +0000)
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 6 Dec 2003 05:40:14 +0000 (05:40 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74360 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/ia64/ia64.h

index 9cd85d7..6ce8f99 100644 (file)
@@ -1,5 +1,7 @@
 2003-12-05  Mark Mitchell  <mark@codesourcery.com>
 
+       * config/ia64/ia64.h (MUST_PASS_IN_STACK): Define.
+
        PR c++/13314
        * emit-rtl.c (set_mem_attributes_minus_bitpos): Robustify.
 
index 7a4353b..84e8649 100644 (file)
@@ -1328,6 +1328,13 @@ enum reg_class
 #define FUNCTION_ARG_PASS_BY_REFERENCE(CUM, MODE, TYPE, NAMED) \
   ia64_function_arg_pass_by_reference (&CUM, MODE, TYPE, NAMED)
 
+/* Nonzero if we do not know how to pass TYPE solely in registers.  */
+
+#define MUST_PASS_IN_STACK(MODE, TYPE) \
+  ((TYPE) != 0                                                 \
+   && (TREE_CODE (TYPE_SIZE (TYPE)) != INTEGER_CST             \
+       || TREE_ADDRESSABLE (TYPE)))
+
 /* A C type for declaring a variable that is used as the first argument of
    `FUNCTION_ARG' and other related values.  For some target machines, the type
    `int' suffices and can hold the number of bytes of argument so far.  */