[kaffe] CVS kaffe (robilad): Removed kaffe's copy of Boehm-Weiser garbage collector.
Kaffe CVS
cvs-commits at kaffe.org
Mon Aug 6 19:06:28 PDT 2007
PatchSet 7512
Date: 2007/08/07 02:05:14
Author: robilad
Branch: HEAD
Tag: (none)
Log:
2007-08-07 Dalibor Topic <robilad at kaffe.org>
Removed kaffe's copy of Boehm-Weiser garbage collector.
Members:
ChangeLog:1.5010->1.5011
kaffe/kaffevm/boehm-gc/boehm/.cvsignore:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/AmigaOS.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/BCC_MAKEFILE:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/ChangeLog:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/EMX_MAKEFILE:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/MacOS.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/MacProjects.sit.hqx:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Makefile.DLLs:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Makefile.am:1.5->1.6(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Makefile.direct:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Makefile.dist:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Makefile.dj:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Makefile.in:1.15->1.16(DEAD)
kaffe/kaffevm/boehm-gc/boehm/NT_MAKEFILE:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/NT_STATIC_THREADS_MAKEFILE:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/NT_THREADS_MAKEFILE:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/OS2_MAKEFILE:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/PCR-Makefile:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/README.QUICK:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/SMakefile.amiga:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/WCC_MAKEFILE:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/acinclude.m4:1.5->1.6(DEAD)
kaffe/kaffevm/boehm-gc/boehm/aclocal.m4:1.13->1.14(DEAD)
kaffe/kaffevm/boehm-gc/boehm/add_gc_prefix.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/allchblk.c:1.5->1.6(DEAD)
kaffe/kaffevm/boehm-gc/boehm/alloc.c:1.5->1.6(DEAD)
kaffe/kaffevm/boehm-gc/boehm/alpha_mach_dep.S:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/backgraph.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/blacklst.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/callprocs:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/checksums.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/config.guess:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/config.sub:1.7->1.8(DEAD)
kaffe/kaffevm/boehm-gc/boehm/configure:1.23->1.24(DEAD)
kaffe/kaffevm/boehm-gc/boehm/configure.host:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/configure.in:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/darwin_stop_world.c:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/dbg_mlc.c:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/depcomp:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/digimars.mak:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/dyn_load.c:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/finalize.c:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/gc.mak:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/gc_cpp.cc:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/gc_cpp.cpp:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/gc_dlopen.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/gcc_support.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/gcj_mlc.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/gcname.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/headers.c:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/hpux_test_and_clear.s:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/ia64_save_regs_in_stack.s:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/if_mach.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/if_not_there.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/install-sh:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/libtool.m4:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/ltmain.sh:1.9->1.10(DEAD)
kaffe/kaffevm/boehm-gc/boehm/mach_dep.c:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/malloc.c:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/mallocx.c:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/mark.c:1.5->1.6(DEAD)
kaffe/kaffevm/boehm-gc/boehm/mark_rts.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/mips_sgi_mach_dep.s:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/mips_ultrix_mach_dep.s:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/misc.c:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/missing:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/mkinstalldirs:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/new_hblk.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/obj_map.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/os_dep.c:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/pc_excludes:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/pcr_interface.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/powerpc_darwin_mach_dep.s:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/pthread_stop_world.c:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/pthread_support.c:1.7->1.8(DEAD)
kaffe/kaffevm/boehm-gc/boehm/ptr_chck.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/real_malloc.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/reclaim.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/rs6000_mach_dep.s:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/setjmp_t.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/solaris_pthreads.c:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/solaris_threads.c:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/sparc_mach_dep.S:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/sparc_netbsd_mach_dep.s:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/sparc_sunos4_mach_dep.s:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/specific.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/stubborn.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/threadlibs.c:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/typd_mlc.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/version.h:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/win32_threads.c:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Mac_files/MacOS_Test_config.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Mac_files/MacOS_config.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Mac_files/dataend.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/Mac_files/datastart.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/cordbscs.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/cordprnt.c:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/cordtest.c:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/cordxtra.c:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/de.c:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/de_cmds.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/de_win.ICO:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/de_win.RC:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/de_win.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/cord/de_win.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/.cvsignore:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/Makefile.am:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/Makefile.in:1.14->1.15(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.DGUX386:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.Mac:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.MacOSX:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.OS2:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.amiga:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.arm.cross:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.autoconf:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.changes:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.contributors:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.cords:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.darwin:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.dj:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.environment:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.ews4800:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.hp:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.linux:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.macros:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.rs6000:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.sgi:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.solaris2:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.uts:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/README.win32:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/barrett_diagram:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/debugging.html:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/gc.man:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/gcdescr.html:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/gcinterface.html:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/leak.html:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/scale.html:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/simple_example.html:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/doc/tree.html:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/.cvsignore:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/Makefile.am:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/Makefile.in:1.14->1.15(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/cord.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/ec.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc.h:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_alloc.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_allocator.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_amiga_redirects.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_backptr.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_config_macros.h:1.5->1.6(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_cpp.h:1.4->1.5(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_gcj.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_inl.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_inline.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_local_alloc.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_mark.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_pthread_redirects.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/gc_typed.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/javaxfc.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/leak_detector.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/new_gc_alloc.h:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/weakpointer.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/cord_pos.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/darwin_semaphore.h:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/darwin_stop_world.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/dbg_mlc.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/gc_hdrs.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/gc_locks.h:1.5->1.6(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/gc_pmark.h:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/gc_priv.h:1.5->1.6(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/gcconfig.h:1.6->1.7(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/pthread_stop_world.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/pthread_support.h:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/solaris_threads.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/include/private/specific.h:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/tests/leak_test.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/tests/middle.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/tests/test.c:1.3->1.4(DEAD)
kaffe/kaffevm/boehm-gc/boehm/tests/test_cpp.cc:1.2->1.3(DEAD)
kaffe/kaffevm/boehm-gc/boehm/tests/thread_leak_test.c:1.1->1.2(DEAD)
kaffe/kaffevm/boehm-gc/boehm/tests/trace_test.c:1.2->1.3(DEAD)
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.5010 kaffe/ChangeLog:1.5011
--- kaffe/ChangeLog:1.5010 Tue Aug 7 01:44:47 2007
+++ kaffe/ChangeLog Tue Aug 7 02:05:14 2007
@@ -1,5 +1,193 @@
2007-08-07 Dalibor Topic <robilad at kaffe.org>
+ Removed kaffe's copy of Boehm-Weiser garbage collector.
+
+ * kaffe/kaffevm/boehm-gc/boehm/.cvsignore,
+ kaffe/kaffevm/boehm-gc/boehm/AmigaOS.c,
+ kaffe/kaffevm/boehm-gc/boehm/BCC_MAKEFILE,
+ kaffe/kaffevm/boehm-gc/boehm/ChangeLog,
+ kaffe/kaffevm/boehm-gc/boehm/EMX_MAKEFILE,
+ kaffe/kaffevm/boehm-gc/boehm/MacOS.c,
+ kaffe/kaffevm/boehm-gc/boehm/MacProjects.sit.hqx,
+ kaffe/kaffevm/boehm-gc/boehm/Makefile.DLLs,
+ kaffe/kaffevm/boehm-gc/boehm/Makefile.am,
+ kaffe/kaffevm/boehm-gc/boehm/Makefile.direct,
+ kaffe/kaffevm/boehm-gc/boehm/Makefile.dist,
+ kaffe/kaffevm/boehm-gc/boehm/Makefile.dj,
+ kaffe/kaffevm/boehm-gc/boehm/Makefile.in,
+ kaffe/kaffevm/boehm-gc/boehm/NT_MAKEFILE,
+ kaffe/kaffevm/boehm-gc/boehm/NT_STATIC_THREADS_MAKEFILE,
+ kaffe/kaffevm/boehm-gc/boehm/NT_THREADS_MAKEFILE,
+ kaffe/kaffevm/boehm-gc/boehm/OS2_MAKEFILE,
+ kaffe/kaffevm/boehm-gc/boehm/PCR-Makefile,
+ kaffe/kaffevm/boehm-gc/boehm/README.QUICK,
+ kaffe/kaffevm/boehm-gc/boehm/SMakefile.amiga,
+ kaffe/kaffevm/boehm-gc/boehm/WCC_MAKEFILE,
+ kaffe/kaffevm/boehm-gc/boehm/acinclude.m4,
+ kaffe/kaffevm/boehm-gc/boehm/aclocal.m4,
+ kaffe/kaffevm/boehm-gc/boehm/add_gc_prefix.c,
+ kaffe/kaffevm/boehm-gc/boehm/allchblk.c,
+ kaffe/kaffevm/boehm-gc/boehm/alloc.c,
+ kaffe/kaffevm/boehm-gc/boehm/alpha_mach_dep.S,
+ kaffe/kaffevm/boehm-gc/boehm/backgraph.c,
+ kaffe/kaffevm/boehm-gc/boehm/blacklst.c,
+ kaffe/kaffevm/boehm-gc/boehm/callprocs,
+ kaffe/kaffevm/boehm-gc/boehm/checksums.c,
+ kaffe/kaffevm/boehm-gc/boehm/config.guess,
+ kaffe/kaffevm/boehm-gc/boehm/config.sub,
+ kaffe/kaffevm/boehm-gc/boehm/configure,
+ kaffe/kaffevm/boehm-gc/boehm/configure.host,
+ kaffe/kaffevm/boehm-gc/boehm/configure.in,
+ kaffe/kaffevm/boehm-gc/boehm/darwin_stop_world.c,
+ kaffe/kaffevm/boehm-gc/boehm/dbg_mlc.c,
+ kaffe/kaffevm/boehm-gc/boehm/depcomp,
+ kaffe/kaffevm/boehm-gc/boehm/digimars.mak,
+ kaffe/kaffevm/boehm-gc/boehm/dyn_load.c,
+ kaffe/kaffevm/boehm-gc/boehm/finalize.c,
+ kaffe/kaffevm/boehm-gc/boehm/gc.mak,
+ kaffe/kaffevm/boehm-gc/boehm/gc_cpp.cc,
+ kaffe/kaffevm/boehm-gc/boehm/gc_cpp.cpp,
+ kaffe/kaffevm/boehm-gc/boehm/gc_dlopen.c,
+ kaffe/kaffevm/boehm-gc/boehm/gcc_support.c,
+ kaffe/kaffevm/boehm-gc/boehm/gcj_mlc.c,
+ kaffe/kaffevm/boehm-gc/boehm/gcname.c,
+ kaffe/kaffevm/boehm-gc/boehm/headers.c,
+ kaffe/kaffevm/boehm-gc/boehm/hpux_test_and_clear.s,
+ kaffe/kaffevm/boehm-gc/boehm/ia64_save_regs_in_stack.s,
+ kaffe/kaffevm/boehm-gc/boehm/if_mach.c,
+ kaffe/kaffevm/boehm-gc/boehm/if_not_there.c,
+ kaffe/kaffevm/boehm-gc/boehm/install-sh,
+ kaffe/kaffevm/boehm-gc/boehm/libtool.m4,
+ kaffe/kaffevm/boehm-gc/boehm/ltmain.sh,
+ kaffe/kaffevm/boehm-gc/boehm/mach_dep.c,
+ kaffe/kaffevm/boehm-gc/boehm/malloc.c,
+ kaffe/kaffevm/boehm-gc/boehm/mallocx.c,
+ kaffe/kaffevm/boehm-gc/boehm/mark.c,
+ kaffe/kaffevm/boehm-gc/boehm/mark_rts.c,
+ kaffe/kaffevm/boehm-gc/boehm/mips_sgi_mach_dep.s,
+ kaffe/kaffevm/boehm-gc/boehm/mips_ultrix_mach_dep.s,
+ kaffe/kaffevm/boehm-gc/boehm/misc.c,
+ kaffe/kaffevm/boehm-gc/boehm/missing,
+ kaffe/kaffevm/boehm-gc/boehm/mkinstalldirs,
+ kaffe/kaffevm/boehm-gc/boehm/new_hblk.c,
+ kaffe/kaffevm/boehm-gc/boehm/obj_map.c,
+ kaffe/kaffevm/boehm-gc/boehm/os_dep.c,
+ kaffe/kaffevm/boehm-gc/boehm/pc_excludes,
+ kaffe/kaffevm/boehm-gc/boehm/pcr_interface.c,
+ kaffe/kaffevm/boehm-gc/boehm/powerpc_darwin_mach_dep.s,
+ kaffe/kaffevm/boehm-gc/boehm/pthread_stop_world.c,
+ kaffe/kaffevm/boehm-gc/boehm/pthread_support.c,
+ kaffe/kaffevm/boehm-gc/boehm/ptr_chck.c,
+ kaffe/kaffevm/boehm-gc/boehm/real_malloc.c,
+ kaffe/kaffevm/boehm-gc/boehm/reclaim.c,
+ kaffe/kaffevm/boehm-gc/boehm/rs6000_mach_dep.s,
+ kaffe/kaffevm/boehm-gc/boehm/setjmp_t.c,
+ kaffe/kaffevm/boehm-gc/boehm/solaris_pthreads.c,
+ kaffe/kaffevm/boehm-gc/boehm/solaris_threads.c,
+ kaffe/kaffevm/boehm-gc/boehm/sparc_mach_dep.S,
+ kaffe/kaffevm/boehm-gc/boehm/sparc_netbsd_mach_dep.s,
+ kaffe/kaffevm/boehm-gc/boehm/sparc_sunos4_mach_dep.s,
+ kaffe/kaffevm/boehm-gc/boehm/specific.c,
+ kaffe/kaffevm/boehm-gc/boehm/stubborn.c,
+ kaffe/kaffevm/boehm-gc/boehm/threadlibs.c,
+ kaffe/kaffevm/boehm-gc/boehm/typd_mlc.c,
+ kaffe/kaffevm/boehm-gc/boehm/version.h,
+ kaffe/kaffevm/boehm-gc/boehm/win32_threads.c,
+ kaffe/kaffevm/boehm-gc/boehm/Mac_files/MacOS_Test_config.h,
+ kaffe/kaffevm/boehm-gc/boehm/Mac_files/MacOS_config.h,
+ kaffe/kaffevm/boehm-gc/boehm/Mac_files/dataend.c,
+ kaffe/kaffevm/boehm-gc/boehm/Mac_files/datastart.c,
+ kaffe/kaffevm/boehm-gc/boehm/cord/cordbscs.c,
+ kaffe/kaffevm/boehm-gc/boehm/cord/cordprnt.c,
+ kaffe/kaffevm/boehm-gc/boehm/cord/cordtest.c,
+ kaffe/kaffevm/boehm-gc/boehm/cord/cordxtra.c,
+ kaffe/kaffevm/boehm-gc/boehm/cord/de.c,
+ kaffe/kaffevm/boehm-gc/boehm/cord/de_cmds.h,
+ kaffe/kaffevm/boehm-gc/boehm/cord/de_win.ICO,
+ kaffe/kaffevm/boehm-gc/boehm/cord/de_win.RC,
+ kaffe/kaffevm/boehm-gc/boehm/cord/de_win.c,
+ kaffe/kaffevm/boehm-gc/boehm/cord/de_win.h,
+ kaffe/kaffevm/boehm-gc/boehm/doc/.cvsignore,
+ kaffe/kaffevm/boehm-gc/boehm/doc/Makefile.am,
+ kaffe/kaffevm/boehm-gc/boehm/doc/Makefile.in,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.DGUX386,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.Mac,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.MacOSX,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.OS2,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.amiga,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.arm.cross,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.autoconf,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.changes,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.contributors,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.cords,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.darwin,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.dj,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.environment,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.ews4800,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.hp,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.linux,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.macros,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.rs6000,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.sgi,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.solaris2,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.uts,
+ kaffe/kaffevm/boehm-gc/boehm/doc/README.win32,
+ kaffe/kaffevm/boehm-gc/boehm/doc/barrett_diagram,
+ kaffe/kaffevm/boehm-gc/boehm/doc/debugging.html,
+ kaffe/kaffevm/boehm-gc/boehm/doc/gc.man,
+ kaffe/kaffevm/boehm-gc/boehm/doc/gcdescr.html,
+ kaffe/kaffevm/boehm-gc/boehm/doc/gcinterface.html,
+ kaffe/kaffevm/boehm-gc/boehm/doc/leak.html,
+ kaffe/kaffevm/boehm-gc/boehm/doc/scale.html,
+ kaffe/kaffevm/boehm-gc/boehm/doc/simple_example.html,
+ kaffe/kaffevm/boehm-gc/boehm/doc/tree.html,
+ kaffe/kaffevm/boehm-gc/boehm/include/.cvsignore,
+ kaffe/kaffevm/boehm-gc/boehm/include/Makefile.am,
+ kaffe/kaffevm/boehm-gc/boehm/include/Makefile.in,
+ kaffe/kaffevm/boehm-gc/boehm/include/cord.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/ec.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_alloc.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_allocator.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_amiga_redirects.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_backptr.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_config_macros.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_cpp.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_gcj.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_inl.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_inline.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_local_alloc.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_mark.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_pthread_redirects.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/gc_typed.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/javaxfc.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/leak_detector.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/new_gc_alloc.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/weakpointer.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/cord_pos.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/darwin_semaphore.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/darwin_stop_world.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/dbg_mlc.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/gc_hdrs.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/gc_locks.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/gc_pmark.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/gc_priv.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/gcconfig.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/pthread_stop_world.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/pthread_support.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/solaris_threads.h,
+ kaffe/kaffevm/boehm-gc/boehm/include/private/specific.h,
+ kaffe/kaffevm/boehm-gc/boehm/tests/leak_test.c,
+ kaffe/kaffevm/boehm-gc/boehm/tests/middle.c,
+ kaffe/kaffevm/boehm-gc/boehm/tests/test.c,
+ kaffe/kaffevm/boehm-gc/boehm/tests/test_cpp.cc,
+ kaffe/kaffevm/boehm-gc/boehm/tests/thread_leak_test.c,
+ kaffe/kaffevm/boehm-gc/boehm/tests/trace_test.c:
+ Removed.
+
+2007-08-07 Dalibor Topic <robilad at kaffe.org>
+
Fixed boehm gc to no longer fail most tests. Adapted code
to use a system wide install of the library.
===================================================================
Checking out kaffe/kaffe/kaffevm/boehm-gc/boehm/.cvsignore
RCS: /home/cvs/kaffe/kaffe/kaffe/kaffevm/boehm-gc/boehm/Attic/.cvsignore,v
VERS: 1.3
***************
--- kaffe/kaffe/kaffevm/boehm-gc/boehm/.cvsignore Tue Aug 7 02:06:20 2007
+++ /dev/null Sun Aug 4 19:57:58 2002
@@ -1,6 +0,0 @@
-.deps
-Makefile
-autom4te.cache
-config.log
-config.status
-libtool
===================================================================
Checking out kaffe/kaffe/kaffevm/boehm-gc/boehm/AmigaOS.c
RCS: /home/cvs/kaffe/kaffe/kaffe/kaffevm/boehm-gc/boehm/Attic/AmigaOS.c,v
VERS: 1.1
***************
--- kaffe/kaffe/kaffevm/boehm-gc/boehm/AmigaOS.c Tue Aug 7 02:06:20 2007
+++ /dev/null Sun Aug 4 19:57:58 2002
@@ -1,623 +0,0 @@
-
-
-/******************************************************************
-
- AmigaOS-spesific routines for GC.
- This file is normally included from os_dep.c
-
-******************************************************************/
-
-
-#if !defined(GC_AMIGA_DEF) && !defined(GC_AMIGA_SB) && !defined(GC_AMIGA_DS) && !defined(GC_AMIGA_AM)
-# include "gc_priv.h"
-# include <stdio.h>
-# include <signal.h>
-# define GC_AMIGA_DEF
-# define GC_AMIGA_SB
-# define GC_AMIGA_DS
-# define GC_AMIGA_AM
-#endif
-
-
-#ifdef GC_AMIGA_DEF
-
-# ifndef __GNUC__
-# include <exec/exec.h>
-# endif
-# include <proto/exec.h>
-# include <proto/dos.h>
-# include <dos/dosextens.h>
-# include <workbench/startup.h>
-
-#endif
-
-
-
-
-#ifdef GC_AMIGA_SB
-
-/******************************************************************
- Find the base of the stack.
-******************************************************************/
-
-ptr_t GC_get_stack_base()
-{
- struct Process *proc = (struct Process*)SysBase->ThisTask;
-
- /* Reference: Amiga Guru Book Pages: 42,567,574 */
- if (proc->pr_Task.tc_Node.ln_Type==NT_PROCESS
- && proc->pr_CLI != NULL) {
- /* first ULONG is StackSize */
- /*longPtr = proc->pr_ReturnAddr;
- size = longPtr[0];*/
-
- return (char *)proc->pr_ReturnAddr + sizeof(ULONG);
- } else {
- return (char *)proc->pr_Task.tc_SPUpper;
- }
-}
-
-#if 0 /* old version */
-ptr_t GC_get_stack_base()
-{
- extern struct WBStartup *_WBenchMsg;
- extern long __base;
- extern long __stack;
- struct Task *task;
- struct Process *proc;
- struct CommandLineInterface *cli;
- long size;
-
- if ((task = FindTask(0)) == 0) {
- GC_err_puts("Cannot find own task structure\n");
- ABORT("task missing");
- }
- proc = (struct Process *)task;
- cli = BADDR(proc->pr_CLI);
-
- if (_WBenchMsg != 0 || cli == 0) {
- size = (char *)task->tc_SPUpper - (char *)task->tc_SPLower;
- } else {
- size = cli->cli_DefaultStack * 4;
- }
- return (ptr_t)(__base + GC_max(size, __stack));
-}
-#endif
-
-
-#endif
-
-
-#ifdef GC_AMIGA_DS
-/******************************************************************
- Register data segments.
-******************************************************************/
-
- void GC_register_data_segments()
- {
- struct Process *proc;
- struct CommandLineInterface *cli;
- BPTR myseglist;
- ULONG *data;
-
- int num;
-
-
-# ifdef __GNUC__
- ULONG dataSegSize;
- GC_bool found_segment = FALSE;
- extern char __data_size[];
-
- dataSegSize=__data_size+8;
- /* Can`t find the Location of __data_size, because
- it`s possible that is it, inside the segment. */
-
-# endif
-
- proc= (struct Process*)SysBase->ThisTask;
-
- /* Reference: Amiga Guru Book Pages: 538ff,565,573
- and XOper.asm */
- if (proc->pr_Task.tc_Node.ln_Type==NT_PROCESS) {
- if (proc->pr_CLI == NULL) {
- myseglist = proc->pr_SegList;
- } else {
- /* ProcLoaded 'Loaded as a command: '*/
- cli = BADDR(proc->pr_CLI);
- myseglist = cli->cli_Module;
- }
- } else {
- ABORT("Not a Process.");
- }
-
- if (myseglist == NULL) {
- ABORT("Arrrgh.. can't find segments, aborting");
- }
-
- /* xoper hunks Shell Process */
-
- num=0;
- for (data = (ULONG *)BADDR(myseglist); data != NULL;
- data = (ULONG *)BADDR(data[0])) {
- if (((ULONG) GC_register_data_segments < (ULONG) &data[1]) ||
- ((ULONG) GC_register_data_segments > (ULONG) &data[1] + data[-1])) {
-# ifdef __GNUC__
- if (dataSegSize == data[-1]) {
- found_segment = TRUE;
- }
-# endif
- GC_add_roots_inner((char *)&data[1],
- ((char *)&data[1]) + data[-1], FALSE);
- }
- ++num;
- } /* for */
-# ifdef __GNUC__
- if (!found_segment) {
- ABORT("Can`t find correct Segments.\nSolution: Use an newer version of ixemul.library");
- }
-# endif
- }
-
-#if 0 /* old version */
- void GC_register_data_segments()
- {
- extern struct WBStartup *_WBenchMsg;
- struct Process *proc;
- struct CommandLineInterface *cli;
- BPTR myseglist;
- ULONG *data;
-
- if ( _WBenchMsg != 0 ) {
- if ((myseglist = _WBenchMsg->sm_Segment) == 0) {
- GC_err_puts("No seglist from workbench\n");
- return;
- }
- } else {
- if ((proc = (struct Process *)FindTask(0)) == 0) {
- GC_err_puts("Cannot find process structure\n");
- return;
- }
- if ((cli = BADDR(proc->pr_CLI)) == 0) {
- GC_err_puts("No CLI\n");
- return;
- }
- if ((myseglist = cli->cli_Module) == 0) {
- GC_err_puts("No seglist from CLI\n");
- return;
- }
- }
-
- for (data = (ULONG *)BADDR(myseglist); data != 0;
- data = (ULONG *)BADDR(data[0])) {
-# ifdef AMIGA_SKIP_SEG
- if (((ULONG) GC_register_data_segments < (ULONG) &data[1]) ||
- ((ULONG) GC_register_data_segments > (ULONG) &data[1] + data[-1])) {
-# else
- {
-# endif /* AMIGA_SKIP_SEG */
- GC_add_roots_inner((char *)&data[1],
- ((char *)&data[1]) + data[-1], FALSE);
- }
- }
- }
-#endif /* old version */
-
-
-#endif
-
-
-
-#ifdef GC_AMIGA_AM
-
-#ifndef GC_AMIGA_FASTALLOC
-
-void *GC_amiga_allocwrapper(size_t size,void *(*AllocFunction)(size_t size2)){
- return (*AllocFunction)(size);
-}
-
-void *(*GC_amiga_allocwrapper_do)(size_t size,void *(*AllocFunction)(size_t size2))
- =GC_amiga_allocwrapper;
-
-#else
-
-
-
-
-void *GC_amiga_allocwrapper_firsttime(size_t size,void *(*AllocFunction)(size_t size2));
-
-void *(*GC_amiga_allocwrapper_do)(size_t size,void *(*AllocFunction)(size_t size2))
- =GC_amiga_allocwrapper_firsttime;
-
-
-/******************************************************************
- Amiga-spesific routines to obtain memory, and force GC to give
- back fast-mem whenever possible.
- These hacks makes gc-programs go many times faster when
- the amiga is low on memory, and are therefore strictly necesarry.
-
- -Kjetil S. Matheussen, 2000.
-******************************************************************/
-
-
-
-/* List-header for all allocated memory. */
-
-struct GC_Amiga_AllocedMemoryHeader{
- ULONG size;
- struct GC_Amiga_AllocedMemoryHeader *next;
-};
-struct GC_Amiga_AllocedMemoryHeader *GC_AMIGAMEM=(struct GC_Amiga_AllocedMemoryHeader *)(int)~(NULL);
-
-
-
-/* Type of memory. Once in the execution of a program, this might change to MEMF_ANY|MEMF_CLEAR */
-
-ULONG GC_AMIGA_MEMF = MEMF_FAST | MEMF_CLEAR;
-
-
-/* Prevents GC_amiga_get_mem from allocating memory if this one is TRUE. */
-#ifndef GC_AMIGA_ONLYFAST
-BOOL GC_amiga_dontalloc=FALSE;
-#endif
-
-#ifdef GC_AMIGA_PRINTSTATS
-int succ=0,succ2=0;
-int nsucc=0,nsucc2=0;
-int nullretries=0;
-int numcollects=0;
-int chipa=0;
-int allochip=0;
-int allocfast=0;
-int cur0=0;
-int cur1=0;
-int cur10=0;
-int cur50=0;
-int cur150=0;
-int cur151=0;
-int ncur0=0;
-int ncur1=0;
-int ncur10=0;
-int ncur50=0;
-int ncur150=0;
-int ncur151=0;
-#endif
-
-/* Free everything at program-end. */
-
-void GC_amiga_free_all_mem(void){
- struct GC_Amiga_AllocedMemoryHeader *gc_am=(struct GC_Amiga_AllocedMemoryHeader *)(~(int)(GC_AMIGAMEM));
- struct GC_Amiga_AllocedMemoryHeader *temp;
-
-#ifdef GC_AMIGA_PRINTSTATS
- printf("\n\n"
- "%d bytes of chip-mem, and %d bytes of fast-mem where allocated from the OS.\n",
- allochip,allocfast
- );
- printf(
- "%d bytes of chip-mem were returned from the GC_AMIGA_FASTALLOC supported allocating functions.\n",
- chipa
- );
- printf("\n");
- printf("GC_gcollect was called %d times to avoid returning NULL or start allocating with the MEMF_ANY flag.\n",numcollects);
- printf("%d of them was a success. (the others had to use allocation from the OS.)\n",nullretries);
- printf("\n");
- printf("Succeded forcing %d gc-allocations (%d bytes) of chip-mem to be fast-mem.\n",succ,succ2);
- printf("Failed forcing %d gc-allocations (%d bytes) of chip-mem to be fast-mem.\n",nsucc,nsucc2);
- printf("\n");
- printf(
- "Number of retries before succeding a chip->fast force:\n"
- "0: %d, 1: %d, 2-9: %d, 10-49: %d, 50-149: %d, >150: %d\n",
- cur0,cur1,cur10,cur50,cur150,cur151
- );
- printf(
- "Number of retries before giving up a chip->fast force:\n"
- "0: %d, 1: %d, 2-9: %d, 10-49: %d, 50-149: %d, >150: %d\n",
- ncur0,ncur1,ncur10,ncur50,ncur150,ncur151
- );
-#endif
-
- while(gc_am!=NULL){
- temp=gc_am->next;
- FreeMem(gc_am,gc_am->size);
- gc_am=(struct GC_Amiga_AllocedMemoryHeader *)(~(int)(temp));
- }
-}
-
-#ifndef GC_AMIGA_ONLYFAST
-
-/* All memory with address lower than this one is chip-mem. */
-
-char *chipmax;
-
-
-/*
- * Allways set to the last size of memory tried to be allocated.
- * Needed to ensure allocation when the size is bigger than 100000.
- *
- */
-size_t latestsize;
-
-#endif
-
-
-/*
- * The actual function that is called with the GET_MEM macro.
- *
- */
-
-void *GC_amiga_get_mem(size_t size){
- struct GC_Amiga_AllocedMemoryHeader *gc_am;
-
-#ifndef GC_AMIGA_ONLYFAST
- if(GC_amiga_dontalloc==TRUE){
-// printf("rejected, size: %d, latestsize: %d\n",size,latestsize);
- return NULL;
- }
-
- // We really don't want to use chip-mem, but if we must, then as little as possible.
- if(GC_AMIGA_MEMF==(MEMF_ANY|MEMF_CLEAR) && size>100000 && latestsize<50000) return NULL;
-#endif
-
- gc_am=AllocMem((ULONG)(size + sizeof(struct GC_Amiga_AllocedMemoryHeader)),GC_AMIGA_MEMF);
- if(gc_am==NULL) return NULL;
-
- gc_am->next=GC_AMIGAMEM;
- gc_am->size=size + sizeof(struct GC_Amiga_AllocedMemoryHeader);
- GC_AMIGAMEM=(struct GC_Amiga_AllocedMemoryHeader *)(~(int)(gc_am));
-
-// printf("Allocated %d (%d) bytes at address: %x. Latest: %d\n",size,tot,gc_am,latestsize);
-
-#ifdef GC_AMIGA_PRINTSTATS
- if((char *)gc_am<chipmax){
- allochip+=size;
- }else{
- allocfast+=size;
- }
-#endif
-
- return gc_am+1;
-
-}
-
-
-
-
-#ifndef GC_AMIGA_ONLYFAST
-
-/* Tries very hard to force GC to find fast-mem to return. Done recursively
- * to hold the rejected memory-pointers reachable from the collector in an
- * easy way.
- *
- */
-#ifdef GC_AMIGA_RETRY
-void *GC_amiga_rec_alloc(size_t size,void *(*AllocFunction)(size_t size2),const int rec){
- void *ret;
-
- ret=(*AllocFunction)(size);
-
-#ifdef GC_AMIGA_PRINTSTATS
- if((char *)ret>chipmax || ret==NULL){
- if(ret==NULL){
- nsucc++;
- nsucc2+=size;
- if(rec==0) ncur0++;
- if(rec==1) ncur1++;
- if(rec>1 && rec<10) ncur10++;
- if(rec>=10 && rec<50) ncur50++;
- if(rec>=50 && rec<150) ncur150++;
- if(rec>=150) ncur151++;
- }else{
- succ++;
- succ2+=size;
- if(rec==0) cur0++;
- if(rec==1) cur1++;
- if(rec>1 && rec<10) cur10++;
- if(rec>=10 && rec<50) cur50++;
- if(rec>=50 && rec<150) cur150++;
- if(rec>=150) cur151++;
- }
- }
-#endif
-
- if (((char *)ret)<=chipmax && ret!=NULL && (rec<(size>500000?9:size/5000))){
- ret=GC_amiga_rec_alloc(size,AllocFunction,rec+1);
-// GC_free(ret2);
- }
-
- return ret;
-}
-#endif
-
-
-/* The allocating-functions defined inside the amiga-blocks in gc.h is called
- * via these functions.
- */
-
-
-void *GC_amiga_allocwrapper_any(size_t size,void *(*AllocFunction)(size_t size2)){
- void *ret,*ret2;
-
- GC_amiga_dontalloc=TRUE; // Pretty tough thing to do, but its indeed necesarry.
- latestsize=size;
-
- ret=(*AllocFunction)(size);
-
- if(((char *)ret) <= chipmax){
- if(ret==NULL){
- //Give GC access to allocate memory.
-#ifdef GC_AMIGA_GC
- if(!GC_dont_gc){
- GC_gcollect();
-#ifdef GC_AMIGA_PRINTSTATS
- numcollects++;
-#endif
- ret=(*AllocFunction)(size);
- }
-#endif
- if(ret==NULL){
- GC_amiga_dontalloc=FALSE;
- ret=(*AllocFunction)(size);
- if(ret==NULL){
- WARN("Out of Memory! Returning NIL!\n", 0);
- }
- }
-#ifdef GC_AMIGA_PRINTSTATS
- else{
- nullretries++;
- }
- if(ret!=NULL && (char *)ret<=chipmax) chipa+=size;
-#endif
- }
-#ifdef GC_AMIGA_RETRY
- else{
- /* We got chip-mem. Better try again and again and again etc., we might get fast-mem sooner or later... */
- /* Using gctest to check the effectiviness of doing this, does seldom give a very good result. */
- /* However, real programs doesn't normally rapidly allocate and deallocate. */
-// printf("trying to force... %d bytes... ",size);
- if(
- AllocFunction!=GC_malloc_uncollectable
-#ifdef ATOMIC_UNCOLLECTABLE
- && AllocFunction!=GC_malloc_atomic_uncollectable
-#endif
- ){
- ret2=GC_amiga_rec_alloc(size,AllocFunction,0);
- }else{
- ret2=(*AllocFunction)(size);
-#ifdef GC_AMIGA_PRINTSTATS
- if((char *)ret2<chipmax || ret2==NULL){
- nsucc++;
- nsucc2+=size;
- ncur0++;
- }else{
- succ++;
- succ2+=size;
- cur0++;
- }
-#endif
- }
- if(((char *)ret2)>chipmax){
-// printf("Succeeded.\n");
- GC_free(ret);
- ret=ret2;
- }else{
- GC_free(ret2);
-// printf("But did not succeed.\n");
- }
- }
-#endif
- }
-
- GC_amiga_dontalloc=FALSE;
-
- return ret;
-}
-
-
-
-void (*GC_amiga_toany)(void)=NULL;
-
-void GC_amiga_set_toany(void (*func)(void)){
- GC_amiga_toany=func;
-}
-
-#endif // !GC_AMIGA_ONLYFAST
-
-
-void *GC_amiga_allocwrapper_fast(size_t size,void *(*AllocFunction)(size_t size2)){
- void *ret;
-
- ret=(*AllocFunction)(size);
-
- if(ret==NULL){
- // Enable chip-mem allocation.
-// printf("ret==NULL\n");
-#ifdef GC_AMIGA_GC
- if(!GC_dont_gc){
- GC_gcollect();
-#ifdef GC_AMIGA_PRINTSTATS
- numcollects++;
-#endif
- ret=(*AllocFunction)(size);
- }
-#endif
- if(ret==NULL){
-#ifndef GC_AMIGA_ONLYFAST
- GC_AMIGA_MEMF=MEMF_ANY | MEMF_CLEAR;
- if(GC_amiga_toany!=NULL) (*GC_amiga_toany)();
- GC_amiga_allocwrapper_do=GC_amiga_allocwrapper_any;
- return GC_amiga_allocwrapper_any(size,AllocFunction);
-#endif
- }
-#ifdef GC_AMIGA_PRINTSTATS
- else{
- nullretries++;
- }
-#endif
- }
-
- return ret;
-}
-
-void *GC_amiga_allocwrapper_firsttime(size_t size,void *(*AllocFunction)(size_t size2)){
- atexit(&GC_amiga_free_all_mem);
- chipmax=(char *)SysBase->MaxLocMem; // For people still having SysBase in chip-mem, this might speed up a bit.
- GC_amiga_allocwrapper_do=GC_amiga_allocwrapper_fast;
- return GC_amiga_allocwrapper_fast(size,AllocFunction);
-}
-
-
-#endif //GC_AMIGA_FASTALLOC
-
-
-
-/*
- * The wrapped realloc function.
- *
- */
-void *GC_amiga_realloc(void *old_object,size_t new_size_in_bytes){
-#ifndef GC_AMIGA_FASTALLOC
- return GC_realloc(old_object,new_size_in_bytes);
-#else
- void *ret;
- latestsize=new_size_in_bytes;
- ret=GC_realloc(old_object,new_size_in_bytes);
- if(ret==NULL && GC_AMIGA_MEMF==(MEMF_FAST | MEMF_CLEAR)){
- /* Out of fast-mem. */
*** Patch too long, truncated ***
More information about the kaffe
mailing list