[PATCH] Fix AAPCS-VFP non-compliance when returning HFA from variadic function

Tim Northover t.p.northover at gmail.com
Thu Jan 16 08:35:27 PST 2014


On 16 January 2014 16:02, Oliver Stannard <oliver.stannard at arm.com> wrote:
> I had another look, and it turns out that there is a very similar bug
> affecting HFA function arguments to variadic functions. I have attached an
> updated version of my patch which fixes this.

I still think this is expressed at the wrong level. It's not that HFAs
are particularly special in variadic functions, but that AAPCS_VFP
rules simply don't apply to variadics. HFAs don't exist as a concept,
just like they don't for APCS or AAPCS.

I think you get away with it because passing them as an HFA would be
(e.g. "double, double, double") works with the backend anyway, but
they should go as any other struct ([3 x i64] by the looks of it in
that case).

Cheers.

Tim.



More information about the cfe-commits mailing list