[Haskell-cafe] Unregisterised builds

Jon Schneider haskell at jschneider.net
Mon Aug 10 13:06:50 UTC 2015


Good day all,

I am still having issues with (the output from) the cross compiler I have
built for PowerPC (e500 family). It seems the runtime is vaguely sane in
that it's purposefully whirring round schedule() but for some reason for a
"Hello World" allocates stack then heap (after ^C) then runs out then
locks up but does not exit. I don't (yet) understand the runtime enough to
find the boundary between behaving and not.

/tmp # ./helloworld +RTS -Ds
created capset 0 of type 2
created capset 1 of type 3
cap 0: initialised
assigned cap 0 to capset 0
assigned cap 0 to capset 1
new task (taskCount: 1)
cap 0: created thread 1
new bound thread (1)
cap 0: schedule()
cap 0: running thread 1 (ThreadRunGHC)
cap 0: thread 1 stopped (yielding)
cap 0: running thread 1 (ThreadRunGHC)
cap 0: thread 1 stopped (yielding)
cap 0: running thread 1 (ThreadRunGHC)
cap 0: thread 1 stopped (yielding)
cap 0: running thread 1 (ThreadRunGHC)
cap 0: thread 1 stopped (stack overflow)
cap 0: allocating new stack chunk of size 32768 bytes
cap 0: running thread 1 (ThreadRunGHC)
cap 0: thread 1 stopped (stack overflow)
cap 0: allocating new stack chunk of size 32768 bytes
...

I have gone through the various +RTS flags but feel I'm going to have to
use gdb some more.

When using unregisterised to what extent does the compiler need to know
about the target platform ?

If I said

./configure --target none-of-your-business --with-gcc=my-whizzy-gcc
--with-other-tools=... --enable-unregisterised

would I be right in saying it this could not be done because it still
needs to know things like the word size, endianness and so on or couldn't
it get this information just from header files ?

What I'm trying to get at is if I did not think there was anything wrong
with my cross-gcc, partially because I have experimented with different
versions and platforms, what other PowerPC-sepcific knowledge is employed
by the unregisterised ghc ?

Jon



More information about the Haskell-Cafe mailing list