[pypy-commit] pypy arm64: gen_footer_shadowstack
fijal
pypy.commits at gmail.com
Thu Jun 27 13:11:07 EDT 2019
Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: arm64
Changeset: r96877:d15f9ba0be63
Date: 2019-06-27 17:10 +0000
http://bitbucket.org/pypy/pypy/changeset/d15f9ba0be63/
Log: gen_footer_shadowstack
diff --git a/rpython/jit/backend/aarch64/assembler.py b/rpython/jit/backend/aarch64/assembler.py
--- a/rpython/jit/backend/aarch64/assembler.py
+++ b/rpython/jit/backend/aarch64/assembler.py
@@ -1015,6 +1015,13 @@
mc.RET_r(r.lr.value)
+ def gen_footer_shadowstack(self, gcrootmap, mc):
+ rst = gcrootmap.get_root_stack_top_addr()
+ mc.gen_load_int(r.ip0.value, rst)
+ self.load_reg(mc, r.ip1, r.ip0)
+ mc.SUB_ri(r.ip1.value, r.ip1.value, WORD)
+ self.store_reg(mc, r.ip1, r.ip0)
+
def store_reg(self, mc, source, base, ofs=0, helper=None):
# uses r.ip1 as a temporary
if source.is_vfp_reg():
More information about the pypy-commit
mailing list