[pypy-commit] pypy gc-incminimark-pinning: fix test to use class without gc pointers.

groggi noreply at buildbot.pypy.org
Tue Aug 19 17:48:53 CEST 2014


Author: Gregor Wegberg <code at gregorwegberg.com>
Branch: gc-incminimark-pinning
Changeset: r72910:ea91bbc58941
Date: 2014-08-19 17:47 +0200
http://bitbucket.org/pypy/pypy/changeset/ea91bbc58941/

Log:	fix test to use class without gc pointers.

	As of changeset e87564c1623075847f63d55586c837db7f188f4c objects
	with gc pointers can't be pinned.

diff --git a/rpython/jit/backend/llsupport/test/zrpy_gc_test.py b/rpython/jit/backend/llsupport/test/zrpy_gc_test.py
--- a/rpython/jit/backend/llsupport/test/zrpy_gc_test.py
+++ b/rpython/jit/backend/llsupport/test/zrpy_gc_test.py
@@ -23,6 +23,12 @@
 
     next = None
 
+class Y(object):
+    # for pinning tests we need an object without references to other
+    # objects
+    def __init__(self, x=0):
+        self.x = x
+
 class CheckError(Exception):
     pass
 
@@ -788,7 +794,7 @@
         @dont_look_inside
         def get_y():
             if not helper.inst:
-                helper.inst = X()
+                helper.inst = Y()
                 helper.inst.x = 101
                 check(rgc.pin(helper.inst))
             else:
@@ -818,7 +824,7 @@
         @dont_look_inside
         def get_y(n):
             if not helper.inst:
-                helper.inst = X()
+                helper.inst = Y()
                 helper.inst.x = 101
                 helper.pinned = True
                 check(rgc.pin(helper.inst))
@@ -862,14 +868,14 @@
         @dont_look_inside
         def get_instances():
             if not helper.initialised:
-                helper.inst1 = X()
+                helper.inst1 = Y()
                 helper.inst1.x = 101
                 check(rgc.pin(helper.inst1))
                 #
-                helper.inst2 = X()
+                helper.inst2 = Y()
                 helper.inst2.x = 102
                 #
-                helper.inst3 = X()
+                helper.inst3 = Y()
                 helper.inst3.x = 103
                 check(rgc.pin(helper.inst3))
                 #


More information about the pypy-commit mailing list