GNU bug report logs - #39118
3.0.0 JIT segfaults on 64-bit Cygwin

Previous Next

Package: guile;

Reported by: John Cowan <cowan <at> ccil.org>

Date: Mon, 13 Jan 2020 17:27:02 UTC

Severity: normal

Done: Andy Wingo <wingo <at> pobox.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Mike Gran <spk121 <at> yahoo.com>
To: Charles Stanhope <charles <at> stanho.pe>
Cc: Andy Wingo <wingo <at> pobox.com>, 39118 <at> debbugs.gnu.org, Ludovic Courtès <ludo <at> gnu.org>, John Cowan <cowan <at> ccil.org>, guile-devel <at> gnu.org
Subject: bug#39118: Segfault while building on 64-bit Cygwin
Date: Sun, 16 Feb 2020 15:23:34 -0800
On Fri, Feb 14, 2020 at 09:46:04AM -0800, Charles Stanhope wrote:
> Andy, I don't know if you'd want to continue this here or on
> lightening's gitlab page, but I looked into this a little bit a few
> minutes here and there this past weeek. The x86 "fast-call" calling
> convention used on Windows x64[0] and shared by Cygwin[1] requires
> that the caller reserve 32 bytes of memory on the stack for the callee
> to spill the register parameters (even if the callee takes fewer than
> four parameters). I think lightening is currently missing that for the
> x64 case for Cygwin.
> 
> To test the idea, I made a small modification (patch attached) that is
> *not* intended as a solution as it doesn't work for the general case,
> but it does allow the tests to pass on Cygwin 64.

I can confirm that Charles's patch, plus another one line patch
to define CPU_SETSIZE, is enough to get Guile 3.0.x to build and run
on my box.  All tests pass except strptime in French, and the absence
of crypt.  This is a 64-bit build.

-Mike Gran




This bug report was last modified 5 years and 89 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.