XXXOBJS= XXXalloc.obj XXXreclaim.obj XXXallchblk.obj XXXmisc.obj \\r
XXXmach_dep.obj XXXos_dep.obj XXXmark_rts.obj XXXheaders.obj XXXmark.obj \\r
XXXobj_map.obj XXXblacklst.obj XXXfinalize.obj XXXnew_hblk.obj \\r
- XXXdbg_mlc.obj XXXmalloc.obj XXXstubborn.obj XXXdyn_load.obj \\r
+ XXXdbg_mlc.obj XXXmalloc.obj XXXdyn_load.obj \\r
XXXtypd_mlc.obj XXXptr_chck.obj XXXgc_cpp.obj XXXmallocx.obj \\r
XXXfnlz_mlc.obj\r
\r
SET(SRC alloc.c reclaim.c allchblk.c misc.c mach_dep.c os_dep.c
mark_rts.c headers.c mark.c obj_map.c blacklst.c finalize.c
- new_hblk.c dbg_mlc.c malloc.c stubborn.c dyn_load.c
- typd_mlc.c ptr_chck.c mallocx.c)
+ new_hblk.c dbg_mlc.c malloc.c dyn_load.c typd_mlc.c ptr_chck.c
+ mallocx.c)
SET(LIBS)
OPTION(enable_threads "TODO" NO)
IF(enable_threads)
allchblk.c alloc.c blacklst.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 ptr_chck.c reclaim.c specific.c stubborn.c typd_mlc.c
+ obj_map.c os_dep.c ptr_chck.c reclaim.c specific.c typd_mlc.c
# C Library: Architecture Dependent
# ---------------------------------
OBJS= alloc.o reclaim.o allchblk.o misc.o mach_dep.o os_dep.o mark_rts.o \
headers.o mark.o obj_map.o blacklst.o finalize.o new_hblk.o dbg_mlc.o \
- malloc.o stubborn.o checksums.o pthread_support.o pthread_stop_world.o \
+ malloc.o checksums.o pthread_support.o pthread_stop_world.o \
darwin_stop_world.o typd_mlc.o ptr_chck.o mallocx.o gcj_mlc.o specific.o \
gc_dlopen.o backgraph.o win32_threads.o pthread_start.o \
thread_local_alloc.o fnlz_mlc.o atomic_ops.o atomic_ops_sysdeps.o
CSRCS= reclaim.c allchblk.c misc.c alloc.c mach_dep.c os_dep.c mark_rts.c \
headers.c mark.c obj_map.c blacklst.c finalize.c \
- new_hblk.c dyn_load.c dbg_mlc.c malloc.c stubborn.c \
+ new_hblk.c dyn_load.c dbg_mlc.c malloc.c \
checksums.c pthread_support.c pthread_stop_world.c darwin_stop_world.c \
typd_mlc.c ptr_chck.c mallocx.c gcj_mlc.c specific.c gc_dlopen.c \
backgraph.c win32_threads.c pthread_start.c thread_local_alloc.c fnlz_mlc.c
AO_SRC_DIR=libatomic_ops/src
AO_INCLUDE_DIR=$(AO_SRC_DIR)
-OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj mach_dep.obj os_dep.obj mark_rts.obj headers.obj mark.obj obj_map.obj blacklst.obj finalize.obj new_hblk.obj dbg_mlc.obj fnlz_mlc.obj malloc.obj stubborn.obj dyn_load.obj typd_mlc.obj ptr_chck.obj gc_cpp.obj mallocx.obj win32_threads.obj extra\msvc_dbg.obj thread_local_alloc.obj
+OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj mach_dep.obj os_dep.obj mark_rts.obj headers.obj mark.obj obj_map.obj blacklst.obj finalize.obj new_hblk.obj dbg_mlc.obj fnlz_mlc.obj malloc.obj dyn_load.obj typd_mlc.obj ptr_chck.obj gc_cpp.obj mallocx.obj win32_threads.obj extra\msvc_dbg.obj thread_local_alloc.obj
all: gctest.exe cord\de.exe test_cpp.exe
# Significantly revised for GC version 4.4 by Mark Boulter (Jan 1994).
-OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj mach_dep.obj os_dep.obj mark_rts.obj headers.obj mark.obj obj_map.obj blacklst.obj finalize.obj new_hblk.obj dbg_mlc.obj fnlz_mlc.obj malloc.obj stubborn.obj typd_mlc.obj ptr_chck.obj mallocx.obj
+OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj mach_dep.obj os_dep.obj mark_rts.obj headers.obj mark.obj obj_map.obj blacklst.obj finalize.obj new_hblk.obj dbg_mlc.obj fnlz_mlc.obj malloc.obj typd_mlc.obj ptr_chck.obj mallocx.obj
CORDOBJS= cord\cordbscs.obj cord\cordxtra.obj cord\cordprnt.obj
# Fix to point to local pcr installation directory.
PCRDIR= ..
-COBJ= alloc.o reclaim.o allchblk.o misc.o os_dep.o mark_rts.o headers.o mark.o obj_map.o blacklst.o finalize.o new_hblk.o extra/pcr_interface.o extra/real_malloc.o dyn_load.o dbg_mlc.o fnlz_mlc.o malloc.o stubborn.o checksums.o typd_mlc.o ptr_chck.o mallocx.o
+COBJ= alloc.o reclaim.o allchblk.o misc.o os_dep.o mark_rts.o headers.o mark.o obj_map.o blacklst.o finalize.o new_hblk.o extra/pcr_interface.o extra/real_malloc.o dyn_load.o dbg_mlc.o fnlz_mlc.o malloc.o checksums.o typd_mlc.o ptr_chck.o mallocx.o
-CSRC= reclaim.c allchblk.c misc.c alloc.c mach_dep.c os_dep.c mark_rts.c headers.c mark.c obj_map.c blacklst.c finalize.c new_hblk.c extra/pcr_interface.c extra/real_malloc.c dyn_load.c dbg_mlc.c fnlz_mlc.c malloc.c stubborn.c checksums.c typd_mlc.c ptr_chck.c mallocx.c
+CSRC= reclaim.c allchblk.c misc.c alloc.c mach_dep.c os_dep.c mark_rts.c headers.c mark.c obj_map.c blacklst.c finalize.c new_hblk.c extra/pcr_interface.c extra/real_malloc.c dyn_load.c dbg_mlc.c fnlz_mlc.c malloc.c checksums.c typd_mlc.c ptr_chck.c mallocx.c
SHELL= /bin/sh
#------------------LIBBING----------------------------
-OBJS= alloc.o reclaim.o allchblk.o misc.o mach_dep.o os_dep.o mark_rts.o headers.o mark.o obj_map.o blacklst.o finalize.o new_hblk.o dyn_load.o dbg_mlc.o malloc.o stubborn.o checksums.o typd_mlc.o ptr_chck.o mallocx.o fnlz_mlc.o
+OBJS= alloc.o reclaim.o allchblk.o misc.o mach_dep.o os_dep.o mark_rts.o headers.o mark.o obj_map.o blacklst.o finalize.o new_hblk.o dyn_load.o dbg_mlc.o malloc.o checksums.o typd_mlc.o ptr_chck.o mallocx.o fnlz_mlc.o
gc$(CPU).lib: $(OBJS)
$(LIBER) gc$(CPU).lib r $(OBJS)
mallocx.o : mallocx.c $(INC)
$(CC) mallocx.c $(SCOPT)
-stubborn.o : stubborn.c $(INC)
- $(CC) stubborn.c $(SCOPT)
-
checksums.o : checksums.c $(INC)
$(CC) checksums.c $(SCOPT)
OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj &
mach_dep.obj os_dep.obj mark_rts.obj headers.obj mark.obj &
obj_map.obj blacklst.obj finalize.obj new_hblk.obj &
- dbg_mlc.obj malloc.obj stubborn.obj dyn_load.obj &
+ dbg_mlc.obj malloc.obj dyn_load.obj &
typd_mlc.obj ptr_chck.obj mallocx.obj fnlz_mlc.obj
all: gc.lib gctest.exe test_cpp.exe
SOURCE extra/symbian.cpp
SOURCE ptr_chck.c
SOURCE reclaim.c
-SOURCE stubborn.c
SOURCE typd_mlc.c
/*
os_dep.obj\\r
ptr_chck.obj\\r
reclaim.obj\\r
- stubborn.obj\\r
typd_mlc.obj\\r
win32_threads.obj\r
\r
os_dep.obj: os_dep.c\r
ptr_chck.obj: ptr_chck.c\r
reclaim.obj: reclaim.c\r
-stubborn.obj: stubborn.c\r
typd_mlc.obj: typd_mlc.c\r
win32_threads.obj: win32_threads.c\r
#endif
---- ( cut here ) ---- end of gc_prefix_common.h -----------------
-Files to build the GC libraries:
+Files to build the GC libraries:
--------------------------------
allchblk.c
alloc.c
os_dep.c -- contains MacOS code
ptr_chck.c
reclaim.c
- stubborn.c
typd_mlc.c
gc++.cc -- this is 'gc_cpp.cc' with less 'inline' and
-- throw std::bad_alloc when out of memory
#include "../new_hblk.c"
#include "../obj_map.c"
#include "../ptr_chck.c"
-#include "../stubborn.c"
#include "gc_inline.h"
#include "../allchblk.c"
-@erase ".\Release\ptr_chck.sbr"
-@erase ".\Release\reclaim.obj"
-@erase ".\Release\reclaim.sbr"
- -@erase ".\Release\stubborn.obj"
- -@erase ".\Release\stubborn.sbr"
-@erase ".\Release\typd_mlc.obj"
-@erase ".\Release\typd_mlc.sbr"
-@erase ".\Release\win32_threads.obj"
".\Release\os_dep.sbr"\
".\Release\ptr_chck.sbr"\
".\Release\reclaim.sbr"\
- ".\Release\stubborn.sbr"\
".\Release\typd_mlc.sbr"\
".\Release\msvc_dbg.copied.sbr"\
".\Release\win32_threads.sbr"
".\Release\os_dep.obj"\
".\Release\ptr_chck.obj"\
".\Release\reclaim.obj"\
- ".\Release\stubborn.obj"\
".\Release\typd_mlc.obj"\
".\Release\msvc_dbg.copied.obj"\
".\Release\win32_threads.obj"
-@erase ".\Debug\ptr_chck.sbr"
-@erase ".\Debug\reclaim.obj"
-@erase ".\Debug\reclaim.sbr"
- -@erase ".\Debug\stubborn.obj"
- -@erase ".\Debug\stubborn.sbr"
-@erase ".\Debug\typd_mlc.obj"
-@erase ".\Debug\typd_mlc.sbr"
-@erase ".\Debug\vc40.idb"
".\Debug\os_dep.sbr"\
".\Debug\ptr_chck.sbr"\
".\Debug\reclaim.sbr"\
- ".\Debug\stubborn.sbr"\
".\Debug\typd_mlc.sbr"\
".\Debug\msvc_dbg.copied.sbr"\
".\Debug\win32_threads.sbr"
".\Debug\os_dep.obj"\
".\Debug\ptr_chck.obj"\
".\Debug\reclaim.obj"\
- ".\Debug\stubborn.obj"\
".\Debug\typd_mlc.obj"\
".\Debug\msvc_dbg.copied.obj"\
".\Debug\win32_threads.obj"
".\Debug\allchblk.sbr" : $(SOURCE) $(DEP_CPP_ALLCH) "$(INTDIR)"
-!ENDIF
-
-# End Source File
-################################################################################
-# Begin Source File
-
-SOURCE=.\stubborn.c
-
-!IF "$(CFG)" == "gc - Win32 Release"
-
-DEP_CPP_STUBB=\
- ".\include\private\gcconfig.h"\
- ".\include\gc.h"\
- ".\include\private\gc_hdrs.h"\
- ".\include\private\gc_priv.h"\
- {$(INCLUDE)}"\sys\TYPES.H"\
-
-NODEP_CPP_STUBB=\
- ".\th\PCR_Th.h"\
- ".\th\PCR_ThCrSec.h"\
- ".\th\PCR_ThCtl.h"\
-
-
-".\Release\stubborn.obj" : $(SOURCE) $(DEP_CPP_STUBB) "$(INTDIR)"
-
-".\Release\stubborn.sbr" : $(SOURCE) $(DEP_CPP_STUBB) "$(INTDIR)"
-
-
-!ELSEIF "$(CFG)" == "gc - Win32 Debug"
-
-DEP_CPP_STUBB=\
- ".\include\private\gcconfig.h"\
- ".\include\gc.h"\
- ".\include\private\gc_hdrs.h"\
- ".\include\private\gc_priv.h"\
- {$(INCLUDE)}"\sys\TYPES.H"\
-
-NODEP_CPP_STUBB=\
- ".\th\PCR_Th.h"\
- ".\th\PCR_ThCrSec.h"\
- ".\th\PCR_ThCtl.h"\
-
-
-".\Debug\stubborn.obj" : $(SOURCE) $(DEP_CPP_STUBB) "$(INTDIR)"
-
-".\Debug\stubborn.sbr" : $(SOURCE) $(DEP_CPP_STUBB) "$(INTDIR)"
-
-
!ENDIF
# End Source File
return copy;
}
#endif /* GC_REQUIRE_WCSDUP */
+
+GC_API void * GC_CALL GC_malloc_stubborn(size_t lb)
+{
+ return GC_malloc(lb);
+}
+
+GC_API void GC_CALL GC_change_stubborn(const void *p GC_ATTR_UNUSED)
+{
+ /* Empty. */
+}
+
+#if defined(MANUAL_VDB)
+ void GC_dirty(ptr_t p);
+#endif
+
+GC_API void GC_CALL GC_end_stubborn_change(const void *p GC_ATTR_UNUSED)
+{
+# ifdef MANUAL_VDB
+ GC_dirty((ptr_t)p);
+# endif
+}
+++ /dev/null
-/*
- * Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers
- * Copyright (c) 1991-1994 by Xerox Corporation. All rights reserved.
- *
- * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
- * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
- *
- * Permission is hereby granted to use or copy this program
- * for any purpose, provided the above notices are retained on all copies.
- * Permission to modify the code and to distribute modified code is granted,
- * provided the above notices are retained, and a notice that the code was
- * modified is included with the above copyright notice.
- */
-
-#include "private/gc_priv.h"
-
-#if defined(MANUAL_VDB)
-
- /* Stubborn object (hard to change, nearly immutable) allocation. */
- /* This interface is deprecated. We mostly emulate it using */
- /* MANUAL_VDB. But that imposes the additional constraint that */
- /* written, but not yet GC_dirty()ed objects must be referenced */
- /* by a stack. */
-
- void GC_dirty(ptr_t p);
-#endif
-
-GC_API void * GC_CALL GC_malloc_stubborn(size_t lb)
-{
- return(GC_malloc(lb));
-}
-
-GC_API void GC_CALL GC_end_stubborn_change(const void *p GC_ATTR_UNUSED)
-{
-# ifdef MANUAL_VDB
- GC_dirty((ptr_t)p);
-# endif
-}
-
-GC_API void GC_CALL GC_change_stubborn(const void *p GC_ATTR_UNUSED)
-{
- /* Empty. */
-}