This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: [patch] libffi darwin x86-32bit, fix return_sc testcase.
- From: Richard Guenther <rguenther at suse dot de>
- To: Andrew Haley <aph at redhat dot com>
- Cc: Andreas Tobler <andreast-list at fgznet dot ch>, GCC Patches <gcc-patches at gcc dot gnu dot org>, Java Patches <java-patches at gcc dot gnu dot org>, Eric Christopher <echristo at apple dot com>, Michael Matz <matz at suse dot de>
- Date: Thu, 3 Jan 2008 11:02:08 +0100 (CET)
- Subject: Re: [patch] libffi darwin x86-32bit, fix return_sc testcase.
- References: <477C054B.7060107@fgznet.ch> <18300.44919.694252.333004@zebedee.pink>
On Thu, 3 Jan 2008, Andrew Haley wrote:
> Andreas Tobler writes:
> > Hello all,
> >
> > first, a happy new year to all!
> >
> > The attached patch brings libffi for darwin x86 (32-bit) back to zero
> > failures, at least what is covered by the test suite ;)
> >
> > I implemented the fix according to Andrew's fix back in July 07 for
> > linux x86. Except that I had to treat small structs in special way.
>
> I will again point out that this is merely a workaround for a gcc code
> generation bug. Rather than fix the symptom, a libffi test failure,
> we should fix the real problem: we are not generating ABI-compatible
> code on x86.
>
> This bug was introduced by
>
> Author: rguenth
> Date: Mon Jul 9 09:53:11 2007
> New Revision: 126480
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32843
We obviously disagree about what the ABI specifies. r126480 made the
C/C++ frontend behavior the same as other frontends behavior (for
example Fortran behavior, which I explicitly checked). As GCC supports
both promoting function return values or not in the backends and the
x86 backend explicitly does _not_ enable this promotion it agrees
with my reading of the ABI.
Richard.