summaryrefslogtreecommitdiffstats
path: root/llvm/test/MC/SystemZ
diff options
context:
space:
mode:
authorUlrich Weigand <ulrich.weigand@de.ibm.com>2017-05-10 12:41:12 +0000
committerUlrich Weigand <ulrich.weigand@de.ibm.com>2017-05-10 12:41:12 +0000
commit435cd1a3e48e7472c482b660646b99ae354d82cc (patch)
tree099dc71f780365c07c64b0899485d684886e78e8 /llvm/test/MC/SystemZ
parenteb1790953604bd618d8c5de71235a3c5dcc729d2 (diff)
downloadbcm5719-llvm-435cd1a3e48e7472c482b660646b99ae354d82cc.tar.gz
bcm5719-llvm-435cd1a3e48e7472c482b660646b99ae354d82cc.zip
[SystemZ] Add translate/convert instructions
This adds the set of character-set translate and convert instructions for assembler / disassembler use. llvm-svn: 302644
Diffstat (limited to 'llvm/test/MC/SystemZ')
-rw-r--r--llvm/test/MC/SystemZ/insn-bad.s303
-rw-r--r--llvm/test/MC/SystemZ/insn-good.s276
2 files changed, 579 insertions, 0 deletions
diff --git a/llvm/test/MC/SystemZ/insn-bad.s b/llvm/test/MC/SystemZ/insn-bad.s
index d03d6c962dd..96e9ef67cad 100644
--- a/llvm/test/MC/SystemZ/insn-bad.s
+++ b/llvm/test/MC/SystemZ/insn-bad.s
@@ -1587,6 +1587,78 @@
csy %r0, %r0, 0(%r1,%r2)
#CHECK: error: invalid register pair
+#CHECK: cu12 %r1, %r0
+#CHECK: error: invalid register pair
+#CHECK: cu12 %r0, %r1
+#CHECK: error: invalid operand
+#CHECK: cu12 %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: cu12 %r2, %r4, 16
+
+ cu12 %r1, %r0
+ cu12 %r0, %r1
+ cu12 %r2, %r4, -1
+ cu12 %r2, %r4, 16
+
+#CHECK: error: invalid register pair
+#CHECK: cu14 %r1, %r0
+#CHECK: error: invalid register pair
+#CHECK: cu14 %r0, %r1
+#CHECK: error: invalid operand
+#CHECK: cu14 %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: cu14 %r2, %r4, 16
+
+ cu14 %r1, %r0
+ cu14 %r0, %r1
+ cu14 %r2, %r4, -1
+ cu14 %r2, %r4, 16
+
+#CHECK: error: invalid register pair
+#CHECK: cu21 %r1, %r0
+#CHECK: error: invalid register pair
+#CHECK: cu21 %r0, %r1
+#CHECK: error: invalid operand
+#CHECK: cu21 %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: cu21 %r2, %r4, 16
+
+ cu21 %r1, %r0
+ cu21 %r0, %r1
+ cu21 %r2, %r4, -1
+ cu21 %r2, %r4, 16
+
+#CHECK: error: invalid register pair
+#CHECK: cu24 %r1, %r0
+#CHECK: error: invalid register pair
+#CHECK: cu24 %r0, %r1
+#CHECK: error: invalid operand
+#CHECK: cu24 %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: cu24 %r2, %r4, 16
+
+ cu24 %r1, %r0
+ cu24 %r0, %r1
+ cu24 %r2, %r4, -1
+ cu24 %r2, %r4, 16
+
+#CHECK: error: invalid register pair
+#CHECK: cu41 %r1, %r0
+#CHECK: error: invalid register pair
+#CHECK: cu41 %r0, %r1
+
+ cu41 %r1, %r0
+ cu41 %r0, %r1
+
+#CHECK: error: invalid register pair
+#CHECK: cu42 %r1, %r0
+#CHECK: error: invalid register pair
+#CHECK: cu42 %r0, %r1
+
+ cu42 %r1, %r0
+ cu42 %r0, %r1
+
+#CHECK: error: invalid register pair
#CHECK: cuse %r1, %r0
#CHECK: error: invalid register pair
#CHECK: cuse %r0, %r1
@@ -1595,6 +1667,34 @@
cuse %r0, %r1
#CHECK: error: invalid register pair
+#CHECK: cutfu %r1, %r0
+#CHECK: error: invalid register pair
+#CHECK: cutfu %r0, %r1
+#CHECK: error: invalid operand
+#CHECK: cutfu %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: cutfu %r2, %r4, 16
+
+ cutfu %r1, %r0
+ cutfu %r0, %r1
+ cutfu %r2, %r4, -1
+ cutfu %r2, %r4, 16
+
+#CHECK: error: invalid register pair
+#CHECK: cuutf %r1, %r0
+#CHECK: error: invalid register pair
+#CHECK: cuutf %r0, %r1
+#CHECK: error: invalid operand
+#CHECK: cuutf %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: cuutf %r2, %r4, 16
+
+ cuutf %r1, %r0
+ cuutf %r0, %r1
+ cuutf %r2, %r4, -1
+ cuutf %r2, %r4, 16
+
+#CHECK: error: invalid register pair
#CHECK: cxbr %f0, %f2
#CHECK: error: invalid register pair
#CHECK: cxbr %f2, %f0
@@ -4196,6 +4296,209 @@
tmy 0, -1
tmy 0, 256
+#CHECK: error: missing length in address
+#CHECK: tr 0, 0
+#CHECK: error: missing length in address
+#CHECK: tr 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: tr 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: tr 0(0,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: tr 0(257,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: tr -1(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: tr 4096(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: tr 0(1,%r1), -1(%r1)
+#CHECK: error: invalid operand
+#CHECK: tr 0(1,%r1), 4096(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: tr 0(1,%r0), 0(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: tr 0(1,%r1), 0(%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: tr 0(%r1,%r2), 0(%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: tr 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: tr 0(-), 0
+
+ tr 0, 0
+ tr 0(%r1), 0(%r1)
+ tr 0(1,%r1), 0(2,%r1)
+ tr 0(0,%r1), 0(%r1)
+ tr 0(257,%r1), 0(%r1)
+ tr -1(1,%r1), 0(%r1)
+ tr 4096(1,%r1), 0(%r1)
+ tr 0(1,%r1), -1(%r1)
+ tr 0(1,%r1), 4096(%r1)
+ tr 0(1,%r0), 0(%r1)
+ tr 0(1,%r1), 0(%r0)
+ tr 0(%r1,%r2), 0(%r1)
+ tr 0(1,%r2), 0(%r1,%r2)
+ tr 0(-), 0
+
+#CHECK: error: invalid register pair
+#CHECK: tre %r1, %r0
+
+ tre %r1, %r0
+
+#CHECK: error: invalid register pair
+#CHECK: troo %r1, %r0
+#CHECK: error: invalid operand
+#CHECK: troo %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: troo %r2, %r4, 16
+
+ troo %r1, %r0
+ troo %r2, %r4, -1
+ troo %r2, %r4, 16
+
+#CHECK: error: invalid register pair
+#CHECK: trot %r1, %r0
+#CHECK: error: invalid operand
+#CHECK: trot %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: trot %r2, %r4, 16
+
+ trot %r1, %r0
+ trot %r2, %r4, -1
+ trot %r2, %r4, 16
+
+#CHECK: error: missing length in address
+#CHECK: trt 0, 0
+#CHECK: error: missing length in address
+#CHECK: trt 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: trt 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: trt 0(0,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: trt 0(257,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: trt -1(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: trt 4096(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: trt 0(1,%r1), -1(%r1)
+#CHECK: error: invalid operand
+#CHECK: trt 0(1,%r1), 4096(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: trt 0(1,%r0), 0(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: trt 0(1,%r1), 0(%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: trt 0(%r1,%r2), 0(%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: trt 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: trt 0(-), 0
+
+ trt 0, 0
+ trt 0(%r1), 0(%r1)
+ trt 0(1,%r1), 0(2,%r1)
+ trt 0(0,%r1), 0(%r1)
+ trt 0(257,%r1), 0(%r1)
+ trt -1(1,%r1), 0(%r1)
+ trt 4096(1,%r1), 0(%r1)
+ trt 0(1,%r1), -1(%r1)
+ trt 0(1,%r1), 4096(%r1)
+ trt 0(1,%r0), 0(%r1)
+ trt 0(1,%r1), 0(%r0)
+ trt 0(%r1,%r2), 0(%r1)
+ trt 0(1,%r2), 0(%r1,%r2)
+ trt 0(-), 0
+
+#CHECK: error: invalid register pair
+#CHECK: trte %r1, %r0
+#CHECK: error: invalid operand
+#CHECK: trte %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: trte %r2, %r4, 16
+
+ trte %r1, %r0
+ trte %r2, %r4, -1
+ trte %r2, %r4, 16
+
+#CHECK: error: invalid register pair
+#CHECK: trto %r1, %r0
+#CHECK: error: invalid operand
+#CHECK: trto %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: trto %r2, %r4, 16
+
+ trto %r1, %r0
+ trto %r2, %r4, -1
+ trto %r2, %r4, 16
+
+#CHECK: error: missing length in address
+#CHECK: trtr 0, 0
+#CHECK: error: missing length in address
+#CHECK: trtr 0(%r1), 0(%r1)
+#CHECK: error: invalid use of length addressing
+#CHECK: trtr 0(1,%r1), 0(2,%r1)
+#CHECK: error: invalid operand
+#CHECK: trtr 0(0,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: trtr 0(257,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: trtr -1(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: trtr 4096(1,%r1), 0(%r1)
+#CHECK: error: invalid operand
+#CHECK: trtr 0(1,%r1), -1(%r1)
+#CHECK: error: invalid operand
+#CHECK: trtr 0(1,%r1), 4096(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: trtr 0(1,%r0), 0(%r1)
+#CHECK: error: %r0 used in an address
+#CHECK: trtr 0(1,%r1), 0(%r0)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: trtr 0(%r1,%r2), 0(%r1)
+#CHECK: error: invalid use of indexed addressing
+#CHECK: trtr 0(1,%r2), 0(%r1,%r2)
+#CHECK: error: unknown token in expression
+#CHECK: trtr 0(-), 0
+
+ trtr 0, 0
+ trtr 0(%r1), 0(%r1)
+ trtr 0(1,%r1), 0(2,%r1)
+ trtr 0(0,%r1), 0(%r1)
+ trtr 0(257,%r1), 0(%r1)
+ trtr -1(1,%r1), 0(%r1)
+ trtr 4096(1,%r1), 0(%r1)
+ trtr 0(1,%r1), -1(%r1)
+ trtr 0(1,%r1), 4096(%r1)
+ trtr 0(1,%r0), 0(%r1)
+ trtr 0(1,%r1), 0(%r0)
+ trtr 0(%r1,%r2), 0(%r1)
+ trtr 0(1,%r2), 0(%r1,%r2)
+ trtr 0(-), 0
+
+#CHECK: error: invalid register pair
+#CHECK: trtre %r1, %r0
+#CHECK: error: invalid operand
+#CHECK: trtre %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: trtre %r2, %r4, 16
+
+ trtre %r1, %r0
+ trtre %r2, %r4, -1
+ trtre %r2, %r4, 16
+
+#CHECK: error: invalid register pair
+#CHECK: trtt %r1, %r0
+#CHECK: error: invalid operand
+#CHECK: trtt %r2, %r4, -1
+#CHECK: error: invalid operand
+#CHECK: trtt %r2, %r4, 16
+
+ trtt %r1, %r0
+ trtt %r2, %r4, -1
+ trtt %r2, %r4, 16
+
#CHECK: error: invalid operand
#CHECK: ts -1
#CHECK: error: invalid operand
diff --git a/llvm/test/MC/SystemZ/insn-good.s b/llvm/test/MC/SystemZ/insn-good.s
index d3060356522..e9301699aa4 100644
--- a/llvm/test/MC/SystemZ/insn-good.s
+++ b/llvm/test/MC/SystemZ/insn-good.s
@@ -5709,6 +5709,82 @@
csy %r0, %r15, 0
csy %r15, %r0, 0
+#CHECK: cu12 %r0, %r0 # encoding: [0xb2,0xa7,0x00,0x00]
+#CHECK: cu12 %r0, %r14 # encoding: [0xb2,0xa7,0x00,0x0e]
+#CHECK: cu12 %r14, %r0 # encoding: [0xb2,0xa7,0x00,0xe0]
+#CHECK: cu12 %r6, %r8 # encoding: [0xb2,0xa7,0x00,0x68]
+#CHECK: cu12 %r4, %r12, 0 # encoding: [0xb2,0xa7,0x00,0x4c]
+#CHECK: cu12 %r4, %r12, 15 # encoding: [0xb2,0xa7,0xf0,0x4c]
+
+ cu12 %r0, %r0
+ cu12 %r0, %r14
+ cu12 %r14, %r0
+ cu12 %r6, %r8
+ cu12 %r4, %r12, 0
+ cu12 %r4, %r12, 15
+
+#CHECK: cu14 %r0, %r0 # encoding: [0xb9,0xb0,0x00,0x00]
+#CHECK: cu14 %r0, %r14 # encoding: [0xb9,0xb0,0x00,0x0e]
+#CHECK: cu14 %r14, %r0 # encoding: [0xb9,0xb0,0x00,0xe0]
+#CHECK: cu14 %r6, %r8 # encoding: [0xb9,0xb0,0x00,0x68]
+#CHECK: cu14 %r4, %r12, 0 # encoding: [0xb9,0xb0,0x00,0x4c]
+#CHECK: cu14 %r4, %r12, 15 # encoding: [0xb9,0xb0,0xf0,0x4c]
+
+ cu14 %r0, %r0
+ cu14 %r0, %r14
+ cu14 %r14, %r0
+ cu14 %r6, %r8
+ cu14 %r4, %r12, 0
+ cu14 %r4, %r12, 15
+
+#CHECK: cu21 %r0, %r0 # encoding: [0xb2,0xa6,0x00,0x00]
+#CHECK: cu21 %r0, %r14 # encoding: [0xb2,0xa6,0x00,0x0e]
+#CHECK: cu21 %r14, %r0 # encoding: [0xb2,0xa6,0x00,0xe0]
+#CHECK: cu21 %r6, %r8 # encoding: [0xb2,0xa6,0x00,0x68]
+#CHECK: cu21 %r4, %r12, 0 # encoding: [0xb2,0xa6,0x00,0x4c]
+#CHECK: cu21 %r4, %r12, 15 # encoding: [0xb2,0xa6,0xf0,0x4c]
+
+ cu21 %r0, %r0
+ cu21 %r0, %r14
+ cu21 %r14, %r0
+ cu21 %r6, %r8
+ cu21 %r4, %r12, 0
+ cu21 %r4, %r12, 15
+
+#CHECK: cu24 %r0, %r0 # encoding: [0xb9,0xb1,0x00,0x00]
+#CHECK: cu24 %r0, %r14 # encoding: [0xb9,0xb1,0x00,0x0e]
+#CHECK: cu24 %r14, %r0 # encoding: [0xb9,0xb1,0x00,0xe0]
+#CHECK: cu24 %r6, %r8 # encoding: [0xb9,0xb1,0x00,0x68]
+#CHECK: cu24 %r4, %r12, 0 # encoding: [0xb9,0xb1,0x00,0x4c]
+#CHECK: cu24 %r4, %r12, 15 # encoding: [0xb9,0xb1,0xf0,0x4c]
+
+ cu24 %r0, %r0
+ cu24 %r0, %r14
+ cu24 %r14, %r0
+ cu24 %r6, %r8
+ cu24 %r4, %r12, 0
+ cu24 %r4, %r12, 15
+
+#CHECK: cu41 %r0, %r0 # encoding: [0xb9,0xb2,0x00,0x00]
+#CHECK: cu41 %r0, %r14 # encoding: [0xb9,0xb2,0x00,0x0e]
+#CHECK: cu41 %r14, %r0 # encoding: [0xb9,0xb2,0x00,0xe0]
+#CHECK: cu41 %r6, %r8 # encoding: [0xb9,0xb2,0x00,0x68]
+
+ cu41 %r0, %r0
+ cu41 %r0, %r14
+ cu41 %r14, %r0
+ cu41 %r6, %r8
+
+#CHECK: cu42 %r0, %r0 # encoding: [0xb9,0xb3,0x00,0x00]
+#CHECK: cu42 %r0, %r14 # encoding: [0xb9,0xb3,0x00,0x0e]
+#CHECK: cu42 %r14, %r0 # encoding: [0xb9,0xb3,0x00,0xe0]
+#CHECK: cu42 %r6, %r8 # encoding: [0xb9,0xb3,0x00,0x68]
+
+ cu42 %r0, %r0
+ cu42 %r0, %r14
+ cu42 %r14, %r0
+ cu42 %r6, %r8
+
#CHECK: cuse %r0, %r8 # encoding: [0xb2,0x57,0x00,0x08]
#CHECK: cuse %r0, %r14 # encoding: [0xb2,0x57,0x00,0x0e]
#CHECK: cuse %r14, %r0 # encoding: [0xb2,0x57,0x00,0xe0]
@@ -5719,6 +5795,34 @@
cuse %r14, %r0
cuse %r14, %r8
+#CHECK: cutfu %r0, %r0 # encoding: [0xb2,0xa7,0x00,0x00]
+#CHECK: cutfu %r0, %r14 # encoding: [0xb2,0xa7,0x00,0x0e]
+#CHECK: cutfu %r14, %r0 # encoding: [0xb2,0xa7,0x00,0xe0]
+#CHECK: cutfu %r6, %r8 # encoding: [0xb2,0xa7,0x00,0x68]
+#CHECK: cutfu %r4, %r12, 0 # encoding: [0xb2,0xa7,0x00,0x4c]
+#CHECK: cutfu %r4, %r12, 15 # encoding: [0xb2,0xa7,0xf0,0x4c]
+
+ cutfu %r0, %r0
+ cutfu %r0, %r14
+ cutfu %r14, %r0
+ cutfu %r6, %r8
+ cutfu %r4, %r12, 0
+ cutfu %r4, %r12, 15
+
+#CHECK: cuutf %r0, %r0 # encoding: [0xb2,0xa6,0x00,0x00]
+#CHECK: cuutf %r0, %r14 # encoding: [0xb2,0xa6,0x00,0x0e]
+#CHECK: cuutf %r14, %r0 # encoding: [0xb2,0xa6,0x00,0xe0]
+#CHECK: cuutf %r6, %r8 # encoding: [0xb2,0xa6,0x00,0x68]
+#CHECK: cuutf %r4, %r12, 0 # encoding: [0xb2,0xa6,0x00,0x4c]
+#CHECK: cuutf %r4, %r12, 15 # encoding: [0xb2,0xa6,0xf0,0x4c]
+
+ cuutf %r0, %r0
+ cuutf %r0, %r14
+ cuutf %r14, %r0
+ cuutf %r6, %r8
+ cuutf %r4, %r12, 0
+ cuutf %r4, %r12, 15
+
#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]
@@ -10875,6 +10979,178 @@
tmy 524287(%r1), 42
tmy 524287(%r15), 42
+#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]
+#CHECK: tr 0(1), 4095 # encoding: [0xdc,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: tr 0(1), 4095(%r1) # encoding: [0xdc,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: tr 0(1), 4095(%r15) # encoding: [0xdc,0x00,0x00,0x00,0xff,0xff]
+#CHECK: tr 0(1,%r1), 0 # encoding: [0xdc,0x00,0x10,0x00,0x00,0x00]
+#CHECK: tr 0(1,%r15), 0 # encoding: [0xdc,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: tr 4095(1,%r1), 0 # encoding: [0xdc,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: tr 4095(1,%r15), 0 # encoding: [0xdc,0x00,0xff,0xff,0x00,0x00]
+#CHECK: tr 0(256,%r1), 0 # encoding: [0xdc,0xff,0x10,0x00,0x00,0x00]
+#CHECK: tr 0(256,%r15), 0 # encoding: [0xdc,0xff,0xf0,0x00,0x00,0x00]
+
+ tr 0(1), 0
+ tr 0(1), 0(%r1)
+ tr 0(1), 0(%r15)
+ tr 0(1), 4095
+ tr 0(1), 4095(%r1)
+ tr 0(1), 4095(%r15)
+ tr 0(1,%r1), 0
+ tr 0(1,%r15), 0
+ tr 4095(1,%r1), 0
+ tr 4095(1,%r15), 0
+ tr 0(256,%r1), 0
+ tr 0(256,%r15), 0
+
+#CHECK: tre %r0, %r0 # encoding: [0xb2,0xa5,0x00,0x00]
+#CHECK: tre %r0, %r15 # encoding: [0xb2,0xa5,0x00,0x0f]
+#CHECK: tre %r14, %r0 # encoding: [0xb2,0xa5,0x00,0xe0]
+#CHECK: tre %r6, %r8 # encoding: [0xb2,0xa5,0x00,0x68]
+
+ tre %r0, %r0
+ tre %r0, %r15
+ tre %r14, %r0
+ tre %r6, %r8
+
+#CHECK: troo %r0, %r0 # encoding: [0xb9,0x93,0x00,0x00]
+#CHECK: troo %r0, %r15 # encoding: [0xb9,0x93,0x00,0x0f]
+#CHECK: troo %r14, %r0 # encoding: [0xb9,0x93,0x00,0xe0]
+#CHECK: troo %r6, %r8 # encoding: [0xb9,0x93,0x00,0x68]
+#CHECK: troo %r4, %r13, 0 # encoding: [0xb9,0x93,0x00,0x4d]
+#CHECK: troo %r4, %r13, 15 # encoding: [0xb9,0x93,0xf0,0x4d]
+
+ troo %r0, %r0
+ troo %r0, %r15
+ troo %r14, %r0
+ troo %r6, %r8
+ troo %r4, %r13, 0
+ troo %r4, %r13, 15
+
+#CHECK: trot %r0, %r0 # encoding: [0xb9,0x92,0x00,0x00]
+#CHECK: trot %r0, %r15 # encoding: [0xb9,0x92,0x00,0x0f]
+#CHECK: trot %r14, %r0 # encoding: [0xb9,0x92,0x00,0xe0]
+#CHECK: trot %r6, %r8 # encoding: [0xb9,0x92,0x00,0x68]
+#CHECK: trot %r4, %r13, 0 # encoding: [0xb9,0x92,0x00,0x4d]
+#CHECK: trot %r4, %r13, 15 # encoding: [0xb9,0x92,0xf0,0x4d]
+
+ trot %r0, %r0
+ trot %r0, %r15
+ trot %r14, %r0
+ trot %r6, %r8
+ trot %r4, %r13, 0
+ trot %r4, %r13, 15
+
+#CHECK: trt 0(1), 0 # encoding: [0xdd,0x00,0x00,0x00,0x00,0x00]
+#CHECK: trt 0(1), 0(%r1) # encoding: [0xdd,0x00,0x00,0x00,0x10,0x00]
+#CHECK: trt 0(1), 0(%r15) # encoding: [0xdd,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: trt 0(1), 4095 # encoding: [0xdd,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: trt 0(1), 4095(%r1) # encoding: [0xdd,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: trt 0(1), 4095(%r15) # encoding: [0xdd,0x00,0x00,0x00,0xff,0xff]
+#CHECK: trt 0(1,%r1), 0 # encoding: [0xdd,0x00,0x10,0x00,0x00,0x00]
+#CHECK: trt 0(1,%r15), 0 # encoding: [0xdd,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: trt 4095(1,%r1), 0 # encoding: [0xdd,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: trt 4095(1,%r15), 0 # encoding: [0xdd,0x00,0xff,0xff,0x00,0x00]
+#CHECK: trt 0(256,%r1), 0 # encoding: [0xdd,0xff,0x10,0x00,0x00,0x00]
+#CHECK: trt 0(256,%r15), 0 # encoding: [0xdd,0xff,0xf0,0x00,0x00,0x00]
+
+ trt 0(1), 0
+ trt 0(1), 0(%r1)
+ trt 0(1), 0(%r15)
+ trt 0(1), 4095
+ trt 0(1), 4095(%r1)
+ trt 0(1), 4095(%r15)
+ trt 0(1,%r1), 0
+ trt 0(1,%r15), 0
+ trt 4095(1,%r1), 0
+ trt 4095(1,%r15), 0
+ trt 0(256,%r1), 0
+ trt 0(256,%r15), 0
+
+#CHECK: trte %r0, %r0 # encoding: [0xb9,0xbf,0x00,0x00]
+#CHECK: trte %r0, %r15 # encoding: [0xb9,0xbf,0x00,0x0f]
+#CHECK: trte %r14, %r0 # encoding: [0xb9,0xbf,0x00,0xe0]
+#CHECK: trte %r6, %r8 # encoding: [0xb9,0xbf,0x00,0x68]
+#CHECK: trte %r4, %r13, 0 # encoding: [0xb9,0xbf,0x00,0x4d]
+#CHECK: trte %r4, %r13, 15 # encoding: [0xb9,0xbf,0xf0,0x4d]
+
+ trte %r0, %r0
+ trte %r0, %r15
+ trte %r14, %r0
+ trte %r6, %r8
+ trte %r4, %r13, 0
+ trte %r4, %r13, 15
+
+#CHECK: trto %r0, %r0 # encoding: [0xb9,0x91,0x00,0x00]
+#CHECK: trto %r0, %r15 # encoding: [0xb9,0x91,0x00,0x0f]
+#CHECK: trto %r14, %r0 # encoding: [0xb9,0x91,0x00,0xe0]
+#CHECK: trto %r6, %r8 # encoding: [0xb9,0x91,0x00,0x68]
+#CHECK: trto %r4, %r13, 0 # encoding: [0xb9,0x91,0x00,0x4d]
+#CHECK: trto %r4, %r13, 15 # encoding: [0xb9,0x91,0xf0,0x4d]
+
+ trto %r0, %r0
+ trto %r0, %r15
+ trto %r14, %r0
+ trto %r6, %r8
+ trto %r4, %r13, 0
+ trto %r4, %r13, 15
+
+#CHECK: trtr 0(1), 0 # encoding: [0xd0,0x00,0x00,0x00,0x00,0x00]
+#CHECK: trtr 0(1), 0(%r1) # encoding: [0xd0,0x00,0x00,0x00,0x10,0x00]
+#CHECK: trtr 0(1), 0(%r15) # encoding: [0xd0,0x00,0x00,0x00,0xf0,0x00]
+#CHECK: trtr 0(1), 4095 # encoding: [0xd0,0x00,0x00,0x00,0x0f,0xff]
+#CHECK: trtr 0(1), 4095(%r1) # encoding: [0xd0,0x00,0x00,0x00,0x1f,0xff]
+#CHECK: trtr 0(1), 4095(%r15) # encoding: [0xd0,0x00,0x00,0x00,0xff,0xff]
+#CHECK: trtr 0(1,%r1), 0 # encoding: [0xd0,0x00,0x10,0x00,0x00,0x00]
+#CHECK: trtr 0(1,%r15), 0 # encoding: [0xd0,0x00,0xf0,0x00,0x00,0x00]
+#CHECK: trtr 4095(1,%r1), 0 # encoding: [0xd0,0x00,0x1f,0xff,0x00,0x00]
+#CHECK: trtr 4095(1,%r15), 0 # encoding: [0xd0,0x00,0xff,0xff,0x00,0x00]
+#CHECK: trtr 0(256,%r1), 0 # encoding: [0xd0,0xff,0x10,0x00,0x00,0x00]
+#CHECK: trtr 0(256,%r15), 0 # encoding: [0xd0,0xff,0xf0,0x00,0x00,0x00]
+
+ trtr 0(1), 0
+ trtr 0(1), 0(%r1)
+ trtr 0(1), 0(%r15)
+ trtr 0(1), 4095
+ trtr 0(1), 4095(%r1)
+ trtr 0(1), 4095(%r15)
+ trtr 0(1,%r1), 0
+ trtr 0(1,%r15), 0
+ trtr 4095(1,%r1), 0
+ trtr 4095(1,%r15), 0
+ trtr 0(256,%r1), 0
+ trtr 0(256,%r15), 0
+
+#CHECK: trtre %r0, %r0 # encoding: [0xb9,0xbd,0x00,0x00]
+#CHECK: trtre %r0, %r15 # encoding: [0xb9,0xbd,0x00,0x0f]
+#CHECK: trtre %r14, %r0 # encoding: [0xb9,0xbd,0x00,0xe0]
+#CHECK: trtre %r6, %r8 # encoding: [0xb9,0xbd,0x00,0x68]
+#CHECK: trtre %r4, %r13, 0 # encoding: [0xb9,0xbd,0x00,0x4d]
+#CHECK: trtre %r4, %r13, 15 # encoding: [0xb9,0xbd,0xf0,0x4d]
+
+ trtre %r0, %r0
+ trtre %r0, %r15
+ trtre %r14, %r0
+ trtre %r6, %r8
+ trtre %r4, %r13, 0
+ trtre %r4, %r13, 15
+
+#CHECK: trtt %r0, %r0 # encoding: [0xb9,0x90,0x00,0x00]
+#CHECK: trtt %r0, %r15 # encoding: [0xb9,0x90,0x00,0x0f]
+#CHECK: trtt %r14, %r0 # encoding: [0xb9,0x90,0x00,0xe0]
+#CHECK: trtt %r6, %r8 # encoding: [0xb9,0x90,0x00,0x68]
+#CHECK: trtt %r4, %r13, 0 # encoding: [0xb9,0x90,0x00,0x4d]
+#CHECK: trtt %r4, %r13, 15 # encoding: [0xb9,0x90,0xf0,0x4d]
+
+ trtt %r0, %r0
+ trtt %r0, %r15
+ trtt %r14, %r0
+ trtt %r6, %r8
+ trtt %r4, %r13, 0
+ trtt %r4, %r13, 15
+
#CHECK: ts 0 # encoding: [0x93,0x00,0x00,0x00]
#CHECK: ts 0(%r1) # encoding: [0x93,0x00,0x10,0x00]
#CHECK: ts 0(%r15) # encoding: [0x93,0x00,0xf0,0x00]
OpenPOWER on IntegriCloud