+2002-11-10 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same
+ as FUNCTION_ARG_PASS_BY_REFERENCE.
+
2002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
* pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16.
/* This *sounds* good, but does not seem to be implemented correctly to
be a win; at least it wasn't in 2.7.2. FIXME: Check and perhaps
- replace with a big comment. */
-#define FUNCTION_ARG_CALLEE_COPIES(CUM, MODE, TYPE, NAMED) 1
+ replace with a big comment.
+ The definition needs to match or be a subset of
+ FUNCTION_ARG_PASS_BY_REFERENCE, since not all callers check that before
+ usage. Watch lots of C++ test-cases fail if set to 1, for example
+ g++.dg/init/byval1.C. */
+#define FUNCTION_ARG_CALLEE_COPIES(CUM, MODE, TYPE, NAMED) \
+ mmix_function_arg_pass_by_reference (&(CUM), MODE, TYPE, NAMED)
typedef struct { int regs; int lib; } CUMULATIVE_ARGS;