summaryrefslogtreecommitdiff
path: root/gcc/config/ia64/ia64.h
diff options
context:
space:
mode:
authorsje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>2004-10-06 16:07:03 +0000
committersje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>2004-10-06 16:07:03 +0000
commitd0294e5d73680f34967d74832a6bc4d3da0542ec (patch)
tree8c42196e78b6f1f024ae1d75e8392b43aa7ac016 /gcc/config/ia64/ia64.h
parent7fa8d7a1ff9048ea59c0844a7dddf6b611f38678 (diff)
downloadgcc-d0294e5d73680f34967d74832a6bc4d3da0542ec.tar.gz
* config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Change macro to
call ia64_function_arg_boundary. * config/ia64/ia64-protos.h (ia64_function_arg_boundary): New. * config/ia64/ia64.c (ia64_function_arg_boundary): New. (ia64_function_arg_advance): Do not put 128 bit floats into FP registers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88608 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/ia64/ia64.h')
-rw-r--r--gcc/config/ia64/ia64.h10
1 files changed, 3 insertions, 7 deletions
diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h
index 58304a9b366..aab51f83000 100644
--- a/gcc/config/ia64/ia64.h
+++ b/gcc/config/ia64/ia64.h
@@ -1376,15 +1376,11 @@ do { \
/* If defined, a C expression that gives the alignment boundary, in bits, of an
argument with the specified mode and type. */
-/* Arguments with alignment larger than 8 bytes start at the next even
- boundary. See ia64_function_arg. */
+/* Return the alignment boundary in bits for an argument with a specified
+ mode and type. */
#define FUNCTION_ARG_BOUNDARY(MODE, TYPE) \
- (((TYPE) ? (TYPE_ALIGN (TYPE) > 8 * BITS_PER_UNIT) \
- : (((((MODE) == BLKmode \
- ? int_size_in_bytes (TYPE) : GET_MODE_SIZE (MODE)) \
- + UNITS_PER_WORD - 1) / UNITS_PER_WORD) > 1)) \
- ? 128 : PARM_BOUNDARY)
+ ia64_function_arg_boundary (MODE, TYPE)
/* A C expression that is nonzero if REGNO is the number of a hard register in
which function arguments are sometimes passed. This does *not* include