[Gc] [patch] gc for GNU/kFreeBSD (amd64 variant)

Petr Salinger Petr.Salinger at seznam.cz
Sat Jan 6 07:12:37 PST 2007

> I checked an approximation to this into the GC7 CVS tree.

Thanks for it.

> One of the changes no longer had a counterpart

This part is now in somewhere else:

--- include/private/gc_priv.h~  2007-01-06 15:12:59.000000000 +0100
+++ include/private/gc_priv.h   2007-01-06 15:12:59.000000000 +0100
@@ -1967,7 +1967,7 @@
  #   define NEED_FIND_LIMIT
  # endif

-#if defined(FREEBSD) && (defined(I386) || defined(powerpc) \
+#if defined(FREEBSD) && (defined(I386) || defined(X86_64) || defined(powerpc) \
      || defined(__powerpc__))
  #  include <machine/trap.h>
  #  if !defined(PCR)

There are also two other issues with current GC7 CVS.

1) recently added support for hurd broke support for GNU/kFreeBSD
    please just move "*-*-gnu*)" case after "*-*-kfreebsd*-gnu)" in configure.ac

2) very outdated libtool (from year 2001), it does not support GNU/kFreeBSD
    please use latest stable libtool 1.5.22 (https://www.gnu.org/software/libtool/),
    and update libtool.m4 and ltmain.sh

After that please regenerate configure by autoconf.

Please, could you include all three above mentioned changes,
as this makes GC7 functional on GNU/kFreeBSD (amd64 variant),
see bellow.

Many thanks


Result of "./configure  --enable-cplusplus ; make ; make check":

Completed 3 tests
Allocated 5695636 collectable objects
Allocated 306 uncollectable objects
Allocated 3750000 atomic objects
Allocated 34440 stubborn objects
Finalized 6613/6613 objects - finalization is probably ok
Total number of bytes allocated is 244551340
Final heap size is 16834560 bytes
Collector appears to work
Completed 122 collections
PASS: gctest
Leaked composite object at 0x521ef0 (tests/leak_test.c:19, sz=8, NORMAL)

PASS: leaktest
Final heap size is 131072
PASS: middletest
Leaked composite object at 0x523fe0 (tests/thread_leak_test.c:12, sz=4, NORMAL)

Leaked composite object at 0x523f20 (tests/thread_leak_test.c:12, sz=4, NORMAL)

Leaked composite object at 0x523ec0 (tests/thread_leak_test.c:12, sz=4, NORMAL)

Leaked composite object at 0x523ef0 (tests/thread_leak_test.c:12, sz=4, NORMAL)

Leaked composite object at 0x523fe0 (tests/thread_leak_test.c:12, sz=4, NORMAL)

PASS: threadleaktest
usage: test_cpp number-of-iterations
Assuming 10 iters
Starting iteration 1
Starting iteration 2
Starting iteration 3
Starting iteration 4
Starting iteration 5
Starting iteration 6
Starting iteration 7
Starting iteration 8
Starting iteration 9
Starting iteration 10
The test appears to have succeeded.
PASS: test_cpp
All 5 tests passed

More information about the Gc mailing list