aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2003-12-06 05:40:14 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2003-12-06 05:40:14 +0000
commit3b099d37f1f358cc9547ed9a466e7a5c1ba0c33a (patch)
tree8f881978f7da82fd2ff1d7c415d78ff52ed5e60e /gcc
parenteeb23c11c0f58d2927f94cae3dac10848507420c (diff)
downloadgcc-3b099d37f1f358cc9547ed9a466e7a5c1ba0c33a.zip
gcc-3b099d37f1f358cc9547ed9a466e7a5c1ba0c33a.tar.gz
gcc-3b099d37f1f358cc9547ed9a466e7a5c1ba0c33a.tar.bz2
* config/ia64/ia64.h (MUST_PASS_IN_STACK): Define.
From-SVN: r74360
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog2
-rw-r--r--gcc/config/ia64/ia64.h7
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9cd85d7..6ce8f99 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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.
diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h
index 7a4353b..84e8649 100644
--- a/gcc/config/ia64/ia64.h
+++ b/gcc/config/ia64/ia64.h
@@ -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. */