diff options
author | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-09-30 10:50:33 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-09-30 10:50:33 +0000 |
commit | e09bcad77c033392669b8d9cd3d93209064dfbc4 (patch) | |
tree | 04905cd62794991bfc32d20a30839bfbba17f0b4 /test/MC | |
parent | eb2f72f454048a1d179d1c75f5a953c7dfe43fc9 (diff) | |
download | external_llvm-e09bcad77c033392669b8d9cd3d93209064dfbc4.zip external_llvm-e09bcad77c033392669b8d9cd3d93209064dfbc4.tar.gz external_llvm-e09bcad77c033392669b8d9cd3d93209064dfbc4.tar.bz2 |
[SystemZ] Add definitions of LFH and STFH
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191661 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC')
-rw-r--r-- | test/MC/Disassembler/SystemZ/insns.txt | 60 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-bad-z196.s | 16 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-bad.s | 10 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-good-z196.s | 44 |
4 files changed, 130 insertions, 0 deletions
diff --git a/test/MC/Disassembler/SystemZ/insns.txt b/test/MC/Disassembler/SystemZ/insns.txt index 4ac6031..afd09b5 100644 --- a/test/MC/Disassembler/SystemZ/insns.txt +++ b/test/MC/Disassembler/SystemZ/insns.txt @@ -2749,6 +2749,36 @@ # CHECK: ley %f15, 0 0xed 0xf0 0x00 0x00 0x00 0x64 +# CHECK: lfh %r0, -524288 +0xe3 0x00 0x00 0x00 0x80 0xca + +# CHECK: lfh %r0, -1 +0xe3 0x00 0x0f 0xff 0xff 0xca + +# CHECK: lfh %r0, 0 +0xe3 0x00 0x00 0x00 0x00 0xca + +# CHECK: lfh %r0, 1 +0xe3 0x00 0x00 0x01 0x00 0xca + +# CHECK: lfh %r0, 524287 +0xe3 0x00 0x0f 0xff 0x7f 0xca + +# CHECK: lfh %r0, 0(%r1) +0xe3 0x00 0x10 0x00 0x00 0xca + +# CHECK: lfh %r0, 0(%r15) +0xe3 0x00 0xf0 0x00 0x00 0xca + +# CHECK: lfh %r0, 524287(%r1,%r15) +0xe3 0x01 0xff 0xff 0x7f 0xca + +# CHECK: lfh %r0, 524287(%r15,%r1) +0xe3 0x0f 0x1f 0xff 0x7f 0xca + +# CHECK: lfh %r15, 0 +0xe3 0xf0 0x00 0x00 0x00 0xca + # CHECK: lgbr %r0, %r15 0xb9 0x06 0x00 0x0f @@ -6697,6 +6727,36 @@ # CHECK: sth %r15, 0 0x40 0xf0 0x00 0x00 +# CHECK: stfh %r0, -524288 +0xe3 0x00 0x00 0x00 0x80 0xcb + +# CHECK: stfh %r0, -1 +0xe3 0x00 0x0f 0xff 0xff 0xcb + +# CHECK: stfh %r0, 0 +0xe3 0x00 0x00 0x00 0x00 0xcb + +# CHECK: stfh %r0, 1 +0xe3 0x00 0x00 0x01 0x00 0xcb + +# CHECK: stfh %r0, 524287 +0xe3 0x00 0x0f 0xff 0x7f 0xcb + +# CHECK: stfh %r0, 0(%r1) +0xe3 0x00 0x10 0x00 0x00 0xcb + +# CHECK: stfh %r0, 0(%r15) +0xe3 0x00 0xf0 0x00 0x00 0xcb + +# CHECK: stfh %r0, 524287(%r1,%r15) +0xe3 0x01 0xff 0xff 0x7f 0xcb + +# CHECK: stfh %r0, 524287(%r15,%r1) +0xe3 0x0f 0x1f 0xff 0x7f 0xcb + +# CHECK: stfh %r15, 0 +0xe3 0xf0 0x00 0x00 0x00 0xcb + # CHECK: sthy %r0, -524288 0xe3 0x00 0x00 0x00 0x80 0x70 diff --git a/test/MC/SystemZ/insn-bad-z196.s b/test/MC/SystemZ/insn-bad-z196.s index 477dac2..cc795d4 100644 --- a/test/MC/SystemZ/insn-bad-z196.s +++ b/test/MC/SystemZ/insn-bad-z196.s @@ -73,6 +73,14 @@ fixbra %f2, 0, %f0, 0 #CHECK: error: invalid operand +#CHECK: lfh %r0, -524289 +#CHECK: error: invalid operand +#CHECK: lfh %r0, 524288 + + lfh %r0, -524289 + lfh %r0, 524288 + +#CHECK: error: invalid operand #CHECK: loc %r0,0,-1 #CHECK: error: invalid operand #CHECK: loc %r0,0,16 @@ -205,6 +213,14 @@ srlk %r0,%r0,0(%r1,%r2) #CHECK: error: invalid operand +#CHECK: stfh %r0, -524289 +#CHECK: error: invalid operand +#CHECK: stfh %r0, 524288 + + stfh %r0, -524289 + stfh %r0, 524288 + +#CHECK: error: invalid operand #CHECK: stoc %r0,0,-1 #CHECK: error: invalid operand #CHECK: stoc %r0,0,16 diff --git a/test/MC/SystemZ/insn-bad.s b/test/MC/SystemZ/insn-bad.s index f7baeef..2420e40 100644 --- a/test/MC/SystemZ/insn-bad.s +++ b/test/MC/SystemZ/insn-bad.s @@ -1454,6 +1454,11 @@ ley %f0, -524289 ley %f0, 524288 +#CHECK: error: {{(instruction requires: high-word)?}} +#CHECK: lfh %r0, 0 + + lfh %r0, 0 + #CHECK: error: invalid operand #CHECK: lg %r0, -524289 #CHECK: error: invalid operand @@ -2982,6 +2987,11 @@ sthy %r0, -524289 sthy %r0, 524288 +#CHECK: error: {{(instruction requires: high-word)?}} +#CHECK: stfh %r0, 0 + + stfh %r0, 0 + #CHECK: error: invalid operand #CHECK: stmg %r0, %r0, -524289 #CHECK: error: invalid operand diff --git a/test/MC/SystemZ/insn-good-z196.s b/test/MC/SystemZ/insn-good-z196.s index 4b12265..66ce63a 100644 --- a/test/MC/SystemZ/insn-good-z196.s +++ b/test/MC/SystemZ/insn-good-z196.s @@ -163,6 +163,28 @@ fixbra %f4, 5, %f8, 9 fixbra %f13, 0, %f0, 0 +#CHECK: lfh %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0xca] +#CHECK: lfh %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xca] +#CHECK: lfh %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0xca] +#CHECK: lfh %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0xca] +#CHECK: lfh %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xca] +#CHECK: lfh %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0xca] +#CHECK: lfh %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xca] +#CHECK: lfh %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xca] +#CHECK: lfh %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xca] +#CHECK: lfh %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xca] + + lfh %r0, -524288 + lfh %r0, -1 + lfh %r0, 0 + lfh %r0, 1 + lfh %r0, 524287 + lfh %r0, 0(%r1) + lfh %r0, 0(%r15) + lfh %r0, 524287(%r1,%r15) + lfh %r0, 524287(%r15,%r1) + lfh %r15, 0 + #CHECK: loc %r0, 0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xf2] #CHECK: loc %r0, 0, 15 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xf2] #CHECK: loc %r0, -524288, 0 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xf2] @@ -537,6 +559,28 @@ srlk %r0,%r0,524287(%r1) srlk %r0,%r0,524287(%r15) +#CHECK: stfh %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0xcb] +#CHECK: stfh %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xcb] +#CHECK: stfh %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0xcb] +#CHECK: stfh %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0xcb] +#CHECK: stfh %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xcb] +#CHECK: stfh %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0xcb] +#CHECK: stfh %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xcb] +#CHECK: stfh %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xcb] +#CHECK: stfh %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xcb] +#CHECK: stfh %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xcb] + + stfh %r0, -524288 + stfh %r0, -1 + stfh %r0, 0 + stfh %r0, 1 + stfh %r0, 524287 + stfh %r0, 0(%r1) + stfh %r0, 0(%r15) + stfh %r0, 524287(%r1,%r15) + stfh %r0, 524287(%r15,%r1) + stfh %r15, 0 + #CHECK: stoc %r0, 0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0xf3] #CHECK: stoc %r0, 0, 15 # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xf3] #CHECK: stoc %r0, -524288, 0 # encoding: [0xeb,0x00,0x00,0x00,0x80,0xf3] |