[SystemZ] Add NRK, ORK and XRK
[oota-llvm.git] / test / MC / SystemZ / insn-good-z196.s
1 # For z196 and above.
2 # RUN: llvm-mc -triple s390x-linux-gnu -mcpu=z196 -show-encoding %s | FileCheck %s
3
4 #CHECK: nrk     %r0, %r0, %r0           # encoding: [0xb9,0xf4,0x00,0x00]
5 #CHECK: nrk     %r0, %r0, %r15          # encoding: [0xb9,0xf4,0xf0,0x00]
6 #CHECK: nrk     %r0, %r15, %r0          # encoding: [0xb9,0xf4,0x00,0x0f]
7 #CHECK: nrk     %r15, %r0, %r0          # encoding: [0xb9,0xf4,0x00,0xf0]
8 #CHECK: nrk     %r7, %r8, %r9           # encoding: [0xb9,0xf4,0x90,0x78]
9
10         nrk     %r0,%r0,%r0
11         nrk     %r0,%r0,%r15
12         nrk     %r0,%r15,%r0
13         nrk     %r15,%r0,%r0
14         nrk     %r7,%r8,%r9
15
16 #CHECK: ork     %r0, %r0, %r0           # encoding: [0xb9,0xf6,0x00,0x00]
17 #CHECK: ork     %r0, %r0, %r15          # encoding: [0xb9,0xf6,0xf0,0x00]
18 #CHECK: ork     %r0, %r15, %r0          # encoding: [0xb9,0xf6,0x00,0x0f]
19 #CHECK: ork     %r15, %r0, %r0          # encoding: [0xb9,0xf6,0x00,0xf0]
20 #CHECK: ork     %r7, %r8, %r9           # encoding: [0xb9,0xf6,0x90,0x78]
21
22         ork     %r0,%r0,%r0
23         ork     %r0,%r0,%r15
24         ork     %r0,%r15,%r0
25         ork     %r15,%r0,%r0
26         ork     %r7,%r8,%r9
27
28 #CHECK: sllk    %r0, %r0, 0             # encoding: [0xeb,0x00,0x00,0x00,0x00,0xdf]
29 #CHECK: sllk    %r15, %r1, 0            # encoding: [0xeb,0xf1,0x00,0x00,0x00,0xdf]
30 #CHECK: sllk    %r1, %r15, 0            # encoding: [0xeb,0x1f,0x00,0x00,0x00,0xdf]
31 #CHECK: sllk    %r15, %r15, 0           # encoding: [0xeb,0xff,0x00,0x00,0x00,0xdf]
32 #CHECK: sllk    %r0, %r0, -524288       # encoding: [0xeb,0x00,0x00,0x00,0x80,0xdf]
33 #CHECK: sllk    %r0, %r0, -1            # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xdf]
34 #CHECK: sllk    %r0, %r0, 1             # encoding: [0xeb,0x00,0x00,0x01,0x00,0xdf]
35 #CHECK: sllk    %r0, %r0, 524287        # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xdf]
36 #CHECK: sllk    %r0, %r0, 0(%r1)        # encoding: [0xeb,0x00,0x10,0x00,0x00,0xdf]
37 #CHECK: sllk    %r0, %r0, 0(%r15)       # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xdf]
38 #CHECK: sllk    %r0, %r0, 524287(%r1)   # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xdf]
39 #CHECK: sllk    %r0, %r0, 524287(%r15)  # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xdf]
40
41         sllk    %r0,%r0,0
42         sllk    %r15,%r1,0
43         sllk    %r1,%r15,0
44         sllk    %r15,%r15,0
45         sllk    %r0,%r0,-524288
46         sllk    %r0,%r0,-1
47         sllk    %r0,%r0,1
48         sllk    %r0,%r0,524287
49         sllk    %r0,%r0,0(%r1)
50         sllk    %r0,%r0,0(%r15)
51         sllk    %r0,%r0,524287(%r1)
52         sllk    %r0,%r0,524287(%r15)
53
54 #CHECK: srak    %r0, %r0, 0             # encoding: [0xeb,0x00,0x00,0x00,0x00,0xdc]
55 #CHECK: srak    %r15, %r1, 0            # encoding: [0xeb,0xf1,0x00,0x00,0x00,0xdc]
56 #CHECK: srak    %r1, %r15, 0            # encoding: [0xeb,0x1f,0x00,0x00,0x00,0xdc]
57 #CHECK: srak    %r15, %r15, 0           # encoding: [0xeb,0xff,0x00,0x00,0x00,0xdc]
58 #CHECK: srak    %r0, %r0, -524288       # encoding: [0xeb,0x00,0x00,0x00,0x80,0xdc]
59 #CHECK: srak    %r0, %r0, -1            # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xdc]
60 #CHECK: srak    %r0, %r0, 1             # encoding: [0xeb,0x00,0x00,0x01,0x00,0xdc]
61 #CHECK: srak    %r0, %r0, 524287        # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xdc]
62 #CHECK: srak    %r0, %r0, 0(%r1)        # encoding: [0xeb,0x00,0x10,0x00,0x00,0xdc]
63 #CHECK: srak    %r0, %r0, 0(%r15)       # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xdc]
64 #CHECK: srak    %r0, %r0, 524287(%r1)   # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xdc]
65 #CHECK: srak    %r0, %r0, 524287(%r15)  # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xdc]
66
67         srak    %r0,%r0,0
68         srak    %r15,%r1,0
69         srak    %r1,%r15,0
70         srak    %r15,%r15,0
71         srak    %r0,%r0,-524288
72         srak    %r0,%r0,-1
73         srak    %r0,%r0,1
74         srak    %r0,%r0,524287
75         srak    %r0,%r0,0(%r1)
76         srak    %r0,%r0,0(%r15)
77         srak    %r0,%r0,524287(%r1)
78         srak    %r0,%r0,524287(%r15)
79
80 #CHECK: srlk    %r0, %r0, 0             # encoding: [0xeb,0x00,0x00,0x00,0x00,0xde]
81 #CHECK: srlk    %r15, %r1, 0            # encoding: [0xeb,0xf1,0x00,0x00,0x00,0xde]
82 #CHECK: srlk    %r1, %r15, 0            # encoding: [0xeb,0x1f,0x00,0x00,0x00,0xde]
83 #CHECK: srlk    %r15, %r15, 0           # encoding: [0xeb,0xff,0x00,0x00,0x00,0xde]
84 #CHECK: srlk    %r0, %r0, -524288       # encoding: [0xeb,0x00,0x00,0x00,0x80,0xde]
85 #CHECK: srlk    %r0, %r0, -1            # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xde]
86 #CHECK: srlk    %r0, %r0, 1             # encoding: [0xeb,0x00,0x00,0x01,0x00,0xde]
87 #CHECK: srlk    %r0, %r0, 524287        # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xde]
88 #CHECK: srlk    %r0, %r0, 0(%r1)        # encoding: [0xeb,0x00,0x10,0x00,0x00,0xde]
89 #CHECK: srlk    %r0, %r0, 0(%r15)       # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xde]
90 #CHECK: srlk    %r0, %r0, 524287(%r1)   # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xde]
91 #CHECK: srlk    %r0, %r0, 524287(%r15)  # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xde]
92
93         srlk    %r0,%r0,0
94         srlk    %r15,%r1,0
95         srlk    %r1,%r15,0
96         srlk    %r15,%r15,0
97         srlk    %r0,%r0,-524288
98         srlk    %r0,%r0,-1
99         srlk    %r0,%r0,1
100         srlk    %r0,%r0,524287
101         srlk    %r0,%r0,0(%r1)
102         srlk    %r0,%r0,0(%r15)
103         srlk    %r0,%r0,524287(%r1)
104         srlk    %r0,%r0,524287(%r15)
105
106 #CHECK: xrk     %r0, %r0, %r0           # encoding: [0xb9,0xf7,0x00,0x00]
107 #CHECK: xrk     %r0, %r0, %r15          # encoding: [0xb9,0xf7,0xf0,0x00]
108 #CHECK: xrk     %r0, %r15, %r0          # encoding: [0xb9,0xf7,0x00,0x0f]
109 #CHECK: xrk     %r15, %r0, %r0          # encoding: [0xb9,0xf7,0x00,0xf0]
110 #CHECK: xrk     %r7, %r8, %r9           # encoding: [0xb9,0xf7,0x90,0x78]
111
112         xrk     %r0,%r0,%r0
113         xrk     %r0,%r0,%r15
114         xrk     %r0,%r15,%r0
115         xrk     %r15,%r0,%r0
116         xrk     %r7,%r8,%r9