summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorUlrich Weigand <ulrich.weigand@de.ibm.com>2017-05-10 12:42:45 +0000
committerUlrich Weigand <ulrich.weigand@de.ibm.com>2017-05-10 12:42:45 +0000
commitc7eb5a95b2d2f6b3ff6db6d16ee7fa7a299f9f43 (patch)
treefb1bd7252cda6a32d8c7034981d2a65db31d020e /llvm/test
parent33a441adf9b9724a831c03accb0798c4f754e5a3 (diff)
downloadbcm5719-llvm-c7eb5a95b2d2f6b3ff6db6d16ee7fa7a299f9f43.tar.gz
bcm5719-llvm-c7eb5a95b2d2f6b3ff6db6d16ee7fa7a299f9f43.zip
[SystemZ] Add decimal integer instructions
This adds the set of decimal integer (BCD) instructions for assembler / disassembler use. llvm-svn: 302646
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/MC/Disassembler/SystemZ/insns.txt888
-rw-r--r--llvm/test/MC/SystemZ/insn-bad.s956
-rw-r--r--llvm/test/MC/SystemZ/insn-good.s642
3 files changed, 2486 insertions, 0 deletions
diff --git a/llvm/test/MC/Disassembler/SystemZ/insns.txt b/llvm/test/MC/Disassembler/SystemZ/insns.txt
index 4d1a2789f09..de191509ff5 100644
--- a/llvm/test/MC/Disassembler/SystemZ/insns.txt
+++ b/llvm/test/MC/Disassembler/SystemZ/insns.txt
@@ -679,6 +679,48 @@
# CHECK: aly %r15, 0
0xe3 0xf0 0x00 0x00 0x00 0x5e
+# CHECK: ap 0(1), 0(1)
+0xfa 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: ap 0(1), 0(1,%r1)
+0xfa 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: ap 0(1), 0(1,%r15)
+0xfa 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: ap 0(1), 4095(1)
+0xfa 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: ap 0(1), 4095(1,%r1)
+0xfa 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: ap 0(1), 4095(1,%r15)
+0xfa 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: ap 0(1,%r1), 0(1)
+0xfa 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: ap 0(1,%r15), 0(1)
+0xfa 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: ap 4095(1,%r1), 0(1)
+0xfa 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: ap 4095(1,%r15), 0(1)
+0xfa 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: ap 0(16,%r1), 0(1)
+0xfa 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: ap 0(16,%r15), 0(1)
+0xfa 0xf0 0xf0 0x00 0x00 0x00
+
+# CHECK: ap 0(1), 0(16,%r1)
+0xfa 0x0f 0x00 0x00 0x10 0x00
+
+# CHECK: ap 0(1), 0(16,%r15)
+0xfa 0x0f 0x00 0x00 0xf0 0x00
+
# CHECK: ar %r0, %r0
0x1a 0x00
@@ -3406,6 +3448,48 @@
# CHECK: cly %r15, 0
0xe3 0xf0 0x00 0x00 0x00 0x55
+# CHECK: cp 0(1), 0(1)
+0xf9 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: cp 0(1), 0(1,%r1)
+0xf9 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: cp 0(1), 0(1,%r15)
+0xf9 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: cp 0(1), 4095(1)
+0xf9 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: cp 0(1), 4095(1,%r1)
+0xf9 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: cp 0(1), 4095(1,%r15)
+0xf9 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: cp 0(1,%r1), 0(1)
+0xf9 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: cp 0(1,%r15), 0(1)
+0xf9 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: cp 4095(1,%r1), 0(1)
+0xf9 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: cp 4095(1,%r15), 0(1)
+0xf9 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: cp 0(16,%r1), 0(1)
+0xf9 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: cp 0(16,%r15), 0(1)
+0xf9 0xf0 0xf0 0x00 0x00 0x00
+
+# CHECK: cp 0(1), 0(16,%r1)
+0xf9 0x0f 0x00 0x00 0x10 0x00
+
+# CHECK: cp 0(1), 0(16,%r15)
+0xf9 0x0f 0x00 0x00 0xf0 0x00
+
# CHECK: cpsdr %f0, %f0, %f0
0xb3 0x72 0x00 0x00
@@ -3754,6 +3838,168 @@
# CHECK: cuse %r6, %r8
0xb2 0x57 0x00 0x68
+# CHECK: cvb %r0, 0
+0x4f 0x00 0x00 0x00
+
+# CHECK: cvb %r0, 4095
+0x4f 0x00 0x0f 0xff
+
+# CHECK: cvb %r0, 0(%r1)
+0x4f 0x00 0x10 0x00
+
+# CHECK: cvb %r0, 0(%r15)
+0x4f 0x00 0xf0 0x00
+
+# CHECK: cvb %r0, 4095(%r1,%r15)
+0x4f 0x01 0xff 0xff
+
+# CHECK: cvb %r0, 4095(%r15,%r1)
+0x4f 0x0f 0x1f 0xff
+
+# CHECK: cvb %r15, 0
+0x4f 0xf0 0x00 0x00
+
+# CHECK: cvbg %r0, -524288
+0xe3 0x00 0x00 0x00 0x80 0x0e
+
+# CHECK: cvbg %r0, -1
+0xe3 0x00 0x0f 0xff 0xff 0x0e
+
+# CHECK: cvbg %r0, 0
+0xe3 0x00 0x00 0x00 0x00 0x0e
+
+# CHECK: cvbg %r0, 1
+0xe3 0x00 0x00 0x01 0x00 0x0e
+
+# CHECK: cvbg %r0, 524287
+0xe3 0x00 0x0f 0xff 0x7f 0x0e
+
+# CHECK: cvbg %r0, 0(%r1)
+0xe3 0x00 0x10 0x00 0x00 0x0e
+
+# CHECK: cvbg %r0, 0(%r15)
+0xe3 0x00 0xf0 0x00 0x00 0x0e
+
+# CHECK: cvbg %r0, 524287(%r1,%r15)
+0xe3 0x01 0xff 0xff 0x7f 0x0e
+
+# CHECK: cvbg %r0, 524287(%r15,%r1)
+0xe3 0x0f 0x1f 0xff 0x7f 0x0e
+
+# CHECK: cvbg %r15, 0
+0xe3 0xf0 0x00 0x00 0x00 0x0e
+
+# CHECK: cvby %r0, -524288
+0xe3 0x00 0x00 0x00 0x80 0x06
+
+# CHECK: cvby %r0, -1
+0xe3 0x00 0x0f 0xff 0xff 0x06
+
+# CHECK: cvby %r0, 0
+0xe3 0x00 0x00 0x00 0x00 0x06
+
+# CHECK: cvby %r0, 1
+0xe3 0x00 0x00 0x01 0x00 0x06
+
+# CHECK: cvby %r0, 524287
+0xe3 0x00 0x0f 0xff 0x7f 0x06
+
+# CHECK: cvby %r0, 0(%r1)
+0xe3 0x00 0x10 0x00 0x00 0x06
+
+# CHECK: cvby %r0, 0(%r15)
+0xe3 0x00 0xf0 0x00 0x00 0x06
+
+# CHECK: cvby %r0, 524287(%r1,%r15)
+0xe3 0x01 0xff 0xff 0x7f 0x06
+
+# CHECK: cvby %r0, 524287(%r15,%r1)
+0xe3 0x0f 0x1f 0xff 0x7f 0x06
+
+# CHECK: cvby %r15, 0
+0xe3 0xf0 0x00 0x00 0x00 0x06
+
+# CHECK: cvd %r0, 0
+0x4e 0x00 0x00 0x00
+
+# CHECK: cvd %r0, 4095
+0x4e 0x00 0x0f 0xff
+
+# CHECK: cvd %r0, 0(%r1)
+0x4e 0x00 0x10 0x00
+
+# CHECK: cvd %r0, 0(%r15)
+0x4e 0x00 0xf0 0x00
+
+# CHECK: cvd %r0, 4095(%r1,%r15)
+0x4e 0x01 0xff 0xff
+
+# CHECK: cvd %r0, 4095(%r15,%r1)
+0x4e 0x0f 0x1f 0xff
+
+# CHECK: cvd %r15, 0
+0x4e 0xf0 0x00 0x00
+
+# CHECK: cvdg %r0, -524288
+0xe3 0x00 0x00 0x00 0x80 0x2e
+
+# CHECK: cvdg %r0, -1
+0xe3 0x00 0x0f 0xff 0xff 0x2e
+
+# CHECK: cvdg %r0, 0
+0xe3 0x00 0x00 0x00 0x00 0x2e
+
+# CHECK: cvdg %r0, 1
+0xe3 0x00 0x00 0x01 0x00 0x2e
+
+# CHECK: cvdg %r0, 524287
+0xe3 0x00 0x0f 0xff 0x7f 0x2e
+
+# CHECK: cvdg %r0, 0(%r1)
+0xe3 0x00 0x10 0x00 0x00 0x2e
+
+# CHECK: cvdg %r0, 0(%r15)
+0xe3 0x00 0xf0 0x00 0x00 0x2e
+
+# CHECK: cvdg %r0, 524287(%r1,%r15)
+0xe3 0x01 0xff 0xff 0x7f 0x2e
+
+# CHECK: cvdg %r0, 524287(%r15,%r1)
+0xe3 0x0f 0x1f 0xff 0x7f 0x2e
+
+# CHECK: cvdg %r15, 0
+0xe3 0xf0 0x00 0x00 0x00 0x2e
+
+# CHECK: cvdy %r0, -524288
+0xe3 0x00 0x00 0x00 0x80 0x26
+
+# CHECK: cvdy %r0, -1
+0xe3 0x00 0x0f 0xff 0xff 0x26
+
+# CHECK: cvdy %r0, 0
+0xe3 0x00 0x00 0x00 0x00 0x26
+
+# CHECK: cvdy %r0, 1
+0xe3 0x00 0x00 0x01 0x00 0x26
+
+# CHECK: cvdy %r0, 524287
+0xe3 0x00 0x0f 0xff 0x7f 0x26
+
+# CHECK: cvdy %r0, 0(%r1)
+0xe3 0x00 0x10 0x00 0x00 0x26
+
+# CHECK: cvdy %r0, 0(%r15)
+0xe3 0x00 0xf0 0x00 0x00 0x26
+
+# CHECK: cvdy %r0, 524287(%r1,%r15)
+0xe3 0x01 0xff 0xff 0x7f 0x26
+
+# CHECK: cvdy %r0, 524287(%r15,%r1)
+0xe3 0x0f 0x1f 0xff 0x7f 0x26
+
+# CHECK: cvdy %r15, 0
+0xe3 0xf0 0x00 0x00 0x00 0x26
+
# CHECK: cxbr %f0, %f0
0xb3 0x49 0x00 0x00
@@ -4048,6 +4294,48 @@
# CHECK: dlr %r6, %r9
0xb9 0x97 0x00 0x69
+# CHECK: dp 0(1), 0(1)
+0xfd 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: dp 0(1), 0(1,%r1)
+0xfd 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: dp 0(1), 0(1,%r15)
+0xfd 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: dp 0(1), 4095(1)
+0xfd 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: dp 0(1), 4095(1,%r1)
+0xfd 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: dp 0(1), 4095(1,%r15)
+0xfd 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: dp 0(1,%r1), 0(1)
+0xfd 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: dp 0(1,%r15), 0(1)
+0xfd 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: dp 4095(1,%r1), 0(1)
+0xfd 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: dp 4095(1,%r15), 0(1)
+0xfd 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: dp 0(16,%r1), 0(1)
+0xfd 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: dp 0(16,%r15), 0(1)
+0xfd 0xf0 0xf0 0x00 0x00 0x00
+
+# CHECK: dp 0(1), 0(16,%r1)
+0xfd 0x0f 0x00 0x00 0x10 0x00
+
+# CHECK: dp 0(1), 0(16,%r15)
+0xfd 0x0f 0x00 0x00 0xf0 0x00
+
# CHECK: dsg %r0, -524288
0xe3 0x00 0x00 0x00 0x80 0x0d
@@ -4180,6 +4468,78 @@
# CHECK: ectg 4095(%r1), 0(%r15), %r2
0xc8 0x21 0x1f 0xff 0xf0 0x00
+# CHECK: ed 0(1), 0
+0xde 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: ed 0(1), 0(%r1)
+0xde 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: ed 0(1), 0(%r15)
+0xde 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: ed 0(1), 4095
+0xde 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: ed 0(1), 4095(%r1)
+0xde 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: ed 0(1), 4095(%r15)
+0xde 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: ed 0(1,%r1), 0
+0xde 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: ed 0(1,%r15), 0
+0xde 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: ed 4095(1,%r1), 0
+0xde 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: ed 4095(1,%r15), 0
+0xde 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: ed 0(256,%r1), 0
+0xde 0xff 0x10 0x00 0x00 0x00
+
+# CHECK: ed 0(256,%r15), 0
+0xde 0xff 0xf0 0x00 0x00 0x00
+
+# CHECK: edmk 0(1), 0
+0xdf 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: edmk 0(1), 0(%r1)
+0xdf 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: edmk 0(1), 0(%r15)
+0xdf 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: edmk 0(1), 4095
+0xdf 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: edmk 0(1), 4095(%r1)
+0xdf 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: edmk 0(1), 4095(%r15)
+0xdf 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: edmk 0(1,%r1), 0
+0xdf 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: edmk 0(1,%r15), 0
+0xdf 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: edmk 4095(1,%r1), 0
+0xdf 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: edmk 4095(1,%r15), 0
+0xdf 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: edmk 0(256,%r1), 0
+0xdf 0xff 0x10 0x00 0x00 0x00
+
+# CHECK: edmk 0(256,%r15), 0
+0xdf 0xff 0xf0 0x00 0x00 0x00
+
# CHECK: efpc %r0
0xb3 0x8c 0x00 0x00
@@ -7696,6 +8056,48 @@
# CHECK: mlgr %r6, %r9
0xb9 0x86 0x00 0x69
+# CHECK: mp 0(1), 0(1)
+0xfc 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: mp 0(1), 0(1,%r1)
+0xfc 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: mp 0(1), 0(1,%r15)
+0xfc 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: mp 0(1), 4095(1)
+0xfc 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: mp 0(1), 4095(1,%r1)
+0xfc 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: mp 0(1), 4095(1,%r15)
+0xfc 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: mp 0(1,%r1), 0(1)
+0xfc 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: mp 0(1,%r15), 0(1)
+0xfc 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: mp 4095(1,%r1), 0(1)
+0xfc 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: mp 4095(1,%r15), 0(1)
+0xfc 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: mp 0(16,%r1), 0(1)
+0xfc 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: mp 0(16,%r15), 0(1)
+0xfc 0xf0 0xf0 0x00 0x00 0x00
+
+# CHECK: mp 0(1), 0(16,%r1)
+0xfc 0x0f 0x00 0x00 0x10 0x00
+
+# CHECK: mp 0(1), 0(16,%r15)
+0xfc 0x0f 0x00 0x00 0xf0 0x00
+
# CHECK: ms %r0, 0
0x71 0x00 0x00 0x00
@@ -8275,6 +8677,84 @@
# CHECK: mviy 524287(%r15), 42
0xeb 0x2a 0xff 0xff 0x7f 0x52
+# CHECK: mvn 0(1), 0
+0xd1 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: mvn 0(1), 0(%r1)
+0xd1 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: mvn 0(1), 0(%r15)
+0xd1 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: mvn 0(1), 4095
+0xd1 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: mvn 0(1), 4095(%r1)
+0xd1 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: mvn 0(1), 4095(%r15)
+0xd1 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: mvn 0(1,%r1), 0
+0xd1 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: mvn 0(1,%r15), 0
+0xd1 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: mvn 4095(1,%r1), 0
+0xd1 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: mvn 4095(1,%r15), 0
+0xd1 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: mvn 0(256,%r1), 0
+0xd1 0xff 0x10 0x00 0x00 0x00
+
+# CHECK: mvn 0(256,%r15), 0
+0xd1 0xff 0xf0 0x00 0x00 0x00
+
+# CHECK: mvo 0(1), 0(1)
+0xf1 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: mvo 0(1), 0(1,%r1)
+0xf1 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: mvo 0(1), 0(1,%r15)
+0xf1 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: mvo 0(1), 4095(1)
+0xf1 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: mvo 0(1), 4095(1,%r1)
+0xf1 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: mvo 0(1), 4095(1,%r15)
+0xf1 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: mvo 0(1,%r1), 0(1)
+0xf1 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: mvo 0(1,%r15), 0(1)
+0xf1 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: mvo 4095(1,%r1), 0(1)
+0xf1 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: mvo 4095(1,%r15), 0(1)
+0xf1 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: mvo 0(16,%r1), 0(1)
+0xf1 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: mvo 0(16,%r15), 0(1)
+0xf1 0xf0 0xf0 0x00 0x00 0x00
+
+# CHECK: mvo 0(1), 0(16,%r1)
+0xf1 0x0f 0x00 0x00 0x10 0x00
+
+# CHECK: mvo 0(1), 0(16,%r15)
+0xf1 0x0f 0x00 0x00 0xf0 0x00
+
# CHECK: mvst %r0, %r0
0xb2 0x55 0x00 0x00
@@ -8287,6 +8767,42 @@
# CHECK: mvst %r7, %r8
0xb2 0x55 0x00 0x78
+# CHECK: mvz 0(1), 0
+0xd3 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: mvz 0(1), 0(%r1)
+0xd3 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: mvz 0(1), 0(%r15)
+0xd3 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: mvz 0(1), 4095
+0xd3 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: mvz 0(1), 4095(%r1)
+0xd3 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: mvz 0(1), 4095(%r15)
+0xd3 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: mvz 0(1,%r1), 0
+0xd3 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: mvz 0(1,%r15), 0
+0xd3 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: mvz 4095(1,%r1), 0
+0xd3 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: mvz 4095(1,%r15), 0
+0xd3 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: mvz 0(256,%r1), 0
+0xd3 0xff 0x10 0x00 0x00 0x00
+
+# CHECK: mvz 0(256,%r15), 0
+0xd3 0xff 0xf0 0x00 0x00 0x00
+
# CHECK: mxbr %f0, %f0
0xb3 0x4c 0x00 0x00
@@ -8914,6 +9430,48 @@
# CHECK: oy %r15, 0
0xe3 0xf0 0x00 0x00 0x00 0x56
+# CHECK: pack 0(1), 0(1)
+0xf2 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: pack 0(1), 0(1,%r1)
+0xf2 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: pack 0(1), 0(1,%r15)
+0xf2 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: pack 0(1), 4095(1)
+0xf2 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: pack 0(1), 4095(1,%r1)
+0xf2 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: pack 0(1), 4095(1,%r15)
+0xf2 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: pack 0(1,%r1), 0(1)
+0xf2 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: pack 0(1,%r15), 0(1)
+0xf2 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: pack 4095(1,%r1), 0(1)
+0xf2 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: pack 4095(1,%r15), 0(1)
+0xf2 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: pack 0(16,%r1), 0(1)
+0xf2 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: pack 0(16,%r15), 0(1)
+0xf2 0xf0 0xf0 0x00 0x00 0x00
+
+# CHECK: pack 0(1), 0(16,%r1)
+0xf2 0x0f 0x00 0x00 0x10 0x00
+
+# CHECK: pack 0(1), 0(16,%r15)
+0xf2 0x0f 0x00 0x00 0xf0 0x00
+
# CHECK: pcc
0xb9 0x2c 0x00 0x00
@@ -8947,6 +9505,78 @@
# CHECK: pfd 15, 0
0xe3 0xf0 0x00 0x00 0x00 0x36
+# CHECK: pka 0, 0(1)
+0xe9 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: pka 0, 0(1,%r1)
+0xe9 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: pka 0, 0(1,%r15)
+0xe9 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: pka 0, 4095(1)
+0xe9 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: pka 0, 4095(1,%r1)
+0xe9 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: pka 0, 4095(1,%r15)
+0xe9 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: pka 0(%r1), 0(1)
+0xe9 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: pka 0(%r15), 0(1)
+0xe9 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: pka 4095(%r1), 0(1)
+0xe9 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: pka 4095(%r15), 0(1)
+0xe9 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: pka 0, 0(256,%r1)
+0xe9 0xff 0x00 0x00 0x10 0x00
+
+# CHECK: pka 0, 0(256,%r15)
+0xe9 0xff 0x00 0x00 0xf0 0x00
+
+# CHECK: pku 0, 0(1)
+0xe1 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: pku 0, 0(1,%r1)
+0xe1 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: pku 0, 0(1,%r15)
+0xe1 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: pku 0, 4095(1)
+0xe1 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: pku 0, 4095(1,%r1)
+0xe1 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: pku 0, 4095(1,%r15)
+0xe1 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: pku 0(%r1), 0(1)
+0xe1 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: pku 0(%r15), 0(1)
+0xe1 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: pku 4095(%r1), 0(1)
+0xe1 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: pku 4095(%r15), 0(1)
+0xe1 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: pku 0, 0(256,%r1)
+0xe1 0xff 0x00 0x00 0x10 0x00
+
+# CHECK: pku 0, 0(256,%r15)
+0xe1 0xff 0x00 0x00 0xf0 0x00
+
# CHECK: plo %r0, 0, %r0, 0
0xee 0x00 0x00 0x00 0x00 0x00
@@ -9904,6 +10534,48 @@
# CHECK: sly %r15, 0
0xe3 0xf0 0x00 0x00 0x00 0x5f
+# CHECK: sp 0(1), 0(1)
+0xfb 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: sp 0(1), 0(1,%r1)
+0xfb 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: sp 0(1), 0(1,%r15)
+0xfb 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: sp 0(1), 4095(1)
+0xfb 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: sp 0(1), 4095(1,%r1)
+0xfb 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: sp 0(1), 4095(1,%r15)
+0xfb 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: sp 0(1,%r1), 0(1)
+0xfb 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: sp 0(1,%r15), 0(1)
+0xfb 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: sp 4095(1,%r1), 0(1)
+0xfb 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: sp 4095(1,%r15), 0(1)
+0xfb 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: sp 0(16,%r1), 0(1)
+0xfb 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: sp 0(16,%r15), 0(1)
+0xfb 0xf0 0xf0 0x00 0x00 0x00
+
+# CHECK: sp 0(1), 0(16,%r1)
+0xfb 0x0f 0x00 0x00 0x10 0x00
+
+# CHECK: sp 0(1), 0(16,%r15)
+0xfb 0x0f 0x00 0x00 0xf0 0x00
+
# CHECK: spm %r0
0x04 0x00
@@ -10255,6 +10927,45 @@
# CHECK: srnmt 4095(%r15)
0xb2 0xb9 0xff 0xff
+# CHECK: srp 0(1), 0, 0
+0xf0 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: srp 0(1), 0, 15
+0xf0 0x0f 0x00 0x00 0x00 0x00
+
+# CHECK: srp 0(1), 0(%r1), 0
+0xf0 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: srp 0(1), 0(%r15), 0
+0xf0 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: srp 0(1), 4095, 0
+0xf0 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: srp 0(1), 4095(%r1), 0
+0xf0 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: srp 0(1), 4095(%r15), 0
+0xf0 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: srp 0(1,%r1), 0, 0
+0xf0 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: srp 0(1,%r15), 0, 0
+0xf0 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: srp 4095(1,%r1), 0, 0
+0xf0 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: srp 4095(1,%r15), 0, 0
+0xf0 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: srp 0(16,%r1), 0, 0
+0xf0 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: srp 0(16,%r15), 0, 0
+0xf0 0xf0 0xf0 0x00 0x00 0x00
+
# CHECK: srst %r0, %r0
0xb2 0x5e 0x00 0x00
@@ -11500,6 +12211,27 @@
# CHECK: tmy 524287(%r15), 42
0xeb 0x2a 0xff 0xff 0x7f 0x51
+# CHECK: tp 0(1)
+0xeb 0x00 0x00 0x00 0x00 0xc0
+
+# CHECK: tp 0(1,%r1)
+0xeb 0x00 0x10 0x00 0x00 0xc0
+
+# CHECK: tp 0(1,%r15)
+0xeb 0x00 0xf0 0x00 0x00 0xc0
+
+# CHECK: tp 4095(1,%r1)
+0xeb 0x00 0x1f 0xff 0x00 0xc0
+
+# CHECK: tp 4095(1,%r15)
+0xeb 0x00 0xff 0xff 0x00 0xc0
+
+# CHECK: tp 0(16,%r1)
+0xeb 0xf0 0x10 0x00 0x00 0xc0
+
+# CHECK: tp 0(16,%r15)
+0xeb 0xf0 0xf0 0x00 0x00 0xc0
+
# CHECK: tr 0(1), 0
0xdc 0x00 0x00 0x00 0x00 0x00
@@ -11746,6 +12478,120 @@
# CHECK: ts 4095(%r15)
0x93 0x00 0xff 0xff
+# CHECK: unpk 0(1), 0(1)
+0xf3 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: unpk 0(1), 0(1,%r1)
+0xf3 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: unpk 0(1), 0(1,%r15)
+0xf3 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: unpk 0(1), 4095(1)
+0xf3 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: unpk 0(1), 4095(1,%r1)
+0xf3 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: unpk 0(1), 4095(1,%r15)
+0xf3 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: unpk 0(1,%r1), 0(1)
+0xf3 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: unpk 0(1,%r15), 0(1)
+0xf3 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: unpk 4095(1,%r1), 0(1)
+0xf3 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: unpk 4095(1,%r15), 0(1)
+0xf3 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: unpk 0(16,%r1), 0(1)
+0xf3 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: unpk 0(16,%r15), 0(1)
+0xf3 0xf0 0xf0 0x00 0x00 0x00
+
+# CHECK: unpk 0(1), 0(16,%r1)
+0xf3 0x0f 0x00 0x00 0x10 0x00
+
+# CHECK: unpk 0(1), 0(16,%r15)
+0xf3 0x0f 0x00 0x00 0xf0 0x00
+
+# CHECK: unpka 0(1), 0
+0xea 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: unpka 0(1), 0(%r1)
+0xea 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: unpka 0(1), 0(%r15)
+0xea 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: unpka 0(1), 4095
+0xea 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: unpka 0(1), 4095(%r1)
+0xea 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: unpka 0(1), 4095(%r15)
+0xea 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: unpka 0(1,%r1), 0
+0xea 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: unpka 0(1,%r15), 0
+0xea 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: unpka 4095(1,%r1), 0
+0xea 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: unpka 4095(1,%r15), 0
+0xea 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: unpka 0(256,%r1), 0
+0xea 0xff 0x10 0x00 0x00 0x00
+
+# CHECK: unpka 0(256,%r15), 0
+0xea 0xff 0xf0 0x00 0x00 0x00
+
+# CHECK: unpku 0(1), 0
+0xe2 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: unpku 0(1), 0(%r1)
+0xe2 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: unpku 0(1), 0(%r15)
+0xe2 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: unpku 0(1), 4095
+0xe2 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: unpku 0(1), 4095(%r1)
+0xe2 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: unpku 0(1), 4095(%r15)
+0xe2 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: unpku 0(1,%r1), 0
+0xe2 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: unpku 0(1,%r15), 0
+0xe2 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: unpku 4095(1,%r1), 0
+0xe2 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: unpku 4095(1,%r15), 0
+0xe2 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: unpku 0(256,%r1), 0
+0xe2 0xff 0x10 0x00 0x00 0x00
+
+# CHECK: unpku 0(256,%r15), 0
+0xe2 0xff 0xf0 0x00 0x00 0x00
+
# CHECK: x %r0, 0
0x57 0x00 0x00 0x00
@@ -11967,3 +12813,45 @@
# CHECK: xy %r15, 0
0xe3 0xf0 0x00 0x00 0x00 0x57
+
+# CHECK: zap 0(1), 0(1)
+0xf8 0x00 0x00 0x00 0x00 0x00
+
+# CHECK: zap 0(1), 0(1,%r1)
+0xf8 0x00 0x00 0x00 0x10 0x00
+
+# CHECK: zap 0(1), 0(1,%r15)
+0xf8 0x00 0x00 0x00 0xf0 0x00
+
+# CHECK: zap 0(1), 4095(1)
+0xf8 0x00 0x00 0x00 0x0f 0xff
+
+# CHECK: zap 0(1), 4095(1,%r1)
+0xf8 0x00 0x00 0x00 0x1f 0xff
+
+# CHECK: zap 0(1), 4095(1,%r15)
+0xf8 0x00 0x00 0x00 0xff 0xff
+
+# CHECK: zap 0(1,%r1), 0(1)
+0xf8 0x00 0x10 0x00 0x00 0x00
+
+# CHECK: zap 0(1,%r15), 0(1)
+0xf8 0x00 0xf0 0x00 0x00 0x00
+
+# CHECK: zap 4095(1,%r1), 0(1)
+0xf8 0x00 0x1f 0xff 0x00 0x00
+
+# CHECK: zap 4095(1,%r15), 0(1)
+0xf8 0x00 0xff 0xff 0x00 0x00
+
+# CHECK: zap 0(16,%r1), 0(1)
+0xf8 0xf0 0x10 0x00 0x00 0x00
+
+# CHECK: zap 0(16,%r15), 0(1)
+0xf8 0xf0 0xf0 0x00 0x00 0x00
+
+# CHECK: zap 0(1), 0(16,%r1)
+0xf8 0x0f 0x00 0x00 0x10 0x00
+
+# CHECK: zap 0(1), 0(16,%r15)
+0xf8 0x0f 0x00 0x00 0xf0 0x00
diff --git a/llvm/test/MC/SystemZ/insn-bad.s b/llvm/test/MC/SystemZ/insn-bad.s
index 607246ae25d..6616f278318 100644
--- a/llvm/test/MC/SystemZ/insn-bad.s
+++ b/llvm/test/MC/SystemZ/insn-bad.s
@@ -219,6 +219,59 @@
aly %r0, -524289
aly %r0, 524288
+#CHECK: error: missing length in address
+#CHECK: ap 0, 0(1)
+#CHECK: error: missing length in address
+#CHECK: ap 0(1), 0
+#CHECK: error: missing length in address
+#CHECK: ap 0(%r1), 0(1,%r1)
+#CHECK: error: missing length in address
+#CHECK: ap 0(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: ap 0(0,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: ap 0(1,%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: ap 0(17,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: ap 0(1,%r1), 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: ap -1(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: ap 4096(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: ap 0(1,%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: ap 0(1,%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: ap 0(1,%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: ap 0(1,%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: ap 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: ap 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: ap 0(-), 0(1)
+
+ ap 0, 0(1)
+ ap 0(1), 0
+ ap 0(%r1), 0(1,%r1)
+ ap 0(1,%r1), 0(%r1)
+ ap 0(0,%r1), 0(1,%r1)
+ ap 0(1,%r1), 0(0,%r1)
+ ap 0(17,%r1), 0(1,%r1)
+ ap 0(1,%r1), 0(17,%r1)
+ ap -1(1,%r1), 0(1,%r1)
+ ap 4096(1,%r1), 0(1,%r1)
+ ap 0(1,%r1), -1(1,%r1)
+ ap 0(1,%r1), 4096(1,%r1)
+ ap 0(1,%r0), 0(1,%r1)
+ ap 0(1,%r1), 0(1,%r0)
+ ap 0(%r1,%r2), 0(1,%r1)
+ ap 0(1,%r2), 0(%r1,%r2)
+ ap 0(-), 0(1)
+
#CHECK: error: instruction requires: distinct-ops
#CHECK: ark %r2,%r3,%r4
@@ -1492,6 +1545,59 @@
cly %r0, -524289
cly %r0, 524288
+#CHECK: error: missing length in address
+#CHECK: cp 0, 0(1)
+#CHECK: error: missing length in address
+#CHECK: cp 0(1), 0
+#CHECK: error: missing length in address
+#CHECK: cp 0(%r1), 0(1,%r1)
+#CHECK: error: missing length in address
+#CHECK: cp 0(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: cp 0(0,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: cp 0(1,%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: cp 0(17,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: cp 0(1,%r1), 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: cp -1(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: cp 4096(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: cp 0(1,%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: cp 0(1,%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: cp 0(1,%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: cp 0(1,%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: cp 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: cp 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: cp 0(-), 0(1)
+
+ cp 0, 0(1)
+ cp 0(1), 0
+ cp 0(%r1), 0(1,%r1)
+ cp 0(1,%r1), 0(%r1)
+ cp 0(0,%r1), 0(1,%r1)
+ cp 0(1,%r1), 0(0,%r1)
+ cp 0(17,%r1), 0(1,%r1)
+ cp 0(1,%r1), 0(17,%r1)
+ cp -1(1,%r1), 0(1,%r1)
+ cp 4096(1,%r1), 0(1,%r1)
+ cp 0(1,%r1), -1(1,%r1)
+ cp 0(1,%r1), 4096(1,%r1)
+ cp 0(1,%r0), 0(1,%r1)
+ cp 0(1,%r1), 0(1,%r0)
+ cp 0(%r1,%r2), 0(1,%r1)
+ cp 0(1,%r2), 0(%r1,%r2)
+ cp 0(-), 0(1)
+
#CHECK: error: offset out of range
#CHECK: crj %r0, %r0, 0, -0x100002
#CHECK: error: offset out of range
@@ -1694,6 +1800,54 @@
cuutf %r2, %r4, -1
cuutf %r2, %r4, 16
+#CHECK: error: invalid operand
+#CHECK: cvb %r0, -1
+#CHECK: error: invalid operand
+#CHECK: cvb %r0, 4096
+
+ cvb %r0, -1
+ cvb %r0, 4096
+
+#CHECK: error: invalid operand
+#CHECK: cvbg %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: cvbg %r0, 524288
+
+ cvbg %r0, -524289
+ cvbg %r0, 524288
+
+#CHECK: error: invalid operand
+#CHECK: cvby %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: cvby %r0, 524288
+
+ cvby %r0, -524289
+ cvby %r0, 524288
+
+#CHECK: error: invalid operand
+#CHECK: cvd %r0, -1
+#CHECK: error: invalid operand
+#CHECK: cvd %r0, 4096
+
+ cvd %r0, -1
+ cvd %r0, 4096
+
+#CHECK: error: invalid operand
+#CHECK: cvdg %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: cvdg %r0, 524288
+
+ cvdg %r0, -524289
+ cvdg %r0, 524288
+
+#CHECK: error: invalid operand
+#CHECK: cvdy %r0, -524289
+#CHECK: error: invalid operand
+#CHECK: cvdy %r0, 524288
+
+ cvdy %r0, -524289
+ cvdy %r0, 524288
+
#CHECK: error: invalid register pair
#CHECK: cxbr %f0, %f2
#CHECK: error: invalid register pair
@@ -1788,6 +1942,59 @@
dlr %r1, %r0
+#CHECK: error: missing length in address
+#CHECK: dp 0, 0(1)
+#CHECK: error: missing length in address
+#CHECK: dp 0(1), 0
+#CHECK: error: missing length in address
+#CHECK: dp 0(%r1), 0(1,%r1)
+#CHECK: error: missing length in address
+#CHECK: dp 0(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: dp 0(0,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: dp 0(1,%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: dp 0(17,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: dp 0(1,%r1), 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: dp -1(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: dp 4096(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: dp 0(1,%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: dp 0(1,%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: dp 0(1,%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: dp 0(1,%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: dp 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: dp 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: dp 0(-), 0(1)
+
+ dp 0, 0(1)
+ dp 0(1), 0
+ dp 0(%r1), 0(1,%r1)
+ dp 0(1,%r1), 0(%r1)
+ dp 0(0,%r1), 0(1,%r1)
+ dp 0(1,%r1), 0(0,%r1)
+ dp 0(17,%r1), 0(1,%r1)
+ dp 0(1,%r1), 0(17,%r1)
+ dp -1(1,%r1), 0(1,%r1)
+ dp 4096(1,%r1), 0(1,%r1)
+ dp 0(1,%r1), -1(1,%r1)
+ dp 0(1,%r1), 4096(1,%r1)
+ dp 0(1,%r0), 0(1,%r1)
+ dp 0(1,%r1), 0(1,%r0)
+ dp 0(%r1,%r2), 0(1,%r1)
+ dp 0(1,%r2), 0(%r1,%r2)
+ dp 0(-), 0(1)
+
#CHECK: error: invalid operand
#CHECK: dsg %r0, -524289
#CHECK: error: invalid operand
@@ -1845,6 +2052,94 @@
ectg 0(%r1),-1(%r15), %r2
ectg 0(%r1),4096(%r15), %r2
+#CHECK: error: missing length in address
+#CHECK: ed 0, 0
+#CHECK: error: missing length in address
+#CHECK: ed 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: ed 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: ed 0(0,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: ed 0(257,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: ed -1(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: ed 4096(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: ed 0(1,%r1), -1(%r1)
+#CHECK: error: invalid operand
+#CHECK: ed 0(1,%r1), 4096(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: ed 0(1,%r0), 0(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: ed 0(1,%r1), 0(%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: ed 0(%r1,%r2), 0(%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: ed 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: ed 0(-), 0
+
+ ed 0, 0
+ ed 0(%r1), 0(%r1)
+ ed 0(1,%r1), 0(2,%r1)
+ ed 0(0,%r1), 0(%r1)
+ ed 0(257,%r1), 0(%r1)
+ ed -1(1,%r1), 0(%r1)
+ ed 4096(1,%r1), 0(%r1)
+ ed 0(1,%r1), -1(%r1)
+ ed 0(1,%r1), 4096(%r1)
+ ed 0(1,%r0), 0(%r1)
+ ed 0(1,%r1), 0(%r0)
+ ed 0(%r1,%r2), 0(%r1)
+ ed 0(1,%r2), 0(%r1,%r2)
+ ed 0(-), 0
+
+#CHECK: error: missing length in address
+#CHECK: edmk 0, 0
+#CHECK: error: missing length in address
+#CHECK: edmk 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: edmk 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: edmk 0(0,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: edmk 0(257,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: edmk -1(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: edmk 4096(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: edmk 0(1,%r1), -1(%r1)
+#CHECK: error: invalid operand
+#CHECK: edmk 0(1,%r1), 4096(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: edmk 0(1,%r0), 0(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: edmk 0(1,%r1), 0(%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: edmk 0(%r1,%r2), 0(%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: edmk 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: edmk 0(-), 0
+
+ edmk 0, 0
+ edmk 0(%r1), 0(%r1)
+ edmk 0(1,%r1), 0(2,%r1)
+ edmk 0(0,%r1), 0(%r1)
+ edmk 0(257,%r1), 0(%r1)
+ edmk -1(1,%r1), 0(%r1)
+ edmk 4096(1,%r1), 0(%r1)
+ edmk 0(1,%r1), -1(%r1)
+ edmk 0(1,%r1), 4096(%r1)
+ edmk 0(1,%r0), 0(%r1)
+ edmk 0(1,%r1), 0(%r0)
+ edmk 0(%r1,%r2), 0(%r1)
+ edmk 0(1,%r2), 0(%r1,%r2)
+ edmk 0(-), 0
+
#CHECK: error: invalid operand
#CHECK: ex %r0, -1
#CHECK: error: invalid operand
@@ -2827,6 +3122,59 @@
mlgr %r1, %r0
+#CHECK: error: missing length in address
+#CHECK: mp 0, 0(1)
+#CHECK: error: missing length in address
+#CHECK: mp 0(1), 0
+#CHECK: error: missing length in address
+#CHECK: mp 0(%r1), 0(1,%r1)
+#CHECK: error: missing length in address
+#CHECK: mp 0(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mp 0(0,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mp 0(1,%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: mp 0(17,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mp 0(1,%r1), 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: mp -1(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mp 4096(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mp 0(1,%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mp 0(1,%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: mp 0(1,%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: mp 0(1,%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: mp 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: mp 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: mp 0(-), 0(1)
+
+ mp 0, 0(1)
+ mp 0(1), 0
+ mp 0(%r1), 0(1,%r1)
+ mp 0(1,%r1), 0(%r1)
+ mp 0(0,%r1), 0(1,%r1)
+ mp 0(1,%r1), 0(0,%r1)
+ mp 0(17,%r1), 0(1,%r1)
+ mp 0(1,%r1), 0(17,%r1)
+ mp -1(1,%r1), 0(1,%r1)
+ mp 4096(1,%r1), 0(1,%r1)
+ mp 0(1,%r1), -1(1,%r1)
+ mp 0(1,%r1), 4096(1,%r1)
+ mp 0(1,%r0), 0(1,%r1)
+ mp 0(1,%r1), 0(1,%r0)
+ mp 0(%r1,%r2), 0(1,%r1)
+ mp 0(1,%r2), 0(%r1,%r2)
+ mp 0(-), 0(1)
+
#CHECK: error: invalid operand
#CHECK: ms %r0, -1
#CHECK: error: invalid operand
@@ -3129,6 +3477,147 @@
mviy 0, -1
mviy 0, 256
+#CHECK: error: missing length in address
+#CHECK: mvn 0, 0
+#CHECK: error: missing length in address
+#CHECK: mvn 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: mvn 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: mvn 0(0,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvn 0(257,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvn -1(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvn 4096(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvn 0(1,%r1), -1(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvn 0(1,%r1), 4096(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: mvn 0(1,%r0), 0(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: mvn 0(1,%r1), 0(%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: mvn 0(%r1,%r2), 0(%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: mvn 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: mvn 0(-), 0
+
+ mvn 0, 0
+ mvn 0(%r1), 0(%r1)
+ mvn 0(1,%r1), 0(2,%r1)
+ mvn 0(0,%r1), 0(%r1)
+ mvn 0(257,%r1), 0(%r1)
+ mvn -1(1,%r1), 0(%r1)
+ mvn 4096(1,%r1), 0(%r1)
+ mvn 0(1,%r1), -1(%r1)
+ mvn 0(1,%r1), 4096(%r1)
+ mvn 0(1,%r0), 0(%r1)
+ mvn 0(1,%r1), 0(%r0)
+ mvn 0(%r1,%r2), 0(%r1)
+ mvn 0(1,%r2), 0(%r1,%r2)
+ mvn 0(-), 0
+
+#CHECK: error: missing length in address
+#CHECK: mvo 0, 0(1)
+#CHECK: error: missing length in address
+#CHECK: mvo 0(1), 0
+#CHECK: error: missing length in address
+#CHECK: mvo 0(%r1), 0(1,%r1)
+#CHECK: error: missing length in address
+#CHECK: mvo 0(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvo 0(0,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mvo 0(1,%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: mvo 0(17,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mvo 0(1,%r1), 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: mvo -1(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mvo 4096(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mvo 0(1,%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: mvo 0(1,%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: mvo 0(1,%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: mvo 0(1,%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: mvo 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: mvo 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: mvo 0(-), 0(1)
+
+ mvo 0, 0(1)
+ mvo 0(1), 0
+ mvo 0(%r1), 0(1,%r1)
+ mvo 0(1,%r1), 0(%r1)
+ mvo 0(0,%r1), 0(1,%r1)
+ mvo 0(1,%r1), 0(0,%r1)
+ mvo 0(17,%r1), 0(1,%r1)
+ mvo 0(1,%r1), 0(17,%r1)
+ mvo -1(1,%r1), 0(1,%r1)
+ mvo 4096(1,%r1), 0(1,%r1)
+ mvo 0(1,%r1), -1(1,%r1)
+ mvo 0(1,%r1), 4096(1,%r1)
+ mvo 0(1,%r0), 0(1,%r1)
+ mvo 0(1,%r1), 0(1,%r0)
+ mvo 0(%r1,%r2), 0(1,%r1)
+ mvo 0(1,%r2), 0(%r1,%r2)
+ mvo 0(-), 0(1)
+
+#CHECK: error: missing length in address
+#CHECK: mvz 0, 0
+#CHECK: error: missing length in address
+#CHECK: mvz 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: mvz 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: mvz 0(0,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvz 0(257,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvz -1(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvz 4096(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvz 0(1,%r1), -1(%r1)
+#CHECK: error: invalid operand
+#CHECK: mvz 0(1,%r1), 4096(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: mvz 0(1,%r0), 0(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: mvz 0(1,%r1), 0(%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: mvz 0(%r1,%r2), 0(%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: mvz 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: mvz 0(-), 0
+
+ mvz 0, 0
+ mvz 0(%r1), 0(%r1)
+ mvz 0(1,%r1), 0(2,%r1)
+ mvz 0(0,%r1), 0(%r1)
+ mvz 0(257,%r1), 0(%r1)
+ mvz -1(1,%r1), 0(%r1)
+ mvz 4096(1,%r1), 0(%r1)
+ mvz 0(1,%r1), -1(%r1)
+ mvz 0(1,%r1), 4096(%r1)
+ mvz 0(1,%r0), 0(%r1)
+ mvz 0(1,%r1), 0(%r0)
+ mvz 0(%r1,%r2), 0(%r1)
+ mvz 0(1,%r2), 0(%r1,%r2)
+ mvz 0(-), 0
+
#CHECK: error: invalid register pair
#CHECK: mxbr %f0, %f2
#CHECK: error: invalid register pair
@@ -3473,6 +3962,59 @@
oy %r0, -524289
oy %r0, 524288
+#CHECK: error: missing length in address
+#CHECK: pack 0, 0(1)
+#CHECK: error: missing length in address
+#CHECK: pack 0(1), 0
+#CHECK: error: missing length in address
+#CHECK: pack 0(%r1), 0(1,%r1)
+#CHECK: error: missing length in address
+#CHECK: pack 0(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: pack 0(0,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pack 0(1,%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: pack 0(17,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pack 0(1,%r1), 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: pack -1(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pack 4096(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pack 0(1,%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pack 0(1,%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: pack 0(1,%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: pack 0(1,%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: pack 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: pack 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: pack 0(-), 0(1)
+
+ pack 0, 0(1)
+ pack 0(1), 0
+ pack 0(%r1), 0(1,%r1)
+ pack 0(1,%r1), 0(%r1)
+ pack 0(0,%r1), 0(1,%r1)
+ pack 0(1,%r1), 0(0,%r1)
+ pack 0(17,%r1), 0(1,%r1)
+ pack 0(1,%r1), 0(17,%r1)
+ pack -1(1,%r1), 0(1,%r1)
+ pack 4096(1,%r1), 0(1,%r1)
+ pack 0(1,%r1), -1(1,%r1)
+ pack 0(1,%r1), 4096(1,%r1)
+ pack 0(1,%r0), 0(1,%r1)
+ pack 0(1,%r1), 0(1,%r0)
+ pack 0(%r1,%r2), 0(1,%r1)
+ pack 0(1,%r2), 0(%r1,%r2)
+ pack 0(-), 0(1)
+
#CHECK: error: instruction requires: message-security-assist-extension4
#CHECK: pcc
@@ -3512,6 +4054,94 @@
pfdrl 1, 1
pfdrl 1, 0x100000000
+#CHECK: error: missing length in address
+#CHECK: pka 0, 0
+#CHECK: error: missing length in address
+#CHECK: pka 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: pka 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: pka 0(%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: pka 0(%r1), 0(257,%r1)
+#CHECK: error: invalid operand
+#CHECK: pka -1(%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pka 4096(%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pka 0(%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pka 0(%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: pka 0(%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: pka 0(%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: pka 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: pka 0(%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: pka 0, 0(-)
+
+ pka 0, 0
+ pka 0(%r1), 0(%r1)
+ pka 0(1,%r1), 0(2,%r1)
+ pka 0(%r1), 0(0,%r1)
+ pka 0(%r1), 0(257,%r1)
+ pka -1(%r1), 0(1,%r1)
+ pka 4096(%r1), 0(1,%r1)
+ pka 0(%r1), -1(1,%r1)
+ pka 0(%r1), 4096(1,%r1)
+ pka 0(%r0), 0(1,%r1)
+ pka 0(%r1), 0(1,%r0)
+ pka 0(%r1,%r2), 0(1,%r1)
+ pka 0(%r2), 0(%r1,%r2)
+ pka 0, 0(-)
+
+#CHECK: error: missing length in address
+#CHECK: pku 0, 0
+#CHECK: error: missing length in address
+#CHECK: pku 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: pku 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: pku 0(%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: pku 0(%r1), 0(257,%r1)
+#CHECK: error: invalid operand
+#CHECK: pku -1(%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pku 4096(%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pku 0(%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: pku 0(%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: pku 0(%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: pku 0(%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: pku 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: pku 0(%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: pku 0, 0(-)
+
+ pku 0, 0
+ pku 0(%r1), 0(%r1)
+ pku 0(1,%r1), 0(2,%r1)
+ pku 0(%r1), 0(0,%r1)
+ pku 0(%r1), 0(257,%r1)
+ pku -1(%r1), 0(1,%r1)
+ pku 4096(%r1), 0(1,%r1)
+ pku 0(%r1), -1(1,%r1)
+ pku 0(%r1), 4096(1,%r1)
+ pku 0(%r0), 0(1,%r1)
+ pku 0(%r1), 0(1,%r0)
+ pku 0(%r1,%r2), 0(1,%r1)
+ pku 0(%r2), 0(%r1,%r2)
+ pku 0, 0(-)
+
#CHECK: error: invalid use of indexed addressing
#CHECK: plo %r2, 160(%r1,%r15), %r4, 160(%r15)
#CHECK: error: invalid operand
@@ -3843,6 +4473,59 @@
sly %r0, -524289
sly %r0, 524288
+#CHECK: error: missing length in address
+#CHECK: sp 0, 0(1)
+#CHECK: error: missing length in address
+#CHECK: sp 0(1), 0
+#CHECK: error: missing length in address
+#CHECK: sp 0(%r1), 0(1,%r1)
+#CHECK: error: missing length in address
+#CHECK: sp 0(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: sp 0(0,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: sp 0(1,%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: sp 0(17,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: sp 0(1,%r1), 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: sp -1(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: sp 4096(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: sp 0(1,%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: sp 0(1,%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: sp 0(1,%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: sp 0(1,%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: sp 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: sp 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: sp 0(-), 0(1)
+
+ sp 0, 0(1)
+ sp 0(1), 0
+ sp 0(%r1), 0(1,%r1)
+ sp 0(1,%r1), 0(%r1)
+ sp 0(0,%r1), 0(1,%r1)
+ sp 0(1,%r1), 0(0,%r1)
+ sp 0(17,%r1), 0(1,%r1)
+ sp 0(1,%r1), 0(17,%r1)
+ sp -1(1,%r1), 0(1,%r1)
+ sp 4096(1,%r1), 0(1,%r1)
+ sp 0(1,%r1), -1(1,%r1)
+ sp 0(1,%r1), 4096(1,%r1)
+ sp 0(1,%r0), 0(1,%r1)
+ sp 0(1,%r1), 0(1,%r0)
+ sp 0(%r1,%r2), 0(1,%r1)
+ sp 0(1,%r2), 0(%r1,%r2)
+ sp 0(-), 0(1)
+
#CHECK: error: invalid operand
#CHECK: sqdb %f0, -1
#CHECK: error: invalid operand
@@ -3965,6 +4648,56 @@
srnmt 4096
srnmt 0(%r1,%r2)
+#CHECK: error: missing length in address
+#CHECK: srp 0, 0, 0
+#CHECK: error: missing length in address
+#CHECK: srp 0(%r1), 0(%r1), 0
+#CHECK: error: invalid use of length addressing
+#CHECK: srp 0(1,%r1), 0(2,%r1), 0
+#CHECK: error: invalid operand
+#CHECK: srp 0(0,%r1), 0(%r1), 0
+#CHECK: error: invalid operand
+#CHECK: srp 0(17,%r1), 0(%r1), 0
+#CHECK: error: invalid operand
+#CHECK: srp -1(1,%r1), 0(%r1), 0
+#CHECK: error: invalid operand
+#CHECK: srp 4096(1,%r1), 0(%r1), 0
+#CHECK: error: invalid operand
+#CHECK: srp 0(1,%r1), -1(%r1), 0
+#CHECK: error: invalid operand
+#CHECK: srp 0(1,%r1), 4096(%r1), 0
+#CHECK: error: %r0 used in an address
+#CHECK: srp 0(1,%r0), 0(%r1), 0
+#CHECK: error: %r0 used in an address
+#CHECK: srp 0(1,%r1), 0(%r0), 0
+#CHECK: error: invalid use of indexed addressing
+#CHECK: srp 0(%r1,%r2), 0(%r1), 0
+#CHECK: error: invalid use of indexed addressing
+#CHECK: srp 0(1,%r2), 0(%r1,%r2), 0
+#CHECK: error: invalid operand
+#CHECK: srp 0(1), 0, -1
+#CHECK: error: invalid operand
+#CHECK: srp 0(1), 0, 16
+#CHECK: error: unknown token in expression
+#CHECK: srp 0(-), 0, 0
+
+ srp 0, 0, 0
+ srp 0(%r1), 0(%r1), 0
+ srp 0(1,%r1), 0(2,%r1), 0
+ srp 0(0,%r1), 0(%r1), 0
+ srp 0(17,%r1), 0(%r1), 0
+ srp -1(1,%r1), 0(%r1), 0
+ srp 4096(1,%r1), 0(%r1), 0
+ srp 0(1,%r1), -1(%r1), 0
+ srp 0(1,%r1), 4096(%r1), 0
+ srp 0(1,%r0), 0(%r1), 0
+ srp 0(1,%r1), 0(%r0), 0
+ srp 0(%r1,%r2), 0(%r1), 0
+ srp 0(1,%r2), 0(%r1,%r2), 0
+ srp 0(1), 0, -1
+ srp 0(1), 0, 16
+ srp 0(-), 0, 0
+
#CHECK: error: invalid operand
#CHECK: st %r0, -1
#CHECK: error: invalid operand
@@ -4348,6 +5081,35 @@
tmy 0, 256
#CHECK: error: missing length in address
+#CHECK: tp 0
+#CHECK: error: missing length in address
+#CHECK: tp 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: tp 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: tp 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: tp -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: tp 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: tp 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: tp 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: tp 0(-)
+
+ tp 0
+ tp 0(%r1)
+ tp 0(0,%r1)
+ tp 0(17,%r1)
+ tp -1(1,%r1)
+ tp 4096(1,%r1)
+ tp 0(1,%r0)
+ tp 0(%r1,%r2)
+ tp 0(-)
+
+#CHECK: error: missing length in address
#CHECK: tr 0, 0
#CHECK: error: missing length in address
#CHECK: tr 0(%r1), 0(%r1)
@@ -4561,6 +5323,147 @@
ts 4096
ts 0(%r1,%r2)
+#CHECK: error: missing length in address
+#CHECK: unpk 0, 0(1)
+#CHECK: error: missing length in address
+#CHECK: unpk 0(1), 0
+#CHECK: error: missing length in address
+#CHECK: unpk 0(%r1), 0(1,%r1)
+#CHECK: error: missing length in address
+#CHECK: unpk 0(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpk 0(0,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: unpk 0(1,%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: unpk 0(17,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: unpk 0(1,%r1), 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: unpk -1(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: unpk 4096(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: unpk 0(1,%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: unpk 0(1,%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: unpk 0(1,%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: unpk 0(1,%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: unpk 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: unpk 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: unpk 0(-), 0(1)
+
+ unpk 0, 0(1)
+ unpk 0(1), 0
+ unpk 0(%r1), 0(1,%r1)
+ unpk 0(1,%r1), 0(%r1)
+ unpk 0(0,%r1), 0(1,%r1)
+ unpk 0(1,%r1), 0(0,%r1)
+ unpk 0(17,%r1), 0(1,%r1)
+ unpk 0(1,%r1), 0(17,%r1)
+ unpk -1(1,%r1), 0(1,%r1)
+ unpk 4096(1,%r1), 0(1,%r1)
+ unpk 0(1,%r1), -1(1,%r1)
+ unpk 0(1,%r1), 4096(1,%r1)
+ unpk 0(1,%r0), 0(1,%r1)
+ unpk 0(1,%r1), 0(1,%r0)
+ unpk 0(%r1,%r2), 0(1,%r1)
+ unpk 0(1,%r2), 0(%r1,%r2)
+ unpk 0(-), 0(1)
+
+#CHECK: error: missing length in address
+#CHECK: unpka 0, 0
+#CHECK: error: missing length in address
+#CHECK: unpka 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: unpka 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: unpka 0(0,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpka 0(257,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpka -1(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpka 4096(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpka 0(1,%r1), -1(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpka 0(1,%r1), 4096(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: unpka 0(1,%r0), 0(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: unpka 0(1,%r1), 0(%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: unpka 0(%r1,%r2), 0(%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: unpka 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: unpka 0(-), 0
+
+ unpka 0, 0
+ unpka 0(%r1), 0(%r1)
+ unpka 0(1,%r1), 0(2,%r1)
+ unpka 0(0,%r1), 0(%r1)
+ unpka 0(257,%r1), 0(%r1)
+ unpka -1(1,%r1), 0(%r1)
+ unpka 4096(1,%r1), 0(%r1)
+ unpka 0(1,%r1), -1(%r1)
+ unpka 0(1,%r1), 4096(%r1)
+ unpka 0(1,%r0), 0(%r1)
+ unpka 0(1,%r1), 0(%r0)
+ unpka 0(%r1,%r2), 0(%r1)
+ unpka 0(1,%r2), 0(%r1,%r2)
+ unpka 0(-), 0
+
+#CHECK: error: missing length in address
+#CHECK: unpku 0, 0
+#CHECK: error: missing length in address
+#CHECK: unpku 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: unpku 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: unpku 0(0,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpku 0(257,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpku -1(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpku 4096(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpku 0(1,%r1), -1(%r1)
+#CHECK: error: invalid operand
+#CHECK: unpku 0(1,%r1), 4096(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: unpku 0(1,%r0), 0(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: unpku 0(1,%r1), 0(%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: unpku 0(%r1,%r2), 0(%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: unpku 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: unpku 0(-), 0
+
+ unpku 0, 0
+ unpku 0(%r1), 0(%r1)
+ unpku 0(1,%r1), 0(2,%r1)
+ unpku 0(0,%r1), 0(%r1)
+ unpku 0(257,%r1), 0(%r1)
+ unpku -1(1,%r1), 0(%r1)
+ unpku 4096(1,%r1), 0(%r1)
+ unpku 0(1,%r1), -1(%r1)
+ unpku 0(1,%r1), 4096(%r1)
+ unpku 0(1,%r0), 0(%r1)
+ unpku 0(1,%r1), 0(%r0)
+ unpku 0(%r1,%r2), 0(%r1)
+ unpku 0(1,%r2), 0(%r1,%r2)
+ unpku 0(-), 0
+
#CHECK: error: invalid operand
#CHECK: x %r0, -1
#CHECK: error: invalid operand
@@ -4688,3 +5591,56 @@
xy %r0, -524289
xy %r0, 524288
+
+#CHECK: error: missing length in address
+#CHECK: zap 0, 0(1)
+#CHECK: error: missing length in address
+#CHECK: zap 0(1), 0
+#CHECK: error: missing length in address
+#CHECK: zap 0(%r1), 0(1,%r1)
+#CHECK: error: missing length in address
+#CHECK: zap 0(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: zap 0(0,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: zap 0(1,%r1), 0(0,%r1)
+#CHECK: error: invalid operand
+#CHECK: zap 0(17,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: zap 0(1,%r1), 0(17,%r1)
+#CHECK: error: invalid operand
+#CHECK: zap -1(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: zap 4096(1,%r1), 0(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: zap 0(1,%r1), -1(1,%r1)
+#CHECK: error: invalid operand
+#CHECK: zap 0(1,%r1), 4096(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: zap 0(1,%r0), 0(1,%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: zap 0(1,%r1), 0(1,%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: zap 0(%r1,%r2), 0(1,%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: zap 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: zap 0(-), 0(1)
+
+ zap 0, 0(1)
+ zap 0(1), 0
+ zap 0(%r1), 0(1,%r1)
+ zap 0(1,%r1), 0(%r1)
+ zap 0(0,%r1), 0(1,%r1)
+ zap 0(1,%r1), 0(0,%r1)
+ zap 0(17,%r1), 0(1,%r1)
+ zap 0(1,%r1), 0(17,%r1)
+ zap -1(1,%r1), 0(1,%r1)
+ zap 4096(1,%r1), 0(1,%r1)
+ zap 0(1,%r1), -1(1,%r1)
+ zap 0(1,%r1), 4096(1,%r1)
+ zap 0(1,%r0), 0(1,%r1)
+ zap 0(1,%r1), 0(1,%r0)
+ zap 0(%r1,%r2), 0(1,%r1)
+ zap 0(1,%r2), 0(%r1,%r2)
+ zap 0(-), 0(1)
diff --git a/llvm/test/MC/SystemZ/insn-good.s b/llvm/test/MC/SystemZ/insn-good.s
index df075c7c72f..6086c9a2aa9 100644
--- a/llvm/test/MC/SystemZ/insn-good.s
+++ b/llvm/test/MC/SystemZ/insn-good.s
@@ -447,6 +447,36 @@
aly %r0, 524287(%r15,%r1)
aly %r15, 0
+#CHECK: ap 0(1), 0(1) # encoding: [0xfa,0x00,0x00,0x00,0x00,0x00]
+#CHECK: ap 0(1), 0(1,%r1) # encoding: [0xfa,0x00,0x00,0x00,0x10,0x00]
+#CHECK: ap 0(1), 0(1,%r15) # encoding: [0xfa,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: ap 0(1), 4095(1) # encoding: [0xfa,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: ap 0(1), 4095(1,%r1) # encoding: [0xfa,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: ap 0(1), 4095(1,%r15) # encoding: [0xfa,0x00,0x00,0x00,0xff,0xff]
+#CHECK: ap 0(1,%r1), 0(1) # encoding: [0xfa,0x00,0x10,0x00,0x00,0x00]
+#CHECK: ap 0(1,%r15), 0(1) # encoding: [0xfa,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: ap 4095(1,%r1), 0(1) # encoding: [0xfa,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: ap 4095(1,%r15), 0(1) # encoding: [0xfa,0x00,0xff,0xff,0x00,0x00]
+#CHECK: ap 0(16,%r1), 0(1) # encoding: [0xfa,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: ap 0(16,%r15), 0(1) # encoding: [0xfa,0xf0,0xf0,0x00,0x00,0x00]
+#CHECK: ap 0(1), 0(16,%r1) # encoding: [0xfa,0x0f,0x00,0x00,0x10,0x00]
+#CHECK: ap 0(1), 0(16,%r15) # encoding: [0xfa,0x0f,0x00,0x00,0xf0,0x00]
+
+ ap 0(1), 0(1)
+ ap 0(1), 0(1,%r1)
+ ap 0(1), 0(1,%r15)
+ ap 0(1), 4095(1)
+ ap 0(1), 4095(1,%r1)
+ ap 0(1), 4095(1,%r15)
+ ap 0(1,%r1), 0(1)
+ ap 0(1,%r15), 0(1)
+ ap 4095(1,%r1), 0(1)
+ ap 4095(1,%r15), 0(1)
+ ap 0(16,%r1), 0(1)
+ ap 0(16,%r15), 0(1)
+ ap 0(1), 0(16,%r1)
+ ap 0(1), 0(16,%r15)
+
#CHECK: ar %r0, %r0 # encoding: [0x1a,0x00]
#CHECK: ar %r0, %r15 # encoding: [0x1a,0x0f]
#CHECK: ar %r15, %r0 # encoding: [0x1a,0xf0]
@@ -5228,6 +5258,36 @@
cly %r0, 524287(%r15,%r1)
cly %r15, 0
+#CHECK: cp 0(1), 0(1) # encoding: [0xf9,0x00,0x00,0x00,0x00,0x00]
+#CHECK: cp 0(1), 0(1,%r1) # encoding: [0xf9,0x00,0x00,0x00,0x10,0x00]
+#CHECK: cp 0(1), 0(1,%r15) # encoding: [0xf9,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: cp 0(1), 4095(1) # encoding: [0xf9,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: cp 0(1), 4095(1,%r1) # encoding: [0xf9,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: cp 0(1), 4095(1,%r15) # encoding: [0xf9,0x00,0x00,0x00,0xff,0xff]
+#CHECK: cp 0(1,%r1), 0(1) # encoding: [0xf9,0x00,0x10,0x00,0x00,0x00]
+#CHECK: cp 0(1,%r15), 0(1) # encoding: [0xf9,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: cp 4095(1,%r1), 0(1) # encoding: [0xf9,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: cp 4095(1,%r15), 0(1) # encoding: [0xf9,0x00,0xff,0xff,0x00,0x00]
+#CHECK: cp 0(16,%r1), 0(1) # encoding: [0xf9,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: cp 0(16,%r15), 0(1) # encoding: [0xf9,0xf0,0xf0,0x00,0x00,0x00]
+#CHECK: cp 0(1), 0(16,%r1) # encoding: [0xf9,0x0f,0x00,0x00,0x10,0x00]
+#CHECK: cp 0(1), 0(16,%r15) # encoding: [0xf9,0x0f,0x00,0x00,0xf0,0x00]
+
+ cp 0(1), 0(1)
+ cp 0(1), 0(1,%r1)
+ cp 0(1), 0(1,%r15)
+ cp 0(1), 4095(1)
+ cp 0(1), 4095(1,%r1)
+ cp 0(1), 4095(1,%r15)
+ cp 0(1,%r1), 0(1)
+ cp 0(1,%r15), 0(1)
+ cp 4095(1,%r1), 0(1)
+ cp 4095(1,%r15), 0(1)
+ cp 0(16,%r1), 0(1)
+ cp 0(16,%r15), 0(1)
+ cp 0(1), 0(16,%r1)
+ cp 0(1), 0(16,%r15)
+
#CHECK: cpsdr %f0, %f0, %f0 # encoding: [0xb3,0x72,0x00,0x00]
#CHECK: cpsdr %f0, %f0, %f15 # encoding: [0xb3,0x72,0x00,0x0f]
#CHECK: cpsdr %f0, %f15, %f0 # encoding: [0xb3,0x72,0xf0,0x00]
@@ -5823,6 +5883,126 @@
cuutf %r4, %r12, 0
cuutf %r4, %r12, 15
+#CHECK: cvb %r0, 0 # encoding: [0x4f,0x00,0x00,0x00]
+#CHECK: cvb %r0, 4095 # encoding: [0x4f,0x00,0x0f,0xff]
+#CHECK: cvb %r0, 0(%r1) # encoding: [0x4f,0x00,0x10,0x00]
+#CHECK: cvb %r0, 0(%r15) # encoding: [0x4f,0x00,0xf0,0x00]
+#CHECK: cvb %r0, 4095(%r1,%r15) # encoding: [0x4f,0x01,0xff,0xff]
+#CHECK: cvb %r0, 4095(%r15,%r1) # encoding: [0x4f,0x0f,0x1f,0xff]
+#CHECK: cvb %r15, 0 # encoding: [0x4f,0xf0,0x00,0x00]
+
+ cvb %r0, 0
+ cvb %r0, 4095
+ cvb %r0, 0(%r1)
+ cvb %r0, 0(%r15)
+ cvb %r0, 4095(%r1,%r15)
+ cvb %r0, 4095(%r15,%r1)
+ cvb %r15, 0
+
+#CHECK: cvbg %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x0e]
+#CHECK: cvbg %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x0e]
+#CHECK: cvbg %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x0e]
+#CHECK: cvbg %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x0e]
+#CHECK: cvbg %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x0e]
+#CHECK: cvbg %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x0e]
+#CHECK: cvbg %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x0e]
+#CHECK: cvbg %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x0e]
+#CHECK: cvbg %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x0e]
+#CHECK: cvbg %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x0e]
+
+ cvbg %r0, -524288
+ cvbg %r0, -1
+ cvbg %r0, 0
+ cvbg %r0, 1
+ cvbg %r0, 524287
+ cvbg %r0, 0(%r1)
+ cvbg %r0, 0(%r15)
+ cvbg %r0, 524287(%r1,%r15)
+ cvbg %r0, 524287(%r15,%r1)
+ cvbg %r15, 0
+
+#CHECK: cvby %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x06]
+#CHECK: cvby %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x06]
+#CHECK: cvby %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x06]
+#CHECK: cvby %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x06]
+#CHECK: cvby %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x06]
+#CHECK: cvby %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x06]
+#CHECK: cvby %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x06]
+#CHECK: cvby %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x06]
+#CHECK: cvby %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x06]
+#CHECK: cvby %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x06]
+
+ cvby %r0, -524288
+ cvby %r0, -1
+ cvby %r0, 0
+ cvby %r0, 1
+ cvby %r0, 524287
+ cvby %r0, 0(%r1)
+ cvby %r0, 0(%r15)
+ cvby %r0, 524287(%r1,%r15)
+ cvby %r0, 524287(%r15,%r1)
+ cvby %r15, 0
+
+#CHECK: cvd %r0, 0 # encoding: [0x4e,0x00,0x00,0x00]
+#CHECK: cvd %r0, 4095 # encoding: [0x4e,0x00,0x0f,0xff]
+#CHECK: cvd %r0, 0(%r1) # encoding: [0x4e,0x00,0x10,0x00]
+#CHECK: cvd %r0, 0(%r15) # encoding: [0x4e,0x00,0xf0,0x00]
+#CHECK: cvd %r0, 4095(%r1,%r15) # encoding: [0x4e,0x01,0xff,0xff]
+#CHECK: cvd %r0, 4095(%r15,%r1) # encoding: [0x4e,0x0f,0x1f,0xff]
+#CHECK: cvd %r15, 0 # encoding: [0x4e,0xf0,0x00,0x00]
+
+ cvd %r0, 0
+ cvd %r0, 4095
+ cvd %r0, 0(%r1)
+ cvd %r0, 0(%r15)
+ cvd %r0, 4095(%r1,%r15)
+ cvd %r0, 4095(%r15,%r1)
+ cvd %r15, 0
+
+#CHECK: cvdg %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x2e]
+#CHECK: cvdg %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x2e]
+#CHECK: cvdg %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x2e]
+#CHECK: cvdg %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x2e]
+#CHECK: cvdg %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x2e]
+#CHECK: cvdg %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x2e]
+#CHECK: cvdg %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x2e]
+#CHECK: cvdg %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x2e]
+#CHECK: cvdg %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x2e]
+#CHECK: cvdg %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x2e]
+
+ cvdg %r0, -524288
+ cvdg %r0, -1
+ cvdg %r0, 0
+ cvdg %r0, 1
+ cvdg %r0, 524287
+ cvdg %r0, 0(%r1)
+ cvdg %r0, 0(%r15)
+ cvdg %r0, 524287(%r1,%r15)
+ cvdg %r0, 524287(%r15,%r1)
+ cvdg %r15, 0
+
+#CHECK: cvdy %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x26]
+#CHECK: cvdy %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x26]
+#CHECK: cvdy %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x26]
+#CHECK: cvdy %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x26]
+#CHECK: cvdy %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x26]
+#CHECK: cvdy %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x26]
+#CHECK: cvdy %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x26]
+#CHECK: cvdy %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x26]
+#CHECK: cvdy %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x26]
+#CHECK: cvdy %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x26]
+
+ cvdy %r0, -524288
+ cvdy %r0, -1
+ cvdy %r0, 0
+ cvdy %r0, 1
+ cvdy %r0, 524287
+ cvdy %r0, 0(%r1)
+ cvdy %r0, 0(%r15)
+ cvdy %r0, 524287(%r1,%r15)
+ cvdy %r0, 524287(%r15,%r1)
+ cvdy %r15, 0
+
#CHECK: cxbr %f0, %f0 # encoding: [0xb3,0x49,0x00,0x00]
#CHECK: cxbr %f0, %f13 # encoding: [0xb3,0x49,0x00,0x0d]
#CHECK: cxbr %f8, %f8 # encoding: [0xb3,0x49,0x00,0x88]
@@ -5995,6 +6175,36 @@
dlr %r14,%r0
dlr %r6,%r9
+#CHECK: dp 0(1), 0(1) # encoding: [0xfd,0x00,0x00,0x00,0x00,0x00]
+#CHECK: dp 0(1), 0(1,%r1) # encoding: [0xfd,0x00,0x00,0x00,0x10,0x00]
+#CHECK: dp 0(1), 0(1,%r15) # encoding: [0xfd,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: dp 0(1), 4095(1) # encoding: [0xfd,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: dp 0(1), 4095(1,%r1) # encoding: [0xfd,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: dp 0(1), 4095(1,%r15) # encoding: [0xfd,0x00,0x00,0x00,0xff,0xff]
+#CHECK: dp 0(1,%r1), 0(1) # encoding: [0xfd,0x00,0x10,0x00,0x00,0x00]
+#CHECK: dp 0(1,%r15), 0(1) # encoding: [0xfd,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: dp 4095(1,%r1), 0(1) # encoding: [0xfd,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: dp 4095(1,%r15), 0(1) # encoding: [0xfd,0x00,0xff,0xff,0x00,0x00]
+#CHECK: dp 0(16,%r1), 0(1) # encoding: [0xfd,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: dp 0(16,%r15), 0(1) # encoding: [0xfd,0xf0,0xf0,0x00,0x00,0x00]
+#CHECK: dp 0(1), 0(16,%r1) # encoding: [0xfd,0x0f,0x00,0x00,0x10,0x00]
+#CHECK: dp 0(1), 0(16,%r15) # encoding: [0xfd,0x0f,0x00,0x00,0xf0,0x00]
+
+ dp 0(1), 0(1)
+ dp 0(1), 0(1,%r1)
+ dp 0(1), 0(1,%r15)
+ dp 0(1), 4095(1)
+ dp 0(1), 4095(1,%r1)
+ dp 0(1), 4095(1,%r15)
+ dp 0(1,%r1), 0(1)
+ dp 0(1,%r15), 0(1)
+ dp 4095(1,%r1), 0(1)
+ dp 4095(1,%r15), 0(1)
+ dp 0(16,%r1), 0(1)
+ dp 0(16,%r15), 0(1)
+ dp 0(1), 0(16,%r1)
+ dp 0(1), 0(16,%r15)
+
#CHECK: dsg %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x0d]
#CHECK: dsg %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x0d]
#CHECK: dsg %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x0d]
@@ -6095,6 +6305,58 @@
ectg 0(%r1),1(%r15),%r2
ectg 0(%r1),4095(%r15),%r2
+#CHECK: ed 0(1), 0 # encoding: [0xde,0x00,0x00,0x00,0x00,0x00]
+#CHECK: ed 0(1), 0(%r1) # encoding: [0xde,0x00,0x00,0x00,0x10,0x00]
+#CHECK: ed 0(1), 0(%r15) # encoding: [0xde,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: ed 0(1), 4095 # encoding: [0xde,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: ed 0(1), 4095(%r1) # encoding: [0xde,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: ed 0(1), 4095(%r15) # encoding: [0xde,0x00,0x00,0x00,0xff,0xff]
+#CHECK: ed 0(1,%r1), 0 # encoding: [0xde,0x00,0x10,0x00,0x00,0x00]
+#CHECK: ed 0(1,%r15), 0 # encoding: [0xde,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: ed 4095(1,%r1), 0 # encoding: [0xde,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: ed 4095(1,%r15), 0 # encoding: [0xde,0x00,0xff,0xff,0x00,0x00]
+#CHECK: ed 0(256,%r1), 0 # encoding: [0xde,0xff,0x10,0x00,0x00,0x00]
+#CHECK: ed 0(256,%r15), 0 # encoding: [0xde,0xff,0xf0,0x00,0x00,0x00]
+
+ ed 0(1), 0
+ ed 0(1), 0(%r1)
+ ed 0(1), 0(%r15)
+ ed 0(1), 4095
+ ed 0(1), 4095(%r1)
+ ed 0(1), 4095(%r15)
+ ed 0(1,%r1), 0
+ ed 0(1,%r15), 0
+ ed 4095(1,%r1), 0
+ ed 4095(1,%r15), 0
+ ed 0(256,%r1), 0
+ ed 0(256,%r15), 0
+
+#CHECK: edmk 0(1), 0 # encoding: [0xdf,0x00,0x00,0x00,0x00,0x00]
+#CHECK: edmk 0(1), 0(%r1) # encoding: [0xdf,0x00,0x00,0x00,0x10,0x00]
+#CHECK: edmk 0(1), 0(%r15) # encoding: [0xdf,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: edmk 0(1), 4095 # encoding: [0xdf,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: edmk 0(1), 4095(%r1) # encoding: [0xdf,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: edmk 0(1), 4095(%r15) # encoding: [0xdf,0x00,0x00,0x00,0xff,0xff]
+#CHECK: edmk 0(1,%r1), 0 # encoding: [0xdf,0x00,0x10,0x00,0x00,0x00]
+#CHECK: edmk 0(1,%r15), 0 # encoding: [0xdf,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: edmk 4095(1,%r1), 0 # encoding: [0xdf,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: edmk 4095(1,%r15), 0 # encoding: [0xdf,0x00,0xff,0xff,0x00,0x00]
+#CHECK: edmk 0(256,%r1), 0 # encoding: [0xdf,0xff,0x10,0x00,0x00,0x00]
+#CHECK: edmk 0(256,%r15), 0 # encoding: [0xdf,0xff,0xf0,0x00,0x00,0x00]
+
+ edmk 0(1), 0
+ edmk 0(1), 0(%r1)
+ edmk 0(1), 0(%r15)
+ edmk 0(1), 4095
+ edmk 0(1), 4095(%r1)
+ edmk 0(1), 4095(%r15)
+ edmk 0(1,%r1), 0
+ edmk 0(1,%r15), 0
+ edmk 4095(1,%r1), 0
+ edmk 4095(1,%r15), 0
+ edmk 0(256,%r1), 0
+ edmk 0(256,%r15), 0
+
#CHECK: efpc %r0 # encoding: [0xb3,0x8c,0x00,0x00]
#CHECK: efpc %r1 # encoding: [0xb3,0x8c,0x00,0x10]
#CHECK: efpc %r15 # encoding: [0xb3,0x8c,0x00,0xf0]
@@ -8412,6 +8674,36 @@
mlgr %r14,%r0
mlgr %r6,%r9
+#CHECK: mp 0(1), 0(1) # encoding: [0xfc,0x00,0x00,0x00,0x00,0x00]
+#CHECK: mp 0(1), 0(1,%r1) # encoding: [0xfc,0x00,0x00,0x00,0x10,0x00]
+#CHECK: mp 0(1), 0(1,%r15) # encoding: [0xfc,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: mp 0(1), 4095(1) # encoding: [0xfc,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: mp 0(1), 4095(1,%r1) # encoding: [0xfc,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: mp 0(1), 4095(1,%r15) # encoding: [0xfc,0x00,0x00,0x00,0xff,0xff]
+#CHECK: mp 0(1,%r1), 0(1) # encoding: [0xfc,0x00,0x10,0x00,0x00,0x00]
+#CHECK: mp 0(1,%r15), 0(1) # encoding: [0xfc,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: mp 4095(1,%r1), 0(1) # encoding: [0xfc,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: mp 4095(1,%r15), 0(1) # encoding: [0xfc,0x00,0xff,0xff,0x00,0x00]
+#CHECK: mp 0(16,%r1), 0(1) # encoding: [0xfc,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: mp 0(16,%r15), 0(1) # encoding: [0xfc,0xf0,0xf0,0x00,0x00,0x00]
+#CHECK: mp 0(1), 0(16,%r1) # encoding: [0xfc,0x0f,0x00,0x00,0x10,0x00]
+#CHECK: mp 0(1), 0(16,%r15) # encoding: [0xfc,0x0f,0x00,0x00,0xf0,0x00]
+
+ mp 0(1), 0(1)
+ mp 0(1), 0(1,%r1)
+ mp 0(1), 0(1,%r15)
+ mp 0(1), 4095(1)
+ mp 0(1), 4095(1,%r1)
+ mp 0(1), 4095(1,%r15)
+ mp 0(1,%r1), 0(1)
+ mp 0(1,%r15), 0(1)
+ mp 4095(1,%r1), 0(1)
+ mp 4095(1,%r15), 0(1)
+ mp 0(16,%r1), 0(1)
+ mp 0(16,%r15), 0(1)
+ mp 0(1), 0(16,%r1)
+ mp 0(1), 0(16,%r15)
+
#CHECK: ms %r0, 0 # encoding: [0x71,0x00,0x00,0x00]
#CHECK: ms %r0, 4095 # encoding: [0x71,0x00,0x0f,0xff]
#CHECK: ms %r0, 0(%r1) # encoding: [0x71,0x00,0x10,0x00]
@@ -8858,6 +9150,62 @@
mviy 524287(%r1), 42
mviy 524287(%r15), 42
+#CHECK: mvn 0(1), 0 # encoding: [0xd1,0x00,0x00,0x00,0x00,0x00]
+#CHECK: mvn 0(1), 0(%r1) # encoding: [0xd1,0x00,0x00,0x00,0x10,0x00]
+#CHECK: mvn 0(1), 0(%r15) # encoding: [0xd1,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: mvn 0(1), 4095 # encoding: [0xd1,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: mvn 0(1), 4095(%r1) # encoding: [0xd1,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: mvn 0(1), 4095(%r15) # encoding: [0xd1,0x00,0x00,0x00,0xff,0xff]
+#CHECK: mvn 0(1,%r1), 0 # encoding: [0xd1,0x00,0x10,0x00,0x00,0x00]
+#CHECK: mvn 0(1,%r15), 0 # encoding: [0xd1,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: mvn 4095(1,%r1), 0 # encoding: [0xd1,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: mvn 4095(1,%r15), 0 # encoding: [0xd1,0x00,0xff,0xff,0x00,0x00]
+#CHECK: mvn 0(256,%r1), 0 # encoding: [0xd1,0xff,0x10,0x00,0x00,0x00]
+#CHECK: mvn 0(256,%r15), 0 # encoding: [0xd1,0xff,0xf0,0x00,0x00,0x00]
+
+ mvn 0(1), 0
+ mvn 0(1), 0(%r1)
+ mvn 0(1), 0(%r15)
+ mvn 0(1), 4095
+ mvn 0(1), 4095(%r1)
+ mvn 0(1), 4095(%r15)
+ mvn 0(1,%r1), 0
+ mvn 0(1,%r15), 0
+ mvn 4095(1,%r1), 0
+ mvn 4095(1,%r15), 0
+ mvn 0(256,%r1), 0
+ mvn 0(256,%r15), 0
+
+#CHECK: mvo 0(1), 0(1) # encoding: [0xf1,0x00,0x00,0x00,0x00,0x00]
+#CHECK: mvo 0(1), 0(1,%r1) # encoding: [0xf1,0x00,0x00,0x00,0x10,0x00]
+#CHECK: mvo 0(1), 0(1,%r15) # encoding: [0xf1,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: mvo 0(1), 4095(1) # encoding: [0xf1,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: mvo 0(1), 4095(1,%r1) # encoding: [0xf1,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: mvo 0(1), 4095(1,%r15) # encoding: [0xf1,0x00,0x00,0x00,0xff,0xff]
+#CHECK: mvo 0(1,%r1), 0(1) # encoding: [0xf1,0x00,0x10,0x00,0x00,0x00]
+#CHECK: mvo 0(1,%r15), 0(1) # encoding: [0xf1,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: mvo 4095(1,%r1), 0(1) # encoding: [0xf1,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: mvo 4095(1,%r15), 0(1) # encoding: [0xf1,0x00,0xff,0xff,0x00,0x00]
+#CHECK: mvo 0(16,%r1), 0(1) # encoding: [0xf1,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: mvo 0(16,%r15), 0(1) # encoding: [0xf1,0xf0,0xf0,0x00,0x00,0x00]
+#CHECK: mvo 0(1), 0(16,%r1) # encoding: [0xf1,0x0f,0x00,0x00,0x10,0x00]
+#CHECK: mvo 0(1), 0(16,%r15) # encoding: [0xf1,0x0f,0x00,0x00,0xf0,0x00]
+
+ mvo 0(1), 0(1)
+ mvo 0(1), 0(1,%r1)
+ mvo 0(1), 0(1,%r15)
+ mvo 0(1), 4095(1)
+ mvo 0(1), 4095(1,%r1)
+ mvo 0(1), 4095(1,%r15)
+ mvo 0(1,%r1), 0(1)
+ mvo 0(1,%r15), 0(1)
+ mvo 4095(1,%r1), 0(1)
+ mvo 4095(1,%r15), 0(1)
+ mvo 0(16,%r1), 0(1)
+ mvo 0(16,%r15), 0(1)
+ mvo 0(1), 0(16,%r1)
+ mvo 0(1), 0(16,%r15)
+
#CHECK: mvst %r0, %r0 # encoding: [0xb2,0x55,0x00,0x00]
#CHECK: mvst %r0, %r15 # encoding: [0xb2,0x55,0x00,0x0f]
#CHECK: mvst %r15, %r0 # encoding: [0xb2,0x55,0x00,0xf0]
@@ -8868,6 +9216,32 @@
mvst %r15,%r0
mvst %r7,%r8
+#CHECK: mvz 0(1), 0 # encoding: [0xd3,0x00,0x00,0x00,0x00,0x00]
+#CHECK: mvz 0(1), 0(%r1) # encoding: [0xd3,0x00,0x00,0x00,0x10,0x00]
+#CHECK: mvz 0(1), 0(%r15) # encoding: [0xd3,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: mvz 0(1), 4095 # encoding: [0xd3,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: mvz 0(1), 4095(%r1) # encoding: [0xd3,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: mvz 0(1), 4095(%r15) # encoding: [0xd3,0x00,0x00,0x00,0xff,0xff]
+#CHECK: mvz 0(1,%r1), 0 # encoding: [0xd3,0x00,0x10,0x00,0x00,0x00]
+#CHECK: mvz 0(1,%r15), 0 # encoding: [0xd3,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: mvz 4095(1,%r1), 0 # encoding: [0xd3,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: mvz 4095(1,%r15), 0 # encoding: [0xd3,0x00,0xff,0xff,0x00,0x00]
+#CHECK: mvz 0(256,%r1), 0 # encoding: [0xd3,0xff,0x10,0x00,0x00,0x00]
+#CHECK: mvz 0(256,%r15), 0 # encoding: [0xd3,0xff,0xf0,0x00,0x00,0x00]
+
+ mvz 0(1), 0
+ mvz 0(1), 0(%r1)
+ mvz 0(1), 0(%r15)
+ mvz 0(1), 4095
+ mvz 0(1), 4095(%r1)
+ mvz 0(1), 4095(%r15)
+ mvz 0(1,%r1), 0
+ mvz 0(1,%r15), 0
+ mvz 4095(1,%r1), 0
+ mvz 4095(1,%r15), 0
+ mvz 0(256,%r1), 0
+ mvz 0(256,%r15), 0
+
#CHECK: mxbr %f0, %f0 # encoding: [0xb3,0x4c,0x00,0x00]
#CHECK: mxbr %f0, %f13 # encoding: [0xb3,0x4c,0x00,0x0d]
#CHECK: mxbr %f8, %f5 # encoding: [0xb3,0x4c,0x00,0x85]
@@ -9310,6 +9684,36 @@
oy %r0, 524287(%r15,%r1)
oy %r15, 0
+#CHECK: pack 0(1), 0(1) # encoding: [0xf2,0x00,0x00,0x00,0x00,0x00]
+#CHECK: pack 0(1), 0(1,%r1) # encoding: [0xf2,0x00,0x00,0x00,0x10,0x00]
+#CHECK: pack 0(1), 0(1,%r15) # encoding: [0xf2,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: pack 0(1), 4095(1) # encoding: [0xf2,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: pack 0(1), 4095(1,%r1) # encoding: [0xf2,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: pack 0(1), 4095(1,%r15) # encoding: [0xf2,0x00,0x00,0x00,0xff,0xff]
+#CHECK: pack 0(1,%r1), 0(1) # encoding: [0xf2,0x00,0x10,0x00,0x00,0x00]
+#CHECK: pack 0(1,%r15), 0(1) # encoding: [0xf2,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: pack 4095(1,%r1), 0(1) # encoding: [0xf2,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: pack 4095(1,%r15), 0(1) # encoding: [0xf2,0x00,0xff,0xff,0x00,0x00]
+#CHECK: pack 0(16,%r1), 0(1) # encoding: [0xf2,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: pack 0(16,%r15), 0(1) # encoding: [0xf2,0xf0,0xf0,0x00,0x00,0x00]
+#CHECK: pack 0(1), 0(16,%r1) # encoding: [0xf2,0x0f,0x00,0x00,0x10,0x00]
+#CHECK: pack 0(1), 0(16,%r15) # encoding: [0xf2,0x0f,0x00,0x00,0xf0,0x00]
+
+ pack 0(1), 0(1)
+ pack 0(1), 0(1,%r1)
+ pack 0(1), 0(1,%r15)
+ pack 0(1), 4095(1)
+ pack 0(1), 4095(1,%r1)
+ pack 0(1), 4095(1,%r15)
+ pack 0(1,%r1), 0(1)
+ pack 0(1,%r15), 0(1)
+ pack 4095(1,%r1), 0(1)
+ pack 4095(1,%r15), 0(1)
+ pack 0(16,%r1), 0(1)
+ pack 0(16,%r15), 0(1)
+ pack 0(1), 0(16,%r1)
+ pack 0(1), 0(16,%r15)
+
#CHECK: pfd 0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x36]
#CHECK: pfd 0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x36]
#CHECK: pfd 0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x36]
@@ -9369,6 +9773,58 @@
pfdrl 7, frob@PLT
pfdrl 8, frob@PLT
+#CHECK: pka 0, 0(1) # encoding: [0xe9,0x00,0x00,0x00,0x00,0x00]
+#CHECK: pka 0, 0(1,%r1) # encoding: [0xe9,0x00,0x00,0x00,0x10,0x00]
+#CHECK: pka 0, 0(1,%r15) # encoding: [0xe9,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: pka 0, 4095(1) # encoding: [0xe9,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: pka 0, 4095(1,%r1) # encoding: [0xe9,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: pka 0, 4095(1,%r15) # encoding: [0xe9,0x00,0x00,0x00,0xff,0xff]
+#CHECK: pka 0(%r1), 0(1) # encoding: [0xe9,0x00,0x10,0x00,0x00,0x00]
+#CHECK: pka 0(%r15), 0(1) # encoding: [0xe9,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: pka 4095(%r1), 0(1) # encoding: [0xe9,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: pka 4095(%r15), 0(1) # encoding: [0xe9,0x00,0xff,0xff,0x00,0x00]
+#CHECK: pka 0, 0(256,%r1) # encoding: [0xe9,0xff,0x00,0x00,0x10,0x00]
+#CHECK: pka 0, 0(256,%r15) # encoding: [0xe9,0xff,0x00,0x00,0xf0,0x00]
+
+ pka 0, 0(1)
+ pka 0, 0(1,%r1)
+ pka 0, 0(1,%r15)
+ pka 0, 4095(1)
+ pka 0, 4095(1,%r1)
+ pka 0, 4095(1,%r15)
+ pka 0(%r1), 0(1)
+ pka 0(%r15), 0(1)
+ pka 4095(%r1), 0(1)
+ pka 4095(%r15), 0(1)
+ pka 0, 0(256,%r1)
+ pka 0, 0(256,%r15)
+
+#CHECK: pku 0, 0(1) # encoding: [0xe1,0x00,0x00,0x00,0x00,0x00]
+#CHECK: pku 0, 0(1,%r1) # encoding: [0xe1,0x00,0x00,0x00,0x10,0x00]
+#CHECK: pku 0, 0(1,%r15) # encoding: [0xe1,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: pku 0, 4095(1) # encoding: [0xe1,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: pku 0, 4095(1,%r1) # encoding: [0xe1,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: pku 0, 4095(1,%r15) # encoding: [0xe1,0x00,0x00,0x00,0xff,0xff]
+#CHECK: pku 0(%r1), 0(1) # encoding: [0xe1,0x00,0x10,0x00,0x00,0x00]
+#CHECK: pku 0(%r15), 0(1) # encoding: [0xe1,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: pku 4095(%r1), 0(1) # encoding: [0xe1,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: pku 4095(%r15), 0(1) # encoding: [0xe1,0x00,0xff,0xff,0x00,0x00]
+#CHECK: pku 0, 0(256,%r1) # encoding: [0xe1,0xff,0x00,0x00,0x10,0x00]
+#CHECK: pku 0, 0(256,%r15) # encoding: [0xe1,0xff,0x00,0x00,0xf0,0x00]
+
+ pku 0, 0(1)
+ pku 0, 0(1,%r1)
+ pku 0, 0(1,%r15)
+ pku 0, 4095(1)
+ pku 0, 4095(1,%r1)
+ pku 0, 4095(1,%r15)
+ pku 0(%r1), 0(1)
+ pku 0(%r15), 0(1)
+ pku 4095(%r1), 0(1)
+ pku 4095(%r15), 0(1)
+ pku 0, 0(256,%r1)
+ pku 0, 0(256,%r15)
+
#CHECK: plo %r0, 0, %r0, 0 # encoding: [0xee,0x00,0x00,0x00,0x00,0x00]
#CHECK: plo %r2, 0(%r1), %r4, 0(%r15) # encoding: [0xee,0x24,0x10,0x00,0xf0,0x00]
#CHECK: plo %r2, 1(%r1), %r4, 0(%r15) # encoding: [0xee,0x24,0x10,0x01,0xf0,0x00]
@@ -9962,6 +10418,36 @@
sly %r0, 524287(%r15,%r1)
sly %r15, 0
+#CHECK: sp 0(1), 0(1) # encoding: [0xfb,0x00,0x00,0x00,0x00,0x00]
+#CHECK: sp 0(1), 0(1,%r1) # encoding: [0xfb,0x00,0x00,0x00,0x10,0x00]
+#CHECK: sp 0(1), 0(1,%r15) # encoding: [0xfb,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: sp 0(1), 4095(1) # encoding: [0xfb,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: sp 0(1), 4095(1,%r1) # encoding: [0xfb,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: sp 0(1), 4095(1,%r15) # encoding: [0xfb,0x00,0x00,0x00,0xff,0xff]
+#CHECK: sp 0(1,%r1), 0(1) # encoding: [0xfb,0x00,0x10,0x00,0x00,0x00]
+#CHECK: sp 0(1,%r15), 0(1) # encoding: [0xfb,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: sp 4095(1,%r1), 0(1) # encoding: [0xfb,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: sp 4095(1,%r15), 0(1) # encoding: [0xfb,0x00,0xff,0xff,0x00,0x00]
+#CHECK: sp 0(16,%r1), 0(1) # encoding: [0xfb,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: sp 0(16,%r15), 0(1) # encoding: [0xfb,0xf0,0xf0,0x00,0x00,0x00]
+#CHECK: sp 0(1), 0(16,%r1) # encoding: [0xfb,0x0f,0x00,0x00,0x10,0x00]
+#CHECK: sp 0(1), 0(16,%r15) # encoding: [0xfb,0x0f,0x00,0x00,0xf0,0x00]
+
+ sp 0(1), 0(1)
+ sp 0(1), 0(1,%r1)
+ sp 0(1), 0(1,%r15)
+ sp 0(1), 4095(1)
+ sp 0(1), 4095(1,%r1)
+ sp 0(1), 4095(1,%r15)
+ sp 0(1,%r1), 0(1)
+ sp 0(1,%r15), 0(1)
+ sp 4095(1,%r1), 0(1)
+ sp 4095(1,%r15), 0(1)
+ sp 0(16,%r1), 0(1)
+ sp 0(16,%r15), 0(1)
+ sp 0(1), 0(16,%r1)
+ sp 0(1), 0(16,%r15)
+
#CHECK: spm %r0 # encoding: [0x04,0x00]
#CHECK: spm %r1 # encoding: [0x04,0x10]
#CHECK: spm %r15 # encoding: [0x04,0xf0]
@@ -10158,6 +10644,34 @@
srnmt 4095(%r1)
srnmt 4095(%r15)
+#CHECK: srp 0(1), 0, 0 # encoding: [0xf0,0x00,0x00,0x00,0x00,0x00]
+#CHECK: srp 0(1), 0, 15 # encoding: [0xf0,0x0f,0x00,0x00,0x00,0x00]
+#CHECK: srp 0(1), 0(%r1), 0 # encoding: [0xf0,0x00,0x00,0x00,0x10,0x00]
+#CHECK: srp 0(1), 0(%r15), 0 # encoding: [0xf0,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: srp 0(1), 4095, 0 # encoding: [0xf0,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: srp 0(1), 4095(%r1), 0 # encoding: [0xf0,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: srp 0(1), 4095(%r15), 0 # encoding: [0xf0,0x00,0x00,0x00,0xff,0xff]
+#CHECK: srp 0(1,%r1), 0, 0 # encoding: [0xf0,0x00,0x10,0x00,0x00,0x00]
+#CHECK: srp 0(1,%r15), 0, 0 # encoding: [0xf0,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: srp 4095(1,%r1), 0, 0 # encoding: [0xf0,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: srp 4095(1,%r15), 0, 0 # encoding: [0xf0,0x00,0xff,0xff,0x00,0x00]
+#CHECK: srp 0(16,%r1), 0, 0 # encoding: [0xf0,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: srp 0(16,%r15), 0, 0 # encoding: [0xf0,0xf0,0xf0,0x00,0x00,0x00]
+
+ srp 0(1), 0, 0
+ srp 0(1), 0, 15
+ srp 0(1), 0(%r1), 0
+ srp 0(1), 0(%r15), 0
+ srp 0(1), 4095, 0
+ srp 0(1), 4095(%r1), 0
+ srp 0(1), 4095(%r15), 0
+ srp 0(1,%r1), 0, 0
+ srp 0(1,%r15), 0, 0
+ srp 4095(1,%r1), 0, 0
+ srp 4095(1,%r15), 0, 0
+ srp 0(16,%r1), 0, 0
+ srp 0(16,%r15), 0, 0
+
#CHECK: srst %r0, %r0 # encoding: [0xb2,0x5e,0x00,0x00]
#CHECK: srst %r0, %r15 # encoding: [0xb2,0x5e,0x00,0x0f]
#CHECK: srst %r15, %r0 # encoding: [0xb2,0x5e,0x00,0xf0]
@@ -11029,6 +11543,22 @@
tmy 524287(%r1), 42
tmy 524287(%r15), 42
+#CHECK: tp 0(1) # encoding: [0xeb,0x00,0x00,0x00,0x00,0xc0]
+#CHECK: tp 0(1,%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0xc0]
+#CHECK: tp 0(1,%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xc0]
+#CHECK: tp 4095(1,%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x00,0xc0]
+#CHECK: tp 4095(1,%r15) # encoding: [0xeb,0x00,0xff,0xff,0x00,0xc0]
+#CHECK: tp 0(16,%r1) # encoding: [0xeb,0xf0,0x10,0x00,0x00,0xc0]
+#CHECK: tp 0(16,%r15) # encoding: [0xeb,0xf0,0xf0,0x00,0x00,0xc0]
+
+ tp 0(1)
+ tp 0(1,%r1)
+ tp 0(1,%r15)
+ tp 4095(1,%r1)
+ tp 4095(1,%r15)
+ tp 0(16,%r1)
+ tp 0(16,%r15)
+
#CHECK: tr 0(1), 0 # encoding: [0xdc,0x00,0x00,0x00,0x00,0x00]
#CHECK: tr 0(1), 0(%r1) # encoding: [0xdc,0x00,0x00,0x00,0x10,0x00]
#CHECK: tr 0(1), 0(%r15) # encoding: [0xdc,0x00,0x00,0x00,0xf0,0x00]
@@ -11215,6 +11745,88 @@
ts 4095(%r1)
ts 4095(%r15)
+#CHECK: unpk 0(1), 0(1) # encoding: [0xf3,0x00,0x00,0x00,0x00,0x00]
+#CHECK: unpk 0(1), 0(1,%r1) # encoding: [0xf3,0x00,0x00,0x00,0x10,0x00]
+#CHECK: unpk 0(1), 0(1,%r15) # encoding: [0xf3,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: unpk 0(1), 4095(1) # encoding: [0xf3,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: unpk 0(1), 4095(1,%r1) # encoding: [0xf3,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: unpk 0(1), 4095(1,%r15) # encoding: [0xf3,0x00,0x00,0x00,0xff,0xff]
+#CHECK: unpk 0(1,%r1), 0(1) # encoding: [0xf3,0x00,0x10,0x00,0x00,0x00]
+#CHECK: unpk 0(1,%r15), 0(1) # encoding: [0xf3,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: unpk 4095(1,%r1), 0(1) # encoding: [0xf3,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: unpk 4095(1,%r15), 0(1) # encoding: [0xf3,0x00,0xff,0xff,0x00,0x00]
+#CHECK: unpk 0(16,%r1), 0(1) # encoding: [0xf3,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: unpk 0(16,%r15), 0(1) # encoding: [0xf3,0xf0,0xf0,0x00,0x00,0x00]
+#CHECK: unpk 0(1), 0(16,%r1) # encoding: [0xf3,0x0f,0x00,0x00,0x10,0x00]
+#CHECK: unpk 0(1), 0(16,%r15) # encoding: [0xf3,0x0f,0x00,0x00,0xf0,0x00]
+
+ unpk 0(1), 0(1)
+ unpk 0(1), 0(1,%r1)
+ unpk 0(1), 0(1,%r15)
+ unpk 0(1), 4095(1)
+ unpk 0(1), 4095(1,%r1)
+ unpk 0(1), 4095(1,%r15)
+ unpk 0(1,%r1), 0(1)
+ unpk 0(1,%r15), 0(1)
+ unpk 4095(1,%r1), 0(1)
+ unpk 4095(1,%r15), 0(1)
+ unpk 0(16,%r1), 0(1)
+ unpk 0(16,%r15), 0(1)
+ unpk 0(1), 0(16,%r1)
+ unpk 0(1), 0(16,%r15)
+
+#CHECK: unpka 0(1), 0 # encoding: [0xea,0x00,0x00,0x00,0x00,0x00]
+#CHECK: unpka 0(1), 0(%r1) # encoding: [0xea,0x00,0x00,0x00,0x10,0x00]
+#CHECK: unpka 0(1), 0(%r15) # encoding: [0xea,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: unpka 0(1), 4095 # encoding: [0xea,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: unpka 0(1), 4095(%r1) # encoding: [0xea,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: unpka 0(1), 4095(%r15) # encoding: [0xea,0x00,0x00,0x00,0xff,0xff]
+#CHECK: unpka 0(1,%r1), 0 # encoding: [0xea,0x00,0x10,0x00,0x00,0x00]
+#CHECK: unpka 0(1,%r15), 0 # encoding: [0xea,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: unpka 4095(1,%r1), 0 # encoding: [0xea,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: unpka 4095(1,%r15), 0 # encoding: [0xea,0x00,0xff,0xff,0x00,0x00]
+#CHECK: unpka 0(256,%r1), 0 # encoding: [0xea,0xff,0x10,0x00,0x00,0x00]
+#CHECK: unpka 0(256,%r15), 0 # encoding: [0xea,0xff,0xf0,0x00,0x00,0x00]
+
+ unpka 0(1), 0
+ unpka 0(1), 0(%r1)
+ unpka 0(1), 0(%r15)
+ unpka 0(1), 4095
+ unpka 0(1), 4095(%r1)
+ unpka 0(1), 4095(%r15)
+ unpka 0(1,%r1), 0
+ unpka 0(1,%r15), 0
+ unpka 4095(1,%r1), 0
+ unpka 4095(1,%r15), 0
+ unpka 0(256,%r1), 0
+ unpka 0(256,%r15), 0
+
+#CHECK: unpku 0(1), 0 # encoding: [0xe2,0x00,0x00,0x00,0x00,0x00]
+#CHECK: unpku 0(1), 0(%r1) # encoding: [0xe2,0x00,0x00,0x00,0x10,0x00]
+#CHECK: unpku 0(1), 0(%r15) # encoding: [0xe2,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: unpku 0(1), 4095 # encoding: [0xe2,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: unpku 0(1), 4095(%r1) # encoding: [0xe2,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: unpku 0(1), 4095(%r15) # encoding: [0xe2,0x00,0x00,0x00,0xff,0xff]
+#CHECK: unpku 0(1,%r1), 0 # encoding: [0xe2,0x00,0x10,0x00,0x00,0x00]
+#CHECK: unpku 0(1,%r15), 0 # encoding: [0xe2,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: unpku 4095(1,%r1), 0 # encoding: [0xe2,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: unpku 4095(1,%r15), 0 # encoding: [0xe2,0x00,0xff,0xff,0x00,0x00]
+#CHECK: unpku 0(256,%r1), 0 # encoding: [0xe2,0xff,0x10,0x00,0x00,0x00]
+#CHECK: unpku 0(256,%r15), 0 # encoding: [0xe2,0xff,0xf0,0x00,0x00,0x00]
+
+ unpku 0(1), 0
+ unpku 0(1), 0(%r1)
+ unpku 0(1), 0(%r15)
+ unpku 0(1), 4095
+ unpku 0(1), 4095(%r1)
+ unpku 0(1), 4095(%r15)
+ unpku 0(1,%r1), 0
+ unpku 0(1,%r15), 0
+ unpku 4095(1,%r1), 0
+ unpku 4095(1,%r15), 0
+ unpku 0(256,%r1), 0
+ unpku 0(256,%r15), 0
+
#CHECK: x %r0, 0 # encoding: [0x57,0x00,0x00,0x00]
#CHECK: x %r0, 4095 # encoding: [0x57,0x00,0x0f,0xff]
#CHECK: x %r0, 0(%r1) # encoding: [0x57,0x00,0x10,0x00]
@@ -11374,3 +11986,33 @@
xy %r0, 524287(%r1,%r15)
xy %r0, 524287(%r15,%r1)
xy %r15, 0
+
+#CHECK: zap 0(1), 0(1) # encoding: [0xf8,0x00,0x00,0x00,0x00,0x00]
+#CHECK: zap 0(1), 0(1,%r1) # encoding: [0xf8,0x00,0x00,0x00,0x10,0x00]
+#CHECK: zap 0(1), 0(1,%r15) # encoding: [0xf8,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: zap 0(1), 4095(1) # encoding: [0xf8,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: zap 0(1), 4095(1,%r1) # encoding: [0xf8,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: zap 0(1), 4095(1,%r15) # encoding: [0xf8,0x00,0x00,0x00,0xff,0xff]
+#CHECK: zap 0(1,%r1), 0(1) # encoding: [0xf8,0x00,0x10,0x00,0x00,0x00]
+#CHECK: zap 0(1,%r15), 0(1) # encoding: [0xf8,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: zap 4095(1,%r1), 0(1) # encoding: [0xf8,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: zap 4095(1,%r15), 0(1) # encoding: [0xf8,0x00,0xff,0xff,0x00,0x00]
+#CHECK: zap 0(16,%r1), 0(1) # encoding: [0xf8,0xf0,0x10,0x00,0x00,0x00]
+#CHECK: zap 0(16,%r15), 0(1) # encoding: [0xf8,0xf0,0xf0,0x00,0x00,0x00]
+#CHECK: zap 0(1), 0(16,%r1) # encoding: [0xf8,0x0f,0x00,0x00,0x10,0x00]
+#CHECK: zap 0(1), 0(16,%r15) # encoding: [0xf8,0x0f,0x00,0x00,0xf0,0x00]
+
+ zap 0(1), 0(1)
+ zap 0(1), 0(1,%r1)
+ zap 0(1), 0(1,%r15)
+ zap 0(1), 4095(1)
+ zap 0(1), 4095(1,%r1)
+ zap 0(1), 4095(1,%r15)
+ zap 0(1,%r1), 0(1)
+ zap 0(1,%r15), 0(1)
+ zap 4095(1,%r1), 0(1)
+ zap 4095(1,%r15), 0(1)
+ zap 0(16,%r1), 0(1)
+ zap 0(16,%r15), 0(1)
+ zap 0(1), 0(16,%r1)
+ zap 0(1), 0(16,%r15)
OpenPOWER on IntegriCloud