• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2015, VIXL authors
2 // All rights reserved.
3 //
4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions are met:
6 //
7 //   * Redistributions of source code must retain the above copyright notice,
8 //     this list of conditions and the following disclaimer.
9 //   * Redistributions in binary form must reproduce the above copyright notice,
10 //     this list of conditions and the following disclaimer in the documentation
11 //     and/or other materials provided with the distribution.
12 //   * Neither the name of ARM Limited nor the names of its contributors may be
13 //     used to endorse or promote products derived from this software without
14 //     specific prior written permission.
15 //
16 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS CONTRIBUTORS "AS IS" AND
17 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 // DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
20 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
22 // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
23 // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24 // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 
27 
28 // ---------------------------------------------------------------------
29 // This file is auto generated using tools/generate_simulator_traces.py.
30 //
31 // PLEASE DO NOT EDIT.
32 // ---------------------------------------------------------------------
33 
34 #ifndef VIXL_ASSEMBLER_COND_RD_OPERAND_RN_SHIFT_RS_NARROW_OUT_IT_BLOCK_MOVS_T32_H_
35 #define VIXL_ASSEMBLER_COND_RD_OPERAND_RN_SHIFT_RS_NARROW_OUT_IT_BLOCK_MOVS_T32_H_
36 
37 const byte kInstruction_movs_al_r0_r0_LSL_r0[] = {
38   0x80, 0x40 // movs al r0 r0 LSL r0
39 };
40 const byte kInstruction_movs_al_r0_r0_LSL_r1[] = {
41   0x88, 0x40 // movs al r0 r0 LSL r1
42 };
43 const byte kInstruction_movs_al_r0_r0_LSL_r2[] = {
44   0x90, 0x40 // movs al r0 r0 LSL r2
45 };
46 const byte kInstruction_movs_al_r0_r0_LSL_r3[] = {
47   0x98, 0x40 // movs al r0 r0 LSL r3
48 };
49 const byte kInstruction_movs_al_r0_r0_LSL_r4[] = {
50   0xa0, 0x40 // movs al r0 r0 LSL r4
51 };
52 const byte kInstruction_movs_al_r0_r0_LSL_r5[] = {
53   0xa8, 0x40 // movs al r0 r0 LSL r5
54 };
55 const byte kInstruction_movs_al_r0_r0_LSL_r6[] = {
56   0xb0, 0x40 // movs al r0 r0 LSL r6
57 };
58 const byte kInstruction_movs_al_r0_r0_LSL_r7[] = {
59   0xb8, 0x40 // movs al r0 r0 LSL r7
60 };
61 const byte kInstruction_movs_al_r0_r0_LSR_r0[] = {
62   0xc0, 0x40 // movs al r0 r0 LSR r0
63 };
64 const byte kInstruction_movs_al_r0_r0_LSR_r1[] = {
65   0xc8, 0x40 // movs al r0 r0 LSR r1
66 };
67 const byte kInstruction_movs_al_r0_r0_LSR_r2[] = {
68   0xd0, 0x40 // movs al r0 r0 LSR r2
69 };
70 const byte kInstruction_movs_al_r0_r0_LSR_r3[] = {
71   0xd8, 0x40 // movs al r0 r0 LSR r3
72 };
73 const byte kInstruction_movs_al_r0_r0_LSR_r4[] = {
74   0xe0, 0x40 // movs al r0 r0 LSR r4
75 };
76 const byte kInstruction_movs_al_r0_r0_LSR_r5[] = {
77   0xe8, 0x40 // movs al r0 r0 LSR r5
78 };
79 const byte kInstruction_movs_al_r0_r0_LSR_r6[] = {
80   0xf0, 0x40 // movs al r0 r0 LSR r6
81 };
82 const byte kInstruction_movs_al_r0_r0_LSR_r7[] = {
83   0xf8, 0x40 // movs al r0 r0 LSR r7
84 };
85 const byte kInstruction_movs_al_r0_r0_ASR_r0[] = {
86   0x00, 0x41 // movs al r0 r0 ASR r0
87 };
88 const byte kInstruction_movs_al_r0_r0_ASR_r1[] = {
89   0x08, 0x41 // movs al r0 r0 ASR r1
90 };
91 const byte kInstruction_movs_al_r0_r0_ASR_r2[] = {
92   0x10, 0x41 // movs al r0 r0 ASR r2
93 };
94 const byte kInstruction_movs_al_r0_r0_ASR_r3[] = {
95   0x18, 0x41 // movs al r0 r0 ASR r3
96 };
97 const byte kInstruction_movs_al_r0_r0_ASR_r4[] = {
98   0x20, 0x41 // movs al r0 r0 ASR r4
99 };
100 const byte kInstruction_movs_al_r0_r0_ASR_r5[] = {
101   0x28, 0x41 // movs al r0 r0 ASR r5
102 };
103 const byte kInstruction_movs_al_r0_r0_ASR_r6[] = {
104   0x30, 0x41 // movs al r0 r0 ASR r6
105 };
106 const byte kInstruction_movs_al_r0_r0_ASR_r7[] = {
107   0x38, 0x41 // movs al r0 r0 ASR r7
108 };
109 const byte kInstruction_movs_al_r0_r0_ROR_r0[] = {
110   0xc0, 0x41 // movs al r0 r0 ROR r0
111 };
112 const byte kInstruction_movs_al_r0_r0_ROR_r1[] = {
113   0xc8, 0x41 // movs al r0 r0 ROR r1
114 };
115 const byte kInstruction_movs_al_r0_r0_ROR_r2[] = {
116   0xd0, 0x41 // movs al r0 r0 ROR r2
117 };
118 const byte kInstruction_movs_al_r0_r0_ROR_r3[] = {
119   0xd8, 0x41 // movs al r0 r0 ROR r3
120 };
121 const byte kInstruction_movs_al_r0_r0_ROR_r4[] = {
122   0xe0, 0x41 // movs al r0 r0 ROR r4
123 };
124 const byte kInstruction_movs_al_r0_r0_ROR_r5[] = {
125   0xe8, 0x41 // movs al r0 r0 ROR r5
126 };
127 const byte kInstruction_movs_al_r0_r0_ROR_r6[] = {
128   0xf0, 0x41 // movs al r0 r0 ROR r6
129 };
130 const byte kInstruction_movs_al_r0_r0_ROR_r7[] = {
131   0xf8, 0x41 // movs al r0 r0 ROR r7
132 };
133 const byte kInstruction_movs_al_r1_r1_LSL_r0[] = {
134   0x81, 0x40 // movs al r1 r1 LSL r0
135 };
136 const byte kInstruction_movs_al_r1_r1_LSL_r1[] = {
137   0x89, 0x40 // movs al r1 r1 LSL r1
138 };
139 const byte kInstruction_movs_al_r1_r1_LSL_r2[] = {
140   0x91, 0x40 // movs al r1 r1 LSL r2
141 };
142 const byte kInstruction_movs_al_r1_r1_LSL_r3[] = {
143   0x99, 0x40 // movs al r1 r1 LSL r3
144 };
145 const byte kInstruction_movs_al_r1_r1_LSL_r4[] = {
146   0xa1, 0x40 // movs al r1 r1 LSL r4
147 };
148 const byte kInstruction_movs_al_r1_r1_LSL_r5[] = {
149   0xa9, 0x40 // movs al r1 r1 LSL r5
150 };
151 const byte kInstruction_movs_al_r1_r1_LSL_r6[] = {
152   0xb1, 0x40 // movs al r1 r1 LSL r6
153 };
154 const byte kInstruction_movs_al_r1_r1_LSL_r7[] = {
155   0xb9, 0x40 // movs al r1 r1 LSL r7
156 };
157 const byte kInstruction_movs_al_r1_r1_LSR_r0[] = {
158   0xc1, 0x40 // movs al r1 r1 LSR r0
159 };
160 const byte kInstruction_movs_al_r1_r1_LSR_r1[] = {
161   0xc9, 0x40 // movs al r1 r1 LSR r1
162 };
163 const byte kInstruction_movs_al_r1_r1_LSR_r2[] = {
164   0xd1, 0x40 // movs al r1 r1 LSR r2
165 };
166 const byte kInstruction_movs_al_r1_r1_LSR_r3[] = {
167   0xd9, 0x40 // movs al r1 r1 LSR r3
168 };
169 const byte kInstruction_movs_al_r1_r1_LSR_r4[] = {
170   0xe1, 0x40 // movs al r1 r1 LSR r4
171 };
172 const byte kInstruction_movs_al_r1_r1_LSR_r5[] = {
173   0xe9, 0x40 // movs al r1 r1 LSR r5
174 };
175 const byte kInstruction_movs_al_r1_r1_LSR_r6[] = {
176   0xf1, 0x40 // movs al r1 r1 LSR r6
177 };
178 const byte kInstruction_movs_al_r1_r1_LSR_r7[] = {
179   0xf9, 0x40 // movs al r1 r1 LSR r7
180 };
181 const byte kInstruction_movs_al_r1_r1_ASR_r0[] = {
182   0x01, 0x41 // movs al r1 r1 ASR r0
183 };
184 const byte kInstruction_movs_al_r1_r1_ASR_r1[] = {
185   0x09, 0x41 // movs al r1 r1 ASR r1
186 };
187 const byte kInstruction_movs_al_r1_r1_ASR_r2[] = {
188   0x11, 0x41 // movs al r1 r1 ASR r2
189 };
190 const byte kInstruction_movs_al_r1_r1_ASR_r3[] = {
191   0x19, 0x41 // movs al r1 r1 ASR r3
192 };
193 const byte kInstruction_movs_al_r1_r1_ASR_r4[] = {
194   0x21, 0x41 // movs al r1 r1 ASR r4
195 };
196 const byte kInstruction_movs_al_r1_r1_ASR_r5[] = {
197   0x29, 0x41 // movs al r1 r1 ASR r5
198 };
199 const byte kInstruction_movs_al_r1_r1_ASR_r6[] = {
200   0x31, 0x41 // movs al r1 r1 ASR r6
201 };
202 const byte kInstruction_movs_al_r1_r1_ASR_r7[] = {
203   0x39, 0x41 // movs al r1 r1 ASR r7
204 };
205 const byte kInstruction_movs_al_r1_r1_ROR_r0[] = {
206   0xc1, 0x41 // movs al r1 r1 ROR r0
207 };
208 const byte kInstruction_movs_al_r1_r1_ROR_r1[] = {
209   0xc9, 0x41 // movs al r1 r1 ROR r1
210 };
211 const byte kInstruction_movs_al_r1_r1_ROR_r2[] = {
212   0xd1, 0x41 // movs al r1 r1 ROR r2
213 };
214 const byte kInstruction_movs_al_r1_r1_ROR_r3[] = {
215   0xd9, 0x41 // movs al r1 r1 ROR r3
216 };
217 const byte kInstruction_movs_al_r1_r1_ROR_r4[] = {
218   0xe1, 0x41 // movs al r1 r1 ROR r4
219 };
220 const byte kInstruction_movs_al_r1_r1_ROR_r5[] = {
221   0xe9, 0x41 // movs al r1 r1 ROR r5
222 };
223 const byte kInstruction_movs_al_r1_r1_ROR_r6[] = {
224   0xf1, 0x41 // movs al r1 r1 ROR r6
225 };
226 const byte kInstruction_movs_al_r1_r1_ROR_r7[] = {
227   0xf9, 0x41 // movs al r1 r1 ROR r7
228 };
229 const byte kInstruction_movs_al_r2_r2_LSL_r0[] = {
230   0x82, 0x40 // movs al r2 r2 LSL r0
231 };
232 const byte kInstruction_movs_al_r2_r2_LSL_r1[] = {
233   0x8a, 0x40 // movs al r2 r2 LSL r1
234 };
235 const byte kInstruction_movs_al_r2_r2_LSL_r2[] = {
236   0x92, 0x40 // movs al r2 r2 LSL r2
237 };
238 const byte kInstruction_movs_al_r2_r2_LSL_r3[] = {
239   0x9a, 0x40 // movs al r2 r2 LSL r3
240 };
241 const byte kInstruction_movs_al_r2_r2_LSL_r4[] = {
242   0xa2, 0x40 // movs al r2 r2 LSL r4
243 };
244 const byte kInstruction_movs_al_r2_r2_LSL_r5[] = {
245   0xaa, 0x40 // movs al r2 r2 LSL r5
246 };
247 const byte kInstruction_movs_al_r2_r2_LSL_r6[] = {
248   0xb2, 0x40 // movs al r2 r2 LSL r6
249 };
250 const byte kInstruction_movs_al_r2_r2_LSL_r7[] = {
251   0xba, 0x40 // movs al r2 r2 LSL r7
252 };
253 const byte kInstruction_movs_al_r2_r2_LSR_r0[] = {
254   0xc2, 0x40 // movs al r2 r2 LSR r0
255 };
256 const byte kInstruction_movs_al_r2_r2_LSR_r1[] = {
257   0xca, 0x40 // movs al r2 r2 LSR r1
258 };
259 const byte kInstruction_movs_al_r2_r2_LSR_r2[] = {
260   0xd2, 0x40 // movs al r2 r2 LSR r2
261 };
262 const byte kInstruction_movs_al_r2_r2_LSR_r3[] = {
263   0xda, 0x40 // movs al r2 r2 LSR r3
264 };
265 const byte kInstruction_movs_al_r2_r2_LSR_r4[] = {
266   0xe2, 0x40 // movs al r2 r2 LSR r4
267 };
268 const byte kInstruction_movs_al_r2_r2_LSR_r5[] = {
269   0xea, 0x40 // movs al r2 r2 LSR r5
270 };
271 const byte kInstruction_movs_al_r2_r2_LSR_r6[] = {
272   0xf2, 0x40 // movs al r2 r2 LSR r6
273 };
274 const byte kInstruction_movs_al_r2_r2_LSR_r7[] = {
275   0xfa, 0x40 // movs al r2 r2 LSR r7
276 };
277 const byte kInstruction_movs_al_r2_r2_ASR_r0[] = {
278   0x02, 0x41 // movs al r2 r2 ASR r0
279 };
280 const byte kInstruction_movs_al_r2_r2_ASR_r1[] = {
281   0x0a, 0x41 // movs al r2 r2 ASR r1
282 };
283 const byte kInstruction_movs_al_r2_r2_ASR_r2[] = {
284   0x12, 0x41 // movs al r2 r2 ASR r2
285 };
286 const byte kInstruction_movs_al_r2_r2_ASR_r3[] = {
287   0x1a, 0x41 // movs al r2 r2 ASR r3
288 };
289 const byte kInstruction_movs_al_r2_r2_ASR_r4[] = {
290   0x22, 0x41 // movs al r2 r2 ASR r4
291 };
292 const byte kInstruction_movs_al_r2_r2_ASR_r5[] = {
293   0x2a, 0x41 // movs al r2 r2 ASR r5
294 };
295 const byte kInstruction_movs_al_r2_r2_ASR_r6[] = {
296   0x32, 0x41 // movs al r2 r2 ASR r6
297 };
298 const byte kInstruction_movs_al_r2_r2_ASR_r7[] = {
299   0x3a, 0x41 // movs al r2 r2 ASR r7
300 };
301 const byte kInstruction_movs_al_r2_r2_ROR_r0[] = {
302   0xc2, 0x41 // movs al r2 r2 ROR r0
303 };
304 const byte kInstruction_movs_al_r2_r2_ROR_r1[] = {
305   0xca, 0x41 // movs al r2 r2 ROR r1
306 };
307 const byte kInstruction_movs_al_r2_r2_ROR_r2[] = {
308   0xd2, 0x41 // movs al r2 r2 ROR r2
309 };
310 const byte kInstruction_movs_al_r2_r2_ROR_r3[] = {
311   0xda, 0x41 // movs al r2 r2 ROR r3
312 };
313 const byte kInstruction_movs_al_r2_r2_ROR_r4[] = {
314   0xe2, 0x41 // movs al r2 r2 ROR r4
315 };
316 const byte kInstruction_movs_al_r2_r2_ROR_r5[] = {
317   0xea, 0x41 // movs al r2 r2 ROR r5
318 };
319 const byte kInstruction_movs_al_r2_r2_ROR_r6[] = {
320   0xf2, 0x41 // movs al r2 r2 ROR r6
321 };
322 const byte kInstruction_movs_al_r2_r2_ROR_r7[] = {
323   0xfa, 0x41 // movs al r2 r2 ROR r7
324 };
325 const byte kInstruction_movs_al_r3_r3_LSL_r0[] = {
326   0x83, 0x40 // movs al r3 r3 LSL r0
327 };
328 const byte kInstruction_movs_al_r3_r3_LSL_r1[] = {
329   0x8b, 0x40 // movs al r3 r3 LSL r1
330 };
331 const byte kInstruction_movs_al_r3_r3_LSL_r2[] = {
332   0x93, 0x40 // movs al r3 r3 LSL r2
333 };
334 const byte kInstruction_movs_al_r3_r3_LSL_r3[] = {
335   0x9b, 0x40 // movs al r3 r3 LSL r3
336 };
337 const byte kInstruction_movs_al_r3_r3_LSL_r4[] = {
338   0xa3, 0x40 // movs al r3 r3 LSL r4
339 };
340 const byte kInstruction_movs_al_r3_r3_LSL_r5[] = {
341   0xab, 0x40 // movs al r3 r3 LSL r5
342 };
343 const byte kInstruction_movs_al_r3_r3_LSL_r6[] = {
344   0xb3, 0x40 // movs al r3 r3 LSL r6
345 };
346 const byte kInstruction_movs_al_r3_r3_LSL_r7[] = {
347   0xbb, 0x40 // movs al r3 r3 LSL r7
348 };
349 const byte kInstruction_movs_al_r3_r3_LSR_r0[] = {
350   0xc3, 0x40 // movs al r3 r3 LSR r0
351 };
352 const byte kInstruction_movs_al_r3_r3_LSR_r1[] = {
353   0xcb, 0x40 // movs al r3 r3 LSR r1
354 };
355 const byte kInstruction_movs_al_r3_r3_LSR_r2[] = {
356   0xd3, 0x40 // movs al r3 r3 LSR r2
357 };
358 const byte kInstruction_movs_al_r3_r3_LSR_r3[] = {
359   0xdb, 0x40 // movs al r3 r3 LSR r3
360 };
361 const byte kInstruction_movs_al_r3_r3_LSR_r4[] = {
362   0xe3, 0x40 // movs al r3 r3 LSR r4
363 };
364 const byte kInstruction_movs_al_r3_r3_LSR_r5[] = {
365   0xeb, 0x40 // movs al r3 r3 LSR r5
366 };
367 const byte kInstruction_movs_al_r3_r3_LSR_r6[] = {
368   0xf3, 0x40 // movs al r3 r3 LSR r6
369 };
370 const byte kInstruction_movs_al_r3_r3_LSR_r7[] = {
371   0xfb, 0x40 // movs al r3 r3 LSR r7
372 };
373 const byte kInstruction_movs_al_r3_r3_ASR_r0[] = {
374   0x03, 0x41 // movs al r3 r3 ASR r0
375 };
376 const byte kInstruction_movs_al_r3_r3_ASR_r1[] = {
377   0x0b, 0x41 // movs al r3 r3 ASR r1
378 };
379 const byte kInstruction_movs_al_r3_r3_ASR_r2[] = {
380   0x13, 0x41 // movs al r3 r3 ASR r2
381 };
382 const byte kInstruction_movs_al_r3_r3_ASR_r3[] = {
383   0x1b, 0x41 // movs al r3 r3 ASR r3
384 };
385 const byte kInstruction_movs_al_r3_r3_ASR_r4[] = {
386   0x23, 0x41 // movs al r3 r3 ASR r4
387 };
388 const byte kInstruction_movs_al_r3_r3_ASR_r5[] = {
389   0x2b, 0x41 // movs al r3 r3 ASR r5
390 };
391 const byte kInstruction_movs_al_r3_r3_ASR_r6[] = {
392   0x33, 0x41 // movs al r3 r3 ASR r6
393 };
394 const byte kInstruction_movs_al_r3_r3_ASR_r7[] = {
395   0x3b, 0x41 // movs al r3 r3 ASR r7
396 };
397 const byte kInstruction_movs_al_r3_r3_ROR_r0[] = {
398   0xc3, 0x41 // movs al r3 r3 ROR r0
399 };
400 const byte kInstruction_movs_al_r3_r3_ROR_r1[] = {
401   0xcb, 0x41 // movs al r3 r3 ROR r1
402 };
403 const byte kInstruction_movs_al_r3_r3_ROR_r2[] = {
404   0xd3, 0x41 // movs al r3 r3 ROR r2
405 };
406 const byte kInstruction_movs_al_r3_r3_ROR_r3[] = {
407   0xdb, 0x41 // movs al r3 r3 ROR r3
408 };
409 const byte kInstruction_movs_al_r3_r3_ROR_r4[] = {
410   0xe3, 0x41 // movs al r3 r3 ROR r4
411 };
412 const byte kInstruction_movs_al_r3_r3_ROR_r5[] = {
413   0xeb, 0x41 // movs al r3 r3 ROR r5
414 };
415 const byte kInstruction_movs_al_r3_r3_ROR_r6[] = {
416   0xf3, 0x41 // movs al r3 r3 ROR r6
417 };
418 const byte kInstruction_movs_al_r3_r3_ROR_r7[] = {
419   0xfb, 0x41 // movs al r3 r3 ROR r7
420 };
421 const byte kInstruction_movs_al_r4_r4_LSL_r0[] = {
422   0x84, 0x40 // movs al r4 r4 LSL r0
423 };
424 const byte kInstruction_movs_al_r4_r4_LSL_r1[] = {
425   0x8c, 0x40 // movs al r4 r4 LSL r1
426 };
427 const byte kInstruction_movs_al_r4_r4_LSL_r2[] = {
428   0x94, 0x40 // movs al r4 r4 LSL r2
429 };
430 const byte kInstruction_movs_al_r4_r4_LSL_r3[] = {
431   0x9c, 0x40 // movs al r4 r4 LSL r3
432 };
433 const byte kInstruction_movs_al_r4_r4_LSL_r4[] = {
434   0xa4, 0x40 // movs al r4 r4 LSL r4
435 };
436 const byte kInstruction_movs_al_r4_r4_LSL_r5[] = {
437   0xac, 0x40 // movs al r4 r4 LSL r5
438 };
439 const byte kInstruction_movs_al_r4_r4_LSL_r6[] = {
440   0xb4, 0x40 // movs al r4 r4 LSL r6
441 };
442 const byte kInstruction_movs_al_r4_r4_LSL_r7[] = {
443   0xbc, 0x40 // movs al r4 r4 LSL r7
444 };
445 const byte kInstruction_movs_al_r4_r4_LSR_r0[] = {
446   0xc4, 0x40 // movs al r4 r4 LSR r0
447 };
448 const byte kInstruction_movs_al_r4_r4_LSR_r1[] = {
449   0xcc, 0x40 // movs al r4 r4 LSR r1
450 };
451 const byte kInstruction_movs_al_r4_r4_LSR_r2[] = {
452   0xd4, 0x40 // movs al r4 r4 LSR r2
453 };
454 const byte kInstruction_movs_al_r4_r4_LSR_r3[] = {
455   0xdc, 0x40 // movs al r4 r4 LSR r3
456 };
457 const byte kInstruction_movs_al_r4_r4_LSR_r4[] = {
458   0xe4, 0x40 // movs al r4 r4 LSR r4
459 };
460 const byte kInstruction_movs_al_r4_r4_LSR_r5[] = {
461   0xec, 0x40 // movs al r4 r4 LSR r5
462 };
463 const byte kInstruction_movs_al_r4_r4_LSR_r6[] = {
464   0xf4, 0x40 // movs al r4 r4 LSR r6
465 };
466 const byte kInstruction_movs_al_r4_r4_LSR_r7[] = {
467   0xfc, 0x40 // movs al r4 r4 LSR r7
468 };
469 const byte kInstruction_movs_al_r4_r4_ASR_r0[] = {
470   0x04, 0x41 // movs al r4 r4 ASR r0
471 };
472 const byte kInstruction_movs_al_r4_r4_ASR_r1[] = {
473   0x0c, 0x41 // movs al r4 r4 ASR r1
474 };
475 const byte kInstruction_movs_al_r4_r4_ASR_r2[] = {
476   0x14, 0x41 // movs al r4 r4 ASR r2
477 };
478 const byte kInstruction_movs_al_r4_r4_ASR_r3[] = {
479   0x1c, 0x41 // movs al r4 r4 ASR r3
480 };
481 const byte kInstruction_movs_al_r4_r4_ASR_r4[] = {
482   0x24, 0x41 // movs al r4 r4 ASR r4
483 };
484 const byte kInstruction_movs_al_r4_r4_ASR_r5[] = {
485   0x2c, 0x41 // movs al r4 r4 ASR r5
486 };
487 const byte kInstruction_movs_al_r4_r4_ASR_r6[] = {
488   0x34, 0x41 // movs al r4 r4 ASR r6
489 };
490 const byte kInstruction_movs_al_r4_r4_ASR_r7[] = {
491   0x3c, 0x41 // movs al r4 r4 ASR r7
492 };
493 const byte kInstruction_movs_al_r4_r4_ROR_r0[] = {
494   0xc4, 0x41 // movs al r4 r4 ROR r0
495 };
496 const byte kInstruction_movs_al_r4_r4_ROR_r1[] = {
497   0xcc, 0x41 // movs al r4 r4 ROR r1
498 };
499 const byte kInstruction_movs_al_r4_r4_ROR_r2[] = {
500   0xd4, 0x41 // movs al r4 r4 ROR r2
501 };
502 const byte kInstruction_movs_al_r4_r4_ROR_r3[] = {
503   0xdc, 0x41 // movs al r4 r4 ROR r3
504 };
505 const byte kInstruction_movs_al_r4_r4_ROR_r4[] = {
506   0xe4, 0x41 // movs al r4 r4 ROR r4
507 };
508 const byte kInstruction_movs_al_r4_r4_ROR_r5[] = {
509   0xec, 0x41 // movs al r4 r4 ROR r5
510 };
511 const byte kInstruction_movs_al_r4_r4_ROR_r6[] = {
512   0xf4, 0x41 // movs al r4 r4 ROR r6
513 };
514 const byte kInstruction_movs_al_r4_r4_ROR_r7[] = {
515   0xfc, 0x41 // movs al r4 r4 ROR r7
516 };
517 const byte kInstruction_movs_al_r5_r5_LSL_r0[] = {
518   0x85, 0x40 // movs al r5 r5 LSL r0
519 };
520 const byte kInstruction_movs_al_r5_r5_LSL_r1[] = {
521   0x8d, 0x40 // movs al r5 r5 LSL r1
522 };
523 const byte kInstruction_movs_al_r5_r5_LSL_r2[] = {
524   0x95, 0x40 // movs al r5 r5 LSL r2
525 };
526 const byte kInstruction_movs_al_r5_r5_LSL_r3[] = {
527   0x9d, 0x40 // movs al r5 r5 LSL r3
528 };
529 const byte kInstruction_movs_al_r5_r5_LSL_r4[] = {
530   0xa5, 0x40 // movs al r5 r5 LSL r4
531 };
532 const byte kInstruction_movs_al_r5_r5_LSL_r5[] = {
533   0xad, 0x40 // movs al r5 r5 LSL r5
534 };
535 const byte kInstruction_movs_al_r5_r5_LSL_r6[] = {
536   0xb5, 0x40 // movs al r5 r5 LSL r6
537 };
538 const byte kInstruction_movs_al_r5_r5_LSL_r7[] = {
539   0xbd, 0x40 // movs al r5 r5 LSL r7
540 };
541 const byte kInstruction_movs_al_r5_r5_LSR_r0[] = {
542   0xc5, 0x40 // movs al r5 r5 LSR r0
543 };
544 const byte kInstruction_movs_al_r5_r5_LSR_r1[] = {
545   0xcd, 0x40 // movs al r5 r5 LSR r1
546 };
547 const byte kInstruction_movs_al_r5_r5_LSR_r2[] = {
548   0xd5, 0x40 // movs al r5 r5 LSR r2
549 };
550 const byte kInstruction_movs_al_r5_r5_LSR_r3[] = {
551   0xdd, 0x40 // movs al r5 r5 LSR r3
552 };
553 const byte kInstruction_movs_al_r5_r5_LSR_r4[] = {
554   0xe5, 0x40 // movs al r5 r5 LSR r4
555 };
556 const byte kInstruction_movs_al_r5_r5_LSR_r5[] = {
557   0xed, 0x40 // movs al r5 r5 LSR r5
558 };
559 const byte kInstruction_movs_al_r5_r5_LSR_r6[] = {
560   0xf5, 0x40 // movs al r5 r5 LSR r6
561 };
562 const byte kInstruction_movs_al_r5_r5_LSR_r7[] = {
563   0xfd, 0x40 // movs al r5 r5 LSR r7
564 };
565 const byte kInstruction_movs_al_r5_r5_ASR_r0[] = {
566   0x05, 0x41 // movs al r5 r5 ASR r0
567 };
568 const byte kInstruction_movs_al_r5_r5_ASR_r1[] = {
569   0x0d, 0x41 // movs al r5 r5 ASR r1
570 };
571 const byte kInstruction_movs_al_r5_r5_ASR_r2[] = {
572   0x15, 0x41 // movs al r5 r5 ASR r2
573 };
574 const byte kInstruction_movs_al_r5_r5_ASR_r3[] = {
575   0x1d, 0x41 // movs al r5 r5 ASR r3
576 };
577 const byte kInstruction_movs_al_r5_r5_ASR_r4[] = {
578   0x25, 0x41 // movs al r5 r5 ASR r4
579 };
580 const byte kInstruction_movs_al_r5_r5_ASR_r5[] = {
581   0x2d, 0x41 // movs al r5 r5 ASR r5
582 };
583 const byte kInstruction_movs_al_r5_r5_ASR_r6[] = {
584   0x35, 0x41 // movs al r5 r5 ASR r6
585 };
586 const byte kInstruction_movs_al_r5_r5_ASR_r7[] = {
587   0x3d, 0x41 // movs al r5 r5 ASR r7
588 };
589 const byte kInstruction_movs_al_r5_r5_ROR_r0[] = {
590   0xc5, 0x41 // movs al r5 r5 ROR r0
591 };
592 const byte kInstruction_movs_al_r5_r5_ROR_r1[] = {
593   0xcd, 0x41 // movs al r5 r5 ROR r1
594 };
595 const byte kInstruction_movs_al_r5_r5_ROR_r2[] = {
596   0xd5, 0x41 // movs al r5 r5 ROR r2
597 };
598 const byte kInstruction_movs_al_r5_r5_ROR_r3[] = {
599   0xdd, 0x41 // movs al r5 r5 ROR r3
600 };
601 const byte kInstruction_movs_al_r5_r5_ROR_r4[] = {
602   0xe5, 0x41 // movs al r5 r5 ROR r4
603 };
604 const byte kInstruction_movs_al_r5_r5_ROR_r5[] = {
605   0xed, 0x41 // movs al r5 r5 ROR r5
606 };
607 const byte kInstruction_movs_al_r5_r5_ROR_r6[] = {
608   0xf5, 0x41 // movs al r5 r5 ROR r6
609 };
610 const byte kInstruction_movs_al_r5_r5_ROR_r7[] = {
611   0xfd, 0x41 // movs al r5 r5 ROR r7
612 };
613 const byte kInstruction_movs_al_r6_r6_LSL_r0[] = {
614   0x86, 0x40 // movs al r6 r6 LSL r0
615 };
616 const byte kInstruction_movs_al_r6_r6_LSL_r1[] = {
617   0x8e, 0x40 // movs al r6 r6 LSL r1
618 };
619 const byte kInstruction_movs_al_r6_r6_LSL_r2[] = {
620   0x96, 0x40 // movs al r6 r6 LSL r2
621 };
622 const byte kInstruction_movs_al_r6_r6_LSL_r3[] = {
623   0x9e, 0x40 // movs al r6 r6 LSL r3
624 };
625 const byte kInstruction_movs_al_r6_r6_LSL_r4[] = {
626   0xa6, 0x40 // movs al r6 r6 LSL r4
627 };
628 const byte kInstruction_movs_al_r6_r6_LSL_r5[] = {
629   0xae, 0x40 // movs al r6 r6 LSL r5
630 };
631 const byte kInstruction_movs_al_r6_r6_LSL_r6[] = {
632   0xb6, 0x40 // movs al r6 r6 LSL r6
633 };
634 const byte kInstruction_movs_al_r6_r6_LSL_r7[] = {
635   0xbe, 0x40 // movs al r6 r6 LSL r7
636 };
637 const byte kInstruction_movs_al_r6_r6_LSR_r0[] = {
638   0xc6, 0x40 // movs al r6 r6 LSR r0
639 };
640 const byte kInstruction_movs_al_r6_r6_LSR_r1[] = {
641   0xce, 0x40 // movs al r6 r6 LSR r1
642 };
643 const byte kInstruction_movs_al_r6_r6_LSR_r2[] = {
644   0xd6, 0x40 // movs al r6 r6 LSR r2
645 };
646 const byte kInstruction_movs_al_r6_r6_LSR_r3[] = {
647   0xde, 0x40 // movs al r6 r6 LSR r3
648 };
649 const byte kInstruction_movs_al_r6_r6_LSR_r4[] = {
650   0xe6, 0x40 // movs al r6 r6 LSR r4
651 };
652 const byte kInstruction_movs_al_r6_r6_LSR_r5[] = {
653   0xee, 0x40 // movs al r6 r6 LSR r5
654 };
655 const byte kInstruction_movs_al_r6_r6_LSR_r6[] = {
656   0xf6, 0x40 // movs al r6 r6 LSR r6
657 };
658 const byte kInstruction_movs_al_r6_r6_LSR_r7[] = {
659   0xfe, 0x40 // movs al r6 r6 LSR r7
660 };
661 const byte kInstruction_movs_al_r6_r6_ASR_r0[] = {
662   0x06, 0x41 // movs al r6 r6 ASR r0
663 };
664 const byte kInstruction_movs_al_r6_r6_ASR_r1[] = {
665   0x0e, 0x41 // movs al r6 r6 ASR r1
666 };
667 const byte kInstruction_movs_al_r6_r6_ASR_r2[] = {
668   0x16, 0x41 // movs al r6 r6 ASR r2
669 };
670 const byte kInstruction_movs_al_r6_r6_ASR_r3[] = {
671   0x1e, 0x41 // movs al r6 r6 ASR r3
672 };
673 const byte kInstruction_movs_al_r6_r6_ASR_r4[] = {
674   0x26, 0x41 // movs al r6 r6 ASR r4
675 };
676 const byte kInstruction_movs_al_r6_r6_ASR_r5[] = {
677   0x2e, 0x41 // movs al r6 r6 ASR r5
678 };
679 const byte kInstruction_movs_al_r6_r6_ASR_r6[] = {
680   0x36, 0x41 // movs al r6 r6 ASR r6
681 };
682 const byte kInstruction_movs_al_r6_r6_ASR_r7[] = {
683   0x3e, 0x41 // movs al r6 r6 ASR r7
684 };
685 const byte kInstruction_movs_al_r6_r6_ROR_r0[] = {
686   0xc6, 0x41 // movs al r6 r6 ROR r0
687 };
688 const byte kInstruction_movs_al_r6_r6_ROR_r1[] = {
689   0xce, 0x41 // movs al r6 r6 ROR r1
690 };
691 const byte kInstruction_movs_al_r6_r6_ROR_r2[] = {
692   0xd6, 0x41 // movs al r6 r6 ROR r2
693 };
694 const byte kInstruction_movs_al_r6_r6_ROR_r3[] = {
695   0xde, 0x41 // movs al r6 r6 ROR r3
696 };
697 const byte kInstruction_movs_al_r6_r6_ROR_r4[] = {
698   0xe6, 0x41 // movs al r6 r6 ROR r4
699 };
700 const byte kInstruction_movs_al_r6_r6_ROR_r5[] = {
701   0xee, 0x41 // movs al r6 r6 ROR r5
702 };
703 const byte kInstruction_movs_al_r6_r6_ROR_r6[] = {
704   0xf6, 0x41 // movs al r6 r6 ROR r6
705 };
706 const byte kInstruction_movs_al_r6_r6_ROR_r7[] = {
707   0xfe, 0x41 // movs al r6 r6 ROR r7
708 };
709 const byte kInstruction_movs_al_r7_r7_LSL_r0[] = {
710   0x87, 0x40 // movs al r7 r7 LSL r0
711 };
712 const byte kInstruction_movs_al_r7_r7_LSL_r1[] = {
713   0x8f, 0x40 // movs al r7 r7 LSL r1
714 };
715 const byte kInstruction_movs_al_r7_r7_LSL_r2[] = {
716   0x97, 0x40 // movs al r7 r7 LSL r2
717 };
718 const byte kInstruction_movs_al_r7_r7_LSL_r3[] = {
719   0x9f, 0x40 // movs al r7 r7 LSL r3
720 };
721 const byte kInstruction_movs_al_r7_r7_LSL_r4[] = {
722   0xa7, 0x40 // movs al r7 r7 LSL r4
723 };
724 const byte kInstruction_movs_al_r7_r7_LSL_r5[] = {
725   0xaf, 0x40 // movs al r7 r7 LSL r5
726 };
727 const byte kInstruction_movs_al_r7_r7_LSL_r6[] = {
728   0xb7, 0x40 // movs al r7 r7 LSL r6
729 };
730 const byte kInstruction_movs_al_r7_r7_LSL_r7[] = {
731   0xbf, 0x40 // movs al r7 r7 LSL r7
732 };
733 const byte kInstruction_movs_al_r7_r7_LSR_r0[] = {
734   0xc7, 0x40 // movs al r7 r7 LSR r0
735 };
736 const byte kInstruction_movs_al_r7_r7_LSR_r1[] = {
737   0xcf, 0x40 // movs al r7 r7 LSR r1
738 };
739 const byte kInstruction_movs_al_r7_r7_LSR_r2[] = {
740   0xd7, 0x40 // movs al r7 r7 LSR r2
741 };
742 const byte kInstruction_movs_al_r7_r7_LSR_r3[] = {
743   0xdf, 0x40 // movs al r7 r7 LSR r3
744 };
745 const byte kInstruction_movs_al_r7_r7_LSR_r4[] = {
746   0xe7, 0x40 // movs al r7 r7 LSR r4
747 };
748 const byte kInstruction_movs_al_r7_r7_LSR_r5[] = {
749   0xef, 0x40 // movs al r7 r7 LSR r5
750 };
751 const byte kInstruction_movs_al_r7_r7_LSR_r6[] = {
752   0xf7, 0x40 // movs al r7 r7 LSR r6
753 };
754 const byte kInstruction_movs_al_r7_r7_LSR_r7[] = {
755   0xff, 0x40 // movs al r7 r7 LSR r7
756 };
757 const byte kInstruction_movs_al_r7_r7_ASR_r0[] = {
758   0x07, 0x41 // movs al r7 r7 ASR r0
759 };
760 const byte kInstruction_movs_al_r7_r7_ASR_r1[] = {
761   0x0f, 0x41 // movs al r7 r7 ASR r1
762 };
763 const byte kInstruction_movs_al_r7_r7_ASR_r2[] = {
764   0x17, 0x41 // movs al r7 r7 ASR r2
765 };
766 const byte kInstruction_movs_al_r7_r7_ASR_r3[] = {
767   0x1f, 0x41 // movs al r7 r7 ASR r3
768 };
769 const byte kInstruction_movs_al_r7_r7_ASR_r4[] = {
770   0x27, 0x41 // movs al r7 r7 ASR r4
771 };
772 const byte kInstruction_movs_al_r7_r7_ASR_r5[] = {
773   0x2f, 0x41 // movs al r7 r7 ASR r5
774 };
775 const byte kInstruction_movs_al_r7_r7_ASR_r6[] = {
776   0x37, 0x41 // movs al r7 r7 ASR r6
777 };
778 const byte kInstruction_movs_al_r7_r7_ASR_r7[] = {
779   0x3f, 0x41 // movs al r7 r7 ASR r7
780 };
781 const byte kInstruction_movs_al_r7_r7_ROR_r0[] = {
782   0xc7, 0x41 // movs al r7 r7 ROR r0
783 };
784 const byte kInstruction_movs_al_r7_r7_ROR_r1[] = {
785   0xcf, 0x41 // movs al r7 r7 ROR r1
786 };
787 const byte kInstruction_movs_al_r7_r7_ROR_r2[] = {
788   0xd7, 0x41 // movs al r7 r7 ROR r2
789 };
790 const byte kInstruction_movs_al_r7_r7_ROR_r3[] = {
791   0xdf, 0x41 // movs al r7 r7 ROR r3
792 };
793 const byte kInstruction_movs_al_r7_r7_ROR_r4[] = {
794   0xe7, 0x41 // movs al r7 r7 ROR r4
795 };
796 const byte kInstruction_movs_al_r7_r7_ROR_r5[] = {
797   0xef, 0x41 // movs al r7 r7 ROR r5
798 };
799 const byte kInstruction_movs_al_r7_r7_ROR_r6[] = {
800   0xf7, 0x41 // movs al r7 r7 ROR r6
801 };
802 const byte kInstruction_movs_al_r7_r7_ROR_r7[] = {
803   0xff, 0x41 // movs al r7 r7 ROR r7
804 };
805 const TestResult kReferencemovs[] = {
806   {
807     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSL_r0),
808     kInstruction_movs_al_r0_r0_LSL_r0,
809   },
810   {
811     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSL_r1),
812     kInstruction_movs_al_r0_r0_LSL_r1,
813   },
814   {
815     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSL_r2),
816     kInstruction_movs_al_r0_r0_LSL_r2,
817   },
818   {
819     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSL_r3),
820     kInstruction_movs_al_r0_r0_LSL_r3,
821   },
822   {
823     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSL_r4),
824     kInstruction_movs_al_r0_r0_LSL_r4,
825   },
826   {
827     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSL_r5),
828     kInstruction_movs_al_r0_r0_LSL_r5,
829   },
830   {
831     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSL_r6),
832     kInstruction_movs_al_r0_r0_LSL_r6,
833   },
834   {
835     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSL_r7),
836     kInstruction_movs_al_r0_r0_LSL_r7,
837   },
838   {
839     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSR_r0),
840     kInstruction_movs_al_r0_r0_LSR_r0,
841   },
842   {
843     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSR_r1),
844     kInstruction_movs_al_r0_r0_LSR_r1,
845   },
846   {
847     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSR_r2),
848     kInstruction_movs_al_r0_r0_LSR_r2,
849   },
850   {
851     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSR_r3),
852     kInstruction_movs_al_r0_r0_LSR_r3,
853   },
854   {
855     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSR_r4),
856     kInstruction_movs_al_r0_r0_LSR_r4,
857   },
858   {
859     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSR_r5),
860     kInstruction_movs_al_r0_r0_LSR_r5,
861   },
862   {
863     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSR_r6),
864     kInstruction_movs_al_r0_r0_LSR_r6,
865   },
866   {
867     ARRAY_SIZE(kInstruction_movs_al_r0_r0_LSR_r7),
868     kInstruction_movs_al_r0_r0_LSR_r7,
869   },
870   {
871     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ASR_r0),
872     kInstruction_movs_al_r0_r0_ASR_r0,
873   },
874   {
875     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ASR_r1),
876     kInstruction_movs_al_r0_r0_ASR_r1,
877   },
878   {
879     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ASR_r2),
880     kInstruction_movs_al_r0_r0_ASR_r2,
881   },
882   {
883     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ASR_r3),
884     kInstruction_movs_al_r0_r0_ASR_r3,
885   },
886   {
887     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ASR_r4),
888     kInstruction_movs_al_r0_r0_ASR_r4,
889   },
890   {
891     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ASR_r5),
892     kInstruction_movs_al_r0_r0_ASR_r5,
893   },
894   {
895     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ASR_r6),
896     kInstruction_movs_al_r0_r0_ASR_r6,
897   },
898   {
899     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ASR_r7),
900     kInstruction_movs_al_r0_r0_ASR_r7,
901   },
902   {
903     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ROR_r0),
904     kInstruction_movs_al_r0_r0_ROR_r0,
905   },
906   {
907     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ROR_r1),
908     kInstruction_movs_al_r0_r0_ROR_r1,
909   },
910   {
911     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ROR_r2),
912     kInstruction_movs_al_r0_r0_ROR_r2,
913   },
914   {
915     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ROR_r3),
916     kInstruction_movs_al_r0_r0_ROR_r3,
917   },
918   {
919     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ROR_r4),
920     kInstruction_movs_al_r0_r0_ROR_r4,
921   },
922   {
923     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ROR_r5),
924     kInstruction_movs_al_r0_r0_ROR_r5,
925   },
926   {
927     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ROR_r6),
928     kInstruction_movs_al_r0_r0_ROR_r6,
929   },
930   {
931     ARRAY_SIZE(kInstruction_movs_al_r0_r0_ROR_r7),
932     kInstruction_movs_al_r0_r0_ROR_r7,
933   },
934   {
935     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSL_r0),
936     kInstruction_movs_al_r1_r1_LSL_r0,
937   },
938   {
939     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSL_r1),
940     kInstruction_movs_al_r1_r1_LSL_r1,
941   },
942   {
943     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSL_r2),
944     kInstruction_movs_al_r1_r1_LSL_r2,
945   },
946   {
947     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSL_r3),
948     kInstruction_movs_al_r1_r1_LSL_r3,
949   },
950   {
951     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSL_r4),
952     kInstruction_movs_al_r1_r1_LSL_r4,
953   },
954   {
955     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSL_r5),
956     kInstruction_movs_al_r1_r1_LSL_r5,
957   },
958   {
959     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSL_r6),
960     kInstruction_movs_al_r1_r1_LSL_r6,
961   },
962   {
963     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSL_r7),
964     kInstruction_movs_al_r1_r1_LSL_r7,
965   },
966   {
967     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSR_r0),
968     kInstruction_movs_al_r1_r1_LSR_r0,
969   },
970   {
971     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSR_r1),
972     kInstruction_movs_al_r1_r1_LSR_r1,
973   },
974   {
975     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSR_r2),
976     kInstruction_movs_al_r1_r1_LSR_r2,
977   },
978   {
979     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSR_r3),
980     kInstruction_movs_al_r1_r1_LSR_r3,
981   },
982   {
983     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSR_r4),
984     kInstruction_movs_al_r1_r1_LSR_r4,
985   },
986   {
987     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSR_r5),
988     kInstruction_movs_al_r1_r1_LSR_r5,
989   },
990   {
991     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSR_r6),
992     kInstruction_movs_al_r1_r1_LSR_r6,
993   },
994   {
995     ARRAY_SIZE(kInstruction_movs_al_r1_r1_LSR_r7),
996     kInstruction_movs_al_r1_r1_LSR_r7,
997   },
998   {
999     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ASR_r0),
1000     kInstruction_movs_al_r1_r1_ASR_r0,
1001   },
1002   {
1003     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ASR_r1),
1004     kInstruction_movs_al_r1_r1_ASR_r1,
1005   },
1006   {
1007     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ASR_r2),
1008     kInstruction_movs_al_r1_r1_ASR_r2,
1009   },
1010   {
1011     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ASR_r3),
1012     kInstruction_movs_al_r1_r1_ASR_r3,
1013   },
1014   {
1015     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ASR_r4),
1016     kInstruction_movs_al_r1_r1_ASR_r4,
1017   },
1018   {
1019     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ASR_r5),
1020     kInstruction_movs_al_r1_r1_ASR_r5,
1021   },
1022   {
1023     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ASR_r6),
1024     kInstruction_movs_al_r1_r1_ASR_r6,
1025   },
1026   {
1027     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ASR_r7),
1028     kInstruction_movs_al_r1_r1_ASR_r7,
1029   },
1030   {
1031     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ROR_r0),
1032     kInstruction_movs_al_r1_r1_ROR_r0,
1033   },
1034   {
1035     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ROR_r1),
1036     kInstruction_movs_al_r1_r1_ROR_r1,
1037   },
1038   {
1039     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ROR_r2),
1040     kInstruction_movs_al_r1_r1_ROR_r2,
1041   },
1042   {
1043     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ROR_r3),
1044     kInstruction_movs_al_r1_r1_ROR_r3,
1045   },
1046   {
1047     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ROR_r4),
1048     kInstruction_movs_al_r1_r1_ROR_r4,
1049   },
1050   {
1051     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ROR_r5),
1052     kInstruction_movs_al_r1_r1_ROR_r5,
1053   },
1054   {
1055     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ROR_r6),
1056     kInstruction_movs_al_r1_r1_ROR_r6,
1057   },
1058   {
1059     ARRAY_SIZE(kInstruction_movs_al_r1_r1_ROR_r7),
1060     kInstruction_movs_al_r1_r1_ROR_r7,
1061   },
1062   {
1063     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSL_r0),
1064     kInstruction_movs_al_r2_r2_LSL_r0,
1065   },
1066   {
1067     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSL_r1),
1068     kInstruction_movs_al_r2_r2_LSL_r1,
1069   },
1070   {
1071     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSL_r2),
1072     kInstruction_movs_al_r2_r2_LSL_r2,
1073   },
1074   {
1075     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSL_r3),
1076     kInstruction_movs_al_r2_r2_LSL_r3,
1077   },
1078   {
1079     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSL_r4),
1080     kInstruction_movs_al_r2_r2_LSL_r4,
1081   },
1082   {
1083     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSL_r5),
1084     kInstruction_movs_al_r2_r2_LSL_r5,
1085   },
1086   {
1087     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSL_r6),
1088     kInstruction_movs_al_r2_r2_LSL_r6,
1089   },
1090   {
1091     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSL_r7),
1092     kInstruction_movs_al_r2_r2_LSL_r7,
1093   },
1094   {
1095     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSR_r0),
1096     kInstruction_movs_al_r2_r2_LSR_r0,
1097   },
1098   {
1099     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSR_r1),
1100     kInstruction_movs_al_r2_r2_LSR_r1,
1101   },
1102   {
1103     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSR_r2),
1104     kInstruction_movs_al_r2_r2_LSR_r2,
1105   },
1106   {
1107     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSR_r3),
1108     kInstruction_movs_al_r2_r2_LSR_r3,
1109   },
1110   {
1111     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSR_r4),
1112     kInstruction_movs_al_r2_r2_LSR_r4,
1113   },
1114   {
1115     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSR_r5),
1116     kInstruction_movs_al_r2_r2_LSR_r5,
1117   },
1118   {
1119     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSR_r6),
1120     kInstruction_movs_al_r2_r2_LSR_r6,
1121   },
1122   {
1123     ARRAY_SIZE(kInstruction_movs_al_r2_r2_LSR_r7),
1124     kInstruction_movs_al_r2_r2_LSR_r7,
1125   },
1126   {
1127     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ASR_r0),
1128     kInstruction_movs_al_r2_r2_ASR_r0,
1129   },
1130   {
1131     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ASR_r1),
1132     kInstruction_movs_al_r2_r2_ASR_r1,
1133   },
1134   {
1135     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ASR_r2),
1136     kInstruction_movs_al_r2_r2_ASR_r2,
1137   },
1138   {
1139     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ASR_r3),
1140     kInstruction_movs_al_r2_r2_ASR_r3,
1141   },
1142   {
1143     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ASR_r4),
1144     kInstruction_movs_al_r2_r2_ASR_r4,
1145   },
1146   {
1147     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ASR_r5),
1148     kInstruction_movs_al_r2_r2_ASR_r5,
1149   },
1150   {
1151     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ASR_r6),
1152     kInstruction_movs_al_r2_r2_ASR_r6,
1153   },
1154   {
1155     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ASR_r7),
1156     kInstruction_movs_al_r2_r2_ASR_r7,
1157   },
1158   {
1159     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ROR_r0),
1160     kInstruction_movs_al_r2_r2_ROR_r0,
1161   },
1162   {
1163     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ROR_r1),
1164     kInstruction_movs_al_r2_r2_ROR_r1,
1165   },
1166   {
1167     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ROR_r2),
1168     kInstruction_movs_al_r2_r2_ROR_r2,
1169   },
1170   {
1171     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ROR_r3),
1172     kInstruction_movs_al_r2_r2_ROR_r3,
1173   },
1174   {
1175     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ROR_r4),
1176     kInstruction_movs_al_r2_r2_ROR_r4,
1177   },
1178   {
1179     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ROR_r5),
1180     kInstruction_movs_al_r2_r2_ROR_r5,
1181   },
1182   {
1183     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ROR_r6),
1184     kInstruction_movs_al_r2_r2_ROR_r6,
1185   },
1186   {
1187     ARRAY_SIZE(kInstruction_movs_al_r2_r2_ROR_r7),
1188     kInstruction_movs_al_r2_r2_ROR_r7,
1189   },
1190   {
1191     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSL_r0),
1192     kInstruction_movs_al_r3_r3_LSL_r0,
1193   },
1194   {
1195     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSL_r1),
1196     kInstruction_movs_al_r3_r3_LSL_r1,
1197   },
1198   {
1199     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSL_r2),
1200     kInstruction_movs_al_r3_r3_LSL_r2,
1201   },
1202   {
1203     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSL_r3),
1204     kInstruction_movs_al_r3_r3_LSL_r3,
1205   },
1206   {
1207     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSL_r4),
1208     kInstruction_movs_al_r3_r3_LSL_r4,
1209   },
1210   {
1211     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSL_r5),
1212     kInstruction_movs_al_r3_r3_LSL_r5,
1213   },
1214   {
1215     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSL_r6),
1216     kInstruction_movs_al_r3_r3_LSL_r6,
1217   },
1218   {
1219     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSL_r7),
1220     kInstruction_movs_al_r3_r3_LSL_r7,
1221   },
1222   {
1223     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSR_r0),
1224     kInstruction_movs_al_r3_r3_LSR_r0,
1225   },
1226   {
1227     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSR_r1),
1228     kInstruction_movs_al_r3_r3_LSR_r1,
1229   },
1230   {
1231     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSR_r2),
1232     kInstruction_movs_al_r3_r3_LSR_r2,
1233   },
1234   {
1235     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSR_r3),
1236     kInstruction_movs_al_r3_r3_LSR_r3,
1237   },
1238   {
1239     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSR_r4),
1240     kInstruction_movs_al_r3_r3_LSR_r4,
1241   },
1242   {
1243     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSR_r5),
1244     kInstruction_movs_al_r3_r3_LSR_r5,
1245   },
1246   {
1247     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSR_r6),
1248     kInstruction_movs_al_r3_r3_LSR_r6,
1249   },
1250   {
1251     ARRAY_SIZE(kInstruction_movs_al_r3_r3_LSR_r7),
1252     kInstruction_movs_al_r3_r3_LSR_r7,
1253   },
1254   {
1255     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ASR_r0),
1256     kInstruction_movs_al_r3_r3_ASR_r0,
1257   },
1258   {
1259     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ASR_r1),
1260     kInstruction_movs_al_r3_r3_ASR_r1,
1261   },
1262   {
1263     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ASR_r2),
1264     kInstruction_movs_al_r3_r3_ASR_r2,
1265   },
1266   {
1267     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ASR_r3),
1268     kInstruction_movs_al_r3_r3_ASR_r3,
1269   },
1270   {
1271     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ASR_r4),
1272     kInstruction_movs_al_r3_r3_ASR_r4,
1273   },
1274   {
1275     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ASR_r5),
1276     kInstruction_movs_al_r3_r3_ASR_r5,
1277   },
1278   {
1279     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ASR_r6),
1280     kInstruction_movs_al_r3_r3_ASR_r6,
1281   },
1282   {
1283     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ASR_r7),
1284     kInstruction_movs_al_r3_r3_ASR_r7,
1285   },
1286   {
1287     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ROR_r0),
1288     kInstruction_movs_al_r3_r3_ROR_r0,
1289   },
1290   {
1291     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ROR_r1),
1292     kInstruction_movs_al_r3_r3_ROR_r1,
1293   },
1294   {
1295     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ROR_r2),
1296     kInstruction_movs_al_r3_r3_ROR_r2,
1297   },
1298   {
1299     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ROR_r3),
1300     kInstruction_movs_al_r3_r3_ROR_r3,
1301   },
1302   {
1303     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ROR_r4),
1304     kInstruction_movs_al_r3_r3_ROR_r4,
1305   },
1306   {
1307     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ROR_r5),
1308     kInstruction_movs_al_r3_r3_ROR_r5,
1309   },
1310   {
1311     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ROR_r6),
1312     kInstruction_movs_al_r3_r3_ROR_r6,
1313   },
1314   {
1315     ARRAY_SIZE(kInstruction_movs_al_r3_r3_ROR_r7),
1316     kInstruction_movs_al_r3_r3_ROR_r7,
1317   },
1318   {
1319     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSL_r0),
1320     kInstruction_movs_al_r4_r4_LSL_r0,
1321   },
1322   {
1323     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSL_r1),
1324     kInstruction_movs_al_r4_r4_LSL_r1,
1325   },
1326   {
1327     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSL_r2),
1328     kInstruction_movs_al_r4_r4_LSL_r2,
1329   },
1330   {
1331     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSL_r3),
1332     kInstruction_movs_al_r4_r4_LSL_r3,
1333   },
1334   {
1335     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSL_r4),
1336     kInstruction_movs_al_r4_r4_LSL_r4,
1337   },
1338   {
1339     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSL_r5),
1340     kInstruction_movs_al_r4_r4_LSL_r5,
1341   },
1342   {
1343     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSL_r6),
1344     kInstruction_movs_al_r4_r4_LSL_r6,
1345   },
1346   {
1347     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSL_r7),
1348     kInstruction_movs_al_r4_r4_LSL_r7,
1349   },
1350   {
1351     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSR_r0),
1352     kInstruction_movs_al_r4_r4_LSR_r0,
1353   },
1354   {
1355     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSR_r1),
1356     kInstruction_movs_al_r4_r4_LSR_r1,
1357   },
1358   {
1359     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSR_r2),
1360     kInstruction_movs_al_r4_r4_LSR_r2,
1361   },
1362   {
1363     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSR_r3),
1364     kInstruction_movs_al_r4_r4_LSR_r3,
1365   },
1366   {
1367     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSR_r4),
1368     kInstruction_movs_al_r4_r4_LSR_r4,
1369   },
1370   {
1371     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSR_r5),
1372     kInstruction_movs_al_r4_r4_LSR_r5,
1373   },
1374   {
1375     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSR_r6),
1376     kInstruction_movs_al_r4_r4_LSR_r6,
1377   },
1378   {
1379     ARRAY_SIZE(kInstruction_movs_al_r4_r4_LSR_r7),
1380     kInstruction_movs_al_r4_r4_LSR_r7,
1381   },
1382   {
1383     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ASR_r0),
1384     kInstruction_movs_al_r4_r4_ASR_r0,
1385   },
1386   {
1387     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ASR_r1),
1388     kInstruction_movs_al_r4_r4_ASR_r1,
1389   },
1390   {
1391     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ASR_r2),
1392     kInstruction_movs_al_r4_r4_ASR_r2,
1393   },
1394   {
1395     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ASR_r3),
1396     kInstruction_movs_al_r4_r4_ASR_r3,
1397   },
1398   {
1399     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ASR_r4),
1400     kInstruction_movs_al_r4_r4_ASR_r4,
1401   },
1402   {
1403     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ASR_r5),
1404     kInstruction_movs_al_r4_r4_ASR_r5,
1405   },
1406   {
1407     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ASR_r6),
1408     kInstruction_movs_al_r4_r4_ASR_r6,
1409   },
1410   {
1411     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ASR_r7),
1412     kInstruction_movs_al_r4_r4_ASR_r7,
1413   },
1414   {
1415     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ROR_r0),
1416     kInstruction_movs_al_r4_r4_ROR_r0,
1417   },
1418   {
1419     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ROR_r1),
1420     kInstruction_movs_al_r4_r4_ROR_r1,
1421   },
1422   {
1423     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ROR_r2),
1424     kInstruction_movs_al_r4_r4_ROR_r2,
1425   },
1426   {
1427     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ROR_r3),
1428     kInstruction_movs_al_r4_r4_ROR_r3,
1429   },
1430   {
1431     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ROR_r4),
1432     kInstruction_movs_al_r4_r4_ROR_r4,
1433   },
1434   {
1435     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ROR_r5),
1436     kInstruction_movs_al_r4_r4_ROR_r5,
1437   },
1438   {
1439     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ROR_r6),
1440     kInstruction_movs_al_r4_r4_ROR_r6,
1441   },
1442   {
1443     ARRAY_SIZE(kInstruction_movs_al_r4_r4_ROR_r7),
1444     kInstruction_movs_al_r4_r4_ROR_r7,
1445   },
1446   {
1447     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSL_r0),
1448     kInstruction_movs_al_r5_r5_LSL_r0,
1449   },
1450   {
1451     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSL_r1),
1452     kInstruction_movs_al_r5_r5_LSL_r1,
1453   },
1454   {
1455     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSL_r2),
1456     kInstruction_movs_al_r5_r5_LSL_r2,
1457   },
1458   {
1459     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSL_r3),
1460     kInstruction_movs_al_r5_r5_LSL_r3,
1461   },
1462   {
1463     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSL_r4),
1464     kInstruction_movs_al_r5_r5_LSL_r4,
1465   },
1466   {
1467     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSL_r5),
1468     kInstruction_movs_al_r5_r5_LSL_r5,
1469   },
1470   {
1471     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSL_r6),
1472     kInstruction_movs_al_r5_r5_LSL_r6,
1473   },
1474   {
1475     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSL_r7),
1476     kInstruction_movs_al_r5_r5_LSL_r7,
1477   },
1478   {
1479     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSR_r0),
1480     kInstruction_movs_al_r5_r5_LSR_r0,
1481   },
1482   {
1483     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSR_r1),
1484     kInstruction_movs_al_r5_r5_LSR_r1,
1485   },
1486   {
1487     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSR_r2),
1488     kInstruction_movs_al_r5_r5_LSR_r2,
1489   },
1490   {
1491     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSR_r3),
1492     kInstruction_movs_al_r5_r5_LSR_r3,
1493   },
1494   {
1495     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSR_r4),
1496     kInstruction_movs_al_r5_r5_LSR_r4,
1497   },
1498   {
1499     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSR_r5),
1500     kInstruction_movs_al_r5_r5_LSR_r5,
1501   },
1502   {
1503     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSR_r6),
1504     kInstruction_movs_al_r5_r5_LSR_r6,
1505   },
1506   {
1507     ARRAY_SIZE(kInstruction_movs_al_r5_r5_LSR_r7),
1508     kInstruction_movs_al_r5_r5_LSR_r7,
1509   },
1510   {
1511     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ASR_r0),
1512     kInstruction_movs_al_r5_r5_ASR_r0,
1513   },
1514   {
1515     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ASR_r1),
1516     kInstruction_movs_al_r5_r5_ASR_r1,
1517   },
1518   {
1519     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ASR_r2),
1520     kInstruction_movs_al_r5_r5_ASR_r2,
1521   },
1522   {
1523     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ASR_r3),
1524     kInstruction_movs_al_r5_r5_ASR_r3,
1525   },
1526   {
1527     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ASR_r4),
1528     kInstruction_movs_al_r5_r5_ASR_r4,
1529   },
1530   {
1531     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ASR_r5),
1532     kInstruction_movs_al_r5_r5_ASR_r5,
1533   },
1534   {
1535     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ASR_r6),
1536     kInstruction_movs_al_r5_r5_ASR_r6,
1537   },
1538   {
1539     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ASR_r7),
1540     kInstruction_movs_al_r5_r5_ASR_r7,
1541   },
1542   {
1543     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ROR_r0),
1544     kInstruction_movs_al_r5_r5_ROR_r0,
1545   },
1546   {
1547     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ROR_r1),
1548     kInstruction_movs_al_r5_r5_ROR_r1,
1549   },
1550   {
1551     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ROR_r2),
1552     kInstruction_movs_al_r5_r5_ROR_r2,
1553   },
1554   {
1555     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ROR_r3),
1556     kInstruction_movs_al_r5_r5_ROR_r3,
1557   },
1558   {
1559     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ROR_r4),
1560     kInstruction_movs_al_r5_r5_ROR_r4,
1561   },
1562   {
1563     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ROR_r5),
1564     kInstruction_movs_al_r5_r5_ROR_r5,
1565   },
1566   {
1567     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ROR_r6),
1568     kInstruction_movs_al_r5_r5_ROR_r6,
1569   },
1570   {
1571     ARRAY_SIZE(kInstruction_movs_al_r5_r5_ROR_r7),
1572     kInstruction_movs_al_r5_r5_ROR_r7,
1573   },
1574   {
1575     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSL_r0),
1576     kInstruction_movs_al_r6_r6_LSL_r0,
1577   },
1578   {
1579     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSL_r1),
1580     kInstruction_movs_al_r6_r6_LSL_r1,
1581   },
1582   {
1583     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSL_r2),
1584     kInstruction_movs_al_r6_r6_LSL_r2,
1585   },
1586   {
1587     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSL_r3),
1588     kInstruction_movs_al_r6_r6_LSL_r3,
1589   },
1590   {
1591     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSL_r4),
1592     kInstruction_movs_al_r6_r6_LSL_r4,
1593   },
1594   {
1595     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSL_r5),
1596     kInstruction_movs_al_r6_r6_LSL_r5,
1597   },
1598   {
1599     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSL_r6),
1600     kInstruction_movs_al_r6_r6_LSL_r6,
1601   },
1602   {
1603     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSL_r7),
1604     kInstruction_movs_al_r6_r6_LSL_r7,
1605   },
1606   {
1607     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSR_r0),
1608     kInstruction_movs_al_r6_r6_LSR_r0,
1609   },
1610   {
1611     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSR_r1),
1612     kInstruction_movs_al_r6_r6_LSR_r1,
1613   },
1614   {
1615     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSR_r2),
1616     kInstruction_movs_al_r6_r6_LSR_r2,
1617   },
1618   {
1619     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSR_r3),
1620     kInstruction_movs_al_r6_r6_LSR_r3,
1621   },
1622   {
1623     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSR_r4),
1624     kInstruction_movs_al_r6_r6_LSR_r4,
1625   },
1626   {
1627     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSR_r5),
1628     kInstruction_movs_al_r6_r6_LSR_r5,
1629   },
1630   {
1631     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSR_r6),
1632     kInstruction_movs_al_r6_r6_LSR_r6,
1633   },
1634   {
1635     ARRAY_SIZE(kInstruction_movs_al_r6_r6_LSR_r7),
1636     kInstruction_movs_al_r6_r6_LSR_r7,
1637   },
1638   {
1639     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ASR_r0),
1640     kInstruction_movs_al_r6_r6_ASR_r0,
1641   },
1642   {
1643     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ASR_r1),
1644     kInstruction_movs_al_r6_r6_ASR_r1,
1645   },
1646   {
1647     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ASR_r2),
1648     kInstruction_movs_al_r6_r6_ASR_r2,
1649   },
1650   {
1651     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ASR_r3),
1652     kInstruction_movs_al_r6_r6_ASR_r3,
1653   },
1654   {
1655     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ASR_r4),
1656     kInstruction_movs_al_r6_r6_ASR_r4,
1657   },
1658   {
1659     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ASR_r5),
1660     kInstruction_movs_al_r6_r6_ASR_r5,
1661   },
1662   {
1663     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ASR_r6),
1664     kInstruction_movs_al_r6_r6_ASR_r6,
1665   },
1666   {
1667     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ASR_r7),
1668     kInstruction_movs_al_r6_r6_ASR_r7,
1669   },
1670   {
1671     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ROR_r0),
1672     kInstruction_movs_al_r6_r6_ROR_r0,
1673   },
1674   {
1675     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ROR_r1),
1676     kInstruction_movs_al_r6_r6_ROR_r1,
1677   },
1678   {
1679     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ROR_r2),
1680     kInstruction_movs_al_r6_r6_ROR_r2,
1681   },
1682   {
1683     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ROR_r3),
1684     kInstruction_movs_al_r6_r6_ROR_r3,
1685   },
1686   {
1687     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ROR_r4),
1688     kInstruction_movs_al_r6_r6_ROR_r4,
1689   },
1690   {
1691     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ROR_r5),
1692     kInstruction_movs_al_r6_r6_ROR_r5,
1693   },
1694   {
1695     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ROR_r6),
1696     kInstruction_movs_al_r6_r6_ROR_r6,
1697   },
1698   {
1699     ARRAY_SIZE(kInstruction_movs_al_r6_r6_ROR_r7),
1700     kInstruction_movs_al_r6_r6_ROR_r7,
1701   },
1702   {
1703     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSL_r0),
1704     kInstruction_movs_al_r7_r7_LSL_r0,
1705   },
1706   {
1707     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSL_r1),
1708     kInstruction_movs_al_r7_r7_LSL_r1,
1709   },
1710   {
1711     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSL_r2),
1712     kInstruction_movs_al_r7_r7_LSL_r2,
1713   },
1714   {
1715     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSL_r3),
1716     kInstruction_movs_al_r7_r7_LSL_r3,
1717   },
1718   {
1719     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSL_r4),
1720     kInstruction_movs_al_r7_r7_LSL_r4,
1721   },
1722   {
1723     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSL_r5),
1724     kInstruction_movs_al_r7_r7_LSL_r5,
1725   },
1726   {
1727     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSL_r6),
1728     kInstruction_movs_al_r7_r7_LSL_r6,
1729   },
1730   {
1731     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSL_r7),
1732     kInstruction_movs_al_r7_r7_LSL_r7,
1733   },
1734   {
1735     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSR_r0),
1736     kInstruction_movs_al_r7_r7_LSR_r0,
1737   },
1738   {
1739     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSR_r1),
1740     kInstruction_movs_al_r7_r7_LSR_r1,
1741   },
1742   {
1743     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSR_r2),
1744     kInstruction_movs_al_r7_r7_LSR_r2,
1745   },
1746   {
1747     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSR_r3),
1748     kInstruction_movs_al_r7_r7_LSR_r3,
1749   },
1750   {
1751     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSR_r4),
1752     kInstruction_movs_al_r7_r7_LSR_r4,
1753   },
1754   {
1755     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSR_r5),
1756     kInstruction_movs_al_r7_r7_LSR_r5,
1757   },
1758   {
1759     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSR_r6),
1760     kInstruction_movs_al_r7_r7_LSR_r6,
1761   },
1762   {
1763     ARRAY_SIZE(kInstruction_movs_al_r7_r7_LSR_r7),
1764     kInstruction_movs_al_r7_r7_LSR_r7,
1765   },
1766   {
1767     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ASR_r0),
1768     kInstruction_movs_al_r7_r7_ASR_r0,
1769   },
1770   {
1771     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ASR_r1),
1772     kInstruction_movs_al_r7_r7_ASR_r1,
1773   },
1774   {
1775     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ASR_r2),
1776     kInstruction_movs_al_r7_r7_ASR_r2,
1777   },
1778   {
1779     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ASR_r3),
1780     kInstruction_movs_al_r7_r7_ASR_r3,
1781   },
1782   {
1783     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ASR_r4),
1784     kInstruction_movs_al_r7_r7_ASR_r4,
1785   },
1786   {
1787     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ASR_r5),
1788     kInstruction_movs_al_r7_r7_ASR_r5,
1789   },
1790   {
1791     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ASR_r6),
1792     kInstruction_movs_al_r7_r7_ASR_r6,
1793   },
1794   {
1795     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ASR_r7),
1796     kInstruction_movs_al_r7_r7_ASR_r7,
1797   },
1798   {
1799     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ROR_r0),
1800     kInstruction_movs_al_r7_r7_ROR_r0,
1801   },
1802   {
1803     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ROR_r1),
1804     kInstruction_movs_al_r7_r7_ROR_r1,
1805   },
1806   {
1807     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ROR_r2),
1808     kInstruction_movs_al_r7_r7_ROR_r2,
1809   },
1810   {
1811     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ROR_r3),
1812     kInstruction_movs_al_r7_r7_ROR_r3,
1813   },
1814   {
1815     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ROR_r4),
1816     kInstruction_movs_al_r7_r7_ROR_r4,
1817   },
1818   {
1819     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ROR_r5),
1820     kInstruction_movs_al_r7_r7_ROR_r5,
1821   },
1822   {
1823     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ROR_r6),
1824     kInstruction_movs_al_r7_r7_ROR_r6,
1825   },
1826   {
1827     ARRAY_SIZE(kInstruction_movs_al_r7_r7_ROR_r7),
1828     kInstruction_movs_al_r7_r7_ROR_r7,
1829   },
1830 };
1831 
1832 #endif  // VIXL_ASSEMBLER_COND_RD_OPERAND_RN_SHIFT_RS_NARROW_OUT_IT_BLOCK_MOVS_T32_H_
1833