Author: Edd Barrett <vex...@gmail.com> Branch: asmmemmgr-for-code-only Changeset: r86748:bb2143405c5f Date: 2016-08-30 17:31 +0100 http://bitbucket.org/pypy/pypy/changeset/bb2143405c5f/
Log: Another W^X site. diff --git a/rpython/jit/backend/llsupport/gcreftracer.py b/rpython/jit/backend/llsupport/gcreftracer.py --- a/rpython/jit/backend/llsupport/gcreftracer.py +++ b/rpython/jit/backend/llsupport/gcreftracer.py @@ -1,4 +1,4 @@ -from rpython.rlib import rgc +from rpython.rlib import rgc, rmmap from rpython.rtyper.lltypesystem import lltype, llmemory, rffi from rpython.rtyper.lltypesystem.lloperation import llop from rpython.jit.backend.llsupport.symbolic import WORD @@ -33,10 +33,13 @@ tr.array_base_addr = array_base_addr tr.array_length = length i = 0 + array_base_addr_p = rffi.cast(rffi.CCHARP, array_base_addr) + rmmap.set_pages_writable(array_base_addr_p, length) while i < length: p = rffi.cast(rffi.SIGNEDP, array_base_addr + i * WORD) p[0] = rffi.cast(lltype.Signed, gcrefs[i]) i += 1 + rmmap.set_pages_executable(array_base_addr_p, length) llop.gc_writebarrier(lltype.Void, tr) # --no GC until here-- return tr _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit