gimple va_arg for arm

Richard Earnshaw rearnsha@gcc.gnu.org
Fri Jul 9 12:33:00 GMT 2004


On Thu, 2004-07-08 at 23:11, Richard Henderson wrote:
> Not committed, since I'm not 100% certain about the curiousness with
> the alignment of arg_pointer_rtx.  It seems to me that if it's necessary
> to reduce the alignment for va_arg, then its necessary all of the time.
> 

Much of that looks like a hang-over from the initial iWMMX port (Hi
Nick).  I suspect that now iWMMX is defined only to work with an AAPCS
conforming layout (natural alignment up to double-word) then most of
that gloop is no-longer necessary.  There's two cases to consider:

1) The old ABIs (APCS/ATPCS)-- objects were naturally aligned up to word
size.

2) The new ABI (AAPCS) -- objects are naturally aligned up to
double-word size.

I think all of this should be determinable from the normal parameter
macros (the argument marshalling doesn't change between variadic and
non-variadic routines, at least, not for the variants currently
supported by GCC).

> Richard E, can you confirm that this works?

I'll run some tests, but it will take a few hours.

R.



More information about the Gcc-patches mailing list