Quoting Bernd Schmidt <ber...@codesourcery.com>:
Some of the formatting changes to avoid long lines are unfortunate (and it's not done consistently); I think I'd prefer to add temporary variables to hold the return value of pack_cumulative_args and get_cumulative_args.
With the cumulative_args_t values available, it was more natural to also convert emit_call_1 and initialize_argument_information, so I did that. However, pass_by_reference and reference_callee_copied are called in a number of places from target ports, so I've left this for a later round of patches and/or discussion.Likewise, it becomes a bit clearer what we need from a hook replaceemnt of INIT_CUMULATIVE_ARGS, which we can discuss later.
I think it would be best just to minimize changes in backends as much as possible by using the following pattern everywhere: static void -ix86_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode, +ix86_function_arg_advance (cumulative_args_t cum_v, enum machine_mode mode, const_tree type, bool named) { + CUMULATIVE_ARGS *cum = get_cumulative_args (cum_v); I.e., avoid changes such as the one in mn10300_function_arg_advance.
I've employed this pattern now in all the target hook implementation heads except where there was a only a trivial single substitution that caused little or no reformatting.
Also, - if (iq2000_function_arg (&temp, mode, type, named) != 0) + if (iq2000_function_arg (pack_cumulative_args (&temp), mode, type, named) != 0) Extra tab character before !=.
Actually, it was a missing carriage return.
46500-patch-20110615.gz
Description: GNU Zip compressed data