Fix the value computation in
[oota-llvm.git] / test / MC / SystemZ / insn-good-z196.s
index ce63c8d947b67168a57367cda45994f582712792..834bdad2592f65ef3f9c5b0a01ae706f0974cc17 100644 (file)
        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]
        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]
        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]