ANNOUNCE: GHC 7.2.1 Release Candidate 1

Jens Petersen juhp at
Tue Aug 9 06:59:13 CEST 2011

>>>> > .
>>> | *** unexpected failure for fed001(normal)
>>>>> Note the Fedora build is patched to use system libffi.
>>> Hmm. What happens if you don't patch it?
>> More hmmm: that makes the x86 unexpected errors go to 0!

> This is surprising because I don't think ordinary FFI code should be even
> using libffi on x86 - we have our own implementation in rts/Adjustors.c.  In
> 7.2 there are some changes in this area because we now guarantee to keep the
> C stack pointer aligned on a 16-byte boundary (see
>, and as a result we
> switched to using the Mac OS X implementation in rts/Adjustors.c which was
> already doing the necessary alignment.

I see, thanks for the explanation. :)

> You aren't setting UseLibFFIForAdjustors=YES anywhere, are you? (even if you
> were, I would expect it to still work though, albeit a bit more slowly).

No, I don't think so.  The Fedora ghc build is pretty standard
- it should be very close to the upstream defaults.

>> It would be good to make Linux default to use system libffi anyway.
> I don't like having to do this, but it reduces our testing surface (we don't
> want to have to test against N different versions of libffi).

Ok, but recently libffi is not updated that often.  (Fedora will have
shipped 3.0.9
for 4 releases soon (and the previous 4 releases were with 3.0.5).
I suspect other distros are similar.)

> I'm quite happy for distros to build against their system libffi though, and we should
> make that easier.  Note that if you build against the system libffi you are
> responsible for fully testing the combination (I know you already do that,
> which is great).

A configure option to enable system libffi would be very good.
Should I file an RFE for that?

Thanks, Jens

More information about the Glasgow-haskell-users mailing list