Seth LaForge <[EMAIL PROTECTED]> writes:

> The error given comes from gcc:
> 
>    /usr/lib/gcc-lib/i386-redhat-linux/2.7.2.3/cc1 /tmp/cca03661.i
>      -quiet -dumpbase ghc3636.c -O -ansi -version -fomit-frame-pointer
>      -fno-defer-pop -o ghc3636.s
>   GNU C version 2.7.2.3 (i386 Linux/ELF) compiled by GNU C version 2.7.2.3.
>   /tmp/ghc3636.hc:2715: fixed or forbidden register was spilled.
>   This may be due to a compiler bug or to impossible asm
>   statements or clauses.

This is a well-documented problem on x86 machines: gcc sometimes runs
out of registers, because we steal so many of them.  You need to try
the flag -monly-3-registers, and if that doesn't work drop it to 2.

I'm mystified as to why it fails for you and not for us, though: it
*could* be due to the version of gcc you're using (we still have
2.7.2.1).  Is sigaddset defined by a macro in GLIBC?

A full fix for recent version of Linux will have to wait until we've
upgraded our machines here, but if anyone wants to send us patches
that don't break anything else, we'll be happy to incorporate them.

Cheers,
        Simon

-- 
Simon Marlow                                             [EMAIL PROTECTED]
University of Glasgow                       http://www.dcs.gla.ac.uk/~simonm/
finger for PGP public key

Reply via email to