stg_ap_v_ret porting crash: solved?

Donald Bruce Stewart dons at
Fri Sep 12 22:42:51 EDT 2003

> With the wrapper everything was fine here on the host side.
> I then had to do the I_ -> int stg_exit thing as committed to CVS for
> IA64, and also change machine/{pal,fpu}.h to asm/{pal,fpu}.h in
> ghc/rts/Adjuster.c and ghc/rts/Signals.c. (I'd already applied the
> MBLOCK hack from x86-64). The compile then failed with

I got another (loopy) compile on alpha-dec-osf3 that went through
cleanly, with the following fixes:

On the x86-*-openbsd host:

* ------------------------------------------------------------------------
  ==fptools== gmake all - --no-print-directory -r;
   in /home/dons/unreg/ghc-6.0.1/libraries/base/cbits
  gcc -O -Wall -DCOMPILING_STDLIB  -I../../../ghc/includes
  -I../../../ghc/rts -I../include    -c longlong.c -o longlong.o
  In file included from ../../../ghc/includes/Stg.h:189,
                   from ../../../ghc/includes/Rts.h:20,
                   from longlong.c:29:
  ../../../ghc/includes/TailCalls.h:86: invalid register name for `_procedure'

# Fixed by adding to libraries/mk/

On the alpha target:

  -Wall  -W -Wstrict-prototypes  -Wmissing-prototypes
  -Wmissing-declarations -Winline -Waggregate-return
  -Wbad-function-cast -I../includes -I. -Iparallel -DCOMPILING_RTS
  -fomit-frame-pointer    -c BlockAlloc.c -o BlockAlloc.o
  In file included from BlockAlloc.c:24:
  MBlock.h:79: #error HEAP_ALLOCED not defined

# fix: Applied MBlock.h x86_64 fix/hack

* conflicting types for `stg_exit'
# fix: I_ -> int in ghc/rts/RtsUtils.h ghc/includes/PrimOps.h

* Can't locate file for: -lreadline
  collect2: ld returned 1 exit status

# fix: comment out readline in mk/

And then everything went though, to the re-configure part of
hc-build, but the ghc-inplace seems to go into an infinite loop
on invocation. It won't produce output even with invalid command
line flags. It just sits and spins for a few minutes, and then I
have to kill it.

The only interesting thing is that it ignores the first ^C, and
requires a second ^C to die.

I'll try a debug build of some kind. Unless someone has some
better idea.

-- Don

More information about the Glasgow-haskell-users mailing list