Add a write barrier for TVAR closures
[ghc.git] / rts / RetainerProfile.c
index 24745ea..44df06a 100644 (file)
@@ -505,6 +505,7 @@ push( StgClosure *c, retainer c_child_r, StgClosure **first_child )
        break;
 
        // layout.payload.ptrs, no SRT
+    case TVAR:
     case CONSTR:
     case PRIM:
     case MUT_PRIM:
@@ -844,7 +845,8 @@ pop( StgClosure **c, StgClosure **cp, retainer *r )
            return;
        }
 
-       case CONSTR:
+        case TVAR:
+        case CONSTR:
        case PRIM:
        case MUT_PRIM:
        case BCO:
@@ -1009,6 +1011,7 @@ isRetainer( StgClosure *c )
     case MUT_PRIM:
     case MVAR_CLEAN:
     case MVAR_DIRTY:
+    case TVAR:
     case MUT_VAR_CLEAN:
     case MUT_VAR_DIRTY:
     case MUT_ARR_PTRS_CLEAN: