diff options
author | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2017-05-10 14:18:47 +0000 |
---|---|---|
committer | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2017-05-10 14:18:47 +0000 |
commit | d3604dc72c7c5f2fd90a43588f794dd62c25e761 (patch) | |
tree | 2ef63852583978f465ec0784cb8215758c2f6108 /llvm/test/MC/SystemZ | |
parent | c0d76649d4c7b18527a6626d83e8400bbc5fe818 (diff) | |
download | bcm5719-llvm-d3604dc72c7c5f2fd90a43588f794dd62c25e761.tar.gz bcm5719-llvm-d3604dc72c7c5f2fd90a43588f794dd62c25e761.zip |
[SystemZ] Add missing arithmetic instructions
This adds the remaining general arithmetic instructions
for assembler / disassembler use. Most of these are not
useful for codegen; a few might be, and those are listed
in the README.txt for future improvements.
llvm-svn: 302665
Diffstat (limited to 'llvm/test/MC/SystemZ')
-rw-r--r-- | llvm/test/MC/SystemZ/insn-bad.s | 316 | ||||
-rw-r--r-- | llvm/test/MC/SystemZ/insn-good.s | 490 |
2 files changed, 806 insertions, 0 deletions
diff --git a/llvm/test/MC/SystemZ/insn-bad.s b/llvm/test/MC/SystemZ/insn-bad.s index 6616f278318..7d9f764e888 100644 --- a/llvm/test/MC/SystemZ/insn-bad.s +++ b/llvm/test/MC/SystemZ/insn-bad.s @@ -212,6 +212,40 @@ alrk %r2,%r3,%r4 #CHECK: error: invalid operand +#CHECK: algsi -524289, 0 +#CHECK: error: invalid operand +#CHECK: algsi 524288, 0 +#CHECK: error: invalid use of indexed addressing +#CHECK: algsi 0(%r1,%r2), 0 +#CHECK: error: invalid operand +#CHECK: algsi 0, -129 +#CHECK: error: invalid operand +#CHECK: algsi 0, 128 + + algsi -524289, 0 + algsi 524288, 0 + algsi 0(%r1,%r2), 0 + algsi 0, -129 + algsi 0, 128 + +#CHECK: error: invalid operand +#CHECK: alsi -524289, 0 +#CHECK: error: invalid operand +#CHECK: alsi 524288, 0 +#CHECK: error: invalid use of indexed addressing +#CHECK: alsi 0(%r1,%r2), 0 +#CHECK: error: invalid operand +#CHECK: alsi 0, -129 +#CHECK: error: invalid operand +#CHECK: alsi 0, 128 + + alsi -524289, 0 + alsi 524288, 0 + alsi 0(%r1,%r2), 0 + alsi 0, -129 + alsi 0, 128 + +#CHECK: error: invalid operand #CHECK: aly %r0, -524289 #CHECK: error: invalid operand #CHECK: aly %r0, 524288 @@ -1493,6 +1527,48 @@ cliy 0, -1 cliy 0, 256 +#CHECK: error: invalid operand +#CHECK: clm %r0, 0, -1 +#CHECK: error: invalid operand +#CHECK: clm %r0, 0, 4096 +#CHECK: error: invalid operand +#CHECK: clm %r0, -1, 0 +#CHECK: error: invalid operand +#CHECK: clm %r0, 16, 0 + + clm %r0, 0, -1 + clm %r0, 0, 4096 + clm %r0, -1, 0 + clm %r0, 16, 0 + +#CHECK: error: invalid operand +#CHECK: clmh %r0, 0, -524289 +#CHECK: error: invalid operand +#CHECK: clmh %r0, 0, 524288 +#CHECK: error: invalid operand +#CHECK: clmh %r0, -1, 0 +#CHECK: error: invalid operand +#CHECK: clmh %r0, 16, 0 + + clmh %r0, 0, -524289 + clmh %r0, 0, 524288 + clmh %r0, -1, 0 + clmh %r0, 16, 0 + +#CHECK: error: invalid operand +#CHECK: clmy %r0, 0, -524289 +#CHECK: error: invalid operand +#CHECK: clmy %r0, 0, 524288 +#CHECK: error: invalid operand +#CHECK: clmy %r0, -1, 0 +#CHECK: error: invalid operand +#CHECK: clmy %r0, 16, 0 + + clmy %r0, 0, -524289 + clmy %r0, 0, 524288 + clmy %r0, -1, 0 + clmy %r0, 16, 0 + #CHECK: error: offset out of range #CHECK: clrj %r0, %r0, 0, -0x100002 #CHECK: error: offset out of range @@ -1895,6 +1971,17 @@ cy %r0, 524288 #CHECK: error: invalid operand +#CHECK: d %r0, -1 +#CHECK: error: invalid operand +#CHECK: d %r0, 4096 +#CHECK: error: invalid register pair +#CHECK: d %r1, 0 + + d %r0, -1 + d %r0, 4096 + d %r1, 0 + +#CHECK: error: invalid operand #CHECK: ddb %f0, -1 #CHECK: error: invalid operand #CHECK: ddb %f0, 4096 @@ -1911,6 +1998,22 @@ deb %f0, 4096 #CHECK: error: invalid operand +#CHECK: didbr %f0, %f0, %f0, -1 +#CHECK: error: invalid operand +#CHECK: didbr %f0, %f0, %f0, 16 + + didbr %f0, %f0, %f0, -1 + didbr %f0, %f0, %f0, 16 + +#CHECK: error: invalid operand +#CHECK: diebr %f0, %f0, %f0, -1 +#CHECK: error: invalid operand +#CHECK: diebr %f0, %f0, %f0, 16 + + diebr %f0, %f0, %f0, -1 + diebr %f0, %f0, %f0, 16 + +#CHECK: error: invalid operand #CHECK: dl %r0, -524289 #CHECK: error: invalid operand #CHECK: dl %r0, 524288 @@ -1921,6 +2024,11 @@ dl %r0, 524288 dl %r1, 0 +#CHECK: error: invalid register pair +#CHECK: dr %r1, %r0 + + dr %r1, %r0 + #CHECK: error: invalid operand #CHECK: dlg %r0, -524289 #CHECK: error: invalid operand @@ -2304,6 +2412,22 @@ iill %r0, -1 iill %r0, 0x10000 +#CHECK: error: invalid operand +#CHECK: kdb %f0, -1 +#CHECK: error: invalid operand +#CHECK: kdb %f0, 4096 + + kdb %f0, -1 + kdb %f0, 4096 + +#CHECK: error: invalid operand +#CHECK: keb %f0, -1 +#CHECK: error: invalid operand +#CHECK: keb %f0, 4096 + + keb %f0, -1 + keb %f0, 4096 + #CHECK: error: invalid register pair #CHECK: kimd %r0, %r1 @@ -2350,6 +2474,14 @@ kmo %r2, %r4 +#CHECK: error: invalid register pair +#CHECK: kxbr %f0, %f2 +#CHECK: error: invalid register pair +#CHECK: kxbr %f2, %f0 + + kxbr %f0, %f2 + kxbr %f2, %f0 + #CHECK: error: invalid operand #CHECK: l %r0, -1 #CHECK: error: invalid operand @@ -2877,6 +3009,23 @@ lm %r0, %r0, 4096 lm %r0, %r0, 0(%r1,%r2) +#CHECK: error: invalid use of indexed addressing +#CHECK: lmd %r2, %r4, 160(%r1,%r15), 160(%r15) +#CHECK: error: invalid operand +#CHECK: lmd %r2, %r4, -1(%r1), 160(%r15) +#CHECK: error: invalid operand +#CHECK: lmd %r2, %r4, 4096(%r1), 160(%r15) +#CHECK: error: invalid operand +#CHECK: lmd %r2, %r4, 0(%r1), -1(%r15) +#CHECK: error: invalid operand +#CHECK: lmd %r2, %r4, 0(%r1), 4096(%r15) + + lmd %r2, %r4, 160(%r1,%r15), 160(%r15) + lmd %r2, %r4, -1(%r1), 160(%r15) + lmd %r2, %r4, 4096(%r1), 160(%r15) + lmd %r2, %r4, 0(%r1), -1(%r15) + lmd %r2, %r4, 0(%r1), 4096(%r15) + #CHECK: error: invalid operand #CHECK: lmg %r0, %r0, -524289 #CHECK: error: invalid operand @@ -3029,6 +3178,17 @@ lzxr %f2 #CHECK: error: invalid operand +#CHECK: m %r0, -1 +#CHECK: error: invalid operand +#CHECK: m %r0, 4096 +#CHECK: error: invalid register pair +#CHECK: m %r1, 0 + + m %r0, -1 + m %r0, 4096 + m %r1, 0 + +#CHECK: error: invalid operand #CHECK: madb %f0, %f0, -1 #CHECK: error: invalid operand #CHECK: madb %f0, %f0, 4096 @@ -3069,6 +3229,17 @@ meeb %f0, 4096 #CHECK: error: invalid operand +#CHECK: mfy %r0, -524289 +#CHECK: error: invalid operand +#CHECK: mfy %r0, 524288 +#CHECK: error: invalid register pair +#CHECK: mfy %r1, 0 + + mfy %r0, -524289 + mfy %r0, 524288 + mfy %r1, 0 + +#CHECK: error: invalid operand #CHECK: mghi %r0, -32769 #CHECK: error: invalid operand #CHECK: mghi %r0, 32768 @@ -3107,6 +3278,17 @@ mhy %r0, 524288 #CHECK: error: invalid operand +#CHECK: ml %r0, -524289 +#CHECK: error: invalid operand +#CHECK: ml %r0, 524288 +#CHECK: error: invalid register pair +#CHECK: ml %r1, 0 + + ml %r0, -524289 + ml %r0, 524288 + ml %r1, 0 + +#CHECK: error: invalid operand #CHECK: mlg %r0, -524289 #CHECK: error: invalid operand #CHECK: mlg %r0, 524288 @@ -3122,6 +3304,11 @@ mlgr %r1, %r0 +#CHECK: error: invalid register pair +#CHECK: mlr %r1, %r0 + + mlr %r1, %r0 + #CHECK: error: missing length in address #CHECK: mp 0, 0(1) #CHECK: error: missing length in address @@ -3175,6 +3362,11 @@ mp 0(1,%r2), 0(%r1,%r2) mp 0(-), 0(1) +#CHECK: error: invalid register pair +#CHECK: mr %r1, %r0 + + mr %r1, %r0 + #CHECK: error: invalid operand #CHECK: ms %r0, -1 #CHECK: error: invalid operand @@ -4369,6 +4561,20 @@ sla %r0,0(%r0) sla %r0,0(%r1,%r2) +#CHECK: error: invalid operand +#CHECK: slag %r0,%r0,-524289 +#CHECK: error: invalid operand +#CHECK: slag %r0,%r0,524288 +#CHECK: error: %r0 used in an address +#CHECK: slag %r0,%r0,0(%r0) +#CHECK: error: invalid use of indexed addressing +#CHECK: slag %r0,%r0,0(%r1,%r2) + + slag %r0,%r0,-524289 + slag %r0,%r0,524288 + slag %r0,%r0,0(%r0) + slag %r0,%r0,0(%r1,%r2) + #CHECK: error: instruction requires: distinct-ops #CHECK: slak %r2,%r3,4(%r5) @@ -4390,6 +4596,40 @@ slbg %r0, -524289 slbg %r0, 524288 +#CHECK: error: invalid register pair +#CHECK: slda %r1,0 +#CHECK: error: invalid operand +#CHECK: slda %r0,-1 +#CHECK: error: invalid operand +#CHECK: slda %r0,4096 +#CHECK: error: %r0 used in an address +#CHECK: slda %r0,0(%r0) +#CHECK: error: invalid use of indexed addressing +#CHECK: slda %r0,0(%r1,%r2) + + slda %r1,0 + slda %r0,-1 + slda %r0,4096 + slda %r0,0(%r0) + slda %r0,0(%r1,%r2) + +#CHECK: error: invalid register pair +#CHECK: sldl %r1,0 +#CHECK: error: invalid operand +#CHECK: sldl %r0,-1 +#CHECK: error: invalid operand +#CHECK: sldl %r0,4096 +#CHECK: error: %r0 used in an address +#CHECK: sldl %r0,0(%r0) +#CHECK: error: invalid use of indexed addressing +#CHECK: sldl %r0,0(%r1,%r2) + + sldl %r1,0 + sldl %r0,-1 + sldl %r0,4096 + sldl %r0,0(%r0) + sldl %r0,0(%r1,%r2) + #CHECK: error: invalid operand #CHECK: slfi %r0, -1 #CHECK: error: invalid operand @@ -4583,6 +4823,40 @@ srak %r2,%r3,4(%r5) +#CHECK: error: invalid register pair +#CHECK: srda %r1,0 +#CHECK: error: invalid operand +#CHECK: srda %r0,-1 +#CHECK: error: invalid operand +#CHECK: srda %r0,4096 +#CHECK: error: %r0 used in an address +#CHECK: srda %r0,0(%r0) +#CHECK: error: invalid use of indexed addressing +#CHECK: srda %r0,0(%r1,%r2) + + srda %r1,0 + srda %r0,-1 + srda %r0,4096 + srda %r0,0(%r0) + srda %r0,0(%r1,%r2) + +#CHECK: error: invalid register pair +#CHECK: srdl %r1,0 +#CHECK: error: invalid operand +#CHECK: srdl %r0,-1 +#CHECK: error: invalid operand +#CHECK: srdl %r0,4096 +#CHECK: error: %r0 used in an address +#CHECK: srdl %r0,0(%r0) +#CHECK: error: invalid use of indexed addressing +#CHECK: srdl %r0,0(%r1,%r2) + + srdl %r1,0 + srdl %r0,-1 + srdl %r0,4096 + srdl %r0,0(%r0) + srdl %r0,0(%r1,%r2) + #CHECK: error: instruction requires: distinct-ops #CHECK: srk %r2,%r3,%r4 @@ -4739,6 +5013,48 @@ stch %r0, 0 #CHECK: error: invalid operand +#CHECK: stcm %r0, 0, -1 +#CHECK: error: invalid operand +#CHECK: stcm %r0, 0, 4096 +#CHECK: error: invalid operand +#CHECK: stcm %r0, -1, 0 +#CHECK: error: invalid operand +#CHECK: stcm %r0, 16, 0 + + stcm %r0, 0, -1 + stcm %r0, 0, 4096 + stcm %r0, -1, 0 + stcm %r0, 16, 0 + +#CHECK: error: invalid operand +#CHECK: stcmy %r0, 0, -524289 +#CHECK: error: invalid operand +#CHECK: stcmy %r0, 0, 524288 +#CHECK: error: invalid operand +#CHECK: stcmy %r0, -1, 0 +#CHECK: error: invalid operand +#CHECK: stcmy %r0, 16, 0 + + stcmy %r0, 0, -524289 + stcmy %r0, 0, 524288 + stcmy %r0, -1, 0 + stcmy %r0, 16, 0 + +#CHECK: error: invalid operand +#CHECK: stcmy %r0, 0, -524289 +#CHECK: error: invalid operand +#CHECK: stcmy %r0, 0, 524288 +#CHECK: error: invalid operand +#CHECK: stcmy %r0, -1, 0 +#CHECK: error: invalid operand +#CHECK: stcmy %r0, 16, 0 + + stcmy %r0, 0, -524289 + stcmy %r0, 0, 524288 + stcmy %r0, -1, 0 + stcmy %r0, 16, 0 + +#CHECK: error: invalid operand #CHECK: stcy %r0, -524289 #CHECK: error: invalid operand #CHECK: stcy %r0, 524288 diff --git a/llvm/test/MC/SystemZ/insn-good.s b/llvm/test/MC/SystemZ/insn-good.s index 6086c9a2aa9..189306073a8 100644 --- a/llvm/test/MC/SystemZ/insn-good.s +++ b/llvm/test/MC/SystemZ/insn-good.s @@ -415,6 +415,34 @@ algr %r15,%r0 algr %r7,%r8 +#CHECK: algsi -524288, 0 # encoding: [0xeb,0x00,0x00,0x00,0x80,0x7e] +#CHECK: algsi -1, 0 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0x7e] +#CHECK: algsi 0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0x7e] +#CHECK: algsi 1, 0 # encoding: [0xeb,0x00,0x00,0x01,0x00,0x7e] +#CHECK: algsi 524287, 0 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0x7e] +#CHECK: algsi 0, -128 # encoding: [0xeb,0x80,0x00,0x00,0x00,0x7e] +#CHECK: algsi 0, -1 # encoding: [0xeb,0xff,0x00,0x00,0x00,0x7e] +#CHECK: algsi 0, 1 # encoding: [0xeb,0x01,0x00,0x00,0x00,0x7e] +#CHECK: algsi 0, 127 # encoding: [0xeb,0x7f,0x00,0x00,0x00,0x7e] +#CHECK: algsi 0(%r1), 42 # encoding: [0xeb,0x2a,0x10,0x00,0x00,0x7e] +#CHECK: algsi 0(%r15), 42 # encoding: [0xeb,0x2a,0xf0,0x00,0x00,0x7e] +#CHECK: algsi 524287(%r1), 42 # encoding: [0xeb,0x2a,0x1f,0xff,0x7f,0x7e] +#CHECK: algsi 524287(%r15), 42 # encoding: [0xeb,0x2a,0xff,0xff,0x7f,0x7e] + + algsi -524288, 0 + algsi -1, 0 + algsi 0, 0 + algsi 1, 0 + algsi 524287, 0 + algsi 0, -128 + algsi 0, -1 + algsi 0, 1 + algsi 0, 127 + algsi 0(%r1), 42 + algsi 0(%r15), 42 + algsi 524287(%r1), 42 + algsi 524287(%r15), 42 + #CHECK: alr %r0, %r0 # encoding: [0x1e,0x00] #CHECK: alr %r0, %r15 # encoding: [0x1e,0x0f] #CHECK: alr %r15, %r0 # encoding: [0x1e,0xf0] @@ -425,6 +453,34 @@ alr %r15,%r0 alr %r7,%r8 +#CHECK: alsi -524288, 0 # encoding: [0xeb,0x00,0x00,0x00,0x80,0x6e] +#CHECK: alsi -1, 0 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0x6e] +#CHECK: alsi 0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0x6e] +#CHECK: alsi 1, 0 # encoding: [0xeb,0x00,0x00,0x01,0x00,0x6e] +#CHECK: alsi 524287, 0 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0x6e] +#CHECK: alsi 0, -128 # encoding: [0xeb,0x80,0x00,0x00,0x00,0x6e] +#CHECK: alsi 0, -1 # encoding: [0xeb,0xff,0x00,0x00,0x00,0x6e] +#CHECK: alsi 0, 1 # encoding: [0xeb,0x01,0x00,0x00,0x00,0x6e] +#CHECK: alsi 0, 127 # encoding: [0xeb,0x7f,0x00,0x00,0x00,0x6e] +#CHECK: alsi 0(%r1), 42 # encoding: [0xeb,0x2a,0x10,0x00,0x00,0x6e] +#CHECK: alsi 0(%r15), 42 # encoding: [0xeb,0x2a,0xf0,0x00,0x00,0x6e] +#CHECK: alsi 524287(%r1), 42 # encoding: [0xeb,0x2a,0x1f,0xff,0x7f,0x6e] +#CHECK: alsi 524287(%r15), 42 # encoding: [0xeb,0x2a,0xff,0xff,0x7f,0x6e] + + alsi -524288, 0 + alsi -1, 0 + alsi 0, 0 + alsi 1, 0 + alsi 524287, 0 + alsi 0, -128 + alsi 0, -1 + alsi 0, 1 + alsi 0, 127 + alsi 0(%r1), 42 + alsi 0(%r15), 42 + alsi 524287(%r1), 42 + alsi 524287(%r15), 42 + #CHECK: aly %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x5e] #CHECK: aly %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x5e] #CHECK: aly %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x5e] @@ -4829,6 +4885,66 @@ cliy 524287(%r1), 42 cliy 524287(%r15), 42 +#CHECK: clm %r0, 0, 0 # encoding: [0xbd,0x00,0x00,0x00] +#CHECK: clm %r0, 15, 4095 # encoding: [0xbd,0x0f,0x0f,0xff] +#CHECK: clm %r0, 0, 0(%r1) # encoding: [0xbd,0x00,0x10,0x00] +#CHECK: clm %r0, 0, 0(%r15) # encoding: [0xbd,0x00,0xf0,0x00] +#CHECK: clm %r15, 15, 4095(%r1) # encoding: [0xbd,0xff,0x1f,0xff] +#CHECK: clm %r0, 0, 4095(%r15) # encoding: [0xbd,0x00,0xff,0xff] +#CHECK: clm %r15, 0, 0 # encoding: [0xbd,0xf0,0x00,0x00] + + clm %r0, 0, 0 + clm %r0, 15, 4095 + clm %r0, 0, 0(%r1) + clm %r0, 0, 0(%r15) + clm %r15, 15, 4095(%r1) + clm %r0, 0, 4095(%r15) + clm %r15, 0, 0 + +#CHECK: clmh %r0, 0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0x20] +#CHECK: clmh %r0, 0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0x20] +#CHECK: clmh %r0, 15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0x20] +#CHECK: clmh %r0, 15, 1 # encoding: [0xeb,0x0f,0x00,0x01,0x00,0x20] +#CHECK: clmh %r0, 8, 524287 # encoding: [0xeb,0x08,0x0f,0xff,0x7f,0x20] +#CHECK: clmh %r0, 8, 0(%r1) # encoding: [0xeb,0x08,0x10,0x00,0x00,0x20] +#CHECK: clmh %r0, 4, 0(%r15) # encoding: [0xeb,0x04,0xf0,0x00,0x00,0x20] +#CHECK: clmh %r0, 4, 524287(%r15) # encoding: [0xeb,0x04,0xff,0xff,0x7f,0x20] +#CHECK: clmh %r0, 0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0x20] +#CHECK: clmh %r15, 0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0x20] + + clmh %r0, 0, -524288 + clmh %r0, 0, -1 + clmh %r0, 15, 0 + clmh %r0, 15, 1 + clmh %r0, 8, 524287 + clmh %r0, 8, 0(%r1) + clmh %r0, 4, 0(%r15) + clmh %r0, 4, 524287(%r15) + clmh %r0, 0, 524287(%r1) + clmh %r15, 0, 0 + +#CHECK: clmy %r0, 0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0x21] +#CHECK: clmy %r0, 0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0x21] +#CHECK: clmy %r0, 15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0x21] +#CHECK: clmy %r0, 15, 1 # encoding: [0xeb,0x0f,0x00,0x01,0x00,0x21] +#CHECK: clmy %r0, 8, 524287 # encoding: [0xeb,0x08,0x0f,0xff,0x7f,0x21] +#CHECK: clmy %r0, 8, 0(%r1) # encoding: [0xeb,0x08,0x10,0x00,0x00,0x21] +#CHECK: clmy %r0, 4, 0(%r15) # encoding: [0xeb,0x04,0xf0,0x00,0x00,0x21] +#CHECK: clmy %r0, 4, 524287(%r15) # encoding: [0xeb,0x04,0xff,0xff,0x7f,0x21] +#CHECK: clmy %r0, 0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0x21] +#CHECK: clmy %r15, 0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0x21] + + clmy %r0, 0, -524288 + clmy %r0, 0, -1 + clmy %r0, 15, 0 + clmy %r0, 15, 1 + clmy %r0, 8, 524287 + clmy %r0, 8, 0(%r1) + clmy %r0, 4, 0(%r15) + clmy %r0, 4, 524287(%r15) + clmy %r0, 0, 524287(%r1) + clmy %r15, 0, 0 + #CHECK: clr %r0, %r0 # encoding: [0x15,0x00] #CHECK: clr %r0, %r15 # encoding: [0x15,0x0f] #CHECK: clr %r15, %r0 # encoding: [0x15,0xf0] @@ -6059,6 +6175,22 @@ cy %r0, 524287(%r15,%r1) cy %r15, 0 +#CHECK: d %r0, 0 # encoding: [0x5d,0x00,0x00,0x00] +#CHECK: d %r0, 4095 # encoding: [0x5d,0x00,0x0f,0xff] +#CHECK: d %r0, 0(%r1) # encoding: [0x5d,0x00,0x10,0x00] +#CHECK: d %r0, 0(%r15) # encoding: [0x5d,0x00,0xf0,0x00] +#CHECK: d %r0, 4095(%r1,%r15) # encoding: [0x5d,0x01,0xff,0xff] +#CHECK: d %r0, 4095(%r15,%r1) # encoding: [0x5d,0x0f,0x1f,0xff] +#CHECK: d %r14, 0 # encoding: [0x5d,0xe0,0x00,0x00] + + d %r0, 0 + d %r0, 4095 + d %r0, 0(%r1) + d %r0, 0(%r15) + d %r0, 4095(%r1,%r15) + d %r0, 4095(%r15,%r1) + d %r14, 0 + #CHECK: ddb %f0, 0 # encoding: [0xed,0x00,0x00,0x00,0x00,0x1d] #CHECK: ddb %f0, 4095 # encoding: [0xed,0x00,0x0f,0xff,0x00,0x1d] #CHECK: ddb %f0, 0(%r1) # encoding: [0xed,0x00,0x10,0x00,0x00,0x1d] @@ -6111,6 +6243,34 @@ debr %f7, %f8 debr %f15, %f0 +#CHECK: didbr %f0, %f0, %f0, 0 # encoding: [0xb3,0x5b,0x00,0x00] +#CHECK: didbr %f0, %f0, %f0, 15 # encoding: [0xb3,0x5b,0x0f,0x00] +#CHECK: didbr %f0, %f0, %f15, 0 # encoding: [0xb3,0x5b,0x00,0x0f] +#CHECK: didbr %f0, %f15, %f0, 0 # encoding: [0xb3,0x5b,0xf0,0x00] +#CHECK: didbr %f4, %f5, %f6, 7 # encoding: [0xb3,0x5b,0x57,0x46] +#CHECK: didbr %f15, %f0, %f0, 0 # encoding: [0xb3,0x5b,0x00,0xf0] + + didbr %f0, %f0, %f0, 0 + didbr %f0, %f0, %f0, 15 + didbr %f0, %f0, %f15, 0 + didbr %f0, %f15, %f0, 0 + didbr %f4, %f5, %f6, 7 + didbr %f15, %f0, %f0, 0 + +#CHECK: diebr %f0, %f0, %f0, 0 # encoding: [0xb3,0x53,0x00,0x00] +#CHECK: diebr %f0, %f0, %f0, 15 # encoding: [0xb3,0x53,0x0f,0x00] +#CHECK: diebr %f0, %f0, %f15, 0 # encoding: [0xb3,0x53,0x00,0x0f] +#CHECK: diebr %f0, %f15, %f0, 0 # encoding: [0xb3,0x53,0xf0,0x00] +#CHECK: diebr %f4, %f5, %f6, 7 # encoding: [0xb3,0x53,0x57,0x46] +#CHECK: diebr %f15, %f0, %f0, 0 # encoding: [0xb3,0x53,0x00,0xf0] + + diebr %f0, %f0, %f0, 0 + diebr %f0, %f0, %f0, 15 + diebr %f0, %f0, %f15, 0 + diebr %f0, %f15, %f0, 0 + diebr %f4, %f5, %f6, 7 + diebr %f15, %f0, %f0, 0 + #CHECK: dl %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x97] #CHECK: dl %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x97] #CHECK: dl %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x97] @@ -6205,6 +6365,16 @@ dp 0(1), 0(16,%r1) dp 0(1), 0(16,%r15) +#CHECK: dr %r0, %r0 # encoding: [0x1d,0x00] +#CHECK: dr %r0, %r15 # encoding: [0x1d,0x0f] +#CHECK: dr %r14, %r0 # encoding: [0x1d,0xe0] +#CHECK: dr %r6, %r9 # encoding: [0x1d,0x69] + + dr %r0,%r0 + dr %r0,%r15 + dr %r14,%r0 + dr %r6,%r9 + #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] @@ -6626,6 +6796,58 @@ ipm %r1 ipm %r15 +#CHECK: kdb %f0, 0 # encoding: [0xed,0x00,0x00,0x00,0x00,0x18] +#CHECK: kdb %f0, 4095 # encoding: [0xed,0x00,0x0f,0xff,0x00,0x18] +#CHECK: kdb %f0, 0(%r1) # encoding: [0xed,0x00,0x10,0x00,0x00,0x18] +#CHECK: kdb %f0, 0(%r15) # encoding: [0xed,0x00,0xf0,0x00,0x00,0x18] +#CHECK: kdb %f0, 4095(%r1,%r15) # encoding: [0xed,0x01,0xff,0xff,0x00,0x18] +#CHECK: kdb %f0, 4095(%r15,%r1) # encoding: [0xed,0x0f,0x1f,0xff,0x00,0x18] +#CHECK: kdb %f15, 0 # encoding: [0xed,0xf0,0x00,0x00,0x00,0x18] + + kdb %f0, 0 + kdb %f0, 4095 + kdb %f0, 0(%r1) + kdb %f0, 0(%r15) + kdb %f0, 4095(%r1,%r15) + kdb %f0, 4095(%r15,%r1) + kdb %f15, 0 + +#CHECK: kdbr %f0, %f0 # encoding: [0xb3,0x18,0x00,0x00] +#CHECK: kdbr %f0, %f15 # encoding: [0xb3,0x18,0x00,0x0f] +#CHECK: kdbr %f7, %f8 # encoding: [0xb3,0x18,0x00,0x78] +#CHECK: kdbr %f15, %f0 # encoding: [0xb3,0x18,0x00,0xf0] + + kdbr %f0, %f0 + kdbr %f0, %f15 + kdbr %f7, %f8 + kdbr %f15, %f0 + +#CHECK: keb %f0, 0 # encoding: [0xed,0x00,0x00,0x00,0x00,0x08] +#CHECK: keb %f0, 4095 # encoding: [0xed,0x00,0x0f,0xff,0x00,0x08] +#CHECK: keb %f0, 0(%r1) # encoding: [0xed,0x00,0x10,0x00,0x00,0x08] +#CHECK: keb %f0, 0(%r15) # encoding: [0xed,0x00,0xf0,0x00,0x00,0x08] +#CHECK: keb %f0, 4095(%r1,%r15) # encoding: [0xed,0x01,0xff,0xff,0x00,0x08] +#CHECK: keb %f0, 4095(%r15,%r1) # encoding: [0xed,0x0f,0x1f,0xff,0x00,0x08] +#CHECK: keb %f15, 0 # encoding: [0xed,0xf0,0x00,0x00,0x00,0x08] + + keb %f0, 0 + keb %f0, 4095 + keb %f0, 0(%r1) + keb %f0, 0(%r15) + keb %f0, 4095(%r1,%r15) + keb %f0, 4095(%r15,%r1) + keb %f15, 0 + +#CHECK: kebr %f0, %f0 # encoding: [0xb3,0x08,0x00,0x00] +#CHECK: kebr %f0, %f15 # encoding: [0xb3,0x08,0x00,0x0f] +#CHECK: kebr %f7, %f8 # encoding: [0xb3,0x08,0x00,0x78] +#CHECK: kebr %f15, %f0 # encoding: [0xb3,0x08,0x00,0xf0] + + kebr %f0, %f0 + kebr %f0, %f15 + kebr %f7, %f8 + kebr %f15, %f0 + #CHECK: kimd %r0, %r2 # encoding: [0xb9,0x3e,0x00,0x02] #CHECK: kimd %r0, %r14 # encoding: [0xb9,0x3e,0x00,0x0e] #CHECK: kimd %r15, %r2 # encoding: [0xb9,0x3e,0x00,0xf2] @@ -6676,6 +6898,16 @@ kmc %r14, %r2 kmc %r6, %r10 +#CHECK: kxbr %f0, %f0 # encoding: [0xb3,0x48,0x00,0x00] +#CHECK: kxbr %f0, %f13 # encoding: [0xb3,0x48,0x00,0x0d] +#CHECK: kxbr %f8, %f8 # encoding: [0xb3,0x48,0x00,0x88] +#CHECK: kxbr %f13, %f0 # encoding: [0xb3,0x48,0x00,0xd0] + + kxbr %f0, %f0 + kxbr %f0, %f13 + kxbr %f8, %f8 + kxbr %f13, %f0 + #CHECK: l %r0, 0 # encoding: [0x58,0x00,0x00,0x00] #CHECK: l %r0, 4095 # encoding: [0x58,0x00,0x0f,0xff] #CHECK: l %r0, 0(%r1) # encoding: [0x58,0x00,0x10,0x00] @@ -7885,6 +8117,26 @@ lm %r0,%r0,4095(%r1) lm %r0,%r0,4095(%r15) +#CHECK: lmd %r0, %r0, 0, 0 # encoding: [0xef,0x00,0x00,0x00,0x00,0x00] +#CHECK: lmd %r0, %r15, 0, 0 # encoding: [0xef,0x0f,0x00,0x00,0x00,0x00] +#CHECK: lmd %r14, %r15, 0, 0 # encoding: [0xef,0xef,0x00,0x00,0x00,0x00] +#CHECK: lmd %r15, %r15, 0, 0 # encoding: [0xef,0xff,0x00,0x00,0x00,0x00] +#CHECK: lmd %r2, %r4, 0(%r1), 0(%r15) # encoding: [0xef,0x24,0x10,0x00,0xf0,0x00] +#CHECK: lmd %r2, %r4, 1(%r1), 0(%r15) # encoding: [0xef,0x24,0x10,0x01,0xf0,0x00] +#CHECK: lmd %r2, %r4, 4095(%r1), 0(%r15) # encoding: [0xef,0x24,0x1f,0xff,0xf0,0x00] +#CHECK: lmd %r2, %r4, 0(%r1), 1(%r15) # encoding: [0xef,0x24,0x10,0x00,0xf0,0x01] +#CHECK: lmd %r2, %r4, 0(%r1), 4095(%r15) # encoding: [0xef,0x24,0x10,0x00,0xff,0xff] + + lmd %r0, %r0, 0, 0 + lmd %r0, %r15, 0, 0 + lmd %r14, %r15, 0, 0 + lmd %r15, %r15, 0, 0 + lmd %r2, %r4, 0(%r1), 0(%r15) + lmd %r2, %r4, 1(%r1), 0(%r15) + lmd %r2, %r4, 4095(%r1), 0(%r15) + lmd %r2, %r4, 0(%r1), 1(%r15) + lmd %r2, %r4, 0(%r1), 4095(%r15) + #CHECK: lmg %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0x04] #CHECK: lmg %r0, %r15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0x04] #CHECK: lmg %r14, %r15, 0 # encoding: [0xeb,0xef,0x00,0x00,0x00,0x04] @@ -8430,6 +8682,22 @@ lzxr %f8 lzxr %f13 +#CHECK: m %r0, 0 # encoding: [0x5c,0x00,0x00,0x00] +#CHECK: m %r0, 4095 # encoding: [0x5c,0x00,0x0f,0xff] +#CHECK: m %r0, 0(%r1) # encoding: [0x5c,0x00,0x10,0x00] +#CHECK: m %r0, 0(%r15) # encoding: [0x5c,0x00,0xf0,0x00] +#CHECK: m %r0, 4095(%r1,%r15) # encoding: [0x5c,0x01,0xff,0xff] +#CHECK: m %r0, 4095(%r15,%r1) # encoding: [0x5c,0x0f,0x1f,0xff] +#CHECK: m %r14, 0 # encoding: [0x5c,0xe0,0x00,0x00] + + m %r0, 0 + m %r0, 4095 + m %r0, 0(%r1) + m %r0, 0(%r15) + m %r0, 4095(%r1,%r15) + m %r0, 4095(%r15,%r1) + m %r14, 0 + #CHECK: madb %f0, %f0, 0 # encoding: [0xed,0x00,0x00,0x00,0x00,0x1e] #CHECK: madb %f0, %f0, 4095 # encoding: [0xed,0x00,0x0f,0xff,0x00,0x1e] #CHECK: madb %f0, %f0, 0(%r1) # encoding: [0xed,0x00,0x10,0x00,0x00,0x1e] @@ -8576,6 +8844,28 @@ meebr %f7, %f8 meebr %f15, %f0 +#CHECK: mfy %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x5c] +#CHECK: mfy %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x5c] +#CHECK: mfy %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x5c] +#CHECK: mfy %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x5c] +#CHECK: mfy %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x5c] +#CHECK: mfy %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x5c] +#CHECK: mfy %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x5c] +#CHECK: mfy %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x5c] +#CHECK: mfy %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x5c] +#CHECK: mfy %r14, 0 # encoding: [0xe3,0xe0,0x00,0x00,0x00,0x5c] + + mfy %r0, -524288 + mfy %r0, -1 + mfy %r0, 0 + mfy %r0, 1 + mfy %r0, 524287 + mfy %r0, 0(%r1) + mfy %r0, 0(%r15) + mfy %r0, 524287(%r1,%r15) + mfy %r0, 524287(%r15,%r1) + mfy %r14, 0 + #CHECK: mghi %r0, -32768 # encoding: [0xa7,0x0d,0x80,0x00] #CHECK: mghi %r0, -1 # encoding: [0xa7,0x0d,0xff,0xff] #CHECK: mghi %r0, 0 # encoding: [0xa7,0x0d,0x00,0x00] @@ -8642,6 +8932,28 @@ mhy %r0, 524287(%r15,%r1) mhy %r15, 0 +#CHECK: ml %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x96] +#CHECK: ml %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x96] +#CHECK: ml %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x96] +#CHECK: ml %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x96] +#CHECK: ml %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x96] +#CHECK: ml %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x96] +#CHECK: ml %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x96] +#CHECK: ml %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x96] +#CHECK: ml %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x96] +#CHECK: ml %r14, 0 # encoding: [0xe3,0xe0,0x00,0x00,0x00,0x96] + + ml %r0, -524288 + ml %r0, -1 + ml %r0, 0 + ml %r0, 1 + ml %r0, 524287 + ml %r0, 0(%r1) + ml %r0, 0(%r15) + ml %r0, 524287(%r1,%r15) + ml %r0, 524287(%r15,%r1) + ml %r14, 0 + #CHECK: mlg %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x86] #CHECK: mlg %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x86] #CHECK: mlg %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x86] @@ -8674,6 +8986,16 @@ mlgr %r14,%r0 mlgr %r6,%r9 +#CHECK: mlr %r0, %r0 # encoding: [0xb9,0x96,0x00,0x00] +#CHECK: mlr %r0, %r15 # encoding: [0xb9,0x96,0x00,0x0f] +#CHECK: mlr %r14, %r0 # encoding: [0xb9,0x96,0x00,0xe0] +#CHECK: mlr %r6, %r9 # encoding: [0xb9,0x96,0x00,0x69] + + mlr %r0,%r0 + mlr %r0,%r15 + mlr %r14,%r0 + mlr %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] @@ -8704,6 +9026,16 @@ mp 0(1), 0(16,%r1) mp 0(1), 0(16,%r15) +#CHECK: mr %r0, %r0 # encoding: [0x1c,0x00] +#CHECK: mr %r0, %r15 # encoding: [0x1c,0x0f] +#CHECK: mr %r14, %r0 # encoding: [0x1c,0xe0] +#CHECK: mr %r6, %r9 # encoding: [0x1c,0x69] + + mr %r0,%r0 + mr %r0,%r15 + mr %r14,%r0 + mr %r6,%r9 + #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] @@ -10198,6 +10530,32 @@ sla %r0,4095(%r1) sla %r0,4095(%r15) +#CHECK: slag %r0, %r0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0x0b] +#CHECK: slag %r15, %r1, 0 # encoding: [0xeb,0xf1,0x00,0x00,0x00,0x0b] +#CHECK: slag %r1, %r15, 0 # encoding: [0xeb,0x1f,0x00,0x00,0x00,0x0b] +#CHECK: slag %r15, %r15, 0 # encoding: [0xeb,0xff,0x00,0x00,0x00,0x0b] +#CHECK: slag %r0, %r0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0x0b] +#CHECK: slag %r0, %r0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0x0b] +#CHECK: slag %r0, %r0, 1 # encoding: [0xeb,0x00,0x00,0x01,0x00,0x0b] +#CHECK: slag %r0, %r0, 524287 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0x0b] +#CHECK: slag %r0, %r0, 0(%r1) # encoding: [0xeb,0x00,0x10,0x00,0x00,0x0b] +#CHECK: slag %r0, %r0, 0(%r15) # encoding: [0xeb,0x00,0xf0,0x00,0x00,0x0b] +#CHECK: slag %r0, %r0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0x0b] +#CHECK: slag %r0, %r0, 524287(%r15) # encoding: [0xeb,0x00,0xff,0xff,0x7f,0x0b] + + slag %r0,%r0,0 + slag %r15,%r1,0 + slag %r1,%r15,0 + slag %r15,%r15,0 + slag %r0,%r0,-524288 + slag %r0,%r0,-1 + slag %r0,%r0,1 + slag %r0,%r0,524287 + slag %r0,%r0,0(%r1) + slag %r0,%r0,0(%r15) + slag %r0,%r0,524287(%r1) + slag %r0,%r0,524287(%r15) + #CHECK: slb %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x99] #CHECK: slb %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x99] #CHECK: slb %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x99] @@ -10262,6 +10620,42 @@ slbr %r15,%r0 slbr %r7,%r8 +#CHECK: slda %r0, 0 # encoding: [0x8f,0x00,0x00,0x00] +#CHECK: slda %r6, 0 # encoding: [0x8f,0x60,0x00,0x00] +#CHECK: slda %r14, 0 # encoding: [0x8f,0xe0,0x00,0x00] +#CHECK: slda %r0, 4095 # encoding: [0x8f,0x00,0x0f,0xff] +#CHECK: slda %r0, 0(%r1) # encoding: [0x8f,0x00,0x10,0x00] +#CHECK: slda %r0, 0(%r15) # encoding: [0x8f,0x00,0xf0,0x00] +#CHECK: slda %r0, 4095(%r1) # encoding: [0x8f,0x00,0x1f,0xff] +#CHECK: slda %r0, 4095(%r15) # encoding: [0x8f,0x00,0xff,0xff] + + slda %r0,0 + slda %r6,0 + slda %r14,0 + slda %r0,4095 + slda %r0,0(%r1) + slda %r0,0(%r15) + slda %r0,4095(%r1) + slda %r0,4095(%r15) + +#CHECK: sldl %r0, 0 # encoding: [0x8d,0x00,0x00,0x00] +#CHECK: sldl %r6, 0 # encoding: [0x8d,0x60,0x00,0x00] +#CHECK: sldl %r14, 0 # encoding: [0x8d,0xe0,0x00,0x00] +#CHECK: sldl %r0, 4095 # encoding: [0x8d,0x00,0x0f,0xff] +#CHECK: sldl %r0, 0(%r1) # encoding: [0x8d,0x00,0x10,0x00] +#CHECK: sldl %r0, 0(%r15) # encoding: [0x8d,0x00,0xf0,0x00] +#CHECK: sldl %r0, 4095(%r1) # encoding: [0x8d,0x00,0x1f,0xff] +#CHECK: sldl %r0, 4095(%r15) # encoding: [0x8d,0x00,0xff,0xff] + + sldl %r0,0 + sldl %r6,0 + sldl %r14,0 + sldl %r0,4095 + sldl %r0,0(%r1) + sldl %r0,0(%r15) + sldl %r0,4095(%r1) + sldl %r0,4095(%r15) + #CHECK: slfi %r0, 0 # encoding: [0xc2,0x05,0x00,0x00,0x00,0x00] #CHECK: slfi %r0, 4294967295 # encoding: [0xc2,0x05,0xff,0xff,0xff,0xff] #CHECK: slfi %r15, 0 # encoding: [0xc2,0xf5,0x00,0x00,0x00,0x00] @@ -10572,6 +10966,42 @@ srag %r0,%r0,524287(%r1) srag %r0,%r0,524287(%r15) +#CHECK: srda %r0, 0 # encoding: [0x8e,0x00,0x00,0x00] +#CHECK: srda %r6, 0 # encoding: [0x8e,0x60,0x00,0x00] +#CHECK: srda %r14, 0 # encoding: [0x8e,0xe0,0x00,0x00] +#CHECK: srda %r0, 4095 # encoding: [0x8e,0x00,0x0f,0xff] +#CHECK: srda %r0, 0(%r1) # encoding: [0x8e,0x00,0x10,0x00] +#CHECK: srda %r0, 0(%r15) # encoding: [0x8e,0x00,0xf0,0x00] +#CHECK: srda %r0, 4095(%r1) # encoding: [0x8e,0x00,0x1f,0xff] +#CHECK: srda %r0, 4095(%r15) # encoding: [0x8e,0x00,0xff,0xff] + + srda %r0,0 + srda %r6,0 + srda %r14,0 + srda %r0,4095 + srda %r0,0(%r1) + srda %r0,0(%r15) + srda %r0,4095(%r1) + srda %r0,4095(%r15) + +#CHECK: srdl %r0, 0 # encoding: [0x8c,0x00,0x00,0x00] +#CHECK: srdl %r6, 0 # encoding: [0x8c,0x60,0x00,0x00] +#CHECK: srdl %r14, 0 # encoding: [0x8c,0xe0,0x00,0x00] +#CHECK: srdl %r0, 4095 # encoding: [0x8c,0x00,0x0f,0xff] +#CHECK: srdl %r0, 0(%r1) # encoding: [0x8c,0x00,0x10,0x00] +#CHECK: srdl %r0, 0(%r15) # encoding: [0x8c,0x00,0xf0,0x00] +#CHECK: srdl %r0, 4095(%r1) # encoding: [0x8c,0x00,0x1f,0xff] +#CHECK: srdl %r0, 4095(%r15) # encoding: [0x8c,0x00,0xff,0xff] + + srdl %r0,0 + srdl %r6,0 + srdl %r14,0 + srdl %r0,4095 + srdl %r0,0(%r1) + srdl %r0,0(%r15) + srdl %r0,4095(%r1) + srdl %r0,4095(%r15) + #CHECK: srl %r0, 0 # encoding: [0x88,0x00,0x00,0x00] #CHECK: srl %r7, 0 # encoding: [0x88,0x70,0x00,0x00] #CHECK: srl %r15, 0 # encoding: [0x88,0xf0,0x00,0x00] @@ -10816,6 +11246,66 @@ stckf 4095(%r1) stckf 4095(%r15) +#CHECK: stcm %r0, 0, 0 # encoding: [0xbe,0x00,0x00,0x00] +#CHECK: stcm %r0, 15, 4095 # encoding: [0xbe,0x0f,0x0f,0xff] +#CHECK: stcm %r0, 0, 0(%r1) # encoding: [0xbe,0x00,0x10,0x00] +#CHECK: stcm %r0, 0, 0(%r15) # encoding: [0xbe,0x00,0xf0,0x00] +#CHECK: stcm %r15, 15, 4095(%r1) # encoding: [0xbe,0xff,0x1f,0xff] +#CHECK: stcm %r0, 0, 4095(%r15) # encoding: [0xbe,0x00,0xff,0xff] +#CHECK: stcm %r15, 0, 0 # encoding: [0xbe,0xf0,0x00,0x00] + + stcm %r0, 0, 0 + stcm %r0, 15, 4095 + stcm %r0, 0, 0(%r1) + stcm %r0, 0, 0(%r15) + stcm %r15, 15, 4095(%r1) + stcm %r0, 0, 4095(%r15) + stcm %r15, 0, 0 + +#CHECK: stcmh %r0, 0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0x2c] +#CHECK: stcmh %r0, 0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0x2c] +#CHECK: stcmh %r0, 15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0x2c] +#CHECK: stcmh %r0, 15, 1 # encoding: [0xeb,0x0f,0x00,0x01,0x00,0x2c] +#CHECK: stcmh %r0, 8, 524287 # encoding: [0xeb,0x08,0x0f,0xff,0x7f,0x2c] +#CHECK: stcmh %r0, 8, 0(%r1) # encoding: [0xeb,0x08,0x10,0x00,0x00,0x2c] +#CHECK: stcmh %r0, 4, 0(%r15) # encoding: [0xeb,0x04,0xf0,0x00,0x00,0x2c] +#CHECK: stcmh %r0, 4, 524287(%r15) # encoding: [0xeb,0x04,0xff,0xff,0x7f,0x2c] +#CHECK: stcmh %r0, 0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0x2c] +#CHECK: stcmh %r15, 0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0x2c] + + stcmh %r0, 0, -524288 + stcmh %r0, 0, -1 + stcmh %r0, 15, 0 + stcmh %r0, 15, 1 + stcmh %r0, 8, 524287 + stcmh %r0, 8, 0(%r1) + stcmh %r0, 4, 0(%r15) + stcmh %r0, 4, 524287(%r15) + stcmh %r0, 0, 524287(%r1) + stcmh %r15, 0, 0 + +#CHECK: stcmy %r0, 0, -524288 # encoding: [0xeb,0x00,0x00,0x00,0x80,0x2d] +#CHECK: stcmy %r0, 0, -1 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0x2d] +#CHECK: stcmy %r0, 15, 0 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0x2d] +#CHECK: stcmy %r0, 15, 1 # encoding: [0xeb,0x0f,0x00,0x01,0x00,0x2d] +#CHECK: stcmy %r0, 8, 524287 # encoding: [0xeb,0x08,0x0f,0xff,0x7f,0x2d] +#CHECK: stcmy %r0, 8, 0(%r1) # encoding: [0xeb,0x08,0x10,0x00,0x00,0x2d] +#CHECK: stcmy %r0, 4, 0(%r15) # encoding: [0xeb,0x04,0xf0,0x00,0x00,0x2d] +#CHECK: stcmy %r0, 4, 524287(%r15) # encoding: [0xeb,0x04,0xff,0xff,0x7f,0x2d] +#CHECK: stcmy %r0, 0, 524287(%r1) # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0x2d] +#CHECK: stcmy %r15, 0, 0 # encoding: [0xeb,0xf0,0x00,0x00,0x00,0x2d] + + stcmy %r0, 0, -524288 + stcmy %r0, 0, -1 + stcmy %r0, 15, 0 + stcmy %r0, 15, 1 + stcmy %r0, 8, 524287 + stcmy %r0, 8, 0(%r1) + stcmy %r0, 4, 0(%r15) + stcmy %r0, 4, 524287(%r15) + stcmy %r0, 0, 524287(%r1) + stcmy %r15, 0, 0 + #CHECK: stcy %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x72] #CHECK: stcy %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x72] #CHECK: stcy %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x72] |