ARM: PCS non-compliance when struct is padded to avoid register/stack split, and requires internal padding

When we were padding a struct to avoid splitting it between registers and
the stack, we were throwing away the type which the argument should be coerced
to.