[m-dev.] Upgrading Boehm GC, attempt #2

Paul Bone paul at bone.id.au
Sat Nov 15 22:20:02 AEDT 2014


I've made another attempt at upgrading Boehm GC.  This time using the
submodule method.  This way the history of boehm GC doesn't need to be
imported into Mercury (and confuse "git log" and other commands).  The
downside is that once you checkout the repository you have to run
./prepare.sh which will pull in the boehm_gc and libatomic_ops repositories.

Here's the repository and branch where I've set this up if anyone would like
to help me test it.

https://github.com/PaulBone/mercury/tree/upgrade_boehm

I've been able to bootstrap in:
    asm_fast.gc, hlc.gc, asm_fast.gc.par.stseg and hlc.gc.par

I can install the compiler and build programs in asm_fast.gc and hlc.gc

I can build a source distribution, install it and build programs against it
in asm_fast.gc and hlc.gc

That's all I've tested so far, all on Linux with gcc-4.8

If anyone would like to test this on Windows that would be helpful.  In
particular I'm not sure how the symlink from boehm_gc/libatomic_ops to
libatomic_ops will be handled on a windows file system.

The documentation for the procedure that I used can be found here:
https://github.com/PaulBone/mercury/blob/upgrade_boehm/compiler/notes/upgrade_boehm_gc.html

I've tried to update scripts and documentation as necessary, but I'm bound
to have missed something.  At the very least I have not updated README.in or
README.bootstrap

BTW: I have eye surgery on Monday and don't expect to be able to use the
computer for the following week.  So if I don't see your response for a
little while that's why.

Thanks.


-- 
Paul Bone



More information about the developers mailing list