[pypy-commit] pypy s390x-backend: not every call needs to reload the pool register, but call_assembler must perform a reload

plan_rich pypy.commits at gmail.com
Thu Jan 14 13:43:32 EST 2016


Author: Richard Plangger <planrichi at gmail.com>
Branch: s390x-backend
Changeset: r81766:30a2326ae1aa
Date: 2016-01-14 19:42 +0100
http://bitbucket.org/pypy/pypy/changeset/30a2326ae1aa/

Log:	not every call needs to reload the pool register, but call_assembler
	must perform a reload

diff --git a/rpython/jit/backend/zarch/opassembler.py b/rpython/jit/backend/zarch/opassembler.py
--- a/rpython/jit/backend/zarch/opassembler.py
+++ b/rpython/jit/backend/zarch/opassembler.py
@@ -1077,6 +1077,7 @@
         self._store_force_index(self._find_nearby_operation(regalloc, +1))
         # 'result_loc' is either r2, f0 or None
         self.call_assembler(op, argloc, vloc, result_loc, r.r2)
+        self.mc.LARL(r.POOL, l.halfword(self.pool.pool_start - self.mc.get_relative_pos()))
 
     emit_call_assembler_i = _genop_call_assembler
     emit_call_assembler_r = _genop_call_assembler


More information about the pypy-commit mailing list