Unregistered build (was Re: AMD64)

Simon Marlow simonmar at microsoft.com
Fri Jun 18 05:01:57 EDT 2004

On 17 June 2004 17:30, Peter Robinson wrote:

> On Thursday 17 June 2004 17:38, Simon Marlow wrote:
>> It looks like registerised compilation on x86_64 isn't quite working
>> yet, then.  If you're up to debugging this, then I suggest you start
>> from a simpler program - try hello world registerised, and then
>> slightly larger programs if that works.>
>> Compile programs with -debug, and run with gdb to find out where the
>> crash is happening.
> I would if I could, but unfortunately I can't even start ghc (the
> strace log I've attached before was created when running ghc without 
> _any_  arguments): # ./ghc
> # Segmentation fault

Yes, I meant building a program using the working ghc.  Things get
confusing with multi-stage bootstraps, so let's clarify:

   A : compiler bootstrapped from .hc files 
       (unregisterised, builds unregisterised binaries)

   B : compiler built using stage1 in a new tree
       (unregisterised, builds registerised binaries)

So it looks like your B compiler is crashing - which means that your A
compiler is producing incorrect code.

> Some other ones can be compiled but cannot be executed (like ghc).
> All crashes are related to memory management:
> #../log:mmap(0x2a96300000, 1048576, PROT_READ|PROT_WRITE|PROT_EXEC,
> MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2a96300000
> #../log:mmap(0x2a96400000, 1048576, PROT_READ|PROT_WRITE|PROT_EXEC,
> MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2a96400000
> #../log:mmap(0x2a96500000, 30739081986048,
> -1 EINVAL (Invalid argument) #../log:write(2, "getMBlock: mmap:
> Invalid argumen"..., 33) = 33 

Furthermore, your A compiler is also crashing.

Very strange...  this one could be a gcc problem, but I really don't
know.  You might try going back to 3.4.0, but back off to 3.3.3 to avoid
the crash that happened before.

Failing that, it's gdb I'm afriad.


More information about the Glasgow-haskell-users mailing list