[BACK]Return to gc-7.4.2-risa.diff CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir-gc

File: [local] / OpenXM_contrib2 / asir-gc / gc-7.4.2-risa.diff (download)

Revision 1.2, Thu Jan 9 12:56:05 2020 UTC (4 years, 3 months ago) by ohara
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +136 -139 lines

asir-gc depends on Boehm gc 7.6.12.

diff -ubBr gc-7.6.12.orig/Makefile.am gc-7.6.12/Makefile.am
--- gc-7.6.12.orig/Makefile.am	2019-03-02 05:53:14.000000000 +0900
+++ gc-7.6.12/Makefile.am	2020-01-09 21:27:12.462046000 +0900
@@ -54,21 +54,21 @@
 # C Library
 # ---------
 
-lib_LTLIBRARIES += libgc.la
+lib_LTLIBRARIES += libasir-gc.la
 
 if SINGLE_GC_OBJ
 
-libgc_la_SOURCES = extra/gc.c
+libasir-gc_la_SOURCES = extra/gc.c
 
 if PTHREAD_START_STANDALONE
 AM_CPPFLAGS += -DGC_PTHREAD_START_STANDALONE
-libgc_la_SOURCES += pthread_start.c
+libasir-gc_la_SOURCES += pthread_start.c
 endif
 
 else
 
 EXTRA_DIST += extra/gc.c
-libgc_la_SOURCES = \
+libasir-gc_la_SOURCES = \
     allchblk.c alloc.c blacklst.c checksums.c dbg_mlc.c \
     dyn_load.c finalize.c gc_dlopen.c gcj_mlc.c headers.c \
     mach_dep.c malloc.c mallocx.c mark.c mark_rts.c misc.c new_hblk.c \
@@ -79,46 +79,46 @@
 # ---------------------------------
 
 if WIN32_THREADS
-libgc_la_SOURCES += thread_local_alloc.c win32_threads.c
+libasir-gc_la_SOURCES += thread_local_alloc.c win32_threads.c
 else
 if PTHREADS
 # Not Cygwin or MinGW.
-libgc_la_SOURCES += pthread_start.c pthread_support.c thread_local_alloc.c
+libasir-gc_la_SOURCES += pthread_start.c pthread_support.c thread_local_alloc.c
 if DARWIN_THREADS
-libgc_la_SOURCES += darwin_stop_world.c
+libasir-gc_la_SOURCES += darwin_stop_world.c
 else
-libgc_la_SOURCES += pthread_stop_world.c
+libasir-gc_la_SOURCES += pthread_stop_world.c
 endif
 endif
 endif
 
 if MAKE_BACK_GRAPH
-libgc_la_SOURCES += backgraph.c
+libasir-gc_la_SOURCES += backgraph.c
 endif
 
 if ENABLE_DISCLAIM
-libgc_la_SOURCES += fnlz_mlc.c
+libasir-gc_la_SOURCES += fnlz_mlc.c
 endif
 
 ## End of !SINGLE_GC_OBJ
 endif
 
 if USE_INTERNAL_LIBATOMIC_OPS
-nodist_libgc_la_SOURCES = libatomic_ops/src/atomic_ops.c
+nodist_libasir-gc_la_SOURCES = libatomic_ops/src/atomic_ops.c
 endif
 
 if NEED_ATOMIC_OPS_ASM
-nodist_libgc_la_SOURCES = libatomic_ops/src/atomic_ops_sysdeps.S
+nodist_libasir-gc_la_SOURCES = libatomic_ops/src/atomic_ops_sysdeps.S
 endif
 
 # Include THREADDLLIBS here to ensure that the correct versions of
 # linuxthread semaphore functions get linked:
-libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(ATOMIC_OPS_LIBS)
-libgc_la_DEPENDENCIES = @addobjs@
-libgc_la_LDFLAGS = $(extra_ldflags_libgc) -version-info $(LIBGC_VER_INFO) \
+libasir-gc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(ATOMIC_OPS_LIBS)
+libasir-gc_la_DEPENDENCIES = @addobjs@
+libasir-gc_la_LDFLAGS = $(extra_ldflags_libgc) -version-info $(LIBGC_VER_INFO) \
     -no-undefined
 
-EXTRA_libgc_la_SOURCES = ia64_save_regs_in_stack.s sparc_mach_dep.S \
+EXTRA_libasir-gc_la_SOURCES = ia64_save_regs_in_stack.s sparc_mach_dep.S \
     sparc_netbsd_mach_dep.s sparc_sunos4_mach_dep.s
 
 if CPLUSPLUS
@@ -128,7 +128,7 @@
 pkginclude_HEADERS += include/gc_cpp.h
 include_HEADERS += include/extra/gc_cpp.h
 libgccpp_la_SOURCES = gc_cpp.cc
-libgccpp_la_LIBADD = ./libgc.la
+libgccpp_la_LIBADD = ./libasir-gc.la
 libgccpp_la_LDFLAGS = -version-info $(LIBGCCPP_VER_INFO) -no-undefined
 endif
 
@@ -149,7 +149,7 @@
 
 ## FIXME: relies on internal code generated by automake.
 ## FIXME: ./configure --enable-dependency-tracking should be used
-#all_objs = @addobjs@ $(libgc_la_OBJECTS)
+#all_objs = @addobjs@ $(libasir-gc_la_OBJECTS)
 #$(all_objs) : include/private/gcconfig.h include/private/gc_priv.h \
 #include/private/gc_hdrs.h include/gc.h include/gc_gcj.h \
 #include/gc_pthread_redirects.h include/gc_config_macros.h \
diff -ubBr gc-7.6.12.orig/Makefile.in gc-7.6.12/Makefile.in
--- gc-7.6.12.orig/Makefile.in	2019-03-02 05:55:05.000000000 +0900
+++ gc-7.6.12/Makefile.in	2020-01-09 21:27:06.542517000 +0900
@@ -219,7 +219,7 @@
 	"$(DESTDIR)$(docdir)" "$(DESTDIR)$(pkgconfigdir)" \
 	"$(DESTDIR)$(includedir)" "$(DESTDIR)$(pkgincludedir)"
 LTLIBRARIES = $(lib_LTLIBRARIES)
-libcord_la_DEPENDENCIES = $(top_builddir)/libgc.la
+libcord_la_DEPENDENCIES = $(top_builddir)/libasir-gc.la
 am__dirstamp = $(am__leading_dot)dirstamp
 am_libcord_la_OBJECTS = cord/libcord_la-cordbscs.lo \
 	cord/libcord_la-cordprnt.lo cord/libcord_la-cordxtra.lo
@@ -232,7 +232,7 @@
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
 	$(libcord_la_LDFLAGS) $(LDFLAGS) -o $@
 am__DEPENDENCIES_1 =
-am__libgc_la_SOURCES_DIST = allchblk.c alloc.c blacklst.c checksums.c \
+am__libasir-gc_la_SOURCES_DIST = allchblk.c alloc.c blacklst.c checksums.c \
 	dbg_mlc.c dyn_load.c finalize.c gc_dlopen.c gcj_mlc.c \
 	headers.c mach_dep.c malloc.c mallocx.c mark.c mark_rts.c \
 	misc.c new_hblk.c obj_map.c os_dep.c pcr_interface.c \
@@ -252,7 +252,7 @@
 @ENABLE_DISCLAIM_TRUE@@SINGLE_GC_OBJ_FALSE@am__objects_6 =  \
 @ENABLE_DISCLAIM_TRUE@@SINGLE_GC_OBJ_FALSE@	fnlz_mlc.lo
 @PTHREAD_START_STANDALONE_TRUE@@SINGLE_GC_OBJ_TRUE@am__objects_7 = pthread_start.lo
-@SINGLE_GC_OBJ_FALSE@am_libgc_la_OBJECTS = allchblk.lo alloc.lo \
+@SINGLE_GC_OBJ_FALSE@am_libasir-gc_la_OBJECTS = allchblk.lo alloc.lo \
 @SINGLE_GC_OBJ_FALSE@	blacklst.lo checksums.lo dbg_mlc.lo \
 @SINGLE_GC_OBJ_FALSE@	dyn_load.lo finalize.lo gc_dlopen.lo \
 @SINGLE_GC_OBJ_FALSE@	gcj_mlc.lo headers.lo mach_dep.lo \
@@ -264,17 +264,17 @@
 @SINGLE_GC_OBJ_FALSE@	$(am__objects_2) $(am__objects_3) \
 @SINGLE_GC_OBJ_FALSE@	$(am__objects_4) $(am__objects_5) \
 @SINGLE_GC_OBJ_FALSE@	$(am__objects_6)
-@SINGLE_GC_OBJ_TRUE@am_libgc_la_OBJECTS = extra/gc.lo $(am__objects_7) \
+@SINGLE_GC_OBJ_TRUE@am_libasir-gc_la_OBJECTS = extra/gc.lo $(am__objects_7) \
 @SINGLE_GC_OBJ_TRUE@	$(am__objects_1) $(am__objects_2) \
 @SINGLE_GC_OBJ_TRUE@	$(am__objects_3) $(am__objects_4) \
 @SINGLE_GC_OBJ_TRUE@	$(am__objects_5) $(am__objects_6)
-@NEED_ATOMIC_OPS_ASM_FALSE@@USE_INTERNAL_LIBATOMIC_OPS_TRUE@nodist_libgc_la_OBJECTS = libatomic_ops/src/atomic_ops.lo
-@NEED_ATOMIC_OPS_ASM_TRUE@nodist_libgc_la_OBJECTS = libatomic_ops/src/atomic_ops_sysdeps.lo
-libgc_la_OBJECTS = $(am_libgc_la_OBJECTS) $(nodist_libgc_la_OBJECTS)
-libgc_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+@NEED_ATOMIC_OPS_ASM_FALSE@@USE_INTERNAL_LIBATOMIC_OPS_TRUE@nodist_libasir-gc_la_OBJECTS = libatomic_ops/src/atomic_ops.lo
+@NEED_ATOMIC_OPS_ASM_TRUE@nodist_libasir-gc_la_OBJECTS = libatomic_ops/src/atomic_ops_sysdeps.lo
+libasir-gc_la_OBJECTS = $(am_libasir-gc_la_OBJECTS) $(nodist_libasir-gc_la_OBJECTS)
+libasir-gc_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-	$(libgc_la_LDFLAGS) $(LDFLAGS) -o $@
-@CPLUSPLUS_TRUE@libgccpp_la_DEPENDENCIES = ./libgc.la
+	$(libasir-gc_la_LDFLAGS) $(LDFLAGS) -o $@
+@CPLUSPLUS_TRUE@libgccpp_la_DEPENDENCIES = ./libasir-gc.la
 am__libgccpp_la_SOURCES_DIST = gc_cpp.cc
 @CPLUSPLUS_TRUE@am_libgccpp_la_OBJECTS = gc_cpp.lo
 libgccpp_la_OBJECTS = $(am_libgccpp_la_OBJECTS)
@@ -282,8 +282,8 @@
 	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
 	$(CXXFLAGS) $(libgccpp_la_LDFLAGS) $(LDFLAGS) -o $@
 @CPLUSPLUS_TRUE@am_libgccpp_la_rpath = -rpath $(libdir)
-am__DEPENDENCIES_2 = $(nodist_libgc_la_OBJECTS) \
-	$(top_builddir)/libgc.la $(am__DEPENDENCIES_1)
+am__DEPENDENCIES_2 = $(nodist_libasir-gc_la_OBJECTS) \
+	$(top_builddir)/libasir-gc.la $(am__DEPENDENCIES_1)
 libstaticrootslib2_test_la_DEPENDENCIES = $(am__DEPENDENCIES_2)
 am_libstaticrootslib2_test_la_OBJECTS =  \
 	tests/libstaticrootslib2_test_la-staticrootslib.lo
@@ -310,7 +310,7 @@
 @ENABLE_DISCLAIM_TRUE@	disclaim_bench$(EXEEXT)
 am_cordtest_OBJECTS = cord/tests/cordtest.$(OBJEXT)
 cordtest_OBJECTS = $(am_cordtest_OBJECTS)
-cordtest_DEPENDENCIES = $(top_builddir)/libgc.la \
+cordtest_DEPENDENCIES = $(top_builddir)/libasir-gc.la \
 	$(top_builddir)/libcord.la
 am__disclaim_bench_SOURCES_DIST = tests/disclaim_bench.c
 @ENABLE_DISCLAIM_TRUE@am_disclaim_bench_OBJECTS =  \
@@ -465,8 +465,8 @@
 am__v_CCAS_ = $(am__v_CCAS_@AM_DEFAULT_V@)
 am__v_CCAS_0 = @echo "  CCAS    " $@;
 am__v_CCAS_1 = 
-SOURCES = $(libcord_la_SOURCES) $(libgc_la_SOURCES) \
-	$(EXTRA_libgc_la_SOURCES) $(nodist_libgc_la_SOURCES) \
+SOURCES = $(libcord_la_SOURCES) $(libasir-gc_la_SOURCES) \
+	$(EXTRA_libasir-gc_la_SOURCES) $(nodist_libasir-gc_la_SOURCES) \
 	$(libgccpp_la_SOURCES) $(libstaticrootslib2_test_la_SOURCES) \
 	$(libstaticrootslib_test_la_SOURCES) $(cordtest_SOURCES) \
 	$(disclaim_bench_SOURCES) $(disclaim_test_SOURCES) \
@@ -477,8 +477,8 @@
 	$(subthreadcreate_test_SOURCES) $(test_cpp_SOURCES) \
 	$(threadkey_test_SOURCES) $(threadleaktest_SOURCES) \
 	$(tracetest_SOURCES)
-DIST_SOURCES = $(libcord_la_SOURCES) $(am__libgc_la_SOURCES_DIST) \
-	$(EXTRA_libgc_la_SOURCES) $(am__libgccpp_la_SOURCES_DIST) \
+DIST_SOURCES = $(libcord_la_SOURCES) $(am__libasir-gc_la_SOURCES_DIST) \
+	$(EXTRA_libasir-gc_la_SOURCES) $(am__libgccpp_la_SOURCES_DIST) \
 	$(libstaticrootslib2_test_la_SOURCES) \
 	$(libstaticrootslib_test_la_SOURCES) $(cordtest_SOURCES) \
 	$(am__disclaim_bench_SOURCES_DIST) \
@@ -985,7 +985,7 @@
 
 # C Library
 # ---------
-lib_LTLIBRARIES = libgc.la $(am__append_10) libcord.la
+lib_LTLIBRARIES = libasir-gc.la $(am__append_10) libcord.la
 
 # unprefixed header
 include_HEADERS = $(am__append_12) include/extra/gc.h
@@ -1021,7 +1021,7 @@
 	$(am__append_20)
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = bdw-gc.pc
-@SINGLE_GC_OBJ_FALSE@libgc_la_SOURCES = allchblk.c alloc.c blacklst.c \
+@SINGLE_GC_OBJ_FALSE@libasir-gc_la_SOURCES = allchblk.c alloc.c blacklst.c \
 @SINGLE_GC_OBJ_FALSE@	checksums.c dbg_mlc.c dyn_load.c \
 @SINGLE_GC_OBJ_FALSE@	finalize.c gc_dlopen.c gcj_mlc.c \
 @SINGLE_GC_OBJ_FALSE@	headers.c mach_dep.c malloc.c mallocx.c \
@@ -1032,25 +1032,25 @@
 @SINGLE_GC_OBJ_FALSE@	$(am__append_4) $(am__append_5) \
 @SINGLE_GC_OBJ_FALSE@	$(am__append_6) $(am__append_7) \
 @SINGLE_GC_OBJ_FALSE@	$(am__append_8) $(am__append_9)
-@SINGLE_GC_OBJ_TRUE@libgc_la_SOURCES = extra/gc.c $(am__append_2) \
+@SINGLE_GC_OBJ_TRUE@libasir-gc_la_SOURCES = extra/gc.c $(am__append_2) \
 @SINGLE_GC_OBJ_TRUE@	$(am__append_4) $(am__append_5) \
 @SINGLE_GC_OBJ_TRUE@	$(am__append_6) $(am__append_7) \
 @SINGLE_GC_OBJ_TRUE@	$(am__append_8) $(am__append_9)
-@NEED_ATOMIC_OPS_ASM_TRUE@nodist_libgc_la_SOURCES = libatomic_ops/src/atomic_ops_sysdeps.S
-@USE_INTERNAL_LIBATOMIC_OPS_TRUE@nodist_libgc_la_SOURCES = libatomic_ops/src/atomic_ops.c
+@NEED_ATOMIC_OPS_ASM_TRUE@nodist_libasir-gc_la_SOURCES = libatomic_ops/src/atomic_ops_sysdeps.S
+@USE_INTERNAL_LIBATOMIC_OPS_TRUE@nodist_libasir-gc_la_SOURCES = libatomic_ops/src/atomic_ops.c
 
 # Include THREADDLLIBS here to ensure that the correct versions of
 # linuxthread semaphore functions get linked:
-libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(ATOMIC_OPS_LIBS)
-libgc_la_DEPENDENCIES = @addobjs@
-libgc_la_LDFLAGS = $(extra_ldflags_libgc) -version-info $(LIBGC_VER_INFO) \
+libasir-gc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(ATOMIC_OPS_LIBS)
+libasir-gc_la_DEPENDENCIES = @addobjs@
+libasir-gc_la_LDFLAGS = $(extra_ldflags_libgc) -version-info $(LIBGC_VER_INFO) \
     -no-undefined
 
-EXTRA_libgc_la_SOURCES = ia64_save_regs_in_stack.s sparc_mach_dep.S \
+EXTRA_libasir-gc_la_SOURCES = ia64_save_regs_in_stack.s sparc_mach_dep.S \
     sparc_netbsd_mach_dep.s sparc_sunos4_mach_dep.s
 
 @CPLUSPLUS_TRUE@libgccpp_la_SOURCES = gc_cpp.cc
-@CPLUSPLUS_TRUE@libgccpp_la_LIBADD = ./libgc.la
+@CPLUSPLUS_TRUE@libgccpp_la_LIBADD = ./libasir-gc.la
 @CPLUSPLUS_TRUE@libgccpp_la_LDFLAGS = -version-info $(LIBGCCPP_VER_INFO) -no-undefined
 
 # Misc
@@ -1058,7 +1058,7 @@
 AM_CXXFLAGS = @GC_CFLAGS@
 @ASM_WITH_CPP_UNSUPPORTED_FALSE@ASM_CPP_OPTIONS = -Wp,-P -x assembler-with-cpp
 
-#all_objs = @addobjs@ $(libgc_la_OBJECTS)
+#all_objs = @addobjs@ $(libasir-gc_la_OBJECTS)
 #$(all_objs) : include/private/gcconfig.h include/private/gc_priv.h \
 #include/private/gc_hdrs.h include/gc.h include/gc_gcj.h \
 #include/gc_pthread_redirects.h include/gc_config_macros.h \
@@ -1071,7 +1071,7 @@
 # These numbers should be updated at most once just before the release,
 # and, optionally, at most once during the development (after the release).
 LIBCORD_VER_INFO = 4:2:3
-libcord_la_LIBADD = $(top_builddir)/libgc.la
+libcord_la_LIBADD = $(top_builddir)/libasir-gc.la
 libcord_la_LDFLAGS = -version-info $(LIBCORD_VER_INFO) -no-undefined
 libcord_la_CPPFLAGS = $(AM_CPPFLAGS)
 libcord_la_SOURCES = \
@@ -1080,15 +1080,15 @@
         cord/cordxtra.c
 
 cordtest_SOURCES = cord/tests/cordtest.c
-cordtest_LDADD = $(top_builddir)/libgc.la $(top_builddir)/libcord.la
+cordtest_LDADD = $(top_builddir)/libasir-gc.la $(top_builddir)/libcord.la
 
 # Common libs to _LDADD for all tests.
-test_ldadd = $(nodist_libgc_la_OBJECTS) $(top_builddir)/libgc.la \
+test_ldadd = $(nodist_libasir-gc_la_OBJECTS) $(top_builddir)/libasir-gc.la \
             $(EXTRA_TEST_LIBS)
 
 gctest_SOURCES = tests/test.c
 gctest_LDADD = $(test_ldadd) $(am__append_13)
-gctest_DEPENDENCIES = $(top_builddir)/libgc.la
+gctest_DEPENDENCIES = $(top_builddir)/libasir-gc.la
 leaktest_SOURCES = tests/leak_test.c
 leaktest_LDADD = $(test_ldadd)
 middletest_SOURCES = tests/middle.c
@@ -1109,7 +1109,7 @@
 libstaticrootslib_test_la_LDFLAGS = -version-info 1:3:0 -no-undefined \
                                     -rpath /nowhere
 
-libstaticrootslib_test_la_DEPENDENCIES = $(top_builddir)/libgc.la
+libstaticrootslib_test_la_DEPENDENCIES = $(top_builddir)/libasir-gc.la
 libstaticrootslib2_test_la_SOURCES = tests/staticrootslib.c
 libstaticrootslib2_test_la_LIBADD = $(test_ldadd)
 libstaticrootslib2_test_la_CFLAGS = -DSTATICROOTSLIB2
@@ -1307,8 +1307,8 @@
 libatomic_ops/src/atomic_ops.lo: libatomic_ops/src/$(am__dirstamp) \
 	libatomic_ops/src/$(DEPDIR)/$(am__dirstamp)
 
-libgc.la: $(libgc_la_OBJECTS) $(libgc_la_DEPENDENCIES) $(EXTRA_libgc_la_DEPENDENCIES) 
-	$(AM_V_CCLD)$(libgc_la_LINK) -rpath $(libdir) $(libgc_la_OBJECTS) $(libgc_la_LIBADD) $(LIBS)
+libasir-gc.la: $(libasir-gc_la_OBJECTS) $(libasir-gc_la_DEPENDENCIES) $(EXTRA_libasir-gc_la_DEPENDENCIES) 
+	$(AM_V_CCLD)$(libasir-gc_la_LINK) -rpath $(libdir) $(libasir-gc_la_OBJECTS) $(libasir-gc_la_LIBADD) $(LIBS)
 
 libgccpp.la: $(libgccpp_la_OBJECTS) $(libgccpp_la_DEPENDENCIES) $(EXTRA_libgccpp_la_DEPENDENCIES) 
 	$(AM_V_CXXLD)$(libgccpp_la_LINK) $(am_libgccpp_la_rpath) $(libgccpp_la_OBJECTS) $(libgccpp_la_LIBADD) $(LIBS)
diff -ubBr gc-7.6.12.orig/NT_MAKEFILE gc-7.6.12/NT_MAKEFILE
--- gc-7.6.12.orig/NT_MAKEFILE	2019-03-02 05:53:14.000000000 +0900
+++ gc-7.6.12/NT_MAKEFILE	2020-01-09 21:34:36.957823000 +0900
@@ -23,6 +23,7 @@
 !ENDIF
 
 cflags = $(cflags) -c -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -GS -D_WINNT -W4
+cflags = $(cflags) -nologo -DLARGE_CONFIG
 !IF "$(CPU)" == "i386"
 cflags = $(cflags) -D_X86_=1  -DWIN32 -D_WIN32
 !ELSEIF "$(CPU)" == "AMD64"
diff -ubBr gc-7.6.12.orig/alloc.c gc-7.6.12/alloc.c
--- gc-7.6.12.orig/alloc.c	2019-03-02 05:53:14.000000000 +0900
+++ gc-7.6.12/alloc.c	2020-01-09 21:24:08.355199000 +0900
@@ -126,6 +126,7 @@
 #else
   word GC_free_space_divisor = 3;
 #endif
+word GC_free_space_numerator = 1;
 
 GC_INNER int GC_CALLBACK GC_never_stop_func(void)
 {
@@ -236,8 +237,8 @@
     total_root_size = 2 * stack_size + GC_root_size;
     scan_size = 2 * GC_composite_in_use + GC_atomic_in_use / 4
                 + total_root_size;
-    result = scan_size / GC_free_space_divisor;
-    if (GC_incremental) {
+    result = scan_size * GC_free_space_numerator / GC_free_space_divisor;
+    if (1 || GC_incremental) {
       result /= 2;
     }
     return result > 0 ? result : 1;
@@ -1300,6 +1301,9 @@
     if (GC_on_heap_resize)
       (*GC_on_heap_resize)(GC_heapsize);
 
+#if defined(VISUAL)
+    SendHeapSize();
+#endif
     return(TRUE);
 }
 
@@ -1364,6 +1368,7 @@
     }
 
     blocks_to_get = (GC_heapsize - GC_heapsize_at_forced_unmap)
+                        * GC_free_space_numerator
                         / (HBLKSIZE * GC_free_space_divisor)
                     + needed_blocks;
     if (blocks_to_get > MAXHINCR) {
diff -ubBr gc-7.6.12.orig/configure gc-7.6.12/configure
--- gc-7.6.12.orig/configure	2019-03-02 05:55:04.000000000 +0900
+++ gc-7.6.12/configure	2020-01-09 21:18:23.826366000 +0900
@@ -16995,7 +16995,7 @@
 
 
 
-target_all=libgc.la
+target_all=libasir-gc.la
 
 
 TARGET_ECOS="no"
diff -ubBr gc-7.6.12.orig/configure.ac gc-7.6.12/configure.ac
--- gc-7.6.12.orig/configure.ac	2019-03-02 05:53:14.000000000 +0900
+++ gc-7.6.12/configure.ac	2020-01-09 21:18:23.826825000 +0900
@@ -537,7 +537,7 @@
 
 AC_SUBST(EXTRA_TEST_LIBS)
 
-target_all=libgc.la
+target_all=libasir-gc.la
 AC_SUBST(target_all)
 
 dnl If the target is an eCos system, use the appropriate eCos
diff -ubBr gc-7.6.12.orig/cord/cord.am gc-7.6.12/cord/cord.am
--- gc-7.6.12.orig/cord/cord.am	2019-03-02 05:53:14.000000000 +0900
+++ gc-7.6.12/cord/cord.am	2020-01-09 21:40:55.885610000 +0900
@@ -7,7 +7,7 @@
 
 lib_LTLIBRARIES += libcord.la
 
-libcord_la_LIBADD = $(top_builddir)/libgc.la
+libcord_la_LIBADD = $(top_builddir)/libasir-gc.la
 libcord_la_LDFLAGS = -version-info $(LIBCORD_VER_INFO) -no-undefined
 libcord_la_CPPFLAGS = $(AM_CPPFLAGS)
 
@@ -19,7 +19,7 @@
 TESTS += cordtest$(EXEEXT)
 check_PROGRAMS += cordtest
 cordtest_SOURCES = cord/tests/cordtest.c
-cordtest_LDADD = $(top_builddir)/libgc.la $(top_builddir)/libcord.la
+cordtest_LDADD = $(top_builddir)/libasir-gc.la $(top_builddir)/libcord.la
 
 EXTRA_DIST += \
         cord/tests/de.c \
diff -ubBr gc-7.6.12.orig/include/private/gcconfig.h gc-7.6.12/include/private/gcconfig.h
--- gc-7.6.12.orig/include/private/gcconfig.h	2019-03-02 05:53:14.000000000 +0900
+++ gc-7.6.12/include/private/gcconfig.h	2020-01-09 21:43:57.934071000 +0900
@@ -2974,6 +2974,7 @@
                              || defined(ARM32) \
                              || defined(AVR32) || defined(MIPS) \
                              || defined(NIOS2) || defined(OR1K))) \
+     || (defined(FREEBSD) && defined(__FreeBSD__) && __FreeBSD__ < 5) \
      || (defined(LINUX) && !defined(__gnu_linux__)) \
      || (defined(RTEMS) && defined(I386)) || defined(PLATFORM_ANDROID)) \
     && !defined(NO_GETCONTEXT)