This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: [PATCH] Fix Cygwin bootstrap, PR40807 and all significant FAILs on win32.
- From: Timothy Wall <twalljava at dev dot java dot net>
- To: Dave Korn <dave dot korn dot cygwin at googlemail dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, libffi-discuss at sourceware dot org, Java Patches <java-patches at gcc dot gnu dot org>, Rainer Emrich <rainer at emrich-ebersheim dot de>
- Date: Thu, 23 Jul 2009 06:51:37 -0400
- Subject: Re: [PATCH] Fix Cygwin bootstrap, PR40807 and all significant FAILs on win32.
- References: <4A676BBB.3060104@gmail.com>
On Jul 22, 2009, at 3:42 PM, Dave Korn wrote:
Hi all,
While I was looking at the dlmmap/dlmunmap code in closures.c, I
started
looking into testsuite FAILs to see if any of them might be caused
by the code
I had added, and stumbled across a bigger can of worms. The code in
win32.S
doesn't take account of numerous among the FFI_TYPE_xxx return
types, leading
to stack-based garbage being returned, and in one place mishandles
the ABI
convention that the callee should pop the hidden pointer arg for
struct return
types.
I had noticed this too, but had convinced myself that the "unhandled
types" would never actually be used due to the way the prep functions
set things up (by code inspection and the fact that the tests
corresponding to usage of those types were not failing).
BTW, you can reduce the test suite execution time by commenting out
all but one variation of the test runs in libffi.call/call.exp (the
suite is repeated 5 times with different optimization options).
You'll still want to run them all, but a single run will give you an
overall sense of your FAIL status. Running tests under cygwin is
really slow, and glacially slower if there are any failures.