From 2659a10bdb9922749ef1fabfade9f5ced6e551f7 Mon Sep 17 00:00:00 2001 From: hboehm Date: Fri, 28 Apr 2006 23:37:11 +0000 Subject: [PATCH] 2006-04-28 Hans Boehm * include/private/gcconfig.h: Rationalize setting of GWW_VDB and MPROTECT_VDB for win32. --- include/private/gcconfig.h | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) 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 -- 2.40.0