This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Ada in gcc-3.4.3 on x86_64
- From: Florian Weimer <fw at deneb dot enyo dot de>
- To: "Dean Kolosiek" <kolosiekweb04 at qwest dot net>
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 03 Jan 2005 13:32:12 +0100
- Subject: Re: Ada in gcc-3.4.3 on x86_64
- References: <1104748204.12314.120.camel@plato>
* Dean Kolosiek:
> That worked, and I reproduced a problem I saw in 3.3.3. When calling
> a C function from Ada there is no code generated to set %al to the number
> of xmm registers being passed. Variadic C functions use %al to compute a
> jump into a table of movaps instructions to save the xmm registers. The
> result is a jump to a random location.
It is not possible to interface to variadic C functions from standard
Ada if the calling convetion for variadic and non-variadic function
differs.
I don't think GNAT offers a non-standard extension which provides this
functionality. Maybe it should.