[corlib] GetGenericArguments from reference sources
[mono.git] / mono / metadata / sgen-scan-object.h
index ad569dda3595206fad7a2dd294c5040688b119c1..30c43fb2854f75c9de34be501b5ccb959c9d2288 100644 (file)
        binary_protocol_scan_vtype_begin (start + sizeof (MonoObject), size);
 #endif
 #endif
-       switch (desc & 0x7) {
+       switch (desc & DESC_TYPE_MASK) {
        case DESC_TYPE_RUN_LENGTH:
 #define SCAN OBJ_RUN_LEN_FOREACH_PTR (desc, start)
 #ifndef SCAN_OBJECT_NOSCAN
                SCAN;
 #endif
-#undef SCAN
-               break;
-       case DESC_TYPE_SMALL_BITMAP:
-#define SCAN OBJ_BITMAP_FOREACH_PTR (desc, start)
-#ifndef SCAN_OBJECT_NOSCAN
-               SCAN;
-#endif
 #undef SCAN
                break;
        case DESC_TYPE_VECTOR:
@@ -75,8 +68,8 @@
 #endif
 #undef SCAN
                break;
-       case DESC_TYPE_LARGE_BITMAP:
-#define SCAN OBJ_LARGE_BITMAP_FOREACH_PTR (desc, start)
+       case DESC_TYPE_BITMAP:
+#define SCAN OBJ_BITMAP_FOREACH_PTR (desc, start)
 #ifndef SCAN_OBJECT_NOSCAN
                SCAN;
 #endif
 #undef SCAN
                break;
 #endif
+       case DESC_TYPE_SMALL_PTRFREE:
        case DESC_TYPE_COMPLEX_PTRFREE:
                /*Nothing to do*/
                break;