diff options
author | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-07-31 11:17:35 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-07-31 11:17:35 +0000 |
commit | f3068d02e5f55d7e69134c8f14aa21c4b9fde91a (patch) | |
tree | 01283464fa8a8a6ec67469742e3202f54e5e5815 /test/MC | |
parent | 5b62bb0af119f92ca9ecec2150dab898c73cfcd8 (diff) | |
download | llvm-f3068d02e5f55d7e69134c8f14aa21c4b9fde91a.tar.gz llvm-f3068d02e5f55d7e69134c8f14aa21c4b9fde91a.tar.bz2 llvm-f3068d02e5f55d7e69134c8f14aa21c4b9fde91a.tar.xz |
[SystemZ] Add RISBLG and RISBHG instruction definitions
The next patch will make use of RISBLG for codegen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187490 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC')
-rw-r--r-- | test/MC/Disassembler/SystemZ/insns.txt | 42 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-bad-z196.s | 40 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-bad.s | 10 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-good-z196.s | 32 |
4 files changed, 124 insertions, 0 deletions
diff --git a/test/MC/Disassembler/SystemZ/insns.txt b/test/MC/Disassembler/SystemZ/insns.txt index cf26b653b2..fa30bd31a0 100644 --- a/test/MC/Disassembler/SystemZ/insns.txt +++ b/test/MC/Disassembler/SystemZ/insns.txt @@ -4957,6 +4957,48 @@ # CHECK: risbg %r4, %r5, 6, 7, 8 0xec 0x45 0x06 0x07 0x08 0x55 +# CHECK: risbhg %r0, %r0, 0, 0, 0 +0xec 0x00 0x00 0x00 0x00 0x5d + +# CHECK: risbhg %r0, %r0, 0, 0, 63 +0xec 0x00 0x00 0x00 0x3f 0x5d + +# CHECK: risbhg %r0, %r0, 0, 255, 0 +0xec 0x00 0x00 0xff 0x00 0x5d + +# CHECK: risbhg %r0, %r0, 255, 0, 0 +0xec 0x00 0xff 0x00 0x00 0x5d + +# CHECK: risbhg %r0, %r15, 0, 0, 0 +0xec 0x0f 0x00 0x00 0x00 0x5d + +# CHECK: risbhg %r15, %r0, 0, 0, 0 +0xec 0xf0 0x00 0x00 0x00 0x5d + +# CHECK: risbhg %r4, %r5, 6, 7, 8 +0xec 0x45 0x06 0x07 0x08 0x5d + +# CHECK: risblg %r0, %r0, 0, 0, 0 +0xec 0x00 0x00 0x00 0x00 0x51 + +# CHECK: risblg %r0, %r0, 0, 0, 63 +0xec 0x00 0x00 0x00 0x3f 0x51 + +# CHECK: risblg %r0, %r0, 0, 255, 0 +0xec 0x00 0x00 0xff 0x00 0x51 + +# CHECK: risblg %r0, %r0, 255, 0, 0 +0xec 0x00 0xff 0x00 0x00 0x51 + +# CHECK: risblg %r0, %r15, 0, 0, 0 +0xec 0x0f 0x00 0x00 0x00 0x51 + +# CHECK: risblg %r15, %r0, 0, 0, 0 +0xec 0xf0 0x00 0x00 0x00 0x51 + +# CHECK: risblg %r4, %r5, 6, 7, 8 +0xec 0x45 0x06 0x07 0x08 0x51 + # CHECK: rnsbg %r0, %r0, 0, 0, 0 0xec 0x00 0x00 0x00 0x00 0x54 diff --git a/test/MC/SystemZ/insn-bad-z196.s b/test/MC/SystemZ/insn-bad-z196.s index a5e21894a3..ec90c89b4c 100644 --- a/test/MC/SystemZ/insn-bad-z196.s +++ b/test/MC/SystemZ/insn-bad-z196.s @@ -75,6 +75,46 @@ locr %r0,%r0,16 #CHECK: error: invalid operand +#CHECK: risbhg %r0,%r0,0,0,-1 +#CHECK: error: invalid operand +#CHECK: risbhg %r0,%r0,0,0,64 +#CHECK: error: invalid operand +#CHECK: risbhg %r0,%r0,0,-1,0 +#CHECK: error: invalid operand +#CHECK: risbhg %r0,%r0,0,256,0 +#CHECK: error: invalid operand +#CHECK: risbhg %r0,%r0,-1,0,0 +#CHECK: error: invalid operand +#CHECK: risbhg %r0,%r0,256,0,0 + + risbhg %r0,%r0,0,0,-1 + risbhg %r0,%r0,0,0,64 + risbhg %r0,%r0,0,-1,0 + risbhg %r0,%r0,0,256,0 + risbhg %r0,%r0,-1,0,0 + risbhg %r0,%r0,256,0,0 + +#CHECK: error: invalid operand +#CHECK: risblg %r0,%r0,0,0,-1 +#CHECK: error: invalid operand +#CHECK: risblg %r0,%r0,0,0,64 +#CHECK: error: invalid operand +#CHECK: risblg %r0,%r0,0,-1,0 +#CHECK: error: invalid operand +#CHECK: risblg %r0,%r0,0,256,0 +#CHECK: error: invalid operand +#CHECK: risblg %r0,%r0,-1,0,0 +#CHECK: error: invalid operand +#CHECK: risblg %r0,%r0,256,0,0 + + risblg %r0,%r0,0,0,-1 + risblg %r0,%r0,0,0,64 + risblg %r0,%r0,0,-1,0 + risblg %r0,%r0,0,256,0 + risblg %r0,%r0,-1,0,0 + risblg %r0,%r0,256,0,0 + +#CHECK: error: invalid operand #CHECK: sllk %r0,%r0,-524289 #CHECK: error: invalid operand #CHECK: sllk %r0,%r0,524288 diff --git a/test/MC/SystemZ/insn-bad.s b/test/MC/SystemZ/insn-bad.s index f890056677..eab11d1dd2 100644 --- a/test/MC/SystemZ/insn-bad.s +++ b/test/MC/SystemZ/insn-bad.s @@ -2176,6 +2176,16 @@ risbg %r0,%r0,-1,0,0 risbg %r0,%r0,256,0,0 +#CHECK: error: {{(instruction requires: high-word)?}} +#CHECK: risbhg %r1, %r2, 0, 0, 0 + + risbhg %r1, %r2, 0, 0, 0 + +#CHECK: error: {{(instruction requires: high-word)?}} +#CHECK: risblg %r1, %r2, 0, 0, 0 + + risblg %r1, %r2, 0, 0, 0 + #CHECK: error: invalid operand #CHECK: rnsbg %r0,%r0,0,0,-1 #CHECK: error: invalid operand diff --git a/test/MC/SystemZ/insn-good-z196.s b/test/MC/SystemZ/insn-good-z196.s index f5213b910b..5f7c27785d 100644 --- a/test/MC/SystemZ/insn-good-z196.s +++ b/test/MC/SystemZ/insn-good-z196.s @@ -337,6 +337,38 @@ ork %r15,%r0,%r0 ork %r7,%r8,%r9 +#CHECK: risbhg %r0, %r0, 0, 0, 0 # encoding: [0xec,0x00,0x00,0x00,0x00,0x5d] +#CHECK: risbhg %r0, %r0, 0, 0, 63 # encoding: [0xec,0x00,0x00,0x00,0x3f,0x5d] +#CHECK: risbhg %r0, %r0, 0, 255, 0 # encoding: [0xec,0x00,0x00,0xff,0x00,0x5d] +#CHECK: risbhg %r0, %r0, 255, 0, 0 # encoding: [0xec,0x00,0xff,0x00,0x00,0x5d] +#CHECK: risbhg %r0, %r15, 0, 0, 0 # encoding: [0xec,0x0f,0x00,0x00,0x00,0x5d] +#CHECK: risbhg %r15, %r0, 0, 0, 0 # encoding: [0xec,0xf0,0x00,0x00,0x00,0x5d] +#CHECK: risbhg %r4, %r5, 6, 7, 8 # encoding: [0xec,0x45,0x06,0x07,0x08,0x5d] + + risbhg %r0,%r0,0,0,0 + risbhg %r0,%r0,0,0,63 + risbhg %r0,%r0,0,255,0 + risbhg %r0,%r0,255,0,0 + risbhg %r0,%r15,0,0,0 + risbhg %r15,%r0,0,0,0 + risbhg %r4,%r5,6,7,8 + +#CHECK: risblg %r0, %r0, 0, 0, 0 # encoding: [0xec,0x00,0x00,0x00,0x00,0x51] +#CHECK: risblg %r0, %r0, 0, 0, 63 # encoding: [0xec,0x00,0x00,0x00,0x3f,0x51] +#CHECK: risblg %r0, %r0, 0, 255, 0 # encoding: [0xec,0x00,0x00,0xff,0x00,0x51] +#CHECK: risblg %r0, %r0, 255, 0, 0 # encoding: [0xec,0x00,0xff,0x00,0x00,0x51] +#CHECK: risblg %r0, %r15, 0, 0, 0 # encoding: [0xec,0x0f,0x00,0x00,0x00,0x51] +#CHECK: risblg %r15, %r0, 0, 0, 0 # encoding: [0xec,0xf0,0x00,0x00,0x00,0x51] +#CHECK: risblg %r4, %r5, 6, 7, 8 # encoding: [0xec,0x45,0x06,0x07,0x08,0x51] + + risblg %r0,%r0,0,0,0 + risblg %r0,%r0,0,0,63 + risblg %r0,%r0,0,255,0 + risblg %r0,%r0,255,0,0 + risblg %r0,%r15,0,0,0 + risblg %r15,%r0,0,0,0 + risblg %r4,%r5,6,7,8 + #CHECK: sgrk %r0, %r0, %r0 # encoding: [0xb9,0xe9,0x00,0x00] #CHECK: sgrk %r0, %r0, %r15 # encoding: [0xb9,0xe9,0xf0,0x00] #CHECK: sgrk %r0, %r15, %r0 # encoding: [0xb9,0xe9,0x00,0x0f] |