Building GHC 5.02 on Solaris x86

Ian Lynagh igloo at earth.li
Tue Oct 23 08:15:59 EDT 2001


I am trying to build GHC 5.02 on an x86 Solaris machine (with the x86 HC
stuff) and I am getting this error:


gcc -x c MArray.hc -o MArray.raw_s -S -O  -fno-defer-pop -fomit-frame-pointer   -DDONT_WANT_WIN32_DLL_SUPPORT -D__GLASGOW_HASKELL__=502  -O   -I/tmp/foo/ghc-5.02/ghc/includes -I/tmp/foo/ghc-5.02/ghc/lib/std/cbits -I/tmp/foo/ghc-5.02/hslibs/lang/cbits -I/tmp/foo/ghc-5.02/hslibs/posix/cbits -I/tmp/foo/ghc-5.02/hslibs/util/cbits -I/tmp/foo/ghc-5.02/hslibs/text/cbits -I/tmp/foo/ghc-5.02/hslibs/hssource/cbits  -I../../ghc/lib/std/cbits -I../../ghc/includes -Icbits    -I.  `echo  | sed 's/^$/-DSTOLEN_X86_REGS=4/'`
MArray.hc: In function `sbMI_ret':
MArray.hc:5292: fixed or forbidden register 3 (bx) was spilled for class GENERAL_REGS.
MArray.hc:5292: This may be due to a compiler bug or to impossible asm
MArray.hc:5292: statements or clauses.
MArray.hc:5292: This is the instruction:
(insn 28 26 31 (set (mem/s:DI (plus:SI (plus:SI (mult:SI (reg:SI 25)
                        (const_int 8 [0x8]))
                    (reg:SI 26))
                (const_int 8 [0x8])) 0)
        (reg/v:DI 24)) 79 {movdi+1} (insn_list 16 (insn_list 24 (insn_list 26 (nil))))
    (expr_list:REG_DEAD (reg/v:DI 24)
        (expr_list:REG_DEAD (reg:SI 25)
            (expr_list:REG_DEAD (reg:SI 26)
                (nil)))))
make[1]: *** [MArray.raw_s] Error 1
make: *** [all] Error 1
make: Leaving directory `/tmp/foo/ghc-5.02/hslibs'



I have also fount it neccesary to add
/tmp/foo/ghc-5.02/ghc/driver/mangler to the path for ghc-asm - should
this be needed?


Thanks
Ian





More information about the Glasgow-haskell-bugs mailing list