diff options
author | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2014-03-21 10:56:30 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2014-03-21 10:56:30 +0000 |
commit | 6b6889d87b8b08d6e4f01c48aeaedc5ee6575612 (patch) | |
tree | e25437371b99f5344a449e23a00275bffd55cf44 /test/MC/SystemZ | |
parent | d09863076a3c0af86ec7e7610d302ba91854021c (diff) | |
download | llvm-6b6889d87b8b08d6e4f01c48aeaedc5ee6575612.tar.gz llvm-6b6889d87b8b08d6e4f01c48aeaedc5ee6575612.tar.bz2 llvm-6b6889d87b8b08d6e4f01c48aeaedc5ee6575612.tar.xz |
[SystemZ] Add support for z196 float<->unsigned conversions
These complement the older float<->signed instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204451 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/SystemZ')
-rw-r--r-- | test/MC/SystemZ/insn-bad-z196.s | 180 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-bad.s | 60 | ||||
-rw-r--r-- | test/MC/SystemZ/insn-good-z196.s | 168 |
3 files changed, 408 insertions, 0 deletions
diff --git a/test/MC/SystemZ/insn-bad-z196.s b/test/MC/SystemZ/insn-bad-z196.s index 11b66a0f4b..da23a4b039 100644 --- a/test/MC/SystemZ/insn-bad-z196.s +++ b/test/MC/SystemZ/insn-bad-z196.s @@ -33,6 +33,62 @@ aih %r0, (1 << 31) #CHECK: error: invalid operand +#CHECK: cdlfbr %f0, 0, %r0, -1 +#CHECK: error: invalid operand +#CHECK: cdlfbr %f0, 0, %r0, 16 +#CHECK: error: invalid operand +#CHECK: cdlfbr %f0, -1, %r0, 0 +#CHECK: error: invalid operand +#CHECK: cdlfbr %f0, 16, %r0, 0 + + cdlfbr %f0, 0, %r0, -1 + cdlfbr %f0, 0, %r0, 16 + cdlfbr %f0, -1, %r0, 0 + cdlfbr %f0, 16, %r0, 0 + +#CHECK: error: invalid operand +#CHECK: cdlgbr %f0, 0, %r0, -1 +#CHECK: error: invalid operand +#CHECK: cdlgbr %f0, 0, %r0, 16 +#CHECK: error: invalid operand +#CHECK: cdlgbr %f0, -1, %r0, 0 +#CHECK: error: invalid operand +#CHECK: cdlgbr %f0, 16, %r0, 0 + + cdlgbr %f0, 0, %r0, -1 + cdlgbr %f0, 0, %r0, 16 + cdlgbr %f0, -1, %r0, 0 + cdlgbr %f0, 16, %r0, 0 + +#CHECK: error: invalid operand +#CHECK: celfbr %f0, 0, %r0, -1 +#CHECK: error: invalid operand +#CHECK: celfbr %f0, 0, %r0, 16 +#CHECK: error: invalid operand +#CHECK: celfbr %f0, -1, %r0, 0 +#CHECK: error: invalid operand +#CHECK: celfbr %f0, 16, %r0, 0 + + celfbr %f0, 0, %r0, -1 + celfbr %f0, 0, %r0, 16 + celfbr %f0, -1, %r0, 0 + celfbr %f0, 16, %r0, 0 + +#CHECK: error: invalid operand +#CHECK: celgbr %f0, 0, %r0, -1 +#CHECK: error: invalid operand +#CHECK: celgbr %f0, 0, %r0, 16 +#CHECK: error: invalid operand +#CHECK: celgbr %f0, -1, %r0, 0 +#CHECK: error: invalid operand +#CHECK: celgbr %f0, 16, %r0, 0 + + celgbr %f0, 0, %r0, -1 + celgbr %f0, 0, %r0, 16 + celgbr %f0, -1, %r0, 0 + celgbr %f0, 16, %r0, 0 + +#CHECK: error: invalid operand #CHECK: chf %r0, -524289 #CHECK: error: invalid operand #CHECK: chf %r0, 524288 @@ -49,6 +105,96 @@ cih %r0, (1 << 31) #CHECK: error: invalid operand +#CHECK: clfdbr %r0, 0, %f0, -1 +#CHECK: error: invalid operand +#CHECK: clfdbr %r0, 0, %f0, 16 +#CHECK: error: invalid operand +#CHECK: clfdbr %r0, -1, %f0, 0 +#CHECK: error: invalid operand +#CHECK: clfdbr %r0, 16, %f0, 0 + + clfdbr %r0, 0, %f0, -1 + clfdbr %r0, 0, %f0, 16 + clfdbr %r0, -1, %f0, 0 + clfdbr %r0, 16, %f0, 0 + +#CHECK: error: invalid operand +#CHECK: clfebr %r0, 0, %f0, -1 +#CHECK: error: invalid operand +#CHECK: clfebr %r0, 0, %f0, 16 +#CHECK: error: invalid operand +#CHECK: clfebr %r0, -1, %f0, 0 +#CHECK: error: invalid operand +#CHECK: clfebr %r0, 16, %f0, 0 + + clfebr %r0, 0, %f0, -1 + clfebr %r0, 0, %f0, 16 + clfebr %r0, -1, %f0, 0 + clfebr %r0, 16, %f0, 0 + +#CHECK: error: invalid operand +#CHECK: clfxbr %r0, 0, %f0, -1 +#CHECK: error: invalid operand +#CHECK: clfxbr %r0, 0, %f0, 16 +#CHECK: error: invalid operand +#CHECK: clfxbr %r0, -1, %f0, 0 +#CHECK: error: invalid operand +#CHECK: clfxbr %r0, 16, %f0, 0 +#CHECK: error: invalid register pair +#CHECK: clfxbr %r0, 0, %f14, 0 + + clfxbr %r0, 0, %f0, -1 + clfxbr %r0, 0, %f0, 16 + clfxbr %r0, -1, %f0, 0 + clfxbr %r0, 16, %f0, 0 + clfxbr %r0, 0, %f14, 0 + +#CHECK: error: invalid operand +#CHECK: clgdbr %r0, 0, %f0, -1 +#CHECK: error: invalid operand +#CHECK: clgdbr %r0, 0, %f0, 16 +#CHECK: error: invalid operand +#CHECK: clgdbr %r0, -1, %f0, 0 +#CHECK: error: invalid operand +#CHECK: clgdbr %r0, 16, %f0, 0 + + clgdbr %r0, 0, %f0, -1 + clgdbr %r0, 0, %f0, 16 + clgdbr %r0, -1, %f0, 0 + clgdbr %r0, 16, %f0, 0 + +#CHECK: error: invalid operand +#CHECK: clgebr %r0, 0, %f0, -1 +#CHECK: error: invalid operand +#CHECK: clgebr %r0, 0, %f0, 16 +#CHECK: error: invalid operand +#CHECK: clgebr %r0, -1, %f0, 0 +#CHECK: error: invalid operand +#CHECK: clgebr %r0, 16, %f0, 0 + + clgebr %r0, 0, %f0, -1 + clgebr %r0, 0, %f0, 16 + clgebr %r0, -1, %f0, 0 + clgebr %r0, 16, %f0, 0 + +#CHECK: error: invalid operand +#CHECK: clgxbr %r0, 0, %f0, -1 +#CHECK: error: invalid operand +#CHECK: clgxbr %r0, 0, %f0, 16 +#CHECK: error: invalid operand +#CHECK: clgxbr %r0, -1, %f0, 0 +#CHECK: error: invalid operand +#CHECK: clgxbr %r0, 16, %f0, 0 +#CHECK: error: invalid register pair +#CHECK: clgxbr %r0, 0, %f14, 0 + + clgxbr %r0, 0, %f0, -1 + clgxbr %r0, 0, %f0, 16 + clgxbr %r0, -1, %f0, 0 + clgxbr %r0, 16, %f0, 0 + clgxbr %r0, 0, %f14, 0 + +#CHECK: error: invalid operand #CHECK: clhf %r0, -524289 #CHECK: error: invalid operand #CHECK: clhf %r0, 524288 @@ -65,6 +211,40 @@ clih %r0, (1 << 32) #CHECK: error: invalid operand +#CHECK: cxlfbr %f0, 0, %r0, -1 +#CHECK: error: invalid operand +#CHECK: cxlfbr %f0, 0, %r0, 16 +#CHECK: error: invalid operand +#CHECK: cxlfbr %f0, -1, %r0, 0 +#CHECK: error: invalid operand +#CHECK: cxlfbr %f0, 16, %r0, 0 +#CHECK: error: invalid register pair +#CHECK: cxlfbr %f2, 0, %r0, 0 + + cxlfbr %f0, 0, %r0, -1 + cxlfbr %f0, 0, %r0, 16 + cxlfbr %f0, -1, %r0, 0 + cxlfbr %f0, 16, %r0, 0 + cxlfbr %f2, 0, %r0, 0 + +#CHECK: error: invalid operand +#CHECK: cxlgbr %f0, 0, %r0, -1 +#CHECK: error: invalid operand +#CHECK: cxlgbr %f0, 0, %r0, 16 +#CHECK: error: invalid operand +#CHECK: cxlgbr %f0, -1, %r0, 0 +#CHECK: error: invalid operand +#CHECK: cxlgbr %f0, 16, %r0, 0 +#CHECK: error: invalid register pair +#CHECK: cxlgbr %f2, 0, %r0, 0 + + cxlgbr %f0, 0, %r0, -1 + cxlgbr %f0, 0, %r0, 16 + cxlgbr %f0, -1, %r0, 0 + cxlgbr %f0, 16, %r0, 0 + cxlgbr %f2, 0, %r0, 0 + +#CHECK: error: invalid operand #CHECK: fidbra %f0, 0, %f0, -1 #CHECK: error: invalid operand #CHECK: fidbra %f0, 0, %f0, 16 diff --git a/test/MC/SystemZ/insn-bad.s b/test/MC/SystemZ/insn-bad.s index caff5b2ab3..8004168eec 100644 --- a/test/MC/SystemZ/insn-bad.s +++ b/test/MC/SystemZ/insn-bad.s @@ -386,6 +386,16 @@ cdb %f0, -1 cdb %f0, 4096 +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: cdlfbr %f0, 0, %r0, 0 + + cdlfbr %f0, 0, %r0, 0 + +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: cdlgbr %f0, 0, %r0, 0 + + cdlgbr %f0, 0, %r0, 0 + #CHECK: error: invalid operand #CHECK: ceb %f0, -1 #CHECK: error: invalid operand @@ -394,6 +404,16 @@ ceb %f0, -1 ceb %f0, 4096 +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: celfbr %f0, 0, %r0, 0 + + celfbr %f0, 0, %r0, 0 + +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: celgbr %f0, 0, %r0, 0 + + celgbr %f0, 0, %r0, 0 + #CHECK: error: invalid operand #CHECK: cfdbr %r0, -1, %f0 #CHECK: error: invalid operand @@ -784,6 +804,16 @@ clhf %r0, 0 +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: clfdbr %r0, 0, %f0, 0 + + clfdbr %r0, 0, %f0, 0 + +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: clfebr %r0, 0, %f0, 0 + + clfebr %r0, 0, %f0, 0 + #CHECK: error: invalid operand #CHECK: clfhsi -1, 0 #CHECK: error: invalid operand @@ -809,6 +839,11 @@ clfi %r0, -1 clfi %r0, (1 << 32) +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: clfxbr %r0, 0, %f0, 0 + + clfxbr %r0, 0, %f0, 0 + #CHECK: error: invalid operand #CHECK: clg %r0, -524289 #CHECK: error: invalid operand @@ -817,6 +852,16 @@ clg %r0, -524289 clg %r0, 524288 +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: clgdbr %r0, 0, %f0, 0 + + clgdbr %r0, 0, %f0, 0 + +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: clgebr %r0, 0, %f0, 0 + + clgebr %r0, 0, %f0, 0 + #CHECK: error: invalid operand #CHECK: clgf %r0, -524289 #CHECK: error: invalid operand @@ -936,6 +981,11 @@ clgrl %r0, 1 clgrl %r0, 0x100000000 +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: clgxbr %r0, 0, %f0, 0 + + clgxbr %r0, 0, %f0, 0 + #CHECK: error: invalid operand #CHECK: clhhsi -1, 0 #CHECK: error: invalid operand @@ -1167,6 +1217,16 @@ cxgbr %f2, %r0 +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: cxlfbr %f0, 0, %r0, 0 + + cxlfbr %f0, 0, %r0, 0 + +#CHECK: error: {{(instruction requires: fp-extension)?}} +#CHECK: cxlgbr %f0, 0, %r0, 0 + + cxlgbr %f0, 0, %r0, 0 + #CHECK: error: invalid operand #CHECK: cy %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 ce63c8d947..834bdad259 100644 --- a/test/MC/SystemZ/insn-good-z196.s +++ b/test/MC/SystemZ/insn-good-z196.s @@ -135,6 +135,62 @@ ark %r15,%r0,%r0 ark %r7,%r8,%r9 +#CHECK: cdlfbr %f0, 0, %r0, 0 # encoding: [0xb3,0x91,0x00,0x00] +#CHECK: cdlfbr %f0, 0, %r0, 15 # encoding: [0xb3,0x91,0x0f,0x00] +#CHECK: cdlfbr %f0, 0, %r15, 0 # encoding: [0xb3,0x91,0x00,0x0f] +#CHECK: cdlfbr %f0, 15, %r0, 0 # encoding: [0xb3,0x91,0xf0,0x00] +#CHECK: cdlfbr %f4, 5, %r6, 7 # encoding: [0xb3,0x91,0x57,0x46] +#CHECK: cdlfbr %f15, 0, %r0, 0 # encoding: [0xb3,0x91,0x00,0xf0] + + cdlfbr %f0, 0, %r0, 0 + cdlfbr %f0, 0, %r0, 15 + cdlfbr %f0, 0, %r15, 0 + cdlfbr %f0, 15, %r0, 0 + cdlfbr %f4, 5, %r6, 7 + cdlfbr %f15, 0, %r0, 0 + +#CHECK: cdlgbr %f0, 0, %r0, 0 # encoding: [0xb3,0xa1,0x00,0x00] +#CHECK: cdlgbr %f0, 0, %r0, 15 # encoding: [0xb3,0xa1,0x0f,0x00] +#CHECK: cdlgbr %f0, 0, %r15, 0 # encoding: [0xb3,0xa1,0x00,0x0f] +#CHECK: cdlgbr %f0, 15, %r0, 0 # encoding: [0xb3,0xa1,0xf0,0x00] +#CHECK: cdlgbr %f4, 5, %r6, 7 # encoding: [0xb3,0xa1,0x57,0x46] +#CHECK: cdlgbr %f15, 0, %r0, 0 # encoding: [0xb3,0xa1,0x00,0xf0] + + cdlgbr %f0, 0, %r0, 0 + cdlgbr %f0, 0, %r0, 15 + cdlgbr %f0, 0, %r15, 0 + cdlgbr %f0, 15, %r0, 0 + cdlgbr %f4, 5, %r6, 7 + cdlgbr %f15, 0, %r0, 0 + +#CHECK: celfbr %f0, 0, %r0, 0 # encoding: [0xb3,0x90,0x00,0x00] +#CHECK: celfbr %f0, 0, %r0, 15 # encoding: [0xb3,0x90,0x0f,0x00] +#CHECK: celfbr %f0, 0, %r15, 0 # encoding: [0xb3,0x90,0x00,0x0f] +#CHECK: celfbr %f0, 15, %r0, 0 # encoding: [0xb3,0x90,0xf0,0x00] +#CHECK: celfbr %f4, 5, %r6, 7 # encoding: [0xb3,0x90,0x57,0x46] +#CHECK: celfbr %f15, 0, %r0, 0 # encoding: [0xb3,0x90,0x00,0xf0] + + celfbr %f0, 0, %r0, 0 + celfbr %f0, 0, %r0, 15 + celfbr %f0, 0, %r15, 0 + celfbr %f0, 15, %r0, 0 + celfbr %f4, 5, %r6, 7 + celfbr %f15, 0, %r0, 0 + +#CHECK: celgbr %f0, 0, %r0, 0 # encoding: [0xb3,0xa0,0x00,0x00] +#CHECK: celgbr %f0, 0, %r0, 15 # encoding: [0xb3,0xa0,0x0f,0x00] +#CHECK: celgbr %f0, 0, %r15, 0 # encoding: [0xb3,0xa0,0x00,0x0f] +#CHECK: celgbr %f0, 15, %r0, 0 # encoding: [0xb3,0xa0,0xf0,0x00] +#CHECK: celgbr %f4, 5, %r6, 7 # encoding: [0xb3,0xa0,0x57,0x46] +#CHECK: celgbr %f15, 0, %r0, 0 # encoding: [0xb3,0xa0,0x00,0xf0] + + celgbr %f0, 0, %r0, 0 + celgbr %f0, 0, %r0, 15 + celgbr %f0, 0, %r15, 0 + celgbr %f0, 15, %r0, 0 + celgbr %f4, 5, %r6, 7 + celgbr %f15, 0, %r0, 0 + #CHECK: chf %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0xcd] #CHECK: chf %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xcd] #CHECK: chf %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0xcd] @@ -171,6 +227,90 @@ cih %r0, (1 << 31) - 1 cih %r15, 0 +#CHECK: clfdbr %r0, 0, %f0, 0 # encoding: [0xb3,0x9d,0x00,0x00] +#CHECK: clfdbr %r0, 0, %f0, 15 # encoding: [0xb3,0x9d,0x0f,0x00] +#CHECK: clfdbr %r0, 0, %f15, 0 # encoding: [0xb3,0x9d,0x00,0x0f] +#CHECK: clfdbr %r0, 15, %f0, 0 # encoding: [0xb3,0x9d,0xf0,0x00] +#CHECK: clfdbr %r4, 5, %f6, 7 # encoding: [0xb3,0x9d,0x57,0x46] +#CHECK: clfdbr %r15, 0, %f0, 0 # encoding: [0xb3,0x9d,0x00,0xf0] + + clfdbr %r0, 0, %f0, 0 + clfdbr %r0, 0, %f0, 15 + clfdbr %r0, 0, %f15, 0 + clfdbr %r0, 15, %f0, 0 + clfdbr %r4, 5, %f6, 7 + clfdbr %r15, 0, %f0, 0 + +#CHECK: clfebr %r0, 0, %f0, 0 # encoding: [0xb3,0x9c,0x00,0x00] +#CHECK: clfebr %r0, 0, %f0, 15 # encoding: [0xb3,0x9c,0x0f,0x00] +#CHECK: clfebr %r0, 0, %f15, 0 # encoding: [0xb3,0x9c,0x00,0x0f] +#CHECK: clfebr %r0, 15, %f0, 0 # encoding: [0xb3,0x9c,0xf0,0x00] +#CHECK: clfebr %r4, 5, %f6, 7 # encoding: [0xb3,0x9c,0x57,0x46] +#CHECK: clfebr %r15, 0, %f0, 0 # encoding: [0xb3,0x9c,0x00,0xf0] + + clfebr %r0, 0, %f0, 0 + clfebr %r0, 0, %f0, 15 + clfebr %r0, 0, %f15, 0 + clfebr %r0, 15, %f0, 0 + clfebr %r4, 5, %f6, 7 + clfebr %r15, 0, %f0, 0 + +#CHECK: clfxbr %r0, 0, %f0, 0 # encoding: [0xb3,0x9e,0x00,0x00] +#CHECK: clfxbr %r0, 0, %f0, 15 # encoding: [0xb3,0x9e,0x0f,0x00] +#CHECK: clfxbr %r0, 0, %f13, 0 # encoding: [0xb3,0x9e,0x00,0x0d] +#CHECK: clfxbr %r0, 15, %f0, 0 # encoding: [0xb3,0x9e,0xf0,0x00] +#CHECK: clfxbr %r7, 5, %f8, 9 # encoding: [0xb3,0x9e,0x59,0x78] +#CHECK: clfxbr %r15, 0, %f0, 0 # encoding: [0xb3,0x9e,0x00,0xf0] + + clfxbr %r0, 0, %f0, 0 + clfxbr %r0, 0, %f0, 15 + clfxbr %r0, 0, %f13, 0 + clfxbr %r0, 15, %f0, 0 + clfxbr %r7, 5, %f8, 9 + clfxbr %r15, 0, %f0, 0 + +#CHECK: clgdbr %r0, 0, %f0, 0 # encoding: [0xb3,0xad,0x00,0x00] +#CHECK: clgdbr %r0, 0, %f0, 15 # encoding: [0xb3,0xad,0x0f,0x00] +#CHECK: clgdbr %r0, 0, %f15, 0 # encoding: [0xb3,0xad,0x00,0x0f] +#CHECK: clgdbr %r0, 15, %f0, 0 # encoding: [0xb3,0xad,0xf0,0x00] +#CHECK: clgdbr %r4, 5, %f6, 7 # encoding: [0xb3,0xad,0x57,0x46] +#CHECK: clgdbr %r15, 0, %f0, 0 # encoding: [0xb3,0xad,0x00,0xf0] + + clgdbr %r0, 0, %f0, 0 + clgdbr %r0, 0, %f0, 15 + clgdbr %r0, 0, %f15, 0 + clgdbr %r0, 15, %f0, 0 + clgdbr %r4, 5, %f6, 7 + clgdbr %r15, 0, %f0, 0 + +#CHECK: clgebr %r0, 0, %f0, 0 # encoding: [0xb3,0xac,0x00,0x00] +#CHECK: clgebr %r0, 0, %f0, 15 # encoding: [0xb3,0xac,0x0f,0x00] +#CHECK: clgebr %r0, 0, %f15, 0 # encoding: [0xb3,0xac,0x00,0x0f] +#CHECK: clgebr %r0, 15, %f0, 0 # encoding: [0xb3,0xac,0xf0,0x00] +#CHECK: clgebr %r4, 5, %f6, 7 # encoding: [0xb3,0xac,0x57,0x46] +#CHECK: clgebr %r15, 0, %f0, 0 # encoding: [0xb3,0xac,0x00,0xf0] + + clgebr %r0, 0, %f0, 0 + clgebr %r0, 0, %f0, 15 + clgebr %r0, 0, %f15, 0 + clgebr %r0, 15, %f0, 0 + clgebr %r4, 5, %f6, 7 + clgebr %r15, 0, %f0, 0 + +#CHECK: clgxbr %r0, 0, %f0, 0 # encoding: [0xb3,0xae,0x00,0x00] +#CHECK: clgxbr %r0, 0, %f0, 15 # encoding: [0xb3,0xae,0x0f,0x00] +#CHECK: clgxbr %r0, 0, %f13, 0 # encoding: [0xb3,0xae,0x00,0x0d] +#CHECK: clgxbr %r0, 15, %f0, 0 # encoding: [0xb3,0xae,0xf0,0x00] +#CHECK: clgxbr %r7, 5, %f8, 9 # encoding: [0xb3,0xae,0x59,0x78] +#CHECK: clgxbr %r15, 0, %f0, 0 # encoding: [0xb3,0xae,0x00,0xf0] + + clgxbr %r0, 0, %f0, 0 + clgxbr %r0, 0, %f0, 15 + clgxbr %r0, 0, %f13, 0 + clgxbr %r0, 15, %f0, 0 + clgxbr %r7, 5, %f8, 9 + clgxbr %r15, 0, %f0, 0 + #CHECK: clhf %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0xcf] #CHECK: clhf %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xcf] #CHECK: clhf %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0xcf] @@ -203,6 +343,34 @@ clih %r0, (1 << 32) - 1 clih %r15, 0 +#CHECK: cxlfbr %f0, 0, %r0, 0 # encoding: [0xb3,0x92,0x00,0x00] +#CHECK: cxlfbr %f0, 0, %r0, 15 # encoding: [0xb3,0x92,0x0f,0x00] +#CHECK: cxlfbr %f0, 0, %r15, 0 # encoding: [0xb3,0x92,0x00,0x0f] +#CHECK: cxlfbr %f0, 15, %r0, 0 # encoding: [0xb3,0x92,0xf0,0x00] +#CHECK: cxlfbr %f4, 5, %r9, 10 # encoding: [0xb3,0x92,0x5a,0x49] +#CHECK: cxlfbr %f13, 0, %r0, 0 # encoding: [0xb3,0x92,0x00,0xd0] + + cxlfbr %f0, 0, %r0, 0 + cxlfbr %f0, 0, %r0, 15 + cxlfbr %f0, 0, %r15, 0 + cxlfbr %f0, 15, %r0, 0 + cxlfbr %f4, 5, %r9, 10 + cxlfbr %f13, 0, %r0, 0 + +#CHECK: cxlgbr %f0, 0, %r0, 0 # encoding: [0xb3,0xa2,0x00,0x00] +#CHECK: cxlgbr %f0, 0, %r0, 15 # encoding: [0xb3,0xa2,0x0f,0x00] +#CHECK: cxlgbr %f0, 0, %r15, 0 # encoding: [0xb3,0xa2,0x00,0x0f] +#CHECK: cxlgbr %f0, 15, %r0, 0 # encoding: [0xb3,0xa2,0xf0,0x00] +#CHECK: cxlgbr %f4, 5, %r9, 10 # encoding: [0xb3,0xa2,0x5a,0x49] +#CHECK: cxlgbr %f13, 0, %r0, 0 # encoding: [0xb3,0xa2,0x00,0xd0] + + cxlgbr %f0, 0, %r0, 0 + cxlgbr %f0, 0, %r0, 15 + cxlgbr %f0, 0, %r15, 0 + cxlgbr %f0, 15, %r0, 0 + cxlgbr %f4, 5, %r9, 10 + cxlgbr %f13, 0, %r0, 0 + #CHECK: fidbra %f0, 0, %f0, 0 # encoding: [0xb3,0x5f,0x00,0x00] #CHECK: fidbra %f0, 0, %f0, 15 # encoding: [0xb3,0x5f,0x0f,0x00] #CHECK: fidbra %f0, 0, %f15, 0 # encoding: [0xb3,0x5f,0x00,0x0f] |