Author: wenzhuman <[email protected]>
Branch: gc-two-end-nursery
Changeset: r72083:395364919ac7
Date: 2014-06-17 01:43 -0400
http://bitbucket.org/pypy/pypy/changeset/395364919ac7/
Log: add gctransformer level operation
diff --git a/rpython/memory/gctransform/framework.py
b/rpython/memory/gctransform/framework.py
--- a/rpython/memory/gctransform/framework.py
+++ b/rpython/memory/gctransform/framework.py
@@ -844,6 +844,19 @@
resultvar=op.result)
self.pop_roots(hop, livevars)
+ def gct_do_malloc_fixedsize(self, hop):
+ op = hop.spaceop
+ [v_typeid, v_size,
+ v_has_finalizer, v_has_light_finalizer, v_contains_weakptr] = op.args
+ livevars = self.push_roots(hop)
+ hop.genop("direct_call",
+ [self.malloc_fixedsize_clear_ptr, self.c_const_gc,
+ v_typeid, v_size,
+ v_has_finalizer, v_has_light_finalizer,
+ v_contains_weakptr],
+ resultvar=op.result)
+ self.pop_roots(hop, livevars)
+
def gct_do_malloc_varsize_clear(self, hop):
# used by the JIT (see rpython.jit.backend.llsupport.gc)
op = hop.spaceop
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit