diff options
author | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-07-19 16:24:22 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-07-19 16:24:22 +0000 |
commit | 52b2774577e07fbf804e4d647119578df4111f21 (patch) | |
tree | a1a4f6c458b0fbbd323da189fc0bb8fcfecea4f2 /test/MC | |
parent | ebd21b30eb833a6942c4e82f890989a2462ab74f (diff) | |
download | external_llvm-52b2774577e07fbf804e4d647119578df4111f21.zip external_llvm-52b2774577e07fbf804e4d647119578df4111f21.tar.gz external_llvm-52b2774577e07fbf804e4d647119578df4111f21.tar.bz2 |
[SystemZ] Add NGRK, OGRK and XGRK
Like r186683, but for 64 bits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186685 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC')
-rw-r--r-- | test/MC/Disassembler/SystemZ/insns.txt | 18 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-bad.s | 15 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-good-z196.s | 36 |
3 files changed, 69 insertions, 0 deletions
diff --git a/test/MC/Disassembler/SystemZ/insns.txt b/test/MC/Disassembler/SystemZ/insns.txt index 68d585a..4352ae0 100644 --- a/test/MC/Disassembler/SystemZ/insns.txt +++ b/test/MC/Disassembler/SystemZ/insns.txt @@ -4207,6 +4207,12 @@ # CHECK: ng %r0, -524288 0xe3 0x00 0x00 0x00 0x80 0x80 +# CHECK: ngrk %r0, %r0, %r0 +0xb9 0xe4 0x00 0x00 + +# CHECK: ngrk %r2, %r3, %r4 +0xb9 0xe4 0x40 0x23 + # CHECK: ng %r0, -1 0xe3 0x00 0x0f 0xff 0xff 0x80 @@ -4432,6 +4438,12 @@ # CHECK: ogr %r7, %r8 0xb9 0x81 0x00 0x78 +# CHECK: ogrk %r0, %r0, %r0 +0xb9 0xe6 0x00 0x00 + +# CHECK: ogrk %r2, %r3, %r4 +0xb9 0xe6 0x40 0x23 + # CHECK: og %r0, -524288 0xe3 0x00 0x00 0x00 0x80 0x81 @@ -6091,6 +6103,12 @@ # CHECK: xgr %r7, %r8 0xb9 0x82 0x00 0x78 +# CHECK: xgrk %r0, %r0, %r0 +0xb9 0xe7 0x00 0x00 + +# CHECK: xgrk %r2, %r3, %r4 +0xb9 0xe7 0x40 0x23 + # CHECK: xg %r0, -524288 0xe3 0x00 0x00 0x00 0x80 0x82 diff --git a/test/MC/SystemZ/insn-bad.s b/test/MC/SystemZ/insn-bad.s index ccc778d..6d1b086 100644 --- a/test/MC/SystemZ/insn-bad.s +++ b/test/MC/SystemZ/insn-bad.s @@ -1900,6 +1900,11 @@ ng %r0, -524289 ng %r0, 524288 +#CHECK: error: {{(instruction requires: distinct-ops)?}} +#CHECK: ngrk %r2,%r3,%r4 + + ngrk %r2,%r3,%r4 + #CHECK: error: invalid operand #CHECK: ni -1, 0 #CHECK: error: invalid operand @@ -2011,6 +2016,11 @@ og %r0, -524289 og %r0, 524288 +#CHECK: error: {{(instruction requires: distinct-ops)?}} +#CHECK: ogrk %r2,%r3,%r4 + + ogrk %r2,%r3,%r4 + #CHECK: error: invalid operand #CHECK: oi -1, 0 #CHECK: error: invalid operand @@ -2646,6 +2656,11 @@ xg %r0, -524289 xg %r0, 524288 +#CHECK: error: {{(instruction requires: distinct-ops)?}} +#CHECK: xgrk %r2,%r3,%r4 + + xgrk %r2,%r3,%r4 + #CHECK: error: invalid operand #CHECK: xi -1, 0 #CHECK: error: invalid operand diff --git a/test/MC/SystemZ/insn-good-z196.s b/test/MC/SystemZ/insn-good-z196.s index 9d64670..e00f904 100644 --- a/test/MC/SystemZ/insn-good-z196.s +++ b/test/MC/SystemZ/insn-good-z196.s @@ -1,6 +1,18 @@ # For z196 and above. # RUN: llvm-mc -triple s390x-linux-gnu -mcpu=z196 -show-encoding %s | FileCheck %s +#CHECK: ngrk %r0, %r0, %r0 # encoding: [0xb9,0xe4,0x00,0x00] +#CHECK: ngrk %r0, %r0, %r15 # encoding: [0xb9,0xe4,0xf0,0x00] +#CHECK: ngrk %r0, %r15, %r0 # encoding: [0xb9,0xe4,0x00,0x0f] +#CHECK: ngrk %r15, %r0, %r0 # encoding: [0xb9,0xe4,0x00,0xf0] +#CHECK: ngrk %r7, %r8, %r9 # encoding: [0xb9,0xe4,0x90,0x78] + + ngrk %r0,%r0,%r0 + ngrk %r0,%r0,%r15 + ngrk %r0,%r15,%r0 + ngrk %r15,%r0,%r0 + ngrk %r7,%r8,%r9 + #CHECK: nrk %r0, %r0, %r0 # encoding: [0xb9,0xf4,0x00,0x00] #CHECK: nrk %r0, %r0, %r15 # encoding: [0xb9,0xf4,0xf0,0x00] #CHECK: nrk %r0, %r15, %r0 # encoding: [0xb9,0xf4,0x00,0x0f] @@ -13,6 +25,18 @@ nrk %r15,%r0,%r0 nrk %r7,%r8,%r9 +#CHECK: ogrk %r0, %r0, %r0 # encoding: [0xb9,0xe6,0x00,0x00] +#CHECK: ogrk %r0, %r0, %r15 # encoding: [0xb9,0xe6,0xf0,0x00] +#CHECK: ogrk %r0, %r15, %r0 # encoding: [0xb9,0xe6,0x00,0x0f] +#CHECK: ogrk %r15, %r0, %r0 # encoding: [0xb9,0xe6,0x00,0xf0] +#CHECK: ogrk %r7, %r8, %r9 # encoding: [0xb9,0xe6,0x90,0x78] + + ogrk %r0,%r0,%r0 + ogrk %r0,%r0,%r15 + ogrk %r0,%r15,%r0 + ogrk %r15,%r0,%r0 + ogrk %r7,%r8,%r9 + #CHECK: ork %r0, %r0, %r0 # encoding: [0xb9,0xf6,0x00,0x00] #CHECK: ork %r0, %r0, %r15 # encoding: [0xb9,0xf6,0xf0,0x00] #CHECK: ork %r0, %r15, %r0 # encoding: [0xb9,0xf6,0x00,0x0f] @@ -103,6 +127,18 @@ srlk %r0,%r0,524287(%r1) srlk %r0,%r0,524287(%r15) +#CHECK: xgrk %r0, %r0, %r0 # encoding: [0xb9,0xe7,0x00,0x00] +#CHECK: xgrk %r0, %r0, %r15 # encoding: [0xb9,0xe7,0xf0,0x00] +#CHECK: xgrk %r0, %r15, %r0 # encoding: [0xb9,0xe7,0x00,0x0f] +#CHECK: xgrk %r15, %r0, %r0 # encoding: [0xb9,0xe7,0x00,0xf0] +#CHECK: xgrk %r7, %r8, %r9 # encoding: [0xb9,0xe7,0x90,0x78] + + xgrk %r0,%r0,%r0 + xgrk %r0,%r0,%r15 + xgrk %r0,%r15,%r0 + xgrk %r15,%r0,%r0 + xgrk %r7,%r8,%r9 + #CHECK: xrk %r0, %r0, %r0 # encoding: [0xb9,0xf7,0x00,0x00] #CHECK: xrk %r0, %r0, %r15 # encoding: [0xb9,0xf7,0xf0,0x00] #CHECK: xrk %r0, %r15, %r0 # encoding: [0xb9,0xf7,0x00,0x0f] |