[pypy-commit] pypy s390x-backend: rie extended version of rsi
plan_rich
noreply at buildbot.pypy.org
Fri Oct 16 11:35:50 EDT 2015
Author: Richard Plangger <planrichi at gmail.com>
Branch: s390x-backend
Changeset: r80281:656f0a91ab03
Date: 2015-10-16 17:36 +0200
http://bitbucket.org/pypy/pypy/changeset/656f0a91ab03/
Log: rie extended version of rsi
diff --git a/rpython/jit/backend/zarch/codebuilder.py b/rpython/jit/backend/zarch/codebuilder.py
--- a/rpython/jit/backend/zarch/codebuilder.py
+++ b/rpython/jit/backend/zarch/codebuilder.py
@@ -253,6 +253,17 @@
self.write_i16(imm16 >> 1 & BIT_MASK_16)
return encode_ri
+def build_rie(mnemonic, (opcode1,opcode2)):
+ @builder.arguments('r,r,i16')
+ def encode_ri(self, reg1, reg2, imm16):
+ self.writechar(opcode1)
+ byte = (reg1 & BIT_MASK_4) << 4 | (reg2 & BIT_MASK_4)
+ self.writechar(chr(byte))
+ self.write_i16(imm16 >> 1 & BIT_MASK_16)
+ self.writechar(chr(0x0))
+ self.writechar(opcode2)
+ return encode_ri
+
_mnemonic_codes = {
'AR': (build_rr, ['\x1A']),
'AGR': (build_rre, ['\xB9\x08']),
@@ -274,6 +285,7 @@
'BXH': (build_rs, ['\x86']),
'BXHG': (build_rsy, ['\xEB','\x44']),
'BRXH': (build_rsi, ['\x84']),
+ 'BRXLG': (build_rie, ['\xEC','\x45']),
}
def build_instr_codes(clazz):
More information about the pypy-commit
mailing list