diff -ubBr gc-7.4.2.orig/Makefile.am gc-7.4.2/Makefile.am
--- gc-7.4.2.orig/Makefile.am 2014-06-03 15:08:01.000000000 +0900
+++ gc-7.4.2/Makefile.am 2020-01-08 13:36:45.002761000 +0900
@@ -48,12 +48,12 @@
# 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
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 \
@@ -64,43 +64,43 @@
# ---------------------------------
if WIN32_THREADS
-libgc_la_SOURCES += win32_threads.c
+libasir-gc_la_SOURCES += win32_threads.c
else
if PTHREADS
-libgc_la_SOURCES += pthread_start.c pthread_support.c
+libasir-gc_la_SOURCES += pthread_start.c pthread_support.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
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 1:3:0 -no-undefined
+libasir-gc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(ATOMIC_OPS_LIBS)
+libasir-gc_la_DEPENDENCIES = @addobjs@
+libasir-gc_la_LDFLAGS = $(extra_ldflags_libgc) -version-info 1:3:0 -no-undefined
-EXTRA_libgc_la_SOURCES = src/ia64_save_regs_in_stack.s src/sparc_mach_dep.S \
+EXTRA_libasir-gc_la_SOURCES = src/ia64_save_regs_in_stack.s src/sparc_mach_dep.S \
src/sparc_netbsd_mach_dep.s src/sparc_sunos4_mach_dep.s
@@ -112,7 +112,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 1:3:0 -no-undefined
endif
@@ -130,7 +130,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.4.2.orig/Makefile.in gc-7.4.2/Makefile.in
--- gc-7.4.2.orig/Makefile.in 2014-06-04 05:09:25.000000000 +0900
+++ gc-7.4.2/Makefile.in 2020-01-08 13:37:03.227679000 +0900
@@ -215,7 +215,7 @@
"$(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
@@ -228,7 +228,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 \
@@ -246,7 +246,7 @@
@MAKE_BACK_GRAPH_TRUE@@SINGLE_GC_OBJ_FALSE@ backgraph.lo
@ENABLE_DISCLAIM_TRUE@@SINGLE_GC_OBJ_FALSE@am__objects_6 = \
@ENABLE_DISCLAIM_TRUE@@SINGLE_GC_OBJ_FALSE@ fnlz_mlc.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 \
@@ -259,17 +259,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_1) \
+@SINGLE_GC_OBJ_TRUE@am_libasir-gc_la_OBJECTS = extra/gc.lo $(am__objects_1) \
@SINGLE_GC_OBJ_TRUE@ $(am__objects_2) $(am__objects_3) \
@SINGLE_GC_OBJ_TRUE@ $(am__objects_4) $(am__objects_5) \
@SINGLE_GC_OBJ_TRUE@ $(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)
@@ -277,7 +277,7 @@
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
$(CXXFLAGS) $(libgccpp_la_LDFLAGS) $(LDFLAGS) -o $@
@CPLUSPLUS_TRUE@am_libgccpp_la_rpath = -rpath $(libdir)
-am__DEPENDENCIES_2 = $(top_builddir)/libgc.la $(am__DEPENDENCIES_1)
+am__DEPENDENCIES_2 = $(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
@@ -304,7 +304,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 = \
@@ -459,8 +459,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) \
@@ -471,8 +471,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) \
@@ -960,7 +960,7 @@
# C Library
# ---------
-lib_LTLIBRARIES = libgc.la $(am__append_8) libcord.la
+lib_LTLIBRARIES = libasir-gc.la $(am__append_8) libcord.la
# unprefixed header
include_HEADERS = $(am__append_10) include/extra/gc.h
@@ -990,7 +990,7 @@
libstaticrootslib2_test.la
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 \
@@ -1002,23 +1002,23 @@
@SINGLE_GC_OBJ_FALSE@ $(am__append_2) $(am__append_3) \
@SINGLE_GC_OBJ_FALSE@ $(am__append_4) $(am__append_5) \
@SINGLE_GC_OBJ_FALSE@ $(am__append_6) $(am__append_7)
-@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_3) $(am__append_4) \
@SINGLE_GC_OBJ_TRUE@ $(am__append_5) $(am__append_6) \
@SINGLE_GC_OBJ_TRUE@ $(am__append_7)
-@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 1:3:0 -no-undefined
-EXTRA_libgc_la_SOURCES = src/ia64_save_regs_in_stack.s src/sparc_mach_dep.S \
+libasir-gc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(ATOMIC_OPS_LIBS)
+libasir-gc_la_DEPENDENCIES = @addobjs@
+libasir-gc_la_LDFLAGS = $(extra_ldflags_libgc) -version-info 1:3:0 -no-undefined
+EXTRA_libasir-gc_la_SOURCES = src/ia64_save_regs_in_stack.s src/sparc_mach_dep.S \
src/sparc_netbsd_mach_dep.s src/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 1:3:0 -no-undefined
# Misc
@@ -1026,7 +1026,7 @@
AM_CXXFLAGS = @GC_CFLAGS@
@COMPILER_XLC_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 \
@@ -1034,7 +1034,7 @@
#include/private/pthread_stop_world.h \
#include/gc_mark.h @addincludes@
@COMPILER_XLC_TRUE@ASM_CPP_OPTIONS =
-libcord_la_LIBADD = $(top_builddir)/libgc.la
+libcord_la_LIBADD = $(top_builddir)/libasir-gc.la
libcord_la_LDFLAGS = -version-info 1:3:0 -no-undefined
libcord_la_CPPFLAGS = $(AM_CPPFLAGS)
libcord_la_SOURCES = \
@@ -1043,13 +1043,13 @@
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 = $(top_builddir)/libgc.la $(EXTRA_TEST_LIBS)
+test_ldadd = $(top_builddir)/libasir-gc.la $(EXTRA_TEST_LIBS)
gctest_SOURCES = tests/test.c
gctest_LDADD = $(test_ldadd) $(am__append_11)
-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
@@ -1070,7 +1070,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
@@ -1285,8 +1285,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.4.2.orig/NT_STATIC_THREADS_MAKEFILE gc-7.4.2/NT_STATIC_THREADS_MAKEFILE
--- gc-7.4.2.orig/NT_STATIC_THREADS_MAKEFILE 2014-06-03 15:08:01.000000000 +0900
+++ gc-7.4.2/NT_STATIC_THREADS_MAKEFILE 2020-01-08 12:56:11.435813000 +0900
@@ -3,7 +3,11 @@
MY_CPU=X86
CPU=$(MY_CPU)
-!include <ntwin32.mak>
+#!include <ntwin32.mak>
+cc=cl
+cdebug=-Ox -DNDEBUG
+cflags=-c -nologo -GS -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -D_X86_=1 -DWIN32 -D_WIN32 -W3 -D_WINNT -DLARGE_CONFIG
+cvarsmt= -D_MT -MT
# Make sure that .cc is not viewed as a suffix. It is for VC++2005, but
# not earlier versions. We can deal with either, but not inconsistency.
diff -ubBr gc-7.4.2.orig/NT_X64_STATIC_THREADS_MAKEFILE gc-7.4.2/NT_X64_STATIC_THREADS_MAKEFILE
--- gc-7.4.2.orig/NT_X64_STATIC_THREADS_MAKEFILE 2014-06-03 15:08:01.000000000 +0900
+++ gc-7.4.2/NT_X64_STATIC_THREADS_MAKEFILE 2020-01-08 12:56:11.435924000 +0900
@@ -3,7 +3,11 @@
MY_CPU=AMD64
CPU=$(MY_CPU)
-!include <ntwin32.mak>
+#!include <ntwin32.mak>
+cc=cl
+cdebug=-Ox -DNDEBUG
+cflags=-c -nologo -GS -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -D_AMD64_=1 -DWIN64 -D_WIN64 -DWIN32 -D_WIN32 -D_WINNT -DLARGE_CONFIG
+cvarsmt= -D_MT -MT
# Make sure that .cc is not viewed as a suffix. It is for VC++2005, but
# not earlier versions. We can deal with either, but not inconsistency.
diff -ubBr gc-7.4.2.orig/alloc.c gc-7.4.2/alloc.c
--- gc-7.4.2.orig/alloc.c 2014-06-03 15:08:01.000000000 +0900
+++ gc-7.4.2/alloc.c 2020-01-08 12:56:11.436247000 +0900
@@ -121,6 +121,7 @@
#endif
word GC_free_space_divisor = GC_FREE_SPACE_DIVISOR;
+word GC_free_space_numerator = 1;
GC_INNER int GC_CALLBACK GC_never_stop_func(void)
{
@@ -227,8 +228,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;
@@ -1215,6 +1216,9 @@
if (GC_on_heap_resize)
(*GC_on_heap_resize)(GC_heapsize);
+#if defined(VISUAL)
+ SendHeapSize();
+#endif
return(TRUE);
}
@@ -1276,7 +1280,7 @@
}
}
- blocks_to_get = GC_heapsize/(HBLKSIZE*GC_free_space_divisor)
+ blocks_to_get = GC_heapsize * GC_free_space_numerator /(HBLKSIZE*GC_free_space_divisor)
+ needed_blocks;
if (blocks_to_get > MAXHINCR) {
word slop;
diff -ubBr gc-7.4.2.orig/configure gc-7.4.2/configure
--- gc-7.4.2.orig/configure 2014-06-04 05:08:54.000000000 +0900
+++ gc-7.4.2/configure 2020-01-08 13:41:29.341306000 +0900
@@ -16339,7 +16339,7 @@
-target_all=libgc.la
+target_all=libasir-gc.la
TARGET_ECOS="no"
diff -ubBr gc-7.4.2.orig/configure.ac gc-7.4.2/configure.ac
--- gc-7.4.2.orig/configure.ac 2014-06-03 15:08:01.000000000 +0900
+++ gc-7.4.2/configure.ac 2020-01-08 13:40:51.882777000 +0900
@@ -471,7 +471,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.4.2.orig/cord/cord.am gc-7.4.2/cord/cord.am
--- gc-7.4.2.orig/cord/cord.am 2014-06-03 15:08:01.000000000 +0900
+++ gc-7.4.2/cord/cord.am 2020-01-08 13:40:40.234365000 +0900
@@ -1,7 +1,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 1:3:0 -no-undefined
libcord_la_CPPFLAGS = $(AM_CPPFLAGS)
@@ -13,7 +13,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.4.2.orig/include/private/gcconfig.h gc-7.4.2/include/private/gcconfig.h
--- gc-7.4.2.orig/include/private/gcconfig.h 2014-06-03 15:08:02.000000000 +0900
+++ gc-7.4.2/include/private/gcconfig.h 2020-01-08 12:56:11.436750000 +0900
@@ -2622,6 +2622,7 @@
#if ((defined(UNIX_LIKE) && (defined(DARWIN) || defined(HURD) \
|| defined(OPENBSD) || defined(ARM32) \
|| defined(MIPS) || defined(AVR32))) \
+ || (defined(FREEBSD) && defined(__FreeBSD__) && __FreeBSD__ < 5) \
|| (defined(LINUX) && (defined(SPARC) || defined(M68K))) \
|| ((defined(RTEMS) || defined(PLATFORM_ANDROID)) && defined(I386))) \
&& !defined(NO_GETCONTEXT)