[pypy-commit] pypy default: fix
fijal
noreply at buildbot.pypy.org
Wed Oct 16 14:09:34 CEST 2013
Author: Maciej Fijalkowski <fijall at gmail.com>
Branch:
Changeset: r67417:bc13dac86489
Date: 2013-10-16 14:08 +0200
http://bitbucket.org/pypy/pypy/changeset/bc13dac86489/
Log: fix
diff --git a/rpython/memory/gc/incminimark.py b/rpython/memory/gc/incminimark.py
--- a/rpython/memory/gc/incminimark.py
+++ b/rpython/memory/gc/incminimark.py
@@ -1597,6 +1597,9 @@
if (bool(self.young_rawmalloced_objects)
and self.young_rawmalloced_objects.contains(obj)):
self._visit_young_rawmalloced_object(obj)
+ if self.gc_state == STATE_MARKING:
+ if not self.header(obj).tid & GCFLAG_VISITED:
+ self.objects_to_trace.append(obj)
return
#
size_gc_header = self.gcheaderbuilder.size_gc_header
diff --git a/rpython/memory/gc/test/test_direct.py b/rpython/memory/gc/test/test_direct.py
--- a/rpython/memory/gc/test/test_direct.py
+++ b/rpython/memory/gc/test/test_direct.py
@@ -652,12 +652,13 @@
self.stackroots.append(obj0)
obj0.next = self.malloc(S)
self.gc.debug_gc_step_until(incminimark.STATE_MARKING)
+ obj0 = self.stackroots[-1]
obj1 = obj0.next
obj1.x = 13
obj0.next = lltype.nullptr(S)
self.stackroots.append(obj1)
self.gc.debug_gc_step_until(incminimark.STATE_SCANNING)
- assert self.stackroots[0].x == 13
+ assert self.stackroots[1].x == 13
class TestIncrementalMiniMarkGCFull(DirectGCTest):
from rpython.memory.gc.incminimark import IncrementalMiniMarkGC as GCClass
More information about the pypy-commit
mailing list