This is the mail archive of the
libffi-discuss@sourceware.org
mailing list for the libffi project.
Re: [PATCH] don't count return value space twice on x86
- From: Timothy Wall <twall at users dot sf dot net>
- To: Dan Witte <dwitte at mozilla dot com>
- Cc: libffi-discuss <libffi-discuss at sourceware dot org>, Anthony Green <green at redhat dot com>
- Date: Wed, 04 Aug 2010 21:42:40 -0400
- Subject: Re: [PATCH] don't count return value space twice on x86
- References: <2028543733.185560.1280967209614.JavaMail.root@cm-mail03.mozilla.org>
I take it this is only under *some* circumstances, since I've used a number of different stdcall closures without issue.
On Aug 4, 2010, at 8:13 PM, Dan Witte wrote:
> Anthony,
>
> There's a bug in stdcall x86 WIN32 closure code where stack space for the return value is counted twice -- which leads to overpopping and a spectacular crash. This adds an X86_ANY define for all x86 plats, which simplifies logic and means that stack computation is done consistently in the x86 prep_cif_machdep, rather than double-counted by prep_cif.
>
> Look OK?
>
> Cheers,
> Dan.
> <libffi-patch-X86_ANY.diff>