Author: Gregor Wegberg <[email protected]>
Branch: gc-incminimark-pinning
Changeset: r71843:79956cac29d4
Date: 2014-05-22 17:13 +0200
http://bitbucket.org/pypy/pypy/changeset/79956cac29d4/
Log: reimplement GC transformation methods for pin()/unpin()
Still not 100% sure I do the right thing, but tests pass now and it
seems correct to me.
diff --git a/rpython/memory/gctransform/transform.py
b/rpython/memory/gctransform/transform.py
--- a/rpython/memory/gctransform/transform.py
+++ b/rpython/memory/gctransform/transform.py
@@ -347,6 +347,15 @@
[rmodel.inputconst(lltype.Bool, False)],
resultvar=op.result)
+ def gct_gc_pin(self, hop):
+ op = hop.spaceop
+ hop.genop("same_as",
+ [rmodel.inputconst(lltype.Bool, False)],
+ resultvar=op.result)
+
+ def gct_gc_unpin(self, hop):
+ pass
+
def gct_gc_identityhash(self, hop):
# must be implemented in the various GCs
raise NotImplementedError
@@ -594,11 +603,5 @@
def gct_gc_can_move(self, hop):
return hop.cast_result(rmodel.inputconst(lltype.Bool, False))
- def gct_gc_pin(self, hop):
- return hop.cast_result(rmodel.inputconst(lltype.Bool, False))
-
- def gct_gc_unpin(self, hop):
- pass
-
def gct_shrink_array(self, hop):
return hop.cast_result(rmodel.inputconst(lltype.Bool, False))
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit