rs6000.h (RETURN_IN_MEMORY): Cast result of int_size_in_bytes to unsigned HOST_WIDEST_INT so that -1 > 8.

* rs6000.h (RETURN_IN_MEMORY): Cast result of
	int_size_in_bytes to unsigned HOST_WIDEST_INT so that -1 > 8.

From-SVN: r47554
This commit is contained in:
Zack Weinberg 2001-12-03 18:47:44 +00:00 committed by Zack Weinberg
parent 97d521024f
commit 52acbdcba9
2 changed files with 12 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2001-12-03 Zack Weinberg <zack@codesourcery.com>
* rs6000.h (RETURN_IN_MEMORY): Cast result of
int_size_in_bytes to unsigned HOST_WIDEST_INT so that -1 > 8.
Mon Dec 3 09:18:34 2001 Jeffrey A Law (law@cygnus.com)
* mn10200.md (negsf2): Use -0x8000 instead of 0x8000 for

View File

@ -1486,11 +1486,15 @@ typedef struct rs6000_stack {
controls this instead of DEFAULT_ABI; V.4 targets needing backward
compatibility can change DRAFT_V4_STRUCT_RET to override the
default, and -m switches get the final word. See
rs6000_override_options for more details. */
rs6000_override_options for more details.
int_size_in_bytes returns -1 for variable size objects, which go in
memory always. The cast to unsigned makes -1 > 8. */
#define RETURN_IN_MEMORY(TYPE) \
(AGGREGATE_TYPE_P (TYPE) && \
(TARGET_AIX_STRUCT_RET || int_size_in_bytes (TYPE) > 8))
(TARGET_AIX_STRUCT_RET || \
(unsigned HOST_WIDEST_INT) int_size_in_bytes (TYPE) > 8))
/* DRAFT_V4_STRUCT_RET defaults off. */
#define DRAFT_V4_STRUCT_RET 0