This is the mail archive of the
mailing list for the GCC project.
Re: PATCH [mainline] - Fix passing of zero-sized structs in apple-ppc-darwin mixed mode
>>>>> Alan Modra writes:
> Here's the complete revised patch.
> * config/rs6000/rs6000.c (rs6000_mixed_function_arg): Rewrite.
> (function_arg): Use rs6000_arg_size rather than CLASS_MAX_NREGS in
> calculating gpr size for altivec. Simplify and correct
> rs6000_mixed_function_arg calls. Call rs6000_mixed_function_arg
> for ABI_V4 gpr case too. Fix off-by-one error in long double
> reg test. Generate the correct PARALLEL to handle long double
> for ABI_AIX 32-bit. Use this for -m32 -mpowerpc64 fpr case too.
> (function_arg_partial_nregs): Align before calculating regs left.
> Don't return info on partial fprs when we need info on gprs.
> Correct long double fpr off-by-one error.
If all of the regressions reported by Fariborz's in his testing have been
addressed, this patch is okay to commit.