[pypy-commit] pypy concurrent-marksweep: Start test_gc.

arigo noreply at buildbot.pypy.org
Fri Oct 7 17:56:26 CEST 2011


Author: Armin Rigo <arigo at tunes.org>
Branch: concurrent-marksweep
Changeset: r47864:0ad357ff8c34
Date: 2011-10-07 17:39 +0200
http://bitbucket.org/pypy/pypy/changeset/0ad357ff8c34/

Log:	Start test_gc.

diff --git a/pypy/rpython/memory/gc/concurrentms.py b/pypy/rpython/memory/gc/concurrentms.py
--- a/pypy/rpython/memory/gc/concurrentms.py
+++ b/pypy/rpython/memory/gc/concurrentms.py
@@ -343,6 +343,13 @@
         if mark != self.current_mark:
             self.force_scan(addr_struct)
 
+    def writebarrier_before_copy(self, source_addr, dest_addr,
+                                 source_start, dest_start, length):
+        mark = self.header(dest_addr).mark
+        if mark != self.current_mark:
+            self.force_scan(dest_addr)
+        return True
+
     def _init_writebarrier_logic(self):
         #
         def force_scan(obj):
diff --git a/pypy/rpython/memory/test/test_gc.py b/pypy/rpython/memory/test/test_gc.py
--- a/pypy/rpython/memory/test/test_gc.py
+++ b/pypy/rpython/memory/test/test_gc.py
@@ -926,3 +926,12 @@
 
 class TestMiniMarkGCCardMarking(TestMiniMarkGC):
     GC_PARAMS = {'card_page_indices': 4}
+
+class TestMostlyConcurrentMarkSweepGC(TestMiniMarkGC):
+    from pypy.rpython.memory.gc.concurrentms \
+            import MostlyConcurrentMarkSweepGC as GCClass
+
+    def test_finalizer_order(self):
+        py.test.skip("in-progress")
+    def test_from_objwithfinalizer_to_youngobj(self):
+        py.test.skip("in-progress")


More information about the pypy-commit mailing list