[SystemZ] Add immediate addition involving high words
[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: aghik   %r0, %r0, -32768        # encoding: [0xec,0x00,0x80,0x00,0x00,0xd9]
5 #CHECK: aghik   %r0, %r0, -1            # encoding: [0xec,0x00,0xff,0xff,0x00,0xd9]
6 #CHECK: aghik   %r0, %r0, 0             # encoding: [0xec,0x00,0x00,0x00,0x00,0xd9]
7 #CHECK: aghik   %r0, %r0, 1             # encoding: [0xec,0x00,0x00,0x01,0x00,0xd9]
8 #CHECK: aghik   %r0, %r0, 32767         # encoding: [0xec,0x00,0x7f,0xff,0x00,0xd9]
9 #CHECK: aghik   %r0, %r15, 0            # encoding: [0xec,0x0f,0x00,0x00,0x00,0xd9]
10 #CHECK: aghik   %r15, %r0, 0            # encoding: [0xec,0xf0,0x00,0x00,0x00,0xd9]
11 #CHECK: aghik   %r7, %r8, -16           # encoding: [0xec,0x78,0xff,0xf0,0x00,0xd9]
12
13         aghik   %r0, %r0, -32768
14         aghik   %r0, %r0, -1
15         aghik   %r0, %r0, 0
16         aghik   %r0, %r0, 1
17         aghik   %r0, %r0, 32767
18         aghik   %r0, %r15, 0
19         aghik   %r15, %r0, 0
20         aghik   %r7, %r8, -16
21
22 #CHECK: agrk    %r0, %r0, %r0           # encoding: [0xb9,0xe8,0x00,0x00]
23 #CHECK: agrk    %r0, %r0, %r15          # encoding: [0xb9,0xe8,0xf0,0x00]
24 #CHECK: agrk    %r0, %r15, %r0          # encoding: [0xb9,0xe8,0x00,0x0f]
25 #CHECK: agrk    %r15, %r0, %r0          # encoding: [0xb9,0xe8,0x00,0xf0]
26 #CHECK: agrk    %r7, %r8, %r9           # encoding: [0xb9,0xe8,0x90,0x78]
27
28         agrk    %r0,%r0,%r0
29         agrk    %r0,%r0,%r15
30         agrk    %r0,%r15,%r0
31         agrk    %r15,%r0,%r0
32         agrk    %r7,%r8,%r9
33
34 #CHECK: ahik    %r0, %r0, -32768        # encoding: [0xec,0x00,0x80,0x00,0x00,0xd8]
35 #CHECK: ahik    %r0, %r0, -1            # encoding: [0xec,0x00,0xff,0xff,0x00,0xd8]
36 #CHECK: ahik    %r0, %r0, 0             # encoding: [0xec,0x00,0x00,0x00,0x00,0xd8]
37 #CHECK: ahik    %r0, %r0, 1             # encoding: [0xec,0x00,0x00,0x01,0x00,0xd8]
38 #CHECK: ahik    %r0, %r0, 32767         # encoding: [0xec,0x00,0x7f,0xff,0x00,0xd8]
39 #CHECK: ahik    %r0, %r15, 0            # encoding: [0xec,0x0f,0x00,0x00,0x00,0xd8]
40 #CHECK: ahik    %r15, %r0, 0            # encoding: [0xec,0xf0,0x00,0x00,0x00,0xd8]
41 #CHECK: ahik    %r7, %r8, -16           # encoding: [0xec,0x78,0xff,0xf0,0x00,0xd8]
42
43         ahik    %r0, %r0, -32768
44         ahik    %r0, %r0, -1
45         ahik    %r0, %r0, 0
46         ahik    %r0, %r0, 1
47         ahik    %r0, %r0, 32767
48         ahik    %r0, %r15, 0
49         ahik    %r15, %r0, 0
50         ahik    %r7, %r8, -16
51
52 #CHECK: aih     %r0, -2147483648        # encoding: [0xcc,0x08,0x80,0x00,0x00,0x00]
53 #CHECK: aih     %r0, -1                 # encoding: [0xcc,0x08,0xff,0xff,0xff,0xff]
54 #CHECK: aih     %r0, 0                  # encoding: [0xcc,0x08,0x00,0x00,0x00,0x00]
55 #CHECK: aih     %r0, 1                  # encoding: [0xcc,0x08,0x00,0x00,0x00,0x01]
56 #CHECK: aih     %r0, 2147483647         # encoding: [0xcc,0x08,0x7f,0xff,0xff,0xff]
57 #CHECK: aih     %r15, 0                 # encoding: [0xcc,0xf8,0x00,0x00,0x00,0x00]
58
59         aih     %r0, -1 << 31
60         aih     %r0, -1
61         aih     %r0, 0
62         aih     %r0, 1
63         aih     %r0, (1 << 31) - 1
64         aih     %r15, 0
65
66 #CHECK: alghsik %r0, %r0, -32768        # encoding: [0xec,0x00,0x80,0x00,0x00,0xdb]
67 #CHECK: alghsik %r0, %r0, -1            # encoding: [0xec,0x00,0xff,0xff,0x00,0xdb]
68 #CHECK: alghsik %r0, %r0, 0             # encoding: [0xec,0x00,0x00,0x00,0x00,0xdb]
69 #CHECK: alghsik %r0, %r0, 1             # encoding: [0xec,0x00,0x00,0x01,0x00,0xdb]
70 #CHECK: alghsik %r0, %r0, 32767         # encoding: [0xec,0x00,0x7f,0xff,0x00,0xdb]
71 #CHECK: alghsik %r0, %r15, 0            # encoding: [0xec,0x0f,0x00,0x00,0x00,0xdb]
72 #CHECK: alghsik %r15, %r0, 0            # encoding: [0xec,0xf0,0x00,0x00,0x00,0xdb]
73 #CHECK: alghsik %r7, %r8, -16           # encoding: [0xec,0x78,0xff,0xf0,0x00,0xdb]
74
75         alghsik %r0, %r0, -32768
76         alghsik %r0, %r0, -1
77         alghsik %r0, %r0, 0
78         alghsik %r0, %r0, 1
79         alghsik %r0, %r0, 32767
80         alghsik %r0, %r15, 0
81         alghsik %r15, %r0, 0
82         alghsik %r7, %r8, -16
83
84 #CHECK: algrk   %r0, %r0, %r0           # encoding: [0xb9,0xea,0x00,0x00]
85 #CHECK: algrk   %r0, %r0, %r15          # encoding: [0xb9,0xea,0xf0,0x00]
86 #CHECK: algrk   %r0, %r15, %r0          # encoding: [0xb9,0xea,0x00,0x0f]
87 #CHECK: algrk   %r15, %r0, %r0          # encoding: [0xb9,0xea,0x00,0xf0]
88 #CHECK: algrk   %r7, %r8, %r9           # encoding: [0xb9,0xea,0x90,0x78]
89
90         algrk   %r0,%r0,%r0
91         algrk   %r0,%r0,%r15
92         algrk   %r0,%r15,%r0
93         algrk   %r15,%r0,%r0
94         algrk   %r7,%r8,%r9
95
96 #CHECK: alhsik  %r0, %r0, -32768        # encoding: [0xec,0x00,0x80,0x00,0x00,0xda]
97 #CHECK: alhsik  %r0, %r0, -1            # encoding: [0xec,0x00,0xff,0xff,0x00,0xda]
98 #CHECK: alhsik  %r0, %r0, 0             # encoding: [0xec,0x00,0x00,0x00,0x00,0xda]
99 #CHECK: alhsik  %r0, %r0, 1             # encoding: [0xec,0x00,0x00,0x01,0x00,0xda]
100 #CHECK: alhsik  %r0, %r0, 32767         # encoding: [0xec,0x00,0x7f,0xff,0x00,0xda]
101 #CHECK: alhsik  %r0, %r15, 0            # encoding: [0xec,0x0f,0x00,0x00,0x00,0xda]
102 #CHECK: alhsik  %r15, %r0, 0            # encoding: [0xec,0xf0,0x00,0x00,0x00,0xda]
103 #CHECK: alhsik  %r7, %r8, -16           # encoding: [0xec,0x78,0xff,0xf0,0x00,0xda]
104
105         alhsik  %r0, %r0, -32768
106         alhsik  %r0, %r0, -1
107         alhsik  %r0, %r0, 0
108         alhsik  %r0, %r0, 1
109         alhsik  %r0, %r0, 32767
110         alhsik  %r0, %r15, 0
111         alhsik  %r15, %r0, 0
112         alhsik  %r7, %r8, -16
113
114 #CHECK: alrk    %r0, %r0, %r0           # encoding: [0xb9,0xfa,0x00,0x00]
115 #CHECK: alrk    %r0, %r0, %r15          # encoding: [0xb9,0xfa,0xf0,0x00]
116 #CHECK: alrk    %r0, %r15, %r0          # encoding: [0xb9,0xfa,0x00,0x0f]
117 #CHECK: alrk    %r15, %r0, %r0          # encoding: [0xb9,0xfa,0x00,0xf0]
118 #CHECK: alrk    %r7, %r8, %r9           # encoding: [0xb9,0xfa,0x90,0x78]
119
120         alrk    %r0,%r0,%r0
121         alrk    %r0,%r0,%r15
122         alrk    %r0,%r15,%r0
123         alrk    %r15,%r0,%r0
124         alrk    %r7,%r8,%r9
125
126 #CHECK: ark     %r0, %r0, %r0           # encoding: [0xb9,0xf8,0x00,0x00]
127 #CHECK: ark     %r0, %r0, %r15          # encoding: [0xb9,0xf8,0xf0,0x00]
128 #CHECK: ark     %r0, %r15, %r0          # encoding: [0xb9,0xf8,0x00,0x0f]
129 #CHECK: ark     %r15, %r0, %r0          # encoding: [0xb9,0xf8,0x00,0xf0]
130 #CHECK: ark     %r7, %r8, %r9           # encoding: [0xb9,0xf8,0x90,0x78]
131
132         ark     %r0,%r0,%r0
133         ark     %r0,%r0,%r15
134         ark     %r0,%r15,%r0
135         ark     %r15,%r0,%r0
136         ark     %r7,%r8,%r9
137
138 #CHECK: fidbra  %f0, 0, %f0, 0          # encoding: [0xb3,0x5f,0x00,0x00]
139 #CHECK: fidbra  %f0, 0, %f0, 15         # encoding: [0xb3,0x5f,0x0f,0x00]
140 #CHECK: fidbra  %f0, 0, %f15, 0         # encoding: [0xb3,0x5f,0x00,0x0f]
141 #CHECK: fidbra  %f0, 15, %f0, 0         # encoding: [0xb3,0x5f,0xf0,0x00]
142 #CHECK: fidbra  %f4, 5, %f6, 7          # encoding: [0xb3,0x5f,0x57,0x46]
143 #CHECK: fidbra  %f15, 0, %f0, 0         # encoding: [0xb3,0x5f,0x00,0xf0]
144
145         fidbra  %f0, 0, %f0, 0
146         fidbra  %f0, 0, %f0, 15
147         fidbra  %f0, 0, %f15, 0
148         fidbra  %f0, 15, %f0, 0
149         fidbra  %f4, 5, %f6, 7
150         fidbra  %f15, 0, %f0, 0
151
152 #CHECK: fiebra  %f0, 0, %f0, 0          # encoding: [0xb3,0x57,0x00,0x00]
153 #CHECK: fiebra  %f0, 0, %f0, 15         # encoding: [0xb3,0x57,0x0f,0x00]
154 #CHECK: fiebra  %f0, 0, %f15, 0         # encoding: [0xb3,0x57,0x00,0x0f]
155 #CHECK: fiebra  %f0, 15, %f0, 0         # encoding: [0xb3,0x57,0xf0,0x00]
156 #CHECK: fiebra  %f4, 5, %f6, 7          # encoding: [0xb3,0x57,0x57,0x46]
157 #CHECK: fiebra  %f15, 0, %f0, 0         # encoding: [0xb3,0x57,0x00,0xf0]
158
159         fiebra  %f0, 0, %f0, 0
160         fiebra  %f0, 0, %f0, 15
161         fiebra  %f0, 0, %f15, 0
162         fiebra  %f0, 15, %f0, 0
163         fiebra  %f4, 5, %f6, 7
164         fiebra  %f15, 0, %f0, 0
165
166 #CHECK: fixbra  %f0, 0, %f0, 0          # encoding: [0xb3,0x47,0x00,0x00]
167 #CHECK: fixbra  %f0, 0, %f0, 15         # encoding: [0xb3,0x47,0x0f,0x00]
168 #CHECK: fixbra  %f0, 0, %f13, 0         # encoding: [0xb3,0x47,0x00,0x0d]
169 #CHECK: fixbra  %f0, 15, %f0, 0         # encoding: [0xb3,0x47,0xf0,0x00]
170 #CHECK: fixbra  %f4, 5, %f8, 9          # encoding: [0xb3,0x47,0x59,0x48]
171 #CHECK: fixbra  %f13, 0, %f0, 0         # encoding: [0xb3,0x47,0x00,0xd0]
172
173         fixbra  %f0, 0, %f0, 0
174         fixbra  %f0, 0, %f0, 15
175         fixbra  %f0, 0, %f13, 0
176         fixbra  %f0, 15, %f0, 0
177         fixbra  %f4, 5, %f8, 9
178         fixbra  %f13, 0, %f0, 0
179
180 #CHECK: lbh     %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc0]
181 #CHECK: lbh     %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc0]
182 #CHECK: lbh     %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc0]
183 #CHECK: lbh     %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc0]
184 #CHECK: lbh     %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc0]
185 #CHECK: lbh     %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc0]
186 #CHECK: lbh     %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc0]
187 #CHECK: lbh     %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc0]
188 #CHECK: lbh     %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc0]
189 #CHECK: lbh     %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc0]
190
191         lbh     %r0, -524288
192         lbh     %r0, -1
193         lbh     %r0, 0
194         lbh     %r0, 1
195         lbh     %r0, 524287
196         lbh     %r0, 0(%r1)
197         lbh     %r0, 0(%r15)
198         lbh     %r0, 524287(%r1,%r15)
199         lbh     %r0, 524287(%r15,%r1)
200         lbh     %r15, 0
201
202 #CHECK: lfh     %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xca]
203 #CHECK: lfh     %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xca]
204 #CHECK: lfh     %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xca]
205 #CHECK: lfh     %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xca]
206 #CHECK: lfh     %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xca]
207 #CHECK: lfh     %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xca]
208 #CHECK: lfh     %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xca]
209 #CHECK: lfh     %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xca]
210 #CHECK: lfh     %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xca]
211 #CHECK: lfh     %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xca]
212
213         lfh     %r0, -524288
214         lfh     %r0, -1
215         lfh     %r0, 0
216         lfh     %r0, 1
217         lfh     %r0, 524287
218         lfh     %r0, 0(%r1)
219         lfh     %r0, 0(%r15)
220         lfh     %r0, 524287(%r1,%r15)
221         lfh     %r0, 524287(%r15,%r1)
222         lfh     %r15, 0
223
224 #CHECK: lhh     %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc4]
225 #CHECK: lhh     %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc4]
226 #CHECK: lhh     %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc4]
227 #CHECK: lhh     %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc4]
228 #CHECK: lhh     %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc4]
229 #CHECK: lhh     %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc4]
230 #CHECK: lhh     %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc4]
231 #CHECK: lhh     %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc4]
232 #CHECK: lhh     %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc4]
233 #CHECK: lhh     %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc4]
234
235         lhh     %r0, -524288
236         lhh     %r0, -1
237         lhh     %r0, 0
238         lhh     %r0, 1
239         lhh     %r0, 524287
240         lhh     %r0, 0(%r1)
241         lhh     %r0, 0(%r15)
242         lhh     %r0, 524287(%r1,%r15)
243         lhh     %r0, 524287(%r15,%r1)
244         lhh     %r15, 0
245
246 #CHECK: llch    %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc2]
247 #CHECK: llch    %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc2]
248 #CHECK: llch    %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc2]
249 #CHECK: llch    %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc2]
250 #CHECK: llch    %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc2]
251 #CHECK: llch    %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc2]
252 #CHECK: llch    %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc2]
253 #CHECK: llch    %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc2]
254 #CHECK: llch    %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc2]
255 #CHECK: llch    %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc2]
256
257         llch    %r0, -524288
258         llch    %r0, -1
259         llch    %r0, 0
260         llch    %r0, 1
261         llch    %r0, 524287
262         llch    %r0, 0(%r1)
263         llch    %r0, 0(%r15)
264         llch    %r0, 524287(%r1,%r15)
265         llch    %r0, 524287(%r15,%r1)
266         llch    %r15, 0
267
268 #CHECK: llhh    %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc6]
269 #CHECK: llhh    %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc6]
270 #CHECK: llhh    %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc6]
271 #CHECK: llhh    %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc6]
272 #CHECK: llhh    %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc6]
273 #CHECK: llhh    %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc6]
274 #CHECK: llhh    %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc6]
275 #CHECK: llhh    %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc6]
276 #CHECK: llhh    %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc6]
277 #CHECK: llhh    %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc6]
278
279         llhh    %r0, -524288
280         llhh    %r0, -1
281         llhh    %r0, 0
282         llhh    %r0, 1
283         llhh    %r0, 524287
284         llhh    %r0, 0(%r1)
285         llhh    %r0, 0(%r15)
286         llhh    %r0, 524287(%r1,%r15)
287         llhh    %r0, 524287(%r15,%r1)
288         llhh    %r15, 0
289
290 #CHECK: loc     %r0, 0, 0               # encoding: [0xeb,0x00,0x00,0x00,0x00,0xf2]
291 #CHECK: loc     %r0, 0, 15              # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xf2]
292 #CHECK: loc     %r0, -524288, 0         # encoding: [0xeb,0x00,0x00,0x00,0x80,0xf2]
293 #CHECK: loc     %r0, 524287, 0          # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xf2]
294 #CHECK: loc     %r0, 0(%r1), 0          # encoding: [0xeb,0x00,0x10,0x00,0x00,0xf2]
295 #CHECK: loc     %r0, 0(%r15), 0         # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xf2]
296 #CHECK: loc     %r15, 0, 0              # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xf2]
297 #CHECK: loc     %r1, 4095(%r2), 3       # encoding: [0xeb,0x13,0x2f,0xff,0x00,0xf2]
298
299         loc     %r0,0,0
300         loc     %r0,0,15
301         loc     %r0,-524288,0
302         loc     %r0,524287,0
303         loc     %r0,0(%r1),0
304         loc     %r0,0(%r15),0
305         loc     %r15,0,0
306         loc     %r1,4095(%r2),3
307
308 #CHECK: loco   %r1, 2(%r3)              # encoding: [0xeb,0x11,0x30,0x02,0x00,0xf2]
309 #CHECK: loch   %r1, 2(%r3)              # encoding: [0xeb,0x12,0x30,0x02,0x00,0xf2]
310 #CHECK: locnle %r1, 2(%r3)              # encoding: [0xeb,0x13,0x30,0x02,0x00,0xf2]
311 #CHECK: locl   %r1, 2(%r3)              # encoding: [0xeb,0x14,0x30,0x02,0x00,0xf2]
312 #CHECK: locnhe %r1, 2(%r3)              # encoding: [0xeb,0x15,0x30,0x02,0x00,0xf2]
313 #CHECK: loclh  %r1, 2(%r3)              # encoding: [0xeb,0x16,0x30,0x02,0x00,0xf2]
314 #CHECK: locne  %r1, 2(%r3)              # encoding: [0xeb,0x17,0x30,0x02,0x00,0xf2]
315 #CHECK: loce   %r1, 2(%r3)              # encoding: [0xeb,0x18,0x30,0x02,0x00,0xf2]
316 #CHECK: locnlh %r1, 2(%r3)              # encoding: [0xeb,0x19,0x30,0x02,0x00,0xf2]
317 #CHECK: loche  %r1, 2(%r3)              # encoding: [0xeb,0x1a,0x30,0x02,0x00,0xf2]
318 #CHECK: locnl  %r1, 2(%r3)              # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xf2]
319 #CHECK: locle  %r1, 2(%r3)              # encoding: [0xeb,0x1c,0x30,0x02,0x00,0xf2]
320 #CHECK: locnh  %r1, 2(%r3)              # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xf2]
321 #CHECK: locno  %r1, 2(%r3)              # encoding: [0xeb,0x1e,0x30,0x02,0x00,0xf2]
322
323         loco   %r1,2(%r3)
324         loch   %r1,2(%r3)
325         locnle %r1,2(%r3)
326         locl   %r1,2(%r3)
327         locnhe %r1,2(%r3)
328         loclh  %r1,2(%r3)
329         locne  %r1,2(%r3)
330         loce   %r1,2(%r3)
331         locnlh %r1,2(%r3)
332         loche  %r1,2(%r3)
333         locnl  %r1,2(%r3)
334         locle  %r1,2(%r3)
335         locnh  %r1,2(%r3)
336         locno  %r1,2(%r3)
337
338 #CHECK: locg    %r0, 0, 0               # encoding: [0xeb,0x00,0x00,0x00,0x00,0xe2]
339 #CHECK: locg    %r0, 0, 15              # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xe2]
340 #CHECK: locg    %r0, -524288, 0         # encoding: [0xeb,0x00,0x00,0x00,0x80,0xe2]
341 #CHECK: locg    %r0, 524287, 0          # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xe2]
342 #CHECK: locg    %r0, 0(%r1), 0          # encoding: [0xeb,0x00,0x10,0x00,0x00,0xe2]
343 #CHECK: locg    %r0, 0(%r15), 0         # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xe2]
344 #CHECK: locg    %r15, 0, 0              # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xe2]
345 #CHECK: locg    %r1, 4095(%r2), 3       # encoding: [0xeb,0x13,0x2f,0xff,0x00,0xe2]
346
347         locg    %r0,0,0
348         locg    %r0,0,15
349         locg    %r0,-524288,0
350         locg    %r0,524287,0
351         locg    %r0,0(%r1),0
352         locg    %r0,0(%r15),0
353         locg    %r15,0,0
354         locg    %r1,4095(%r2),3
355
356 #CHECK: locgo   %r1, 2(%r3)             # encoding: [0xeb,0x11,0x30,0x02,0x00,0xe2]
357 #CHECK: locgh   %r1, 2(%r3)             # encoding: [0xeb,0x12,0x30,0x02,0x00,0xe2]
358 #CHECK: locgnle %r1, 2(%r3)             # encoding: [0xeb,0x13,0x30,0x02,0x00,0xe2]
359 #CHECK: locgl   %r1, 2(%r3)             # encoding: [0xeb,0x14,0x30,0x02,0x00,0xe2]
360 #CHECK: locgnhe %r1, 2(%r3)             # encoding: [0xeb,0x15,0x30,0x02,0x00,0xe2]
361 #CHECK: locglh  %r1, 2(%r3)             # encoding: [0xeb,0x16,0x30,0x02,0x00,0xe2]
362 #CHECK: locgne  %r1, 2(%r3)             # encoding: [0xeb,0x17,0x30,0x02,0x00,0xe2]
363 #CHECK: locge   %r1, 2(%r3)             # encoding: [0xeb,0x18,0x30,0x02,0x00,0xe2]
364 #CHECK: locgnlh %r1, 2(%r3)             # encoding: [0xeb,0x19,0x30,0x02,0x00,0xe2]
365 #CHECK: locghe  %r1, 2(%r3)             # encoding: [0xeb,0x1a,0x30,0x02,0x00,0xe2]
366 #CHECK: locgnl  %r1, 2(%r3)             # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xe2]
367 #CHECK: locgle  %r1, 2(%r3)             # encoding: [0xeb,0x1c,0x30,0x02,0x00,0xe2]
368 #CHECK: locgnh  %r1, 2(%r3)             # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xe2]
369 #CHECK: locgno  %r1, 2(%r3)             # encoding: [0xeb,0x1e,0x30,0x02,0x00,0xe2]
370
371         locgo   %r1,2(%r3)
372         locgh   %r1,2(%r3)
373         locgnle %r1,2(%r3)
374         locgl   %r1,2(%r3)
375         locgnhe %r1,2(%r3)
376         locglh  %r1,2(%r3)
377         locgne  %r1,2(%r3)
378         locge   %r1,2(%r3)
379         locgnlh %r1,2(%r3)
380         locghe  %r1,2(%r3)
381         locgnl  %r1,2(%r3)
382         locgle  %r1,2(%r3)
383         locgnh  %r1,2(%r3)
384         locgno  %r1,2(%r3)
385
386 #CHECK: locgr   %r1, %r2, 0             # encoding: [0xb9,0xe2,0x00,0x12]
387 #CHECK: locgr   %r1, %r2, 15            # encoding: [0xb9,0xe2,0xf0,0x12]
388
389         locgr   %r1,%r2,0
390         locgr   %r1,%r2,15
391
392 #CHECK: locgro   %r1, %r3               # encoding: [0xb9,0xe2,0x10,0x13]
393 #CHECK: locgrh   %r1, %r3               # encoding: [0xb9,0xe2,0x20,0x13]
394 #CHECK: locgrnle %r1, %r3               # encoding: [0xb9,0xe2,0x30,0x13]
395 #CHECK: locgrl   %r1, %r3               # encoding: [0xb9,0xe2,0x40,0x13]
396 #CHECK: locgrnhe %r1, %r3               # encoding: [0xb9,0xe2,0x50,0x13]
397 #CHECK: locgrlh  %r1, %r3               # encoding: [0xb9,0xe2,0x60,0x13]
398 #CHECK: locgrne  %r1, %r3               # encoding: [0xb9,0xe2,0x70,0x13]
399 #CHECK: locgre   %r1, %r3               # encoding: [0xb9,0xe2,0x80,0x13]
400 #CHECK: locgrnlh %r1, %r3               # encoding: [0xb9,0xe2,0x90,0x13]
401 #CHECK: locgrhe  %r1, %r3               # encoding: [0xb9,0xe2,0xa0,0x13]
402 #CHECK: locgrnl  %r1, %r3               # encoding: [0xb9,0xe2,0xb0,0x13]
403 #CHECK: locgrle  %r1, %r3               # encoding: [0xb9,0xe2,0xc0,0x13]
404 #CHECK: locgrnh  %r1, %r3               # encoding: [0xb9,0xe2,0xd0,0x13]
405 #CHECK: locgrno  %r1, %r3               # encoding: [0xb9,0xe2,0xe0,0x13]
406
407         locgro   %r1,%r3
408         locgrh   %r1,%r3
409         locgrnle %r1,%r3
410         locgrl   %r1,%r3
411         locgrnhe %r1,%r3
412         locgrlh  %r1,%r3
413         locgrne  %r1,%r3
414         locgre   %r1,%r3
415         locgrnlh %r1,%r3
416         locgrhe  %r1,%r3
417         locgrnl  %r1,%r3
418         locgrle  %r1,%r3
419         locgrnh  %r1,%r3
420         locgrno  %r1,%r3
421
422 #CHECK: locr    %r1, %r2, 0             # encoding: [0xb9,0xf2,0x00,0x12]
423 #CHECK: locr    %r1, %r2, 15            # encoding: [0xb9,0xf2,0xf0,0x12]
424
425         locr    %r1,%r2,0
426         locr    %r1,%r2,15
427
428 #CHECK: locro   %r1, %r3                # encoding: [0xb9,0xf2,0x10,0x13]
429 #CHECK: locrh   %r1, %r3                # encoding: [0xb9,0xf2,0x20,0x13]
430 #CHECK: locrnle %r1, %r3                # encoding: [0xb9,0xf2,0x30,0x13]
431 #CHECK: locrl   %r1, %r3                # encoding: [0xb9,0xf2,0x40,0x13]
432 #CHECK: locrnhe %r1, %r3                # encoding: [0xb9,0xf2,0x50,0x13]
433 #CHECK: locrlh  %r1, %r3                # encoding: [0xb9,0xf2,0x60,0x13]
434 #CHECK: locrne  %r1, %r3                # encoding: [0xb9,0xf2,0x70,0x13]
435 #CHECK: locre   %r1, %r3                # encoding: [0xb9,0xf2,0x80,0x13]
436 #CHECK: locrnlh %r1, %r3                # encoding: [0xb9,0xf2,0x90,0x13]
437 #CHECK: locrhe  %r1, %r3                # encoding: [0xb9,0xf2,0xa0,0x13]
438 #CHECK: locrnl  %r1, %r3                # encoding: [0xb9,0xf2,0xb0,0x13]
439 #CHECK: locrle  %r1, %r3                # encoding: [0xb9,0xf2,0xc0,0x13]
440 #CHECK: locrnh  %r1, %r3                # encoding: [0xb9,0xf2,0xd0,0x13]
441 #CHECK: locrno  %r1, %r3                # encoding: [0xb9,0xf2,0xe0,0x13]
442
443         locro   %r1,%r3
444         locrh   %r1,%r3
445         locrnle %r1,%r3
446         locrl   %r1,%r3
447         locrnhe %r1,%r3
448         locrlh  %r1,%r3
449         locrne  %r1,%r3
450         locre   %r1,%r3
451         locrnlh %r1,%r3
452         locrhe  %r1,%r3
453         locrnl  %r1,%r3
454         locrle  %r1,%r3
455         locrnh  %r1,%r3
456         locrno  %r1,%r3
457
458 #CHECK: ngrk    %r0, %r0, %r0           # encoding: [0xb9,0xe4,0x00,0x00]
459 #CHECK: ngrk    %r0, %r0, %r15          # encoding: [0xb9,0xe4,0xf0,0x00]
460 #CHECK: ngrk    %r0, %r15, %r0          # encoding: [0xb9,0xe4,0x00,0x0f]
461 #CHECK: ngrk    %r15, %r0, %r0          # encoding: [0xb9,0xe4,0x00,0xf0]
462 #CHECK: ngrk    %r7, %r8, %r9           # encoding: [0xb9,0xe4,0x90,0x78]
463
464         ngrk    %r0,%r0,%r0
465         ngrk    %r0,%r0,%r15
466         ngrk    %r0,%r15,%r0
467         ngrk    %r15,%r0,%r0
468         ngrk    %r7,%r8,%r9
469
470 #CHECK: nrk     %r0, %r0, %r0           # encoding: [0xb9,0xf4,0x00,0x00]
471 #CHECK: nrk     %r0, %r0, %r15          # encoding: [0xb9,0xf4,0xf0,0x00]
472 #CHECK: nrk     %r0, %r15, %r0          # encoding: [0xb9,0xf4,0x00,0x0f]
473 #CHECK: nrk     %r15, %r0, %r0          # encoding: [0xb9,0xf4,0x00,0xf0]
474 #CHECK: nrk     %r7, %r8, %r9           # encoding: [0xb9,0xf4,0x90,0x78]
475
476         nrk     %r0,%r0,%r0
477         nrk     %r0,%r0,%r15
478         nrk     %r0,%r15,%r0
479         nrk     %r15,%r0,%r0
480         nrk     %r7,%r8,%r9
481
482 #CHECK: ogrk    %r0, %r0, %r0           # encoding: [0xb9,0xe6,0x00,0x00]
483 #CHECK: ogrk    %r0, %r0, %r15          # encoding: [0xb9,0xe6,0xf0,0x00]
484 #CHECK: ogrk    %r0, %r15, %r0          # encoding: [0xb9,0xe6,0x00,0x0f]
485 #CHECK: ogrk    %r15, %r0, %r0          # encoding: [0xb9,0xe6,0x00,0xf0]
486 #CHECK: ogrk    %r7, %r8, %r9           # encoding: [0xb9,0xe6,0x90,0x78]
487
488         ogrk    %r0,%r0,%r0
489         ogrk    %r0,%r0,%r15
490         ogrk    %r0,%r15,%r0
491         ogrk    %r15,%r0,%r0
492         ogrk    %r7,%r8,%r9
493
494 #CHECK: ork     %r0, %r0, %r0           # encoding: [0xb9,0xf6,0x00,0x00]
495 #CHECK: ork     %r0, %r0, %r15          # encoding: [0xb9,0xf6,0xf0,0x00]
496 #CHECK: ork     %r0, %r15, %r0          # encoding: [0xb9,0xf6,0x00,0x0f]
497 #CHECK: ork     %r15, %r0, %r0          # encoding: [0xb9,0xf6,0x00,0xf0]
498 #CHECK: ork     %r7, %r8, %r9           # encoding: [0xb9,0xf6,0x90,0x78]
499
500         ork     %r0,%r0,%r0
501         ork     %r0,%r0,%r15
502         ork     %r0,%r15,%r0
503         ork     %r15,%r0,%r0
504         ork     %r7,%r8,%r9
505
506 #CHECK: risbhg  %r0, %r0, 0, 0, 0       # encoding: [0xec,0x00,0x00,0x00,0x00,0x5d]
507 #CHECK: risbhg  %r0, %r0, 0, 0, 63      # encoding: [0xec,0x00,0x00,0x00,0x3f,0x5d]
508 #CHECK: risbhg  %r0, %r0, 0, 255, 0     # encoding: [0xec,0x00,0x00,0xff,0x00,0x5d]
509 #CHECK: risbhg  %r0, %r0, 255, 0, 0     # encoding: [0xec,0x00,0xff,0x00,0x00,0x5d]
510 #CHECK: risbhg  %r0, %r15, 0, 0, 0      # encoding: [0xec,0x0f,0x00,0x00,0x00,0x5d]
511 #CHECK: risbhg  %r15, %r0, 0, 0, 0      # encoding: [0xec,0xf0,0x00,0x00,0x00,0x5d]
512 #CHECK: risbhg  %r4, %r5, 6, 7, 8       # encoding: [0xec,0x45,0x06,0x07,0x08,0x5d]
513
514         risbhg  %r0,%r0,0,0,0
515         risbhg  %r0,%r0,0,0,63
516         risbhg  %r0,%r0,0,255,0
517         risbhg  %r0,%r0,255,0,0
518         risbhg  %r0,%r15,0,0,0
519         risbhg  %r15,%r0,0,0,0
520         risbhg  %r4,%r5,6,7,8
521
522 #CHECK: risblg  %r0, %r0, 0, 0, 0       # encoding: [0xec,0x00,0x00,0x00,0x00,0x51]
523 #CHECK: risblg  %r0, %r0, 0, 0, 63      # encoding: [0xec,0x00,0x00,0x00,0x3f,0x51]
524 #CHECK: risblg  %r0, %r0, 0, 255, 0     # encoding: [0xec,0x00,0x00,0xff,0x00,0x51]
525 #CHECK: risblg  %r0, %r0, 255, 0, 0     # encoding: [0xec,0x00,0xff,0x00,0x00,0x51]
526 #CHECK: risblg  %r0, %r15, 0, 0, 0      # encoding: [0xec,0x0f,0x00,0x00,0x00,0x51]
527 #CHECK: risblg  %r15, %r0, 0, 0, 0      # encoding: [0xec,0xf0,0x00,0x00,0x00,0x51]
528 #CHECK: risblg  %r4, %r5, 6, 7, 8       # encoding: [0xec,0x45,0x06,0x07,0x08,0x51]
529
530         risblg  %r0,%r0,0,0,0
531         risblg  %r0,%r0,0,0,63
532         risblg  %r0,%r0,0,255,0
533         risblg  %r0,%r0,255,0,0
534         risblg  %r0,%r15,0,0,0
535         risblg  %r15,%r0,0,0,0
536         risblg  %r4,%r5,6,7,8
537
538 #CHECK: sgrk    %r0, %r0, %r0           # encoding: [0xb9,0xe9,0x00,0x00]
539 #CHECK: sgrk    %r0, %r0, %r15          # encoding: [0xb9,0xe9,0xf0,0x00]
540 #CHECK: sgrk    %r0, %r15, %r0          # encoding: [0xb9,0xe9,0x00,0x0f]
541 #CHECK: sgrk    %r15, %r0, %r0          # encoding: [0xb9,0xe9,0x00,0xf0]
542 #CHECK: sgrk    %r7, %r8, %r9           # encoding: [0xb9,0xe9,0x90,0x78]
543
544         sgrk    %r0,%r0,%r0
545         sgrk    %r0,%r0,%r15
546         sgrk    %r0,%r15,%r0
547         sgrk    %r15,%r0,%r0
548         sgrk    %r7,%r8,%r9
549
550 #CHECK: slgrk   %r0, %r0, %r0           # encoding: [0xb9,0xeb,0x00,0x00]
551 #CHECK: slgrk   %r0, %r0, %r15          # encoding: [0xb9,0xeb,0xf0,0x00]
552 #CHECK: slgrk   %r0, %r15, %r0          # encoding: [0xb9,0xeb,0x00,0x0f]
553 #CHECK: slgrk   %r15, %r0, %r0          # encoding: [0xb9,0xeb,0x00,0xf0]
554 #CHECK: slgrk   %r7, %r8, %r9           # encoding: [0xb9,0xeb,0x90,0x78]
555
556         slgrk   %r0,%r0,%r0
557         slgrk   %r0,%r0,%r15
558         slgrk   %r0,%r15,%r0
559         slgrk   %r15,%r0,%r0
560         slgrk   %r7,%r8,%r9
561
562 #CHECK: slrk    %r0, %r0, %r0           # encoding: [0xb9,0xfb,0x00,0x00]
563 #CHECK: slrk    %r0, %r0, %r15          # encoding: [0xb9,0xfb,0xf0,0x00]
564 #CHECK: slrk    %r0, %r15, %r0          # encoding: [0xb9,0xfb,0x00,0x0f]
565 #CHECK: slrk    %r15, %r0, %r0          # encoding: [0xb9,0xfb,0x00,0xf0]
566 #CHECK: slrk    %r7, %r8, %r9           # encoding: [0xb9,0xfb,0x90,0x78]
567
568         slrk    %r0,%r0,%r0
569         slrk    %r0,%r0,%r15
570         slrk    %r0,%r15,%r0
571         slrk    %r15,%r0,%r0
572         slrk    %r7,%r8,%r9
573
574 #CHECK: sllk    %r0, %r0, 0             # encoding: [0xeb,0x00,0x00,0x00,0x00,0xdf]
575 #CHECK: sllk    %r15, %r1, 0            # encoding: [0xeb,0xf1,0x00,0x00,0x00,0xdf]
576 #CHECK: sllk    %r1, %r15, 0            # encoding: [0xeb,0x1f,0x00,0x00,0x00,0xdf]
577 #CHECK: sllk    %r15, %r15, 0           # encoding: [0xeb,0xff,0x00,0x00,0x00,0xdf]
578 #CHECK: sllk    %r0, %r0, -524288       # encoding: [0xeb,0x00,0x00,0x00,0x80,0xdf]
579 #CHECK: sllk    %r0, %r0, -1            # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xdf]
580 #CHECK: sllk    %r0, %r0, 1             # encoding: [0xeb,0x00,0x00,0x01,0x00,0xdf]
581 #CHECK: sllk    %r0, %r0, 524287        # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xdf]
582 #CHECK: sllk    %r0, %r0, 0(%r1)        # encoding: [0xeb,0x00,0x10,0x00,0x00,0xdf]
583 #CHECK: sllk    %r0, %r0, 0(%r15)       # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xdf]
584 #CHECK: sllk    %r0, %r0, 524287(%r1)   # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xdf]
585 #CHECK: sllk    %r0, %r0, 524287(%r15)  # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xdf]
586
587         sllk    %r0,%r0,0
588         sllk    %r15,%r1,0
589         sllk    %r1,%r15,0
590         sllk    %r15,%r15,0
591         sllk    %r0,%r0,-524288
592         sllk    %r0,%r0,-1
593         sllk    %r0,%r0,1
594         sllk    %r0,%r0,524287
595         sllk    %r0,%r0,0(%r1)
596         sllk    %r0,%r0,0(%r15)
597         sllk    %r0,%r0,524287(%r1)
598         sllk    %r0,%r0,524287(%r15)
599
600 #CHECK: srak    %r0, %r0, 0             # encoding: [0xeb,0x00,0x00,0x00,0x00,0xdc]
601 #CHECK: srak    %r15, %r1, 0            # encoding: [0xeb,0xf1,0x00,0x00,0x00,0xdc]
602 #CHECK: srak    %r1, %r15, 0            # encoding: [0xeb,0x1f,0x00,0x00,0x00,0xdc]
603 #CHECK: srak    %r15, %r15, 0           # encoding: [0xeb,0xff,0x00,0x00,0x00,0xdc]
604 #CHECK: srak    %r0, %r0, -524288       # encoding: [0xeb,0x00,0x00,0x00,0x80,0xdc]
605 #CHECK: srak    %r0, %r0, -1            # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xdc]
606 #CHECK: srak    %r0, %r0, 1             # encoding: [0xeb,0x00,0x00,0x01,0x00,0xdc]
607 #CHECK: srak    %r0, %r0, 524287        # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xdc]
608 #CHECK: srak    %r0, %r0, 0(%r1)        # encoding: [0xeb,0x00,0x10,0x00,0x00,0xdc]
609 #CHECK: srak    %r0, %r0, 0(%r15)       # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xdc]
610 #CHECK: srak    %r0, %r0, 524287(%r1)   # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xdc]
611 #CHECK: srak    %r0, %r0, 524287(%r15)  # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xdc]
612
613         srak    %r0,%r0,0
614         srak    %r15,%r1,0
615         srak    %r1,%r15,0
616         srak    %r15,%r15,0
617         srak    %r0,%r0,-524288
618         srak    %r0,%r0,-1
619         srak    %r0,%r0,1
620         srak    %r0,%r0,524287
621         srak    %r0,%r0,0(%r1)
622         srak    %r0,%r0,0(%r15)
623         srak    %r0,%r0,524287(%r1)
624         srak    %r0,%r0,524287(%r15)
625
626 #CHECK: srk     %r0, %r0, %r0           # encoding: [0xb9,0xf9,0x00,0x00]
627 #CHECK: srk     %r0, %r0, %r15          # encoding: [0xb9,0xf9,0xf0,0x00]
628 #CHECK: srk     %r0, %r15, %r0          # encoding: [0xb9,0xf9,0x00,0x0f]
629 #CHECK: srk     %r15, %r0, %r0          # encoding: [0xb9,0xf9,0x00,0xf0]
630 #CHECK: srk     %r7, %r8, %r9           # encoding: [0xb9,0xf9,0x90,0x78]
631
632         srk     %r0,%r0,%r0
633         srk     %r0,%r0,%r15
634         srk     %r0,%r15,%r0
635         srk     %r15,%r0,%r0
636         srk     %r7,%r8,%r9
637
638 #CHECK: srlk    %r0, %r0, 0             # encoding: [0xeb,0x00,0x00,0x00,0x00,0xde]
639 #CHECK: srlk    %r15, %r1, 0            # encoding: [0xeb,0xf1,0x00,0x00,0x00,0xde]
640 #CHECK: srlk    %r1, %r15, 0            # encoding: [0xeb,0x1f,0x00,0x00,0x00,0xde]
641 #CHECK: srlk    %r15, %r15, 0           # encoding: [0xeb,0xff,0x00,0x00,0x00,0xde]
642 #CHECK: srlk    %r0, %r0, -524288       # encoding: [0xeb,0x00,0x00,0x00,0x80,0xde]
643 #CHECK: srlk    %r0, %r0, -1            # encoding: [0xeb,0x00,0x0f,0xff,0xff,0xde]
644 #CHECK: srlk    %r0, %r0, 1             # encoding: [0xeb,0x00,0x00,0x01,0x00,0xde]
645 #CHECK: srlk    %r0, %r0, 524287        # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xde]
646 #CHECK: srlk    %r0, %r0, 0(%r1)        # encoding: [0xeb,0x00,0x10,0x00,0x00,0xde]
647 #CHECK: srlk    %r0, %r0, 0(%r15)       # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xde]
648 #CHECK: srlk    %r0, %r0, 524287(%r1)   # encoding: [0xeb,0x00,0x1f,0xff,0x7f,0xde]
649 #CHECK: srlk    %r0, %r0, 524287(%r15)  # encoding: [0xeb,0x00,0xff,0xff,0x7f,0xde]
650
651         srlk    %r0,%r0,0
652         srlk    %r15,%r1,0
653         srlk    %r1,%r15,0
654         srlk    %r15,%r15,0
655         srlk    %r0,%r0,-524288
656         srlk    %r0,%r0,-1
657         srlk    %r0,%r0,1
658         srlk    %r0,%r0,524287
659         srlk    %r0,%r0,0(%r1)
660         srlk    %r0,%r0,0(%r15)
661         srlk    %r0,%r0,524287(%r1)
662         srlk    %r0,%r0,524287(%r15)
663
664 #CHECK: stch    %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc3]
665 #CHECK: stch    %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc3]
666 #CHECK: stch    %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc3]
667 #CHECK: stch    %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc3]
668 #CHECK: stch    %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc3]
669 #CHECK: stch    %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc3]
670 #CHECK: stch    %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc3]
671 #CHECK: stch    %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc3]
672 #CHECK: stch    %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc3]
673 #CHECK: stch    %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc3]
674
675         stch    %r0, -524288
676         stch    %r0, -1
677         stch    %r0, 0
678         stch    %r0, 1
679         stch    %r0, 524287
680         stch    %r0, 0(%r1)
681         stch    %r0, 0(%r15)
682         stch    %r0, 524287(%r1,%r15)
683         stch    %r0, 524287(%r15,%r1)
684         stch    %r15, 0
685
686 #CHECK: sthh    %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xc7]
687 #CHECK: sthh    %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xc7]
688 #CHECK: sthh    %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xc7]
689 #CHECK: sthh    %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xc7]
690 #CHECK: sthh    %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xc7]
691 #CHECK: sthh    %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xc7]
692 #CHECK: sthh    %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xc7]
693 #CHECK: sthh    %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xc7]
694 #CHECK: sthh    %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xc7]
695 #CHECK: sthh    %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xc7]
696
697         sthh    %r0, -524288
698         sthh    %r0, -1
699         sthh    %r0, 0
700         sthh    %r0, 1
701         sthh    %r0, 524287
702         sthh    %r0, 0(%r1)
703         sthh    %r0, 0(%r15)
704         sthh    %r0, 524287(%r1,%r15)
705         sthh    %r0, 524287(%r15,%r1)
706         sthh    %r15, 0
707
708 #CHECK: stfh    %r0, -524288            # encoding: [0xe3,0x00,0x00,0x00,0x80,0xcb]
709 #CHECK: stfh    %r0, -1                 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0xcb]
710 #CHECK: stfh    %r0, 0                  # encoding: [0xe3,0x00,0x00,0x00,0x00,0xcb]
711 #CHECK: stfh    %r0, 1                  # encoding: [0xe3,0x00,0x00,0x01,0x00,0xcb]
712 #CHECK: stfh    %r0, 524287             # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0xcb]
713 #CHECK: stfh    %r0, 0(%r1)             # encoding: [0xe3,0x00,0x10,0x00,0x00,0xcb]
714 #CHECK: stfh    %r0, 0(%r15)            # encoding: [0xe3,0x00,0xf0,0x00,0x00,0xcb]
715 #CHECK: stfh    %r0, 524287(%r1,%r15)   # encoding: [0xe3,0x01,0xff,0xff,0x7f,0xcb]
716 #CHECK: stfh    %r0, 524287(%r15,%r1)   # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0xcb]
717 #CHECK: stfh    %r15, 0                 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0xcb]
718
719         stfh    %r0, -524288
720         stfh    %r0, -1
721         stfh    %r0, 0
722         stfh    %r0, 1
723         stfh    %r0, 524287
724         stfh    %r0, 0(%r1)
725         stfh    %r0, 0(%r15)
726         stfh    %r0, 524287(%r1,%r15)
727         stfh    %r0, 524287(%r15,%r1)
728         stfh    %r15, 0
729
730 #CHECK: stoc    %r0, 0, 0               # encoding: [0xeb,0x00,0x00,0x00,0x00,0xf3]
731 #CHECK: stoc    %r0, 0, 15              # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xf3]
732 #CHECK: stoc    %r0, -524288, 0         # encoding: [0xeb,0x00,0x00,0x00,0x80,0xf3]
733 #CHECK: stoc    %r0, 524287, 0          # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xf3]
734 #CHECK: stoc    %r0, 0(%r1), 0          # encoding: [0xeb,0x00,0x10,0x00,0x00,0xf3]
735 #CHECK: stoc    %r0, 0(%r15), 0         # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xf3]
736 #CHECK: stoc    %r15, 0, 0              # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xf3]
737 #CHECK: stoc    %r1, 4095(%r2), 3       # encoding: [0xeb,0x13,0x2f,0xff,0x00,0xf3]
738
739         stoc    %r0,0,0
740         stoc    %r0,0,15
741         stoc    %r0,-524288,0
742         stoc    %r0,524287,0
743         stoc    %r0,0(%r1),0
744         stoc    %r0,0(%r15),0
745         stoc    %r15,0,0
746         stoc    %r1,4095(%r2),3
747
748 #CHECK: stoco   %r1, 2(%r3)             # encoding: [0xeb,0x11,0x30,0x02,0x00,0xf3]
749 #CHECK: stoch   %r1, 2(%r3)             # encoding: [0xeb,0x12,0x30,0x02,0x00,0xf3]
750 #CHECK: stocnle %r1, 2(%r3)             # encoding: [0xeb,0x13,0x30,0x02,0x00,0xf3]
751 #CHECK: stocl   %r1, 2(%r3)             # encoding: [0xeb,0x14,0x30,0x02,0x00,0xf3]
752 #CHECK: stocnhe %r1, 2(%r3)             # encoding: [0xeb,0x15,0x30,0x02,0x00,0xf3]
753 #CHECK: stoclh  %r1, 2(%r3)             # encoding: [0xeb,0x16,0x30,0x02,0x00,0xf3]
754 #CHECK: stocne  %r1, 2(%r3)             # encoding: [0xeb,0x17,0x30,0x02,0x00,0xf3]
755 #CHECK: stoce   %r1, 2(%r3)             # encoding: [0xeb,0x18,0x30,0x02,0x00,0xf3]
756 #CHECK: stocnlh %r1, 2(%r3)             # encoding: [0xeb,0x19,0x30,0x02,0x00,0xf3]
757 #CHECK: stoche  %r1, 2(%r3)             # encoding: [0xeb,0x1a,0x30,0x02,0x00,0xf3]
758 #CHECK: stocnl  %r1, 2(%r3)             # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xf3]
759 #CHECK: stocle  %r1, 2(%r3)             # encoding: [0xeb,0x1c,0x30,0x02,0x00,0xf3]
760 #CHECK: stocnh  %r1, 2(%r3)             # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xf3]
761 #CHECK: stocno  %r1, 2(%r3)             # encoding: [0xeb,0x1e,0x30,0x02,0x00,0xf3]
762
763         stoco   %r1,2(%r3)
764         stoch   %r1,2(%r3)
765         stocnle %r1,2(%r3)
766         stocl   %r1,2(%r3)
767         stocnhe %r1,2(%r3)
768         stoclh  %r1,2(%r3)
769         stocne  %r1,2(%r3)
770         stoce   %r1,2(%r3)
771         stocnlh %r1,2(%r3)
772         stoche  %r1,2(%r3)
773         stocnl  %r1,2(%r3)
774         stocle  %r1,2(%r3)
775         stocnh  %r1,2(%r3)
776         stocno  %r1,2(%r3)
777
778 #CHECK: stocg   %r0, 0, 0               # encoding: [0xeb,0x00,0x00,0x00,0x00,0xe3]
779 #CHECK: stocg   %r0, 0, 15              # encoding: [0xeb,0x0f,0x00,0x00,0x00,0xe3]
780 #CHECK: stocg   %r0, -524288, 0         # encoding: [0xeb,0x00,0x00,0x00,0x80,0xe3]
781 #CHECK: stocg   %r0, 524287, 0          # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0xe3]
782 #CHECK: stocg   %r0, 0(%r1), 0          # encoding: [0xeb,0x00,0x10,0x00,0x00,0xe3]
783 #CHECK: stocg   %r0, 0(%r15), 0         # encoding: [0xeb,0x00,0xf0,0x00,0x00,0xe3]
784 #CHECK: stocg   %r15, 0, 0              # encoding: [0xeb,0xf0,0x00,0x00,0x00,0xe3]
785 #CHECK: stocg   %r1, 4095(%r2), 3       # encoding: [0xeb,0x13,0x2f,0xff,0x00,0xe3]
786
787         stocg   %r0,0,0
788         stocg   %r0,0,15
789         stocg   %r0,-524288,0
790         stocg   %r0,524287,0
791         stocg   %r0,0(%r1),0
792         stocg   %r0,0(%r15),0
793         stocg   %r15,0,0
794         stocg   %r1,4095(%r2),3
795
796 #CHECK: stocgo   %r1, 2(%r3)            # encoding: [0xeb,0x11,0x30,0x02,0x00,0xe3]
797 #CHECK: stocgh   %r1, 2(%r3)            # encoding: [0xeb,0x12,0x30,0x02,0x00,0xe3]
798 #CHECK: stocgnle %r1, 2(%r3)            # encoding: [0xeb,0x13,0x30,0x02,0x00,0xe3]
799 #CHECK: stocgl   %r1, 2(%r3)            # encoding: [0xeb,0x14,0x30,0x02,0x00,0xe3]
800 #CHECK: stocgnhe %r1, 2(%r3)            # encoding: [0xeb,0x15,0x30,0x02,0x00,0xe3]
801 #CHECK: stocglh  %r1, 2(%r3)            # encoding: [0xeb,0x16,0x30,0x02,0x00,0xe3]
802 #CHECK: stocgne  %r1, 2(%r3)            # encoding: [0xeb,0x17,0x30,0x02,0x00,0xe3]
803 #CHECK: stocge   %r1, 2(%r3)            # encoding: [0xeb,0x18,0x30,0x02,0x00,0xe3]
804 #CHECK: stocgnlh %r1, 2(%r3)            # encoding: [0xeb,0x19,0x30,0x02,0x00,0xe3]
805 #CHECK: stocghe  %r1, 2(%r3)            # encoding: [0xeb,0x1a,0x30,0x02,0x00,0xe3]
806 #CHECK: stocgnl  %r1, 2(%r3)            # encoding: [0xeb,0x1b,0x30,0x02,0x00,0xe3]
807 #CHECK: stocgle  %r1, 2(%r3)            # encoding: [0xeb,0x1c,0x30,0x02,0x00,0xe3]
808 #CHECK: stocgnh  %r1, 2(%r3)            # encoding: [0xeb,0x1d,0x30,0x02,0x00,0xe3]
809 #CHECK: stocgno  %r1, 2(%r3)            # encoding: [0xeb,0x1e,0x30,0x02,0x00,0xe3]
810
811         stocgo   %r1,2(%r3)
812         stocgh   %r1,2(%r3)
813         stocgnle %r1,2(%r3)
814         stocgl   %r1,2(%r3)
815         stocgnhe %r1,2(%r3)
816         stocglh  %r1,2(%r3)
817         stocgne  %r1,2(%r3)
818         stocge   %r1,2(%r3)
819         stocgnlh %r1,2(%r3)
820         stocghe  %r1,2(%r3)
821         stocgnl  %r1,2(%r3)
822         stocgle  %r1,2(%r3)
823         stocgnh  %r1,2(%r3)
824         stocgno  %r1,2(%r3)
825
826 #CHECK: xgrk    %r0, %r0, %r0           # encoding: [0xb9,0xe7,0x00,0x00]
827 #CHECK: xgrk    %r0, %r0, %r15          # encoding: [0xb9,0xe7,0xf0,0x00]
828 #CHECK: xgrk    %r0, %r15, %r0          # encoding: [0xb9,0xe7,0x00,0x0f]
829 #CHECK: xgrk    %r15, %r0, %r0          # encoding: [0xb9,0xe7,0x00,0xf0]
830 #CHECK: xgrk    %r7, %r8, %r9           # encoding: [0xb9,0xe7,0x90,0x78]
831
832         xgrk    %r0,%r0,%r0
833         xgrk    %r0,%r0,%r15
834         xgrk    %r0,%r15,%r0
835         xgrk    %r15,%r0,%r0
836         xgrk    %r7,%r8,%r9
837
838 #CHECK: xrk     %r0, %r0, %r0           # encoding: [0xb9,0xf7,0x00,0x00]
839 #CHECK: xrk     %r0, %r0, %r15          # encoding: [0xb9,0xf7,0xf0,0x00]
840 #CHECK: xrk     %r0, %r15, %r0          # encoding: [0xb9,0xf7,0x00,0x0f]
841 #CHECK: xrk     %r15, %r0, %r0          # encoding: [0xb9,0xf7,0x00,0xf0]
842 #CHECK: xrk     %r7, %r8, %r9           # encoding: [0xb9,0xf7,0x90,0x78]
843
844         xrk     %r0,%r0,%r0
845         xrk     %r0,%r0,%r15
846         xrk     %r0,%r15,%r0
847         xrk     %r15,%r0,%r0
848         xrk     %r7,%r8,%r9