From: hboehm Date: Fri, 28 Apr 2006 23:37:11 +0000 (+0000) Subject: 2006-04-28 Hans Boehm X-Git-Tag: gc7_0alpha7~46 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2659a10bdb9922749ef1fabfade9f5ced6e551f7;p=gc 2006-04-28 Hans Boehm * include/private/gcconfig.h: Rationalize setting of GWW_VDB and MPROTECT_VDB for win32. --- diff --git a/include/private/gcconfig.h b/include/private/gcconfig.h index 0e4d4b21..8b3f64f9 100644 --- a/include/private/gcconfig.h +++ b/include/private/gcconfig.h @@ -594,8 +594,12 @@ * Each architecture may also define the style of virtual dirty bit * implementation to be used: * MPROTECT_VDB: Write protect the heap and catch faults. + * GWW_VDB: Use win32 GetWriteWatch primitive. * PROC_VDB: Use the SVR4 /proc primitives to read dirty bits. * + * The first and second one may be combined, in which case a runtime + * selection will be made, based on GetWriteWatch availability. + * * An architecture may define DYNAMIC_LOADING if dynamic_load.c * defined GC_register_dynamic_libraries() for the architecture. * @@ -1153,13 +1157,13 @@ # define OS_TYPE "MSWIN32" /* STACKBOTTOM and DATASTART are handled specially in */ /* os_dep.c. */ -# if !defined(__WATCOMC__) && !defined(GC_WIN32_THREADS) +# if !defined(__WATCOMC__) # define MPROTECT_VDB + /* We also avoided doing this in the past with GC_WIN32_THREADS */ + /* Hopefully that's fixed. */ # endif # if _MSC_VER >= 1300 /* .NET, i.e. > VisualStudio 6 */ # define GWW_VDB -# else -# define MPROTECT_VDB # endif # define DATAEND /* not needed */ # endif