+2001-08-17 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.h (RETURN_IN_MEMORY): Return types with a size that is varable
+ or larger than an integer in memory.
+
2001-08-17 Zack Weinberg <zackw@panix.com>
* system.h: Forward-declare struct rtx_def, struct rtvec_def,
#define DEFAULT_PCC_STRUCT_RETURN 0
/* SOM ABI says that objects larger than 64 bits are returned in memory.
- PA64 ABI says that objects larger than 128 bits are returned in memory. */
+ PA64 ABI says that objects larger than 128 bits are returned in memory.
+ Note that int_size_in_bytes can return -1 if the size is variable
+ or larger than an integer. */
#define RETURN_IN_MEMORY(TYPE) \
- (TARGET_64BIT ? int_size_in_bytes (TYPE) > 16 : int_size_in_bytes (TYPE) > 8)
+ ((unsigned HOST_WIDE_INT) int_size_in_bytes (TYPE) > (TARGET_64BIT ? 16 : 8))
/* Register in which address to store a structure value
is passed to a function. */