Author: David Schneider <david.schnei...@picle.org> Branch: arm-backend-2 Changeset: r51162:96d252d2a2e6 Date: 2012-01-03 11:13 +0100 http://bitbucket.org/pypy/pypy/changeset/96d252d2a2e6/
Log: move the actual call to assembler.py diff --git a/pypy/jit/backend/arm/opassembler.py b/pypy/jit/backend/arm/opassembler.py --- a/pypy/jit/backend/arm/opassembler.py +++ b/pypy/jit/backend/arm/opassembler.py @@ -1193,6 +1193,18 @@ self.propagate_memoryerror_if_r0_is_null() return fcond + def emit_op_call_malloc_nursery(self, op, arglocs, regalloc, fcond): + # registers r0 and r1 are allocated for this call + assert len(arglocs) == 1 + size = arglocs[0].value + gc_ll_descr = self.cpu.gc_ll_descr + self.malloc_cond( + gc_ll_descr.get_nursery_free_addr(), + gc_ll_descr.get_nursery_top_addr(), + size + ) + return fcond + class FloatOpAssemlber(object): _mixin_ = True diff --git a/pypy/jit/backend/arm/regalloc.py b/pypy/jit/backend/arm/regalloc.py --- a/pypy/jit/backend/arm/regalloc.py +++ b/pypy/jit/backend/arm/regalloc.py @@ -953,13 +953,7 @@ self.possibly_free_var(op.result) self.possibly_free_var(t) - gc_ll_descr = self.assembler.cpu.gc_ll_descr - self.assembler.malloc_cond( - gc_ll_descr.get_nursery_free_addr(), - gc_ll_descr.get_nursery_top_addr(), - size - ) - + return [imm(size)] def get_mark_gc_roots(self, gcrootmap, use_copy_area=False): shape = gcrootmap.get_basic_shape(False) for v, val in self.frame_manager.bindings.items(): _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit