void sgen_pin_cemented_objects (void) { int i; for (i = 0; i < SGEN_CEMENT_HASH_SIZE; ++i) { if (!cement_hash [i].count) continue; SGEN_ASSERT (5, cement_hash [i].count >= SGEN_CEMENT_THRESHOLD, "Cementing hash inconsistent"); sgen_pin_stage_ptr (cement_hash [i].obj); /* FIXME: do pin stats if enabled */ } }
static void pin_from_hash (CementHashEntry *hash, gboolean has_been_reset) { int i; for (i = 0; i < SGEN_CEMENT_HASH_SIZE; ++i) { if (!hash [i].count) continue; if (has_been_reset) SGEN_ASSERT (5, hash [i].count >= SGEN_CEMENT_THRESHOLD, "Cementing hash inconsistent"); sgen_pin_stage_ptr (hash [i].obj); /* FIXME: do pin stats if enabled */ SGEN_CEMENT_OBJECT (hash [i].obj); } }