Author: Richard Plangger <[email protected]>
Branch: s390x-backend
Changeset: r82588:22b3fac614dd
Date: 2016-02-27 11:58 +0100
http://bitbucket.org/pypy/pypy/changeset/22b3fac614dd/
Log: minor changes while going through the code with arigato
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
@@ -534,24 +534,9 @@
if not is_frame:
mc.LGR(r.r0, loc_base) # unusual argument location
- if len(arglocs) > 1:
- loc_index = arglocs[1]
- # loc_index may be in r2 to r5.
- # the wb_slow_path may trash these registers
-
- if loc_index.is_reg() and loc_index.value < 6:
- mc.LAY(r.SP, l.addr(-WORD, r.SP))
- mc.STG(loc_index, l.addr(STD_FRAME_SIZE_IN_BYTES, r.SP))
-
mc.load_imm(r.r14, self.wb_slowpath[helper_num])
mc.BASR(r.r14, r.r14)
- if len(arglocs) > 1:
- loc_index = arglocs[1]
- if loc_index.is_reg() and loc_index.value < 6:
- mc.LG(loc_index, l.addr(STD_FRAME_SIZE_IN_BYTES, r.SP))
- mc.LAY(r.SP, l.addr(WORD, r.SP))
-
if card_marking_mask:
# The helper ends again with a check of the flag in the object.
# So here, we can simply write again a beq, which will be
@@ -576,7 +561,7 @@
# compute in tmp_loc the byte offset:
# tmp_loc = ~(index >> (card_page_shift + 3))
- mc.SRAG(tmp_loc, loc_index, l.addr(n+3))
+ mc.SRLG(tmp_loc, loc_index, l.addr(n+3))
# invert the bits of tmp_loc
# compute in SCRATCH the index of the bit inside the byte:
@@ -584,8 +569,6 @@
# 0x80 sets zero flag. will store 0 into all not selected bits
mc.RISBGN(r.SCRATCH, loc_index, l.imm(61), l.imm(0x80 | 63),
l.imm(64-n))
mc.XG(tmp_loc, l.pool(self.pool.constant_64_ones))
- #mc.SRAG(r.SCRATCH, loc_index, l.addr(n))
- #mc.NILL(r.SCRATCH, l.imm(0x7))
# set SCRATCH2 to 1 << r1
mc.LGHI(r.SCRATCH2, l.imm(1))
@@ -596,13 +579,13 @@
addr = l.addr(0, loc_base, tmp_loc)
mc.LLGC(r.SCRATCH, addr)
mc.OGRK(r.SCRATCH, r.SCRATCH, r.SCRATCH2)
- mc.STC(r.SCRATCH, addr)
+ mc.STCY(r.SCRATCH, addr)
# done
else:
byte_index = loc_index.value >> descr.jit_wb_card_page_shift
byte_ofs = ~(byte_index >> 3)
byte_val = 1 << (byte_index & 7)
- assert check_imm_value(byte_ofs)
+ assert check_imm_value(byte_ofs, lower_bound=-2**19,
upper_bound=2**19-1)
addr = l.addr(byte_ofs, loc_base)
mc.LLGC(r.SCRATCH, addr)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit