Author: Richard Plangger <planri...@gmail.com> Branch: memop-simplify3 Changeset: r81454:52e124acc665 Date: 2015-12-28 14:03 +0100 http://bitbucket.org/pypy/pypy/changeset/52e124acc665/
Log: reverted changes to malloc_nuresry_varsize, not sure how this solve this now, but I'll first implement zero_array in s390x diff --git a/rpython/jit/backend/llsupport/rewrite.py b/rpython/jit/backend/llsupport/rewrite.py --- a/rpython/jit/backend/llsupport/rewrite.py +++ b/rpython/jit/backend/llsupport/rewrite.py @@ -488,8 +488,8 @@ elif arraydescr.itemsize == 0: total_size = arraydescr.basesize elif (self.gc_ll_descr.can_use_nursery_malloc(1) and - self.gen_malloc_nursery_varsize(arraydescr.itemsize, - v_length, op, arraydescr, kind=kind)): + self.gen_malloc_nursery_varsize(arraydescr.itemsize, v_length, + op, arraydescr, kind=kind)): # note that we cannot initialize tid here, because the array # might end up being allocated by malloc_external or some # stuff that initializes GC header fields differently diff --git a/rpython/jit/backend/x86/assembler.py b/rpython/jit/backend/x86/assembler.py --- a/rpython/jit/backend/x86/assembler.py +++ b/rpython/jit/backend/x86/assembler.py @@ -2354,12 +2354,12 @@ jmp_adr0 = self.mc.get_relative_pos() self.mc.MOV(eax, heap(nursery_free_adr)) - assert valid_addressing_size(itemsize) - shift = get_scale(itemsize) - #else: - # shift = self._imul_const_scaled(self.mc, edi.value, - # varsizeloc.value, itemsize) - # varsizeloc = edi + if valid_addressing_size(itemsize): + shift = get_scale(itemsize) + else: + shift = self._imul_const_scaled(self.mc, edi.value, + varsizeloc.value, itemsize) + varsizeloc = edi # now varsizeloc is a register != eax. The size of # the variable part of the array is (varsizeloc << shift) _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit