[pypy-commit] stmgc card-marking: fix and remove unnecessary reset
Raemi
noreply at buildbot.pypy.org
Thu May 22 17:56:21 CEST 2014
Author: Remi Meier <remi.meier at inf.ethz.ch>
Branch: card-marking
Changeset: r1240:5b981332f5c7
Date: 2014-05-22 17:55 +0200
http://bitbucket.org/pypy/stmgc/changeset/5b981332f5c7/
Log: fix and remove unnecessary reset
diff --git a/c7/stm/nursery.c b/c7/stm/nursery.c
--- a/c7/stm/nursery.c
+++ b/c7/stm/nursery.c
@@ -468,16 +468,11 @@
TREE_LOOP_FORWARD(*pseg->young_outside_nursery, item) {
object_t *obj = (object_t*)item->addr;
- struct object_s *realobj = (struct object_s *)
- REAL_ADDRESS(pseg->pub.segment_base, item->addr);
-
- assert(!_is_in_nursery(obj));
- if (realobj->stm_flags & GCFLAG_HAS_CARDS)
- _reset_object_cards(pseg, obj, CARD_CLEAR, false);
- _cards_cleared_in_object(pseg, obj);
/* mark slot as unread */
- ((stm_read_marker_t *)(item->addr >> 4))->rm = 0;
+ ((struct stm_read_marker_s *)
+ (pseg->pub.segment_base + (((uintptr_t)obj) >> 4)))->rm = 0;
+
_stm_large_free(stm_object_pages + item->addr);
} TREE_LOOP_END;
More information about the pypy-commit
mailing list