X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fsgen%2Fsgen-minor-copy-object.h;h=3ad10aac4447fb2608803abd67bd71b77cf8441d;hb=f1542c6e52fba916b224dcbe17b750e2b3764e57;hp=da392c4292847badfe7fcc5a9b01e9c2cb082851;hpb=539ae700e29bda4d60b1bd8cd0e4726452d184f9;p=mono.git diff --git a/mono/sgen/sgen-minor-copy-object.h b/mono/sgen/sgen-minor-copy-object.h index da392c42928..3ad10aac444 100644 --- a/mono/sgen/sgen-minor-copy-object.h +++ b/mono/sgen/sgen-minor-copy-object.h @@ -1,5 +1,6 @@ -/* - * sgen-minor-copy-object.h: Copy functions for nursery collections. +/** + * \file + * Copy functions for nursery collections. * * Copyright 2001-2003 Ximian, Inc * Copyright 2003-2010 Novell, Inc. @@ -13,6 +14,11 @@ #if defined(SGEN_SIMPLE_NURSERY) +#ifdef SGEN_SIMPLE_PAR_NURSERY +/* Not supported with concurrent major yet */ +#define SERIAL_COPY_OBJECT simple_par_nursery_copy_object +#define SERIAL_COPY_OBJECT_FROM_OBJ simple_par_nursery_copy_object_from_obj +#else #ifdef SGEN_CONCURRENT_MAJOR #define SERIAL_COPY_OBJECT simple_nursery_serial_with_concurrent_major_copy_object #define SERIAL_COPY_OBJECT_FROM_OBJ simple_nursery_serial_with_concurrent_major_copy_object_from_obj @@ -20,6 +26,7 @@ #define SERIAL_COPY_OBJECT simple_nursery_serial_copy_object #define SERIAL_COPY_OBJECT_FROM_OBJ simple_nursery_serial_copy_object_from_obj #endif +#endif #elif defined (SGEN_SPLIT_NURSERY) @@ -107,7 +114,11 @@ SERIAL_COPY_OBJECT (GCObject **obj_slot, SgenGrayQueue *queue) HEAVY_STAT (++stat_objects_copied_nursery); +#ifdef SGEN_SIMPLE_PAR_NURSERY + copy = copy_object_no_checks_par (obj, queue); +#else copy = copy_object_no_checks (obj, queue); +#endif SGEN_UPDATE_REFERENCE (obj_slot, copy); } @@ -213,7 +224,11 @@ SERIAL_COPY_OBJECT_FROM_OBJ (GCObject **obj_slot, SgenGrayQueue *queue) HEAVY_STAT (++stat_objects_copied_nursery); +#ifdef SGEN_SIMPLE_PAR_NURSERY + copy = copy_object_no_checks_par (obj, queue); +#else copy = copy_object_no_checks (obj, queue); +#endif #ifdef SGEN_CONCURRENT_MAJOR /* * If an object is evacuated to the major heap and a reference to it, from the major