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