ABI64 and register save area

H.J. Lu hjl.tools@gmail.com
Tue Mar 25 22:03:00 GMT 2008


On Tue, Mar 25, 2008 at 4:39 AM, Matteo Emanuele <superma77@yahoo.it> wrote:
> Hi,
>   I that hope this is the right place for this kind of
>  questions!
>  However my question is rather simple: knowing the
>  AMD64 ABI, is it possible to implement your own
>  flavour of the va_xxx macros?
>  If I compile _without_ -fomit-frame-pointer I'm able
>  to retrieve the arguments pushed on the stack, but I'm
>  not able to point correctly the register save area. Is
>  this area placed at fixed position like the red zone?
>  If not how I can find it (if possible)?
>  Thanks for the time spent reading,
>   Matteo
>

As far as I can tell, vararg implementation is local to callee. I don't know why
it has to be in psABI. To support Intel AVX, I'd like to move integer
registers after
SSE registers in the register save area, i.e.

Register            Offset
xmm0                0
....
xmm15              240
rdi                     256
...

Will there be any problems?

Thanks.


H.J.



More information about the Gcc mailing list