• 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_RN_OPERAND_RM_SHIFT_RS_A32_ADD_H_
35 #define VIXL_ASSEMBLER_COND_RD_RN_OPERAND_RM_SHIFT_RS_A32_ADD_H_
36 
37 const byte kInstruction_add_al_r6_r8_r10_LSL_r12[] = {
38   0x1a, 0x6c, 0x88, 0xe0 // add al r6 r8 r10 LSL r12
39 };
40 const byte kInstruction_add_hi_r5_r13_r6_LSL_r4[] = {
41   0x16, 0x54, 0x8d, 0x80 // add hi r5 r13 r6 LSL r4
42 };
43 const byte kInstruction_add_vs_r11_r0_r14_ROR_r1[] = {
44   0x7e, 0xb1, 0x80, 0x60 // add vs r11 r0 r14 ROR r1
45 };
46 const byte kInstruction_add_vc_r5_r0_r11_ROR_r4[] = {
47   0x7b, 0x54, 0x80, 0x70 // add vc r5 r0 r11 ROR r4
48 };
49 const byte kInstruction_add_eq_r9_r7_r6_LSL_r1[] = {
50   0x16, 0x91, 0x87, 0x00 // add eq r9 r7 r6 LSL r1
51 };
52 const byte kInstruction_add_cs_r12_r9_r12_LSR_r0[] = {
53   0x3c, 0xc0, 0x89, 0x20 // add cs r12 r9 r12 LSR r0
54 };
55 const byte kInstruction_add_mi_r12_r3_r13_ASR_r3[] = {
56   0x5d, 0xc3, 0x83, 0x40 // add mi r12 r3 r13 ASR r3
57 };
58 const byte kInstruction_add_vs_r13_r4_r0_LSR_r1[] = {
59   0x30, 0xd1, 0x84, 0x60 // add vs r13 r4 r0 LSR r1
60 };
61 const byte kInstruction_add_cc_r3_r7_r3_LSL_r13[] = {
62   0x13, 0x3d, 0x87, 0x30 // add cc r3 r7 r3 LSL r13
63 };
64 const byte kInstruction_add_le_r10_r1_r1_LSL_r6[] = {
65   0x11, 0xa6, 0x81, 0xd0 // add le r10 r1 r1 LSL r6
66 };
67 const byte kInstruction_add_vc_r0_r5_r14_ASR_r12[] = {
68   0x5e, 0x0c, 0x85, 0x70 // add vc r0 r5 r14 ASR r12
69 };
70 const byte kInstruction_add_cc_r0_r8_r0_LSL_r3[] = {
71   0x10, 0x03, 0x88, 0x30 // add cc r0 r8 r0 LSL r3
72 };
73 const byte kInstruction_add_le_r14_r6_r7_ASR_r1[] = {
74   0x57, 0xe1, 0x86, 0xd0 // add le r14 r6 r7 ASR r1
75 };
76 const byte kInstruction_add_le_r5_r2_r13_LSL_r3[] = {
77   0x1d, 0x53, 0x82, 0xd0 // add le r5 r2 r13 LSL r3
78 };
79 const byte kInstruction_add_hi_r6_r3_r0_ROR_r4[] = {
80   0x70, 0x64, 0x83, 0x80 // add hi r6 r3 r0 ROR r4
81 };
82 const byte kInstruction_add_vs_r9_r5_r4_LSR_r0[] = {
83   0x34, 0x90, 0x85, 0x60 // add vs r9 r5 r4 LSR r0
84 };
85 const byte kInstruction_add_eq_r3_r8_r2_LSR_r7[] = {
86   0x32, 0x37, 0x88, 0x00 // add eq r3 r8 r2 LSR r7
87 };
88 const byte kInstruction_add_mi_r11_r14_r7_LSR_r5[] = {
89   0x37, 0xb5, 0x8e, 0x40 // add mi r11 r14 r7 LSR r5
90 };
91 const byte kInstruction_add_ge_r1_r1_r9_LSR_r3[] = {
92   0x39, 0x13, 0x81, 0xa0 // add ge r1 r1 r9 LSR r3
93 };
94 const byte kInstruction_add_lt_r10_r10_r5_LSL_r8[] = {
95   0x15, 0xa8, 0x8a, 0xb0 // add lt r10 r10 r5 LSL r8
96 };
97 const byte kInstruction_add_ne_r4_r10_r9_ROR_r5[] = {
98   0x79, 0x45, 0x8a, 0x10 // add ne r4 r10 r9 ROR r5
99 };
100 const byte kInstruction_add_lt_r10_r4_r3_LSL_r0[] = {
101   0x13, 0xa0, 0x84, 0xb0 // add lt r10 r4 r3 LSL r0
102 };
103 const byte kInstruction_add_pl_r1_r0_r1_ROR_r1[] = {
104   0x71, 0x11, 0x80, 0x50 // add pl r1 r0 r1 ROR r1
105 };
106 const byte kInstruction_add_vs_r14_r14_r11_LSR_r6[] = {
107   0x3b, 0xe6, 0x8e, 0x60 // add vs r14 r14 r11 LSR r6
108 };
109 const byte kInstruction_add_lt_r4_r6_r12_LSL_r8[] = {
110   0x1c, 0x48, 0x86, 0xb0 // add lt r4 r6 r12 LSL r8
111 };
112 const byte kInstruction_add_cs_r12_r3_r3_ASR_r2[] = {
113   0x53, 0xc2, 0x83, 0x20 // add cs r12 r3 r3 ASR r2
114 };
115 const byte kInstruction_add_ge_r7_r5_r1_LSL_r2[] = {
116   0x11, 0x72, 0x85, 0xa0 // add ge r7 r5 r1 LSL r2
117 };
118 const byte kInstruction_add_vs_r9_r10_r2_ASR_r9[] = {
119   0x52, 0x99, 0x8a, 0x60 // add vs r9 r10 r2 ASR r9
120 };
121 const byte kInstruction_add_gt_r5_r10_r4_LSL_r1[] = {
122   0x14, 0x51, 0x8a, 0xc0 // add gt r5 r10 r4 LSL r1
123 };
124 const byte kInstruction_add_hi_r13_r7_r6_ASR_r4[] = {
125   0x56, 0xd4, 0x87, 0x80 // add hi r13 r7 r6 ASR r4
126 };
127 const byte kInstruction_add_hi_r8_r1_r6_LSR_r7[] = {
128   0x36, 0x87, 0x81, 0x80 // add hi r8 r1 r6 LSR r7
129 };
130 const byte kInstruction_add_lt_r5_r8_r12_ROR_r0[] = {
131   0x7c, 0x50, 0x88, 0xb0 // add lt r5 r8 r12 ROR r0
132 };
133 const byte kInstruction_add_hi_r4_r2_r14_LSR_r9[] = {
134   0x3e, 0x49, 0x82, 0x80 // add hi r4 r2 r14 LSR r9
135 };
136 const byte kInstruction_add_ge_r7_r9_r1_ASR_r1[] = {
137   0x51, 0x71, 0x89, 0xa0 // add ge r7 r9 r1 ASR r1
138 };
139 const byte kInstruction_add_vc_r13_r6_r7_LSL_r5[] = {
140   0x17, 0xd5, 0x86, 0x70 // add vc r13 r6 r7 LSL r5
141 };
142 const byte kInstruction_add_hi_r13_r14_r5_LSR_r10[] = {
143   0x35, 0xda, 0x8e, 0x80 // add hi r13 r14 r5 LSR r10
144 };
145 const byte kInstruction_add_cc_r8_r1_r5_ROR_r8[] = {
146   0x75, 0x88, 0x81, 0x30 // add cc r8 r1 r5 ROR r8
147 };
148 const byte kInstruction_add_mi_r6_r12_r4_ASR_r9[] = {
149   0x54, 0x69, 0x8c, 0x40 // add mi r6 r12 r4 ASR r9
150 };
151 const byte kInstruction_add_cs_r12_r0_r12_LSL_r9[] = {
152   0x1c, 0xc9, 0x80, 0x20 // add cs r12 r0 r12 LSL r9
153 };
154 const byte kInstruction_add_ls_r3_r14_r1_LSL_r14[] = {
155   0x11, 0x3e, 0x8e, 0x90 // add ls r3 r14 r1 LSL r14
156 };
157 const byte kInstruction_add_vs_r1_r10_r1_LSR_r7[] = {
158   0x31, 0x17, 0x8a, 0x60 // add vs r1 r10 r1 LSR r7
159 };
160 const byte kInstruction_add_pl_r0_r9_r6_ASR_r4[] = {
161   0x56, 0x04, 0x89, 0x50 // add pl r0 r9 r6 ASR r4
162 };
163 const byte kInstruction_add_al_r13_r13_r3_LSR_r2[] = {
164   0x33, 0xd2, 0x8d, 0xe0 // add al r13 r13 r3 LSR r2
165 };
166 const byte kInstruction_add_le_r4_r3_r7_LSL_r5[] = {
167   0x17, 0x45, 0x83, 0xd0 // add le r4 r3 r7 LSL r5
168 };
169 const byte kInstruction_add_vc_r11_r9_r14_LSR_r12[] = {
170   0x3e, 0xbc, 0x89, 0x70 // add vc r11 r9 r14 LSR r12
171 };
172 const byte kInstruction_add_le_r1_r7_r10_ROR_r7[] = {
173   0x7a, 0x17, 0x87, 0xd0 // add le r1 r7 r10 ROR r7
174 };
175 const byte kInstruction_add_al_r10_r4_r5_ASR_r13[] = {
176   0x55, 0xad, 0x84, 0xe0 // add al r10 r4 r5 ASR r13
177 };
178 const byte kInstruction_add_cs_r9_r9_r7_LSL_r11[] = {
179   0x17, 0x9b, 0x89, 0x20 // add cs r9 r9 r7 LSL r11
180 };
181 const byte kInstruction_add_hi_r12_r4_r6_LSR_r9[] = {
182   0x36, 0xc9, 0x84, 0x80 // add hi r12 r4 r6 LSR r9
183 };
184 const byte kInstruction_add_ne_r7_r11_r1_ROR_r2[] = {
185   0x71, 0x72, 0x8b, 0x10 // add ne r7 r11 r1 ROR r2
186 };
187 const byte kInstruction_add_ne_r3_r13_r5_LSR_r6[] = {
188   0x35, 0x36, 0x8d, 0x10 // add ne r3 r13 r5 LSR r6
189 };
190 const byte kInstruction_add_cc_r13_r9_r7_ASR_r4[] = {
191   0x57, 0xd4, 0x89, 0x30 // add cc r13 r9 r7 ASR r4
192 };
193 const byte kInstruction_add_al_r6_r13_r7_LSL_r13[] = {
194   0x17, 0x6d, 0x8d, 0xe0 // add al r6 r13 r7 LSL r13
195 };
196 const byte kInstruction_add_ge_r1_r6_r6_ROR_r12[] = {
197   0x76, 0x1c, 0x86, 0xa0 // add ge r1 r6 r6 ROR r12
198 };
199 const byte kInstruction_add_al_r6_r10_r0_ASR_r8[] = {
200   0x50, 0x68, 0x8a, 0xe0 // add al r6 r10 r0 ASR r8
201 };
202 const byte kInstruction_add_le_r5_r13_r4_ASR_r8[] = {
203   0x54, 0x58, 0x8d, 0xd0 // add le r5 r13 r4 ASR r8
204 };
205 const byte kInstruction_add_gt_r5_r1_r4_LSR_r6[] = {
206   0x34, 0x56, 0x81, 0xc0 // add gt r5 r1 r4 LSR r6
207 };
208 const byte kInstruction_add_cs_r2_r10_r14_ROR_r13[] = {
209   0x7e, 0x2d, 0x8a, 0x20 // add cs r2 r10 r14 ROR r13
210 };
211 const byte kInstruction_add_le_r2_r7_r0_ROR_r7[] = {
212   0x70, 0x27, 0x87, 0xd0 // add le r2 r7 r0 ROR r7
213 };
214 const byte kInstruction_add_al_r12_r7_r13_ASR_r7[] = {
215   0x5d, 0xc7, 0x87, 0xe0 // add al r12 r7 r13 ASR r7
216 };
217 const byte kInstruction_add_le_r10_r3_r2_LSR_r13[] = {
218   0x32, 0xad, 0x83, 0xd0 // add le r10 r3 r2 LSR r13
219 };
220 const byte kInstruction_add_al_r2_r14_r11_ROR_r0[] = {
221   0x7b, 0x20, 0x8e, 0xe0 // add al r2 r14 r11 ROR r0
222 };
223 const byte kInstruction_add_eq_r11_r1_r6_ASR_r10[] = {
224   0x56, 0xba, 0x81, 0x00 // add eq r11 r1 r6 ASR r10
225 };
226 const byte kInstruction_add_vs_r11_r9_r5_LSL_r10[] = {
227   0x15, 0xba, 0x89, 0x60 // add vs r11 r9 r5 LSL r10
228 };
229 const byte kInstruction_add_ne_r14_r8_r4_LSL_r8[] = {
230   0x14, 0xe8, 0x88, 0x10 // add ne r14 r8 r4 LSL r8
231 };
232 const byte kInstruction_add_vs_r0_r7_r5_ASR_r1[] = {
233   0x55, 0x01, 0x87, 0x60 // add vs r0 r7 r5 ASR r1
234 };
235 const byte kInstruction_add_ne_r12_r6_r1_LSR_r12[] = {
236   0x31, 0xcc, 0x86, 0x10 // add ne r12 r6 r1 LSR r12
237 };
238 const byte kInstruction_add_vs_r8_r4_r12_ASR_r1[] = {
239   0x5c, 0x81, 0x84, 0x60 // add vs r8 r4 r12 ASR r1
240 };
241 const byte kInstruction_add_pl_r9_r14_r1_LSL_r13[] = {
242   0x11, 0x9d, 0x8e, 0x50 // add pl r9 r14 r1 LSL r13
243 };
244 const byte kInstruction_add_pl_r3_r0_r10_LSR_r0[] = {
245   0x3a, 0x30, 0x80, 0x50 // add pl r3 r0 r10 LSR r0
246 };
247 const byte kInstruction_add_pl_r13_r9_r5_LSL_r0[] = {
248   0x15, 0xd0, 0x89, 0x50 // add pl r13 r9 r5 LSL r0
249 };
250 const byte kInstruction_add_vs_r2_r3_r13_ROR_r11[] = {
251   0x7d, 0x2b, 0x83, 0x60 // add vs r2 r3 r13 ROR r11
252 };
253 const byte kInstruction_add_ls_r8_r2_r1_LSL_r5[] = {
254   0x11, 0x85, 0x82, 0x90 // add ls r8 r2 r1 LSL r5
255 };
256 const byte kInstruction_add_vs_r6_r7_r10_LSL_r1[] = {
257   0x1a, 0x61, 0x87, 0x60 // add vs r6 r7 r10 LSL r1
258 };
259 const byte kInstruction_add_ge_r10_r8_r7_LSL_r5[] = {
260   0x17, 0xa5, 0x88, 0xa0 // add ge r10 r8 r7 LSL r5
261 };
262 const byte kInstruction_add_ge_r6_r11_r13_ROR_r7[] = {
263   0x7d, 0x67, 0x8b, 0xa0 // add ge r6 r11 r13 ROR r7
264 };
265 const byte kInstruction_add_eq_r10_r4_r4_LSL_r14[] = {
266   0x14, 0xae, 0x84, 0x00 // add eq r10 r4 r4 LSL r14
267 };
268 const byte kInstruction_add_cc_r13_r6_r0_LSR_r9[] = {
269   0x30, 0xd9, 0x86, 0x30 // add cc r13 r6 r0 LSR r9
270 };
271 const byte kInstruction_add_gt_r8_r7_r0_ASR_r3[] = {
272   0x50, 0x83, 0x87, 0xc0 // add gt r8 r7 r0 ASR r3
273 };
274 const byte kInstruction_add_pl_r11_r7_r0_ROR_r14[] = {
275   0x70, 0xbe, 0x87, 0x50 // add pl r11 r7 r0 ROR r14
276 };
277 const byte kInstruction_add_vc_r3_r10_r0_LSR_r10[] = {
278   0x30, 0x3a, 0x8a, 0x70 // add vc r3 r10 r0 LSR r10
279 };
280 const byte kInstruction_add_vs_r6_r3_r9_LSR_r12[] = {
281   0x39, 0x6c, 0x83, 0x60 // add vs r6 r3 r9 LSR r12
282 };
283 const byte kInstruction_add_hi_r5_r3_r3_ROR_r1[] = {
284   0x73, 0x51, 0x83, 0x80 // add hi r5 r3 r3 ROR r1
285 };
286 const byte kInstruction_add_mi_r9_r10_r0_ROR_r4[] = {
287   0x70, 0x94, 0x8a, 0x40 // add mi r9 r10 r0 ROR r4
288 };
289 const byte kInstruction_add_cc_r5_r13_r6_LSL_r6[] = {
290   0x16, 0x56, 0x8d, 0x30 // add cc r5 r13 r6 LSL r6
291 };
292 const byte kInstruction_add_le_r1_r4_r0_LSL_r5[] = {
293   0x10, 0x15, 0x84, 0xd0 // add le r1 r4 r0 LSL r5
294 };
295 const byte kInstruction_add_mi_r11_r1_r5_LSL_r13[] = {
296   0x15, 0xbd, 0x81, 0x40 // add mi r11 r1 r5 LSL r13
297 };
298 const byte kInstruction_add_ne_r14_r1_r10_LSR_r4[] = {
299   0x3a, 0xe4, 0x81, 0x10 // add ne r14 r1 r10 LSR r4
300 };
301 const byte kInstruction_add_le_r11_r5_r6_ASR_r1[] = {
302   0x56, 0xb1, 0x85, 0xd0 // add le r11 r5 r6 ASR r1
303 };
304 const byte kInstruction_add_al_r0_r9_r5_ASR_r1[] = {
305   0x55, 0x01, 0x89, 0xe0 // add al r0 r9 r5 ASR r1
306 };
307 const byte kInstruction_add_ne_r6_r13_r4_LSL_r11[] = {
308   0x14, 0x6b, 0x8d, 0x10 // add ne r6 r13 r4 LSL r11
309 };
310 const byte kInstruction_add_pl_r10_r4_r14_ROR_r8[] = {
311   0x7e, 0xa8, 0x84, 0x50 // add pl r10 r4 r14 ROR r8
312 };
313 const byte kInstruction_add_cs_r1_r8_r5_ASR_r14[] = {
314   0x55, 0x1e, 0x88, 0x20 // add cs r1 r8 r5 ASR r14
315 };
316 const byte kInstruction_add_ls_r12_r1_r3_LSL_r7[] = {
317   0x13, 0xc7, 0x81, 0x90 // add ls r12 r1 r3 LSL r7
318 };
319 const byte kInstruction_add_pl_r11_r3_r8_ROR_r10[] = {
320   0x78, 0xba, 0x83, 0x50 // add pl r11 r3 r8 ROR r10
321 };
322 const byte kInstruction_add_ge_r7_r7_r5_ROR_r7[] = {
323   0x75, 0x77, 0x87, 0xa0 // add ge r7 r7 r5 ROR r7
324 };
325 const byte kInstruction_add_ls_r2_r11_r7_LSR_r11[] = {
326   0x37, 0x2b, 0x8b, 0x90 // add ls r2 r11 r7 LSR r11
327 };
328 const byte kInstruction_add_le_r9_r11_r9_ASR_r2[] = {
329   0x59, 0x92, 0x8b, 0xd0 // add le r9 r11 r9 ASR r2
330 };
331 const byte kInstruction_add_mi_r7_r7_r4_ASR_r1[] = {
332   0x54, 0x71, 0x87, 0x40 // add mi r7 r7 r4 ASR r1
333 };
334 const byte kInstruction_add_cc_r7_r1_r0_ROR_r7[] = {
335   0x70, 0x77, 0x81, 0x30 // add cc r7 r1 r0 ROR r7
336 };
337 const byte kInstruction_add_vs_r12_r12_r1_LSR_r10[] = {
338   0x31, 0xca, 0x8c, 0x60 // add vs r12 r12 r1 LSR r10
339 };
340 const byte kInstruction_add_hi_r3_r10_r12_LSR_r4[] = {
341   0x3c, 0x34, 0x8a, 0x80 // add hi r3 r10 r12 LSR r4
342 };
343 const byte kInstruction_add_cs_r0_r14_r3_ASR_r6[] = {
344   0x53, 0x06, 0x8e, 0x20 // add cs r0 r14 r3 ASR r6
345 };
346 const byte kInstruction_add_ls_r7_r11_r6_ROR_r1[] = {
347   0x76, 0x71, 0x8b, 0x90 // add ls r7 r11 r6 ROR r1
348 };
349 const byte kInstruction_add_cs_r9_r3_r14_LSR_r0[] = {
350   0x3e, 0x90, 0x83, 0x20 // add cs r9 r3 r14 LSR r0
351 };
352 const byte kInstruction_add_gt_r8_r3_r11_LSL_r12[] = {
353   0x1b, 0x8c, 0x83, 0xc0 // add gt r8 r3 r11 LSL r12
354 };
355 const byte kInstruction_add_cs_r12_r6_r5_LSR_r11[] = {
356   0x35, 0xcb, 0x86, 0x20 // add cs r12 r6 r5 LSR r11
357 };
358 const byte kInstruction_add_gt_r3_r10_r1_ROR_r14[] = {
359   0x71, 0x3e, 0x8a, 0xc0 // add gt r3 r10 r1 ROR r14
360 };
361 const byte kInstruction_add_le_r8_r4_r3_ASR_r1[] = {
362   0x53, 0x81, 0x84, 0xd0 // add le r8 r4 r3 ASR r1
363 };
364 const byte kInstruction_add_ne_r6_r8_r5_ROR_r11[] = {
365   0x75, 0x6b, 0x88, 0x10 // add ne r6 r8 r5 ROR r11
366 };
367 const byte kInstruction_add_al_r9_r1_r11_ROR_r3[] = {
368   0x7b, 0x93, 0x81, 0xe0 // add al r9 r1 r11 ROR r3
369 };
370 const byte kInstruction_add_ge_r13_r8_r11_ROR_r8[] = {
371   0x7b, 0xd8, 0x88, 0xa0 // add ge r13 r8 r11 ROR r8
372 };
373 const byte kInstruction_add_pl_r0_r1_r2_LSR_r9[] = {
374   0x32, 0x09, 0x81, 0x50 // add pl r0 r1 r2 LSR r9
375 };
376 const byte kInstruction_add_pl_r6_r7_r13_LSL_r11[] = {
377   0x1d, 0x6b, 0x87, 0x50 // add pl r6 r7 r13 LSL r11
378 };
379 const byte kInstruction_add_vs_r10_r9_r13_LSR_r13[] = {
380   0x3d, 0xad, 0x89, 0x60 // add vs r10 r9 r13 LSR r13
381 };
382 const byte kInstruction_add_le_r0_r7_r13_ROR_r9[] = {
383   0x7d, 0x09, 0x87, 0xd0 // add le r0 r7 r13 ROR r9
384 };
385 const byte kInstruction_add_gt_r1_r14_r12_LSR_r8[] = {
386   0x3c, 0x18, 0x8e, 0xc0 // add gt r1 r14 r12 LSR r8
387 };
388 const byte kInstruction_add_ls_r14_r12_r7_LSR_r14[] = {
389   0x37, 0xee, 0x8c, 0x90 // add ls r14 r12 r7 LSR r14
390 };
391 const byte kInstruction_add_cs_r9_r5_r3_ASR_r9[] = {
392   0x53, 0x99, 0x85, 0x20 // add cs r9 r5 r3 ASR r9
393 };
394 const byte kInstruction_add_gt_r7_r11_r11_ASR_r14[] = {
395   0x5b, 0x7e, 0x8b, 0xc0 // add gt r7 r11 r11 ASR r14
396 };
397 const byte kInstruction_add_pl_r10_r14_r12_LSL_r11[] = {
398   0x1c, 0xab, 0x8e, 0x50 // add pl r10 r14 r12 LSL r11
399 };
400 const byte kInstruction_add_mi_r5_r5_r10_LSL_r13[] = {
401   0x1a, 0x5d, 0x85, 0x40 // add mi r5 r5 r10 LSL r13
402 };
403 const byte kInstruction_add_hi_r2_r13_r12_ASR_r10[] = {
404   0x5c, 0x2a, 0x8d, 0x80 // add hi r2 r13 r12 ASR r10
405 };
406 const byte kInstruction_add_ge_r13_r9_r12_LSR_r11[] = {
407   0x3c, 0xdb, 0x89, 0xa0 // add ge r13 r9 r12 LSR r11
408 };
409 const byte kInstruction_add_ls_r9_r3_r7_ROR_r14[] = {
410   0x77, 0x9e, 0x83, 0x90 // add ls r9 r3 r7 ROR r14
411 };
412 const byte kInstruction_add_al_r2_r12_r9_ROR_r10[] = {
413   0x79, 0x2a, 0x8c, 0xe0 // add al r2 r12 r9 ROR r10
414 };
415 const byte kInstruction_add_al_r10_r6_r11_ASR_r14[] = {
416   0x5b, 0xae, 0x86, 0xe0 // add al r10 r6 r11 ASR r14
417 };
418 const byte kInstruction_add_pl_r8_r3_r9_ASR_r13[] = {
419   0x59, 0x8d, 0x83, 0x50 // add pl r8 r3 r9 ASR r13
420 };
421 const byte kInstruction_add_al_r0_r1_r10_ROR_r11[] = {
422   0x7a, 0x0b, 0x81, 0xe0 // add al r0 r1 r10 ROR r11
423 };
424 const byte kInstruction_add_gt_r10_r6_r10_ASR_r7[] = {
425   0x5a, 0xa7, 0x86, 0xc0 // add gt r10 r6 r10 ASR r7
426 };
427 const byte kInstruction_add_pl_r7_r10_r14_LSR_r4[] = {
428   0x3e, 0x74, 0x8a, 0x50 // add pl r7 r10 r14 LSR r4
429 };
430 const byte kInstruction_add_cs_r13_r5_r9_LSL_r5[] = {
431   0x19, 0xd5, 0x85, 0x20 // add cs r13 r5 r9 LSL r5
432 };
433 const byte kInstruction_add_gt_r11_r14_r9_LSR_r4[] = {
434   0x39, 0xb4, 0x8e, 0xc0 // add gt r11 r14 r9 LSR r4
435 };
436 const byte kInstruction_add_mi_r9_r6_r9_ASR_r7[] = {
437   0x59, 0x97, 0x86, 0x40 // add mi r9 r6 r9 ASR r7
438 };
439 const byte kInstruction_add_ls_r14_r12_r14_LSR_r4[] = {
440   0x3e, 0xe4, 0x8c, 0x90 // add ls r14 r12 r14 LSR r4
441 };
442 const byte kInstruction_add_al_r8_r5_r14_LSR_r1[] = {
443   0x3e, 0x81, 0x85, 0xe0 // add al r8 r5 r14 LSR r1
444 };
445 const byte kInstruction_add_le_r7_r10_r10_LSL_r14[] = {
446   0x1a, 0x7e, 0x8a, 0xd0 // add le r7 r10 r10 LSL r14
447 };
448 const byte kInstruction_add_pl_r7_r9_r5_ROR_r8[] = {
449   0x75, 0x78, 0x89, 0x50 // add pl r7 r9 r5 ROR r8
450 };
451 const byte kInstruction_add_mi_r1_r6_r12_LSL_r0[] = {
452   0x1c, 0x10, 0x86, 0x40 // add mi r1 r6 r12 LSL r0
453 };
454 const byte kInstruction_add_ls_r9_r8_r2_LSL_r8[] = {
455   0x12, 0x98, 0x88, 0x90 // add ls r9 r8 r2 LSL r8
456 };
457 const byte kInstruction_add_ge_r8_r6_r2_LSR_r3[] = {
458   0x32, 0x83, 0x86, 0xa0 // add ge r8 r6 r2 LSR r3
459 };
460 const byte kInstruction_add_al_r8_r6_r8_LSL_r7[] = {
461   0x18, 0x87, 0x86, 0xe0 // add al r8 r6 r8 LSL r7
462 };
463 const byte kInstruction_add_ls_r2_r6_r14_LSL_r8[] = {
464   0x1e, 0x28, 0x86, 0x90 // add ls r2 r6 r14 LSL r8
465 };
466 const byte kInstruction_add_lt_r12_r9_r5_ROR_r10[] = {
467   0x75, 0xca, 0x89, 0xb0 // add lt r12 r9 r5 ROR r10
468 };
469 const byte kInstruction_add_ls_r7_r12_r5_ASR_r14[] = {
470   0x55, 0x7e, 0x8c, 0x90 // add ls r7 r12 r5 ASR r14
471 };
472 const byte kInstruction_add_cc_r0_r4_r13_ASR_r12[] = {
473   0x5d, 0x0c, 0x84, 0x30 // add cc r0 r4 r13 ASR r12
474 };
475 const byte kInstruction_add_vc_r10_r14_r5_ROR_r1[] = {
476   0x75, 0xa1, 0x8e, 0x70 // add vc r10 r14 r5 ROR r1
477 };
478 const byte kInstruction_add_cs_r13_r3_r2_LSR_r13[] = {
479   0x32, 0xdd, 0x83, 0x20 // add cs r13 r3 r2 LSR r13
480 };
481 const byte kInstruction_add_le_r1_r11_r4_ASR_r7[] = {
482   0x54, 0x17, 0x8b, 0xd0 // add le r1 r11 r4 ASR r7
483 };
484 const byte kInstruction_add_cc_r0_r13_r3_ASR_r1[] = {
485   0x53, 0x01, 0x8d, 0x30 // add cc r0 r13 r3 ASR r1
486 };
487 const byte kInstruction_add_le_r0_r1_r11_ROR_r6[] = {
488   0x7b, 0x06, 0x81, 0xd0 // add le r0 r1 r11 ROR r6
489 };
490 const byte kInstruction_add_ls_r8_r14_r12_LSR_r8[] = {
491   0x3c, 0x88, 0x8e, 0x90 // add ls r8 r14 r12 LSR r8
492 };
493 const byte kInstruction_add_ne_r5_r0_r7_ASR_r9[] = {
494   0x57, 0x59, 0x80, 0x10 // add ne r5 r0 r7 ASR r9
495 };
496 const byte kInstruction_add_vs_r2_r12_r3_ROR_r7[] = {
497   0x73, 0x27, 0x8c, 0x60 // add vs r2 r12 r3 ROR r7
498 };
499 const byte kInstruction_add_ne_r8_r9_r0_LSR_r10[] = {
500   0x30, 0x8a, 0x89, 0x10 // add ne r8 r9 r0 LSR r10
501 };
502 const byte kInstruction_add_pl_r8_r6_r8_ASR_r1[] = {
503   0x58, 0x81, 0x86, 0x50 // add pl r8 r6 r8 ASR r1
504 };
505 const byte kInstruction_add_vc_r13_r1_r0_ASR_r13[] = {
506   0x50, 0xdd, 0x81, 0x70 // add vc r13 r1 r0 ASR r13
507 };
508 const byte kInstruction_add_vc_r9_r3_r1_LSL_r6[] = {
509   0x11, 0x96, 0x83, 0x70 // add vc r9 r3 r1 LSL r6
510 };
511 const byte kInstruction_add_pl_r0_r2_r4_LSL_r1[] = {
512   0x14, 0x01, 0x82, 0x50 // add pl r0 r2 r4 LSL r1
513 };
514 const byte kInstruction_add_lt_r14_r8_r13_LSR_r7[] = {
515   0x3d, 0xe7, 0x88, 0xb0 // add lt r14 r8 r13 LSR r7
516 };
517 const byte kInstruction_add_pl_r4_r9_r6_LSL_r3[] = {
518   0x16, 0x43, 0x89, 0x50 // add pl r4 r9 r6 LSL r3
519 };
520 const byte kInstruction_add_hi_r0_r4_r10_LSR_r9[] = {
521   0x3a, 0x09, 0x84, 0x80 // add hi r0 r4 r10 LSR r9
522 };
523 const byte kInstruction_add_ne_r0_r11_r9_ASR_r14[] = {
524   0x59, 0x0e, 0x8b, 0x10 // add ne r0 r11 r9 ASR r14
525 };
526 const byte kInstruction_add_vs_r2_r8_r2_LSL_r12[] = {
527   0x12, 0x2c, 0x88, 0x60 // add vs r2 r8 r2 LSL r12
528 };
529 const byte kInstruction_add_lt_r2_r0_r7_ROR_r9[] = {
530   0x77, 0x29, 0x80, 0xb0 // add lt r2 r0 r7 ROR r9
531 };
532 const byte kInstruction_add_gt_r10_r6_r12_ASR_r2[] = {
533   0x5c, 0xa2, 0x86, 0xc0 // add gt r10 r6 r12 ASR r2
534 };
535 const byte kInstruction_add_ne_r3_r2_r8_ASR_r6[] = {
536   0x58, 0x36, 0x82, 0x10 // add ne r3 r2 r8 ASR r6
537 };
538 const byte kInstruction_add_ls_r6_r3_r12_ASR_r7[] = {
539   0x5c, 0x67, 0x83, 0x90 // add ls r6 r3 r12 ASR r7
540 };
541 const byte kInstruction_add_cs_r8_r4_r2_LSL_r3[] = {
542   0x12, 0x83, 0x84, 0x20 // add cs r8 r4 r2 LSL r3
543 };
544 const byte kInstruction_add_eq_r12_r9_r4_ASR_r11[] = {
545   0x54, 0xcb, 0x89, 0x00 // add eq r12 r9 r4 ASR r11
546 };
547 const byte kInstruction_add_lt_r10_r4_r5_ROR_r13[] = {
548   0x75, 0xad, 0x84, 0xb0 // add lt r10 r4 r5 ROR r13
549 };
550 const byte kInstruction_add_pl_r9_r9_r13_LSL_r11[] = {
551   0x1d, 0x9b, 0x89, 0x50 // add pl r9 r9 r13 LSL r11
552 };
553 const byte kInstruction_add_lt_r2_r12_r13_ASR_r9[] = {
554   0x5d, 0x29, 0x8c, 0xb0 // add lt r2 r12 r13 ASR r9
555 };
556 const byte kInstruction_add_ls_r1_r12_r8_LSL_r3[] = {
557   0x18, 0x13, 0x8c, 0x90 // add ls r1 r12 r8 LSL r3
558 };
559 const byte kInstruction_add_vs_r0_r1_r4_ASR_r11[] = {
560   0x54, 0x0b, 0x81, 0x60 // add vs r0 r1 r4 ASR r11
561 };
562 const byte kInstruction_add_vc_r2_r8_r9_LSR_r12[] = {
563   0x39, 0x2c, 0x88, 0x70 // add vc r2 r8 r9 LSR r12
564 };
565 const byte kInstruction_add_ne_r14_r12_r3_ASR_r9[] = {
566   0x53, 0xe9, 0x8c, 0x10 // add ne r14 r12 r3 ASR r9
567 };
568 const byte kInstruction_add_gt_r14_r5_r12_LSL_r9[] = {
569   0x1c, 0xe9, 0x85, 0xc0 // add gt r14 r5 r12 LSL r9
570 };
571 const byte kInstruction_add_ls_r5_r8_r2_LSR_r5[] = {
572   0x32, 0x55, 0x88, 0x90 // add ls r5 r8 r2 LSR r5
573 };
574 const byte kInstruction_add_cs_r12_r5_r3_ROR_r8[] = {
575   0x73, 0xc8, 0x85, 0x20 // add cs r12 r5 r3 ROR r8
576 };
577 const byte kInstruction_add_vs_r5_r11_r5_ROR_r9[] = {
578   0x75, 0x59, 0x8b, 0x60 // add vs r5 r11 r5 ROR r9
579 };
580 const byte kInstruction_add_lt_r4_r14_r11_LSL_r0[] = {
581   0x1b, 0x40, 0x8e, 0xb0 // add lt r4 r14 r11 LSL r0
582 };
583 const byte kInstruction_add_eq_r1_r0_r14_ROR_r13[] = {
584   0x7e, 0x1d, 0x80, 0x00 // add eq r1 r0 r14 ROR r13
585 };
586 const byte kInstruction_add_ge_r12_r1_r13_LSR_r2[] = {
587   0x3d, 0xc2, 0x81, 0xa0 // add ge r12 r1 r13 LSR r2
588 };
589 const byte kInstruction_add_pl_r12_r8_r4_LSL_r9[] = {
590   0x14, 0xc9, 0x88, 0x50 // add pl r12 r8 r4 LSL r9
591 };
592 const byte kInstruction_add_eq_r7_r6_r6_LSR_r2[] = {
593   0x36, 0x72, 0x86, 0x00 // add eq r7 r6 r6 LSR r2
594 };
595 const byte kInstruction_add_ls_r3_r4_r4_LSL_r9[] = {
596   0x14, 0x39, 0x84, 0x90 // add ls r3 r4 r4 LSL r9
597 };
598 const byte kInstruction_add_eq_r7_r2_r0_LSR_r6[] = {
599   0x30, 0x76, 0x82, 0x00 // add eq r7 r2 r0 LSR r6
600 };
601 const byte kInstruction_add_eq_r3_r13_r4_ROR_r7[] = {
602   0x74, 0x37, 0x8d, 0x00 // add eq r3 r13 r4 ROR r7
603 };
604 const byte kInstruction_add_eq_r12_r6_r9_LSR_r0[] = {
605   0x39, 0xc0, 0x86, 0x00 // add eq r12 r6 r9 LSR r0
606 };
607 const byte kInstruction_add_lt_r13_r10_r0_LSL_r10[] = {
608   0x10, 0xda, 0x8a, 0xb0 // add lt r13 r10 r0 LSL r10
609 };
610 const byte kInstruction_add_ls_r12_r14_r13_ROR_r6[] = {
611   0x7d, 0xc6, 0x8e, 0x90 // add ls r12 r14 r13 ROR r6
612 };
613 const byte kInstruction_add_ls_r6_r3_r2_LSR_r3[] = {
614   0x32, 0x63, 0x83, 0x90 // add ls r6 r3 r2 LSR r3
615 };
616 const byte kInstruction_add_lt_r13_r6_r4_ROR_r11[] = {
617   0x74, 0xdb, 0x86, 0xb0 // add lt r13 r6 r4 ROR r11
618 };
619 const byte kInstruction_add_eq_r7_r9_r1_ROR_r12[] = {
620   0x71, 0x7c, 0x89, 0x00 // add eq r7 r9 r1 ROR r12
621 };
622 const byte kInstruction_add_pl_r12_r13_r3_LSL_r5[] = {
623   0x13, 0xc5, 0x8d, 0x50 // add pl r12 r13 r3 LSL r5
624 };
625 const byte kInstruction_add_vs_r1_r3_r3_LSR_r9[] = {
626   0x33, 0x19, 0x83, 0x60 // add vs r1 r3 r3 LSR r9
627 };
628 const byte kInstruction_add_pl_r3_r11_r12_ASR_r8[] = {
629   0x5c, 0x38, 0x8b, 0x50 // add pl r3 r11 r12 ASR r8
630 };
631 const byte kInstruction_add_ne_r0_r3_r13_ASR_r11[] = {
632   0x5d, 0x0b, 0x83, 0x10 // add ne r0 r3 r13 ASR r11
633 };
634 const byte kInstruction_add_ge_r13_r5_r3_LSR_r11[] = {
635   0x33, 0xdb, 0x85, 0xa0 // add ge r13 r5 r3 LSR r11
636 };
637 const byte kInstruction_add_al_r0_r6_r9_LSR_r1[] = {
638   0x39, 0x01, 0x86, 0xe0 // add al r0 r6 r9 LSR r1
639 };
640 const byte kInstruction_add_ls_r3_r3_r5_LSR_r9[] = {
641   0x35, 0x39, 0x83, 0x90 // add ls r3 r3 r5 LSR r9
642 };
643 const byte kInstruction_add_mi_r13_r3_r7_ASR_r0[] = {
644   0x57, 0xd0, 0x83, 0x40 // add mi r13 r3 r7 ASR r0
645 };
646 const byte kInstruction_add_vc_r1_r5_r10_LSL_r6[] = {
647   0x1a, 0x16, 0x85, 0x70 // add vc r1 r5 r10 LSL r6
648 };
649 const byte kInstruction_add_eq_r9_r13_r6_LSL_r0[] = {
650   0x16, 0x90, 0x8d, 0x00 // add eq r9 r13 r6 LSL r0
651 };
652 const byte kInstruction_add_cs_r14_r11_r9_ASR_r8[] = {
653   0x59, 0xe8, 0x8b, 0x20 // add cs r14 r11 r9 ASR r8
654 };
655 const byte kInstruction_add_pl_r2_r3_r4_LSL_r1[] = {
656   0x14, 0x21, 0x83, 0x50 // add pl r2 r3 r4 LSL r1
657 };
658 const byte kInstruction_add_vc_r0_r2_r13_ASR_r14[] = {
659   0x5d, 0x0e, 0x82, 0x70 // add vc r0 r2 r13 ASR r14
660 };
661 const byte kInstruction_add_le_r10_r7_r13_ROR_r6[] = {
662   0x7d, 0xa6, 0x87, 0xd0 // add le r10 r7 r13 ROR r6
663 };
664 const byte kInstruction_add_hi_r12_r6_r1_LSL_r0[] = {
665   0x11, 0xc0, 0x86, 0x80 // add hi r12 r6 r1 LSL r0
666 };
667 const byte kInstruction_add_ls_r10_r12_r12_ROR_r4[] = {
668   0x7c, 0xa4, 0x8c, 0x90 // add ls r10 r12 r12 ROR r4
669 };
670 const byte kInstruction_add_gt_r13_r4_r11_LSL_r2[] = {
671   0x1b, 0xd2, 0x84, 0xc0 // add gt r13 r4 r11 LSL r2
672 };
673 const byte kInstruction_add_ne_r13_r10_r5_LSR_r9[] = {
674   0x35, 0xd9, 0x8a, 0x10 // add ne r13 r10 r5 LSR r9
675 };
676 const byte kInstruction_add_ge_r0_r0_r9_LSR_r5[] = {
677   0x39, 0x05, 0x80, 0xa0 // add ge r0 r0 r9 LSR r5
678 };
679 const byte kInstruction_add_vs_r7_r8_r13_ROR_r4[] = {
680   0x7d, 0x74, 0x88, 0x60 // add vs r7 r8 r13 ROR r4
681 };
682 const byte kInstruction_add_cc_r1_r2_r8_LSL_r6[] = {
683   0x18, 0x16, 0x82, 0x30 // add cc r1 r2 r8 LSL r6
684 };
685 const byte kInstruction_add_le_r7_r11_r3_LSL_r4[] = {
686   0x13, 0x74, 0x8b, 0xd0 // add le r7 r11 r3 LSL r4
687 };
688 const byte kInstruction_add_hi_r11_r7_r3_LSL_r14[] = {
689   0x13, 0xbe, 0x87, 0x80 // add hi r11 r7 r3 LSL r14
690 };
691 const byte kInstruction_add_ge_r12_r4_r5_ASR_r8[] = {
692   0x55, 0xc8, 0x84, 0xa0 // add ge r12 r4 r5 ASR r8
693 };
694 const byte kInstruction_add_vc_r12_r5_r13_LSL_r1[] = {
695   0x1d, 0xc1, 0x85, 0x70 // add vc r12 r5 r13 LSL r1
696 };
697 const byte kInstruction_add_ls_r0_r8_r3_LSR_r3[] = {
698   0x33, 0x03, 0x88, 0x90 // add ls r0 r8 r3 LSR r3
699 };
700 const byte kInstruction_add_cs_r2_r0_r11_ASR_r5[] = {
701   0x5b, 0x25, 0x80, 0x20 // add cs r2 r0 r11 ASR r5
702 };
703 const byte kInstruction_add_mi_r9_r1_r2_ASR_r2[] = {
704   0x52, 0x92, 0x81, 0x40 // add mi r9 r1 r2 ASR r2
705 };
706 const byte kInstruction_add_pl_r7_r10_r13_LSR_r8[] = {
707   0x3d, 0x78, 0x8a, 0x50 // add pl r7 r10 r13 LSR r8
708 };
709 const byte kInstruction_add_ne_r12_r14_r10_ROR_r1[] = {
710   0x7a, 0xc1, 0x8e, 0x10 // add ne r12 r14 r10 ROR r1
711 };
712 const byte kInstruction_add_gt_r0_r5_r9_LSL_r10[] = {
713   0x19, 0x0a, 0x85, 0xc0 // add gt r0 r5 r9 LSL r10
714 };
715 const byte kInstruction_add_ls_r12_r12_r1_ASR_r2[] = {
716   0x51, 0xc2, 0x8c, 0x90 // add ls r12 r12 r1 ASR r2
717 };
718 const byte kInstruction_add_ne_r14_r0_r6_ROR_r5[] = {
719   0x76, 0xe5, 0x80, 0x10 // add ne r14 r0 r6 ROR r5
720 };
721 const byte kInstruction_add_gt_r10_r7_r0_ROR_r1[] = {
722   0x70, 0xa1, 0x87, 0xc0 // add gt r10 r7 r0 ROR r1
723 };
724 const byte kInstruction_add_ls_r7_r3_r0_ROR_r8[] = {
725   0x70, 0x78, 0x83, 0x90 // add ls r7 r3 r0 ROR r8
726 };
727 const byte kInstruction_add_mi_r1_r11_r9_ROR_r1[] = {
728   0x79, 0x11, 0x8b, 0x40 // add mi r1 r11 r9 ROR r1
729 };
730 const byte kInstruction_add_pl_r8_r7_r9_ROR_r9[] = {
731   0x79, 0x89, 0x87, 0x50 // add pl r8 r7 r9 ROR r9
732 };
733 const byte kInstruction_add_lt_r3_r1_r7_LSR_r4[] = {
734   0x37, 0x34, 0x81, 0xb0 // add lt r3 r1 r7 LSR r4
735 };
736 const byte kInstruction_add_mi_r11_r4_r4_LSL_r5[] = {
737   0x14, 0xb5, 0x84, 0x40 // add mi r11 r4 r4 LSL r5
738 };
739 const byte kInstruction_add_cs_r1_r7_r5_LSR_r13[] = {
740   0x35, 0x1d, 0x87, 0x20 // add cs r1 r7 r5 LSR r13
741 };
742 const byte kInstruction_add_ls_r0_r2_r10_ASR_r4[] = {
743   0x5a, 0x04, 0x82, 0x90 // add ls r0 r2 r10 ASR r4
744 };
745 const byte kInstruction_add_ge_r5_r12_r11_ASR_r3[] = {
746   0x5b, 0x53, 0x8c, 0xa0 // add ge r5 r12 r11 ASR r3
747 };
748 const byte kInstruction_add_vc_r13_r4_r13_ASR_r13[] = {
749   0x5d, 0xdd, 0x84, 0x70 // add vc r13 r4 r13 ASR r13
750 };
751 const byte kInstruction_add_le_r9_r3_r4_LSL_r12[] = {
752   0x14, 0x9c, 0x83, 0xd0 // add le r9 r3 r4 LSL r12
753 };
754 const byte kInstruction_add_al_r8_r14_r3_ROR_r1[] = {
755   0x73, 0x81, 0x8e, 0xe0 // add al r8 r14 r3 ROR r1
756 };
757 const byte kInstruction_add_ls_r2_r0_r1_LSR_r4[] = {
758   0x31, 0x24, 0x80, 0x90 // add ls r2 r0 r1 LSR r4
759 };
760 const byte kInstruction_add_cc_r4_r11_r0_ASR_r5[] = {
761   0x50, 0x45, 0x8b, 0x30 // add cc r4 r11 r0 ASR r5
762 };
763 const byte kInstruction_add_lt_r13_r1_r8_ROR_r9[] = {
764   0x78, 0xd9, 0x81, 0xb0 // add lt r13 r1 r8 ROR r9
765 };
766 const byte kInstruction_add_mi_r5_r12_r13_ROR_r14[] = {
767   0x7d, 0x5e, 0x8c, 0x40 // add mi r5 r12 r13 ROR r14
768 };
769 const byte kInstruction_add_cs_r4_r1_r13_ASR_r13[] = {
770   0x5d, 0x4d, 0x81, 0x20 // add cs r4 r1 r13 ASR r13
771 };
772 const byte kInstruction_add_vs_r1_r14_r1_ASR_r9[] = {
773   0x51, 0x19, 0x8e, 0x60 // add vs r1 r14 r1 ASR r9
774 };
775 const byte kInstruction_add_al_r14_r5_r2_LSL_r8[] = {
776   0x12, 0xe8, 0x85, 0xe0 // add al r14 r5 r2 LSL r8
777 };
778 const byte kInstruction_add_ge_r1_r6_r5_ASR_r8[] = {
779   0x55, 0x18, 0x86, 0xa0 // add ge r1 r6 r5 ASR r8
780 };
781 const byte kInstruction_add_ls_r10_r3_r12_LSL_r13[] = {
782   0x1c, 0xad, 0x83, 0x90 // add ls r10 r3 r12 LSL r13
783 };
784 const byte kInstruction_add_vc_r8_r8_r3_ROR_r4[] = {
785   0x73, 0x84, 0x88, 0x70 // add vc r8 r8 r3 ROR r4
786 };
787 const byte kInstruction_add_lt_r9_r5_r5_LSR_r6[] = {
788   0x35, 0x96, 0x85, 0xb0 // add lt r9 r5 r5 LSR r6
789 };
790 const byte kInstruction_add_lt_r7_r9_r12_ASR_r2[] = {
791   0x5c, 0x72, 0x89, 0xb0 // add lt r7 r9 r12 ASR r2
792 };
793 const byte kInstruction_add_eq_r11_r14_r11_ROR_r0[] = {
794   0x7b, 0xb0, 0x8e, 0x00 // add eq r11 r14 r11 ROR r0
795 };
796 const byte kInstruction_add_hi_r5_r3_r11_LSL_r3[] = {
797   0x1b, 0x53, 0x83, 0x80 // add hi r5 r3 r11 LSL r3
798 };
799 const byte kInstruction_add_ls_r3_r8_r9_LSR_r10[] = {
800   0x39, 0x3a, 0x88, 0x90 // add ls r3 r8 r9 LSR r10
801 };
802 const byte kInstruction_add_cs_r14_r14_r0_LSL_r10[] = {
803   0x10, 0xea, 0x8e, 0x20 // add cs r14 r14 r0 LSL r10
804 };
805 const byte kInstruction_add_eq_r2_r8_r4_ROR_r1[] = {
806   0x74, 0x21, 0x88, 0x00 // add eq r2 r8 r4 ROR r1
807 };
808 const byte kInstruction_add_gt_r3_r4_r7_ROR_r2[] = {
809   0x77, 0x32, 0x84, 0xc0 // add gt r3 r4 r7 ROR r2
810 };
811 const byte kInstruction_add_lt_r3_r5_r6_ROR_r7[] = {
812   0x76, 0x37, 0x85, 0xb0 // add lt r3 r5 r6 ROR r7
813 };
814 const byte kInstruction_add_hi_r14_r4_r2_ASR_r1[] = {
815   0x52, 0xe1, 0x84, 0x80 // add hi r14 r4 r2 ASR r1
816 };
817 const byte kInstruction_add_mi_r9_r6_r7_LSR_r1[] = {
818   0x37, 0x91, 0x86, 0x40 // add mi r9 r6 r7 LSR r1
819 };
820 const byte kInstruction_add_pl_r11_r12_r11_LSR_r0[] = {
821   0x3b, 0xb0, 0x8c, 0x50 // add pl r11 r12 r11 LSR r0
822 };
823 const byte kInstruction_add_cs_r0_r0_r0_ROR_r4[] = {
824   0x70, 0x04, 0x80, 0x20 // add cs r0 r0 r0 ROR r4
825 };
826 const byte kInstruction_add_vs_r7_r4_r13_ASR_r4[] = {
827   0x5d, 0x74, 0x84, 0x60 // add vs r7 r4 r13 ASR r4
828 };
829 const byte kInstruction_add_vc_r6_r8_r1_LSR_r5[] = {
830   0x31, 0x65, 0x88, 0x70 // add vc r6 r8 r1 LSR r5
831 };
832 const byte kInstruction_add_gt_r6_r10_r14_LSR_r0[] = {
833   0x3e, 0x60, 0x8a, 0xc0 // add gt r6 r10 r14 LSR r0
834 };
835 const byte kInstruction_add_ne_r12_r4_r5_LSL_r10[] = {
836   0x15, 0xca, 0x84, 0x10 // add ne r12 r4 r5 LSL r10
837 };
838 const byte kInstruction_add_ne_r9_r4_r5_ROR_r10[] = {
839   0x75, 0x9a, 0x84, 0x10 // add ne r9 r4 r5 ROR r10
840 };
841 const byte kInstruction_add_lt_r4_r2_r0_ROR_r5[] = {
842   0x70, 0x45, 0x82, 0xb0 // add lt r4 r2 r0 ROR r5
843 };
844 const byte kInstruction_add_ls_r0_r13_r3_ASR_r13[] = {
845   0x53, 0x0d, 0x8d, 0x90 // add ls r0 r13 r3 ASR r13
846 };
847 const byte kInstruction_add_lt_r14_r8_r2_ROR_r1[] = {
848   0x72, 0xe1, 0x88, 0xb0 // add lt r14 r8 r2 ROR r1
849 };
850 const byte kInstruction_add_hi_r7_r13_r2_LSR_r9[] = {
851   0x32, 0x79, 0x8d, 0x80 // add hi r7 r13 r2 LSR r9
852 };
853 const byte kInstruction_add_hi_r2_r5_r8_LSL_r8[] = {
854   0x18, 0x28, 0x85, 0x80 // add hi r2 r5 r8 LSL r8
855 };
856 const byte kInstruction_add_vc_r1_r8_r6_LSR_r5[] = {
857   0x36, 0x15, 0x88, 0x70 // add vc r1 r8 r6 LSR r5
858 };
859 const byte kInstruction_add_hi_r6_r12_r10_ROR_r2[] = {
860   0x7a, 0x62, 0x8c, 0x80 // add hi r6 r12 r10 ROR r2
861 };
862 const byte kInstruction_add_al_r12_r13_r12_LSR_r14[] = {
863   0x3c, 0xce, 0x8d, 0xe0 // add al r12 r13 r12 LSR r14
864 };
865 const byte kInstruction_add_mi_r4_r13_r5_LSL_r7[] = {
866   0x15, 0x47, 0x8d, 0x40 // add mi r4 r13 r5 LSL r7
867 };
868 const byte kInstruction_add_le_r6_r7_r10_ASR_r10[] = {
869   0x5a, 0x6a, 0x87, 0xd0 // add le r6 r7 r10 ASR r10
870 };
871 const byte kInstruction_add_mi_r3_r1_r6_ASR_r2[] = {
872   0x56, 0x32, 0x81, 0x40 // add mi r3 r1 r6 ASR r2
873 };
874 const byte kInstruction_add_le_r10_r2_r12_ROR_r1[] = {
875   0x7c, 0xa1, 0x82, 0xd0 // add le r10 r2 r12 ROR r1
876 };
877 const byte kInstruction_add_le_r12_r3_r5_ROR_r0[] = {
878   0x75, 0xc0, 0x83, 0xd0 // add le r12 r3 r5 ROR r0
879 };
880 const byte kInstruction_add_ls_r9_r14_r5_ROR_r12[] = {
881   0x75, 0x9c, 0x8e, 0x90 // add ls r9 r14 r5 ROR r12
882 };
883 const byte kInstruction_add_pl_r10_r5_r3_ROR_r0[] = {
884   0x73, 0xa0, 0x85, 0x50 // add pl r10 r5 r3 ROR r0
885 };
886 const byte kInstruction_add_hi_r8_r1_r9_LSL_r11[] = {
887   0x19, 0x8b, 0x81, 0x80 // add hi r8 r1 r9 LSL r11
888 };
889 const byte kInstruction_add_ls_r14_r5_r9_ROR_r9[] = {
890   0x79, 0xe9, 0x85, 0x90 // add ls r14 r5 r9 ROR r9
891 };
892 const byte kInstruction_add_hi_r7_r2_r10_LSR_r3[] = {
893   0x3a, 0x73, 0x82, 0x80 // add hi r7 r2 r10 LSR r3
894 };
895 const byte kInstruction_add_eq_r5_r7_r13_ROR_r11[] = {
896   0x7d, 0x5b, 0x87, 0x00 // add eq r5 r7 r13 ROR r11
897 };
898 const byte kInstruction_add_vs_r4_r13_r9_LSR_r0[] = {
899   0x39, 0x40, 0x8d, 0x60 // add vs r4 r13 r9 LSR r0
900 };
901 const byte kInstruction_add_le_r3_r1_r12_ROR_r8[] = {
902   0x7c, 0x38, 0x81, 0xd0 // add le r3 r1 r12 ROR r8
903 };
904 const byte kInstruction_add_hi_r8_r10_r10_LSL_r1[] = {
905   0x1a, 0x81, 0x8a, 0x80 // add hi r8 r10 r10 LSL r1
906 };
907 const byte kInstruction_add_gt_r0_r4_r9_ASR_r13[] = {
908   0x59, 0x0d, 0x84, 0xc0 // add gt r0 r4 r9 ASR r13
909 };
910 const byte kInstruction_add_ne_r0_r0_r13_LSR_r5[] = {
911   0x3d, 0x05, 0x80, 0x10 // add ne r0 r0 r13 LSR r5
912 };
913 const byte kInstruction_add_cc_r8_r11_r0_ASR_r12[] = {
914   0x50, 0x8c, 0x8b, 0x30 // add cc r8 r11 r0 ASR r12
915 };
916 const byte kInstruction_add_pl_r8_r5_r6_ASR_r7[] = {
917   0x56, 0x87, 0x85, 0x50 // add pl r8 r5 r6 ASR r7
918 };
919 const byte kInstruction_add_vc_r8_r3_r14_LSR_r3[] = {
920   0x3e, 0x83, 0x83, 0x70 // add vc r8 r3 r14 LSR r3
921 };
922 const byte kInstruction_add_ne_r0_r0_r10_ASR_r7[] = {
923   0x5a, 0x07, 0x80, 0x10 // add ne r0 r0 r10 ASR r7
924 };
925 const byte kInstruction_add_le_r4_r1_r9_LSL_r7[] = {
926   0x19, 0x47, 0x81, 0xd0 // add le r4 r1 r9 LSL r7
927 };
928 const byte kInstruction_add_ls_r3_r14_r9_LSR_r4[] = {
929   0x39, 0x34, 0x8e, 0x90 // add ls r3 r14 r9 LSR r4
930 };
931 const byte kInstruction_add_vc_r3_r0_r8_LSR_r1[] = {
932   0x38, 0x31, 0x80, 0x70 // add vc r3 r0 r8 LSR r1
933 };
934 const byte kInstruction_add_pl_r8_r12_r1_LSL_r13[] = {
935   0x11, 0x8d, 0x8c, 0x50 // add pl r8 r12 r1 LSL r13
936 };
937 const byte kInstruction_add_eq_r7_r12_r14_ROR_r11[] = {
938   0x7e, 0x7b, 0x8c, 0x00 // add eq r7 r12 r14 ROR r11
939 };
940 const byte kInstruction_add_hi_r12_r5_r6_LSL_r11[] = {
941   0x16, 0xcb, 0x85, 0x80 // add hi r12 r5 r6 LSL r11
942 };
943 const byte kInstruction_add_al_r8_r8_r1_LSL_r12[] = {
944   0x11, 0x8c, 0x88, 0xe0 // add al r8 r8 r1 LSL r12
945 };
946 const byte kInstruction_add_pl_r3_r4_r13_ASR_r6[] = {
947   0x5d, 0x36, 0x84, 0x50 // add pl r3 r4 r13 ASR r6
948 };
949 const byte kInstruction_add_vc_r4_r5_r13_LSL_r6[] = {
950   0x1d, 0x46, 0x85, 0x70 // add vc r4 r5 r13 LSL r6
951 };
952 const byte kInstruction_add_ls_r10_r7_r2_LSL_r10[] = {
953   0x12, 0xaa, 0x87, 0x90 // add ls r10 r7 r2 LSL r10
954 };
955 const byte kInstruction_add_hi_r6_r4_r5_LSR_r2[] = {
956   0x35, 0x62, 0x84, 0x80 // add hi r6 r4 r5 LSR r2
957 };
958 const byte kInstruction_add_hi_r1_r5_r4_LSL_r11[] = {
959   0x14, 0x1b, 0x85, 0x80 // add hi r1 r5 r4 LSL r11
960 };
961 const byte kInstruction_add_cc_r6_r6_r2_LSL_r0[] = {
962   0x12, 0x60, 0x86, 0x30 // add cc r6 r6 r2 LSL r0
963 };
964 const byte kInstruction_add_cs_r6_r7_r14_ASR_r2[] = {
965   0x5e, 0x62, 0x87, 0x20 // add cs r6 r7 r14 ASR r2
966 };
967 const byte kInstruction_add_pl_r12_r1_r13_ROR_r9[] = {
968   0x7d, 0xc9, 0x81, 0x50 // add pl r12 r1 r13 ROR r9
969 };
970 const byte kInstruction_add_eq_r4_r8_r3_ASR_r5[] = {
971   0x53, 0x45, 0x88, 0x00 // add eq r4 r8 r3 ASR r5
972 };
973 const byte kInstruction_add_hi_r3_r4_r9_ROR_r4[] = {
974   0x79, 0x34, 0x84, 0x80 // add hi r3 r4 r9 ROR r4
975 };
976 const byte kInstruction_add_vs_r8_r11_r7_ROR_r8[] = {
977   0x77, 0x88, 0x8b, 0x60 // add vs r8 r11 r7 ROR r8
978 };
979 const byte kInstruction_add_cs_r4_r1_r9_LSL_r11[] = {
980   0x19, 0x4b, 0x81, 0x20 // add cs r4 r1 r9 LSL r11
981 };
982 const byte kInstruction_add_eq_r0_r11_r5_ASR_r0[] = {
983   0x55, 0x00, 0x8b, 0x00 // add eq r0 r11 r5 ASR r0
984 };
985 const byte kInstruction_add_ne_r2_r6_r9_LSL_r8[] = {
986   0x19, 0x28, 0x86, 0x10 // add ne r2 r6 r9 LSL r8
987 };
988 const byte kInstruction_add_hi_r5_r7_r12_LSL_r14[] = {
989   0x1c, 0x5e, 0x87, 0x80 // add hi r5 r7 r12 LSL r14
990 };
991 const byte kInstruction_add_cc_r5_r6_r4_LSL_r8[] = {
992   0x14, 0x58, 0x86, 0x30 // add cc r5 r6 r4 LSL r8
993 };
994 const byte kInstruction_add_eq_r6_r14_r13_LSR_r1[] = {
995   0x3d, 0x61, 0x8e, 0x00 // add eq r6 r14 r13 LSR r1
996 };
997 const byte kInstruction_add_gt_r7_r3_r12_ASR_r10[] = {
998   0x5c, 0x7a, 0x83, 0xc0 // add gt r7 r3 r12 ASR r10
999 };
1000 const byte kInstruction_add_al_r10_r3_r11_ASR_r2[] = {
1001   0x5b, 0xa2, 0x83, 0xe0 // add al r10 r3 r11 ASR r2
1002 };
1003 const byte kInstruction_add_cs_r6_r11_r13_LSL_r12[] = {
1004   0x1d, 0x6c, 0x8b, 0x20 // add cs r6 r11 r13 LSL r12
1005 };
1006 const byte kInstruction_add_ne_r4_r12_r5_ROR_r11[] = {
1007   0x75, 0x4b, 0x8c, 0x10 // add ne r4 r12 r5 ROR r11
1008 };
1009 const byte kInstruction_add_vs_r12_r14_r2_ROR_r1[] = {
1010   0x72, 0xc1, 0x8e, 0x60 // add vs r12 r14 r2 ROR r1
1011 };
1012 const byte kInstruction_add_ls_r11_r3_r8_ASR_r4[] = {
1013   0x58, 0xb4, 0x83, 0x90 // add ls r11 r3 r8 ASR r4
1014 };
1015 const byte kInstruction_add_vc_r9_r9_r5_LSL_r4[] = {
1016   0x15, 0x94, 0x89, 0x70 // add vc r9 r9 r5 LSL r4
1017 };
1018 const byte kInstruction_add_vc_r0_r2_r10_LSR_r4[] = {
1019   0x3a, 0x04, 0x82, 0x70 // add vc r0 r2 r10 LSR r4
1020 };
1021 const byte kInstruction_add_vc_r6_r0_r11_LSR_r3[] = {
1022   0x3b, 0x63, 0x80, 0x70 // add vc r6 r0 r11 LSR r3
1023 };
1024 const byte kInstruction_add_vs_r11_r11_r12_ROR_r0[] = {
1025   0x7c, 0xb0, 0x8b, 0x60 // add vs r11 r11 r12 ROR r0
1026 };
1027 const byte kInstruction_add_ls_r0_r10_r2_LSL_r8[] = {
1028   0x12, 0x08, 0x8a, 0x90 // add ls r0 r10 r2 LSL r8
1029 };
1030 const byte kInstruction_add_lt_r11_r10_r13_ASR_r10[] = {
1031   0x5d, 0xba, 0x8a, 0xb0 // add lt r11 r10 r13 ASR r10
1032 };
1033 const byte kInstruction_add_eq_r4_r4_r13_LSR_r13[] = {
1034   0x3d, 0x4d, 0x84, 0x00 // add eq r4 r4 r13 LSR r13
1035 };
1036 const byte kInstruction_add_le_r11_r10_r4_LSL_r13[] = {
1037   0x14, 0xbd, 0x8a, 0xd0 // add le r11 r10 r4 LSL r13
1038 };
1039 const byte kInstruction_add_pl_r11_r7_r8_ROR_r7[] = {
1040   0x78, 0xb7, 0x87, 0x50 // add pl r11 r7 r8 ROR r7
1041 };
1042 const byte kInstruction_add_eq_r10_r13_r5_LSR_r13[] = {
1043   0x35, 0xad, 0x8d, 0x00 // add eq r10 r13 r5 LSR r13
1044 };
1045 const byte kInstruction_add_mi_r10_r5_r9_ASR_r7[] = {
1046   0x59, 0xa7, 0x85, 0x40 // add mi r10 r5 r9 ASR r7
1047 };
1048 const byte kInstruction_add_lt_r7_r7_r0_ASR_r6[] = {
1049   0x50, 0x76, 0x87, 0xb0 // add lt r7 r7 r0 ASR r6
1050 };
1051 const byte kInstruction_add_hi_r14_r12_r13_ROR_r3[] = {
1052   0x7d, 0xe3, 0x8c, 0x80 // add hi r14 r12 r13 ROR r3
1053 };
1054 const byte kInstruction_add_hi_r9_r0_r10_LSR_r11[] = {
1055   0x3a, 0x9b, 0x80, 0x80 // add hi r9 r0 r10 LSR r11
1056 };
1057 const byte kInstruction_add_eq_r1_r10_r2_ASR_r10[] = {
1058   0x52, 0x1a, 0x8a, 0x00 // add eq r1 r10 r2 ASR r10
1059 };
1060 const byte kInstruction_add_lt_r1_r6_r0_ASR_r14[] = {
1061   0x50, 0x1e, 0x86, 0xb0 // add lt r1 r6 r0 ASR r14
1062 };
1063 const byte kInstruction_add_gt_r10_r2_r10_ROR_r4[] = {
1064   0x7a, 0xa4, 0x82, 0xc0 // add gt r10 r2 r10 ROR r4
1065 };
1066 const byte kInstruction_add_ls_r3_r9_r10_LSR_r7[] = {
1067   0x3a, 0x37, 0x89, 0x90 // add ls r3 r9 r10 LSR r7
1068 };
1069 const byte kInstruction_add_le_r1_r7_r7_LSR_r10[] = {
1070   0x37, 0x1a, 0x87, 0xd0 // add le r1 r7 r7 LSR r10
1071 };
1072 const byte kInstruction_add_pl_r2_r6_r14_ASR_r0[] = {
1073   0x5e, 0x20, 0x86, 0x50 // add pl r2 r6 r14 ASR r0
1074 };
1075 const byte kInstruction_add_gt_r9_r8_r9_ASR_r10[] = {
1076   0x59, 0x9a, 0x88, 0xc0 // add gt r9 r8 r9 ASR r10
1077 };
1078 const byte kInstruction_add_pl_r12_r11_r14_ASR_r5[] = {
1079   0x5e, 0xc5, 0x8b, 0x50 // add pl r12 r11 r14 ASR r5
1080 };
1081 const byte kInstruction_add_gt_r1_r12_r4_LSL_r5[] = {
1082   0x14, 0x15, 0x8c, 0xc0 // add gt r1 r12 r4 LSL r5
1083 };
1084 const byte kInstruction_add_le_r1_r9_r4_ROR_r0[] = {
1085   0x74, 0x10, 0x89, 0xd0 // add le r1 r9 r4 ROR r0
1086 };
1087 const byte kInstruction_add_ne_r7_r2_r0_ASR_r5[] = {
1088   0x50, 0x75, 0x82, 0x10 // add ne r7 r2 r0 ASR r5
1089 };
1090 const byte kInstruction_add_cc_r4_r1_r9_LSR_r6[] = {
1091   0x39, 0x46, 0x81, 0x30 // add cc r4 r1 r9 LSR r6
1092 };
1093 const byte kInstruction_add_eq_r1_r6_r13_ASR_r12[] = {
1094   0x5d, 0x1c, 0x86, 0x00 // add eq r1 r6 r13 ASR r12
1095 };
1096 const byte kInstruction_add_pl_r3_r14_r13_LSR_r7[] = {
1097   0x3d, 0x37, 0x8e, 0x50 // add pl r3 r14 r13 LSR r7
1098 };
1099 const byte kInstruction_add_ge_r8_r2_r12_LSL_r7[] = {
1100   0x1c, 0x87, 0x82, 0xa0 // add ge r8 r2 r12 LSL r7
1101 };
1102 const byte kInstruction_add_ge_r10_r12_r9_ASR_r13[] = {
1103   0x59, 0xad, 0x8c, 0xa0 // add ge r10 r12 r9 ASR r13
1104 };
1105 const byte kInstruction_add_gt_r8_r7_r1_ASR_r7[] = {
1106   0x51, 0x87, 0x87, 0xc0 // add gt r8 r7 r1 ASR r7
1107 };
1108 const byte kInstruction_add_vs_r8_r4_r5_ROR_r2[] = {
1109   0x75, 0x82, 0x84, 0x60 // add vs r8 r4 r5 ROR r2
1110 };
1111 const byte kInstruction_add_ls_r7_r3_r3_ASR_r5[] = {
1112   0x53, 0x75, 0x83, 0x90 // add ls r7 r3 r3 ASR r5
1113 };
1114 const byte kInstruction_add_al_r13_r10_r9_LSL_r4[] = {
1115   0x19, 0xd4, 0x8a, 0xe0 // add al r13 r10 r9 LSL r4
1116 };
1117 const byte kInstruction_add_cs_r9_r0_r5_ROR_r4[] = {
1118   0x75, 0x94, 0x80, 0x20 // add cs r9 r0 r5 ROR r4
1119 };
1120 const byte kInstruction_add_eq_r14_r12_r12_ASR_r13[] = {
1121   0x5c, 0xed, 0x8c, 0x00 // add eq r14 r12 r12 ASR r13
1122 };
1123 const byte kInstruction_add_hi_r9_r6_r8_ASR_r2[] = {
1124   0x58, 0x92, 0x86, 0x80 // add hi r9 r6 r8 ASR r2
1125 };
1126 const byte kInstruction_add_ne_r7_r9_r10_ROR_r7[] = {
1127   0x7a, 0x77, 0x89, 0x10 // add ne r7 r9 r10 ROR r7
1128 };
1129 const byte kInstruction_add_vs_r2_r3_r0_ASR_r2[] = {
1130   0x50, 0x22, 0x83, 0x60 // add vs r2 r3 r0 ASR r2
1131 };
1132 const byte kInstruction_add_cc_r13_r2_r6_ASR_r11[] = {
1133   0x56, 0xdb, 0x82, 0x30 // add cc r13 r2 r6 ASR r11
1134 };
1135 const byte kInstruction_add_lt_r3_r12_r14_ASR_r0[] = {
1136   0x5e, 0x30, 0x8c, 0xb0 // add lt r3 r12 r14 ASR r0
1137 };
1138 const byte kInstruction_add_hi_r5_r11_r11_ROR_r4[] = {
1139   0x7b, 0x54, 0x8b, 0x80 // add hi r5 r11 r11 ROR r4
1140 };
1141 const byte kInstruction_add_mi_r14_r5_r5_ASR_r12[] = {
1142   0x55, 0xec, 0x85, 0x40 // add mi r14 r5 r5 ASR r12
1143 };
1144 const byte kInstruction_add_pl_r13_r12_r7_LSL_r9[] = {
1145   0x17, 0xd9, 0x8c, 0x50 // add pl r13 r12 r7 LSL r9
1146 };
1147 const byte kInstruction_add_gt_r11_r9_r6_LSR_r13[] = {
1148   0x36, 0xbd, 0x89, 0xc0 // add gt r11 r9 r6 LSR r13
1149 };
1150 const byte kInstruction_add_pl_r7_r10_r13_LSR_r12[] = {
1151   0x3d, 0x7c, 0x8a, 0x50 // add pl r7 r10 r13 LSR r12
1152 };
1153 const byte kInstruction_add_hi_r0_r10_r12_LSL_r1[] = {
1154   0x1c, 0x01, 0x8a, 0x80 // add hi r0 r10 r12 LSL r1
1155 };
1156 const byte kInstruction_add_ge_r12_r5_r12_ASR_r1[] = {
1157   0x5c, 0xc1, 0x85, 0xa0 // add ge r12 r5 r12 ASR r1
1158 };
1159 const byte kInstruction_add_cc_r1_r14_r10_LSR_r8[] = {
1160   0x3a, 0x18, 0x8e, 0x30 // add cc r1 r14 r10 LSR r8
1161 };
1162 const byte kInstruction_add_cs_r8_r10_r9_ROR_r5[] = {
1163   0x79, 0x85, 0x8a, 0x20 // add cs r8 r10 r9 ROR r5
1164 };
1165 const byte kInstruction_add_cc_r1_r14_r13_ROR_r2[] = {
1166   0x7d, 0x12, 0x8e, 0x30 // add cc r1 r14 r13 ROR r2
1167 };
1168 const byte kInstruction_add_hi_r7_r1_r11_ROR_r7[] = {
1169   0x7b, 0x77, 0x81, 0x80 // add hi r7 r1 r11 ROR r7
1170 };
1171 const byte kInstruction_add_lt_r8_r3_r6_ASR_r8[] = {
1172   0x56, 0x88, 0x83, 0xb0 // add lt r8 r3 r6 ASR r8
1173 };
1174 const byte kInstruction_add_vc_r11_r9_r5_ROR_r0[] = {
1175   0x75, 0xb0, 0x89, 0x70 // add vc r11 r9 r5 ROR r0
1176 };
1177 const byte kInstruction_add_pl_r6_r0_r13_ASR_r14[] = {
1178   0x5d, 0x6e, 0x80, 0x50 // add pl r6 r0 r13 ASR r14
1179 };
1180 const byte kInstruction_add_vc_r2_r12_r1_ROR_r3[] = {
1181   0x71, 0x23, 0x8c, 0x70 // add vc r2 r12 r1 ROR r3
1182 };
1183 const byte kInstruction_add_gt_r11_r0_r2_ROR_r0[] = {
1184   0x72, 0xb0, 0x80, 0xc0 // add gt r11 r0 r2 ROR r0
1185 };
1186 const byte kInstruction_add_le_r1_r13_r9_ROR_r0[] = {
1187   0x79, 0x10, 0x8d, 0xd0 // add le r1 r13 r9 ROR r0
1188 };
1189 const byte kInstruction_add_lt_r14_r0_r9_LSL_r3[] = {
1190   0x19, 0xe3, 0x80, 0xb0 // add lt r14 r0 r9 LSL r3
1191 };
1192 const byte kInstruction_add_al_r12_r6_r10_LSR_r8[] = {
1193   0x3a, 0xc8, 0x86, 0xe0 // add al r12 r6 r10 LSR r8
1194 };
1195 const byte kInstruction_add_cc_r4_r14_r1_LSR_r12[] = {
1196   0x31, 0x4c, 0x8e, 0x30 // add cc r4 r14 r1 LSR r12
1197 };
1198 const byte kInstruction_add_ge_r0_r3_r5_LSL_r1[] = {
1199   0x15, 0x01, 0x83, 0xa0 // add ge r0 r3 r5 LSL r1
1200 };
1201 const byte kInstruction_add_eq_r1_r11_r12_ASR_r8[] = {
1202   0x5c, 0x18, 0x8b, 0x00 // add eq r1 r11 r12 ASR r8
1203 };
1204 const byte kInstruction_add_hi_r8_r7_r14_LSR_r4[] = {
1205   0x3e, 0x84, 0x87, 0x80 // add hi r8 r7 r14 LSR r4
1206 };
1207 const byte kInstruction_add_eq_r14_r11_r1_LSR_r7[] = {
1208   0x31, 0xe7, 0x8b, 0x00 // add eq r14 r11 r1 LSR r7
1209 };
1210 const byte kInstruction_add_ge_r6_r12_r4_LSL_r1[] = {
1211   0x14, 0x61, 0x8c, 0xa0 // add ge r6 r12 r4 LSL r1
1212 };
1213 const byte kInstruction_add_vs_r12_r6_r0_ASR_r12[] = {
1214   0x50, 0xcc, 0x86, 0x60 // add vs r12 r6 r0 ASR r12
1215 };
1216 const byte kInstruction_add_gt_r9_r3_r6_LSR_r13[] = {
1217   0x36, 0x9d, 0x83, 0xc0 // add gt r9 r3 r6 LSR r13
1218 };
1219 const byte kInstruction_add_lt_r4_r5_r6_LSR_r12[] = {
1220   0x36, 0x4c, 0x85, 0xb0 // add lt r4 r5 r6 LSR r12
1221 };
1222 const byte kInstruction_add_cc_r8_r2_r5_ROR_r10[] = {
1223   0x75, 0x8a, 0x82, 0x30 // add cc r8 r2 r5 ROR r10
1224 };
1225 const byte kInstruction_add_eq_r2_r10_r10_ASR_r3[] = {
1226   0x5a, 0x23, 0x8a, 0x00 // add eq r2 r10 r10 ASR r3
1227 };
1228 const byte kInstruction_add_vc_r1_r2_r11_LSR_r10[] = {
1229   0x3b, 0x1a, 0x82, 0x70 // add vc r1 r2 r11 LSR r10
1230 };
1231 const byte kInstruction_add_hi_r6_r1_r9_LSR_r1[] = {
1232   0x39, 0x61, 0x81, 0x80 // add hi r6 r1 r9 LSR r1
1233 };
1234 const byte kInstruction_add_cs_r10_r14_r10_LSL_r5[] = {
1235   0x1a, 0xa5, 0x8e, 0x20 // add cs r10 r14 r10 LSL r5
1236 };
1237 const byte kInstruction_add_mi_r3_r9_r3_LSL_r10[] = {
1238   0x13, 0x3a, 0x89, 0x40 // add mi r3 r9 r3 LSL r10
1239 };
1240 const byte kInstruction_add_vs_r2_r14_r3_LSL_r10[] = {
1241   0x13, 0x2a, 0x8e, 0x60 // add vs r2 r14 r3 LSL r10
1242 };
1243 const byte kInstruction_add_hi_r1_r2_r10_ASR_r1[] = {
1244   0x5a, 0x11, 0x82, 0x80 // add hi r1 r2 r10 ASR r1
1245 };
1246 const byte kInstruction_add_ne_r13_r8_r7_LSL_r11[] = {
1247   0x17, 0xdb, 0x88, 0x10 // add ne r13 r8 r7 LSL r11
1248 };
1249 const byte kInstruction_add_eq_r10_r10_r9_LSR_r9[] = {
1250   0x39, 0xa9, 0x8a, 0x00 // add eq r10 r10 r9 LSR r9
1251 };
1252 const byte kInstruction_add_eq_r12_r6_r2_ASR_r12[] = {
1253   0x52, 0xcc, 0x86, 0x00 // add eq r12 r6 r2 ASR r12
1254 };
1255 const byte kInstruction_add_cs_r14_r7_r3_LSR_r9[] = {
1256   0x33, 0xe9, 0x87, 0x20 // add cs r14 r7 r3 LSR r9
1257 };
1258 const byte kInstruction_add_vc_r11_r14_r12_ROR_r2[] = {
1259   0x7c, 0xb2, 0x8e, 0x70 // add vc r11 r14 r12 ROR r2
1260 };
1261 const byte kInstruction_add_lt_r11_r8_r3_LSR_r14[] = {
1262   0x33, 0xbe, 0x88, 0xb0 // add lt r11 r8 r3 LSR r14
1263 };
1264 const byte kInstruction_add_ls_r8_r8_r7_ROR_r14[] = {
1265   0x77, 0x8e, 0x88, 0x90 // add ls r8 r8 r7 ROR r14
1266 };
1267 const byte kInstruction_add_hi_r14_r0_r3_ROR_r0[] = {
1268   0x73, 0xe0, 0x80, 0x80 // add hi r14 r0 r3 ROR r0
1269 };
1270 const byte kInstruction_add_ge_r6_r2_r6_ROR_r13[] = {
1271   0x76, 0x6d, 0x82, 0xa0 // add ge r6 r2 r6 ROR r13
1272 };
1273 const byte kInstruction_add_le_r10_r10_r0_LSL_r2[] = {
1274   0x10, 0xa2, 0x8a, 0xd0 // add le r10 r10 r0 LSL r2
1275 };
1276 const byte kInstruction_add_cc_r4_r7_r1_LSR_r10[] = {
1277   0x31, 0x4a, 0x87, 0x30 // add cc r4 r7 r1 LSR r10
1278 };
1279 const byte kInstruction_add_al_r4_r0_r8_ROR_r7[] = {
1280   0x78, 0x47, 0x80, 0xe0 // add al r4 r0 r8 ROR r7
1281 };
1282 const byte kInstruction_add_ne_r10_r5_r3_LSL_r9[] = {
1283   0x13, 0xa9, 0x85, 0x10 // add ne r10 r5 r3 LSL r9
1284 };
1285 const byte kInstruction_add_vs_r11_r7_r5_LSL_r14[] = {
1286   0x15, 0xbe, 0x87, 0x60 // add vs r11 r7 r5 LSL r14
1287 };
1288 const byte kInstruction_add_eq_r7_r10_r14_ASR_r8[] = {
1289   0x5e, 0x78, 0x8a, 0x00 // add eq r7 r10 r14 ASR r8
1290 };
1291 const byte kInstruction_add_ls_r4_r5_r9_ASR_r1[] = {
1292   0x59, 0x41, 0x85, 0x90 // add ls r4 r5 r9 ASR r1
1293 };
1294 const byte kInstruction_add_lt_r13_r14_r8_ROR_r2[] = {
1295   0x78, 0xd2, 0x8e, 0xb0 // add lt r13 r14 r8 ROR r2
1296 };
1297 const byte kInstruction_add_cc_r7_r6_r9_LSR_r5[] = {
1298   0x39, 0x75, 0x86, 0x30 // add cc r7 r6 r9 LSR r5
1299 };
1300 const byte kInstruction_add_mi_r8_r7_r13_ASR_r2[] = {
1301   0x5d, 0x82, 0x87, 0x40 // add mi r8 r7 r13 ASR r2
1302 };
1303 const byte kInstruction_add_al_r2_r11_r2_LSR_r8[] = {
1304   0x32, 0x28, 0x8b, 0xe0 // add al r2 r11 r2 LSR r8
1305 };
1306 const byte kInstruction_add_al_r6_r7_r6_LSR_r1[] = {
1307   0x36, 0x61, 0x87, 0xe0 // add al r6 r7 r6 LSR r1
1308 };
1309 const byte kInstruction_add_cs_r4_r11_r6_LSR_r1[] = {
1310   0x36, 0x41, 0x8b, 0x20 // add cs r4 r11 r6 LSR r1
1311 };
1312 const byte kInstruction_add_ne_r14_r2_r2_ROR_r1[] = {
1313   0x72, 0xe1, 0x82, 0x10 // add ne r14 r2 r2 ROR r1
1314 };
1315 const byte kInstruction_add_ls_r5_r10_r3_LSR_r10[] = {
1316   0x33, 0x5a, 0x8a, 0x90 // add ls r5 r10 r3 LSR r10
1317 };
1318 const byte kInstruction_add_le_r12_r11_r9_ROR_r4[] = {
1319   0x79, 0xc4, 0x8b, 0xd0 // add le r12 r11 r9 ROR r4
1320 };
1321 const byte kInstruction_add_vs_r10_r1_r4_LSL_r4[] = {
1322   0x14, 0xa4, 0x81, 0x60 // add vs r10 r1 r4 LSL r4
1323 };
1324 const byte kInstruction_add_hi_r2_r5_r5_LSL_r10[] = {
1325   0x15, 0x2a, 0x85, 0x80 // add hi r2 r5 r5 LSL r10
1326 };
1327 const byte kInstruction_add_ls_r12_r3_r13_ROR_r4[] = {
1328   0x7d, 0xc4, 0x83, 0x90 // add ls r12 r3 r13 ROR r4
1329 };
1330 const byte kInstruction_add_pl_r3_r0_r2_ASR_r8[] = {
1331   0x52, 0x38, 0x80, 0x50 // add pl r3 r0 r2 ASR r8
1332 };
1333 const byte kInstruction_add_mi_r12_r5_r3_LSL_r1[] = {
1334   0x13, 0xc1, 0x85, 0x40 // add mi r12 r5 r3 LSL r1
1335 };
1336 const byte kInstruction_add_eq_r6_r11_r3_ROR_r2[] = {
1337   0x73, 0x62, 0x8b, 0x00 // add eq r6 r11 r3 ROR r2
1338 };
1339 const byte kInstruction_add_vs_r7_r10_r0_LSL_r6[] = {
1340   0x10, 0x76, 0x8a, 0x60 // add vs r7 r10 r0 LSL r6
1341 };
1342 const byte kInstruction_add_cs_r14_r2_r12_LSL_r12[] = {
1343   0x1c, 0xec, 0x82, 0x20 // add cs r14 r2 r12 LSL r12
1344 };
1345 const byte kInstruction_add_ls_r3_r5_r0_LSR_r10[] = {
1346   0x30, 0x3a, 0x85, 0x90 // add ls r3 r5 r0 LSR r10
1347 };
1348 const byte kInstruction_add_gt_r0_r12_r13_ROR_r1[] = {
1349   0x7d, 0x01, 0x8c, 0xc0 // add gt r0 r12 r13 ROR r1
1350 };
1351 const byte kInstruction_add_al_r4_r12_r1_ROR_r7[] = {
1352   0x71, 0x47, 0x8c, 0xe0 // add al r4 r12 r1 ROR r7
1353 };
1354 const byte kInstruction_add_hi_r6_r1_r10_LSL_r6[] = {
1355   0x1a, 0x66, 0x81, 0x80 // add hi r6 r1 r10 LSL r6
1356 };
1357 const byte kInstruction_add_ne_r9_r2_r0_ROR_r7[] = {
1358   0x70, 0x97, 0x82, 0x10 // add ne r9 r2 r0 ROR r7
1359 };
1360 const byte kInstruction_add_le_r5_r7_r5_LSR_r0[] = {
1361   0x35, 0x50, 0x87, 0xd0 // add le r5 r7 r5 LSR r0
1362 };
1363 const byte kInstruction_add_vs_r8_r11_r9_ROR_r10[] = {
1364   0x79, 0x8a, 0x8b, 0x60 // add vs r8 r11 r9 ROR r10
1365 };
1366 const byte kInstruction_add_gt_r6_r11_r12_ROR_r1[] = {
1367   0x7c, 0x61, 0x8b, 0xc0 // add gt r6 r11 r12 ROR r1
1368 };
1369 const byte kInstruction_add_ne_r2_r10_r4_ASR_r14[] = {
1370   0x54, 0x2e, 0x8a, 0x10 // add ne r2 r10 r4 ASR r14
1371 };
1372 const byte kInstruction_add_al_r8_r7_r0_ROR_r8[] = {
1373   0x70, 0x88, 0x87, 0xe0 // add al r8 r7 r0 ROR r8
1374 };
1375 const byte kInstruction_add_hi_r7_r10_r10_LSR_r3[] = {
1376   0x3a, 0x73, 0x8a, 0x80 // add hi r7 r10 r10 LSR r3
1377 };
1378 const byte kInstruction_add_cs_r5_r5_r4_LSL_r1[] = {
1379   0x14, 0x51, 0x85, 0x20 // add cs r5 r5 r4 LSL r1
1380 };
1381 const byte kInstruction_add_gt_r11_r14_r14_LSL_r7[] = {
1382   0x1e, 0xb7, 0x8e, 0xc0 // add gt r11 r14 r14 LSL r7
1383 };
1384 const byte kInstruction_add_lt_r1_r8_r1_LSR_r2[] = {
1385   0x31, 0x12, 0x88, 0xb0 // add lt r1 r8 r1 LSR r2
1386 };
1387 const byte kInstruction_add_hi_r2_r12_r9_ASR_r4[] = {
1388   0x59, 0x24, 0x8c, 0x80 // add hi r2 r12 r9 ASR r4
1389 };
1390 const byte kInstruction_add_eq_r8_r6_r7_ASR_r3[] = {
1391   0x57, 0x83, 0x86, 0x00 // add eq r8 r6 r7 ASR r3
1392 };
1393 const byte kInstruction_add_mi_r7_r7_r1_ROR_r1[] = {
1394   0x71, 0x71, 0x87, 0x40 // add mi r7 r7 r1 ROR r1
1395 };
1396 const byte kInstruction_add_cc_r12_r3_r13_LSL_r4[] = {
1397   0x1d, 0xc4, 0x83, 0x30 // add cc r12 r3 r13 LSL r4
1398 };
1399 const byte kInstruction_add_vs_r14_r1_r0_ASR_r4[] = {
1400   0x50, 0xe4, 0x81, 0x60 // add vs r14 r1 r0 ASR r4
1401 };
1402 const byte kInstruction_add_lt_r6_r2_r12_LSR_r4[] = {
1403   0x3c, 0x64, 0x82, 0xb0 // add lt r6 r2 r12 LSR r4
1404 };
1405 const byte kInstruction_add_pl_r13_r3_r1_LSL_r2[] = {
1406   0x11, 0xd2, 0x83, 0x50 // add pl r13 r3 r1 LSL r2
1407 };
1408 const byte kInstruction_add_ne_r7_r14_r5_ROR_r10[] = {
1409   0x75, 0x7a, 0x8e, 0x10 // add ne r7 r14 r5 ROR r10
1410 };
1411 const byte kInstruction_add_al_r9_r8_r9_LSL_r0[] = {
1412   0x19, 0x90, 0x88, 0xe0 // add al r9 r8 r9 LSL r0
1413 };
1414 const byte kInstruction_add_ge_r8_r7_r3_LSL_r13[] = {
1415   0x13, 0x8d, 0x87, 0xa0 // add ge r8 r7 r3 LSL r13
1416 };
1417 const byte kInstruction_add_lt_r12_r10_r4_ROR_r13[] = {
1418   0x74, 0xcd, 0x8a, 0xb0 // add lt r12 r10 r4 ROR r13
1419 };
1420 const byte kInstruction_add_vs_r9_r14_r5_LSR_r2[] = {
1421   0x35, 0x92, 0x8e, 0x60 // add vs r9 r14 r5 LSR r2
1422 };
1423 const byte kInstruction_add_pl_r4_r10_r0_ROR_r13[] = {
1424   0x70, 0x4d, 0x8a, 0x50 // add pl r4 r10 r0 ROR r13
1425 };
1426 const byte kInstruction_add_vc_r1_r14_r5_ASR_r14[] = {
1427   0x55, 0x1e, 0x8e, 0x70 // add vc r1 r14 r5 ASR r14
1428 };
1429 const byte kInstruction_add_vs_r10_r3_r8_LSR_r10[] = {
1430   0x38, 0xaa, 0x83, 0x60 // add vs r10 r3 r8 LSR r10
1431 };
1432 const byte kInstruction_add_eq_r1_r4_r11_ROR_r2[] = {
1433   0x7b, 0x12, 0x84, 0x00 // add eq r1 r4 r11 ROR r2
1434 };
1435 const byte kInstruction_add_pl_r2_r6_r10_LSL_r4[] = {
1436   0x1a, 0x24, 0x86, 0x50 // add pl r2 r6 r10 LSL r4
1437 };
1438 const byte kInstruction_add_ne_r9_r0_r3_ASR_r13[] = {
1439   0x53, 0x9d, 0x80, 0x10 // add ne r9 r0 r3 ASR r13
1440 };
1441 const byte kInstruction_add_gt_r10_r5_r5_ROR_r1[] = {
1442   0x75, 0xa1, 0x85, 0xc0 // add gt r10 r5 r5 ROR r1
1443 };
1444 const byte kInstruction_add_gt_r0_r8_r2_LSL_r2[] = {
1445   0x12, 0x02, 0x88, 0xc0 // add gt r0 r8 r2 LSL r2
1446 };
1447 const byte kInstruction_add_pl_r10_r9_r10_LSL_r10[] = {
1448   0x1a, 0xaa, 0x89, 0x50 // add pl r10 r9 r10 LSL r10
1449 };
1450 const byte kInstruction_add_ls_r5_r10_r0_LSR_r5[] = {
1451   0x30, 0x55, 0x8a, 0x90 // add ls r5 r10 r0 LSR r5
1452 };
1453 const byte kInstruction_add_al_r5_r10_r4_ROR_r9[] = {
1454   0x74, 0x59, 0x8a, 0xe0 // add al r5 r10 r4 ROR r9
1455 };
1456 const byte kInstruction_add_hi_r10_r7_r1_ROR_r10[] = {
1457   0x71, 0xaa, 0x87, 0x80 // add hi r10 r7 r1 ROR r10
1458 };
1459 const byte kInstruction_add_cs_r10_r12_r11_ROR_r9[] = {
1460   0x7b, 0xa9, 0x8c, 0x20 // add cs r10 r12 r11 ROR r9
1461 };
1462 const byte kInstruction_add_vs_r4_r0_r6_ASR_r3[] = {
1463   0x56, 0x43, 0x80, 0x60 // add vs r4 r0 r6 ASR r3
1464 };
1465 const byte kInstruction_add_hi_r8_r3_r4_LSR_r8[] = {
1466   0x34, 0x88, 0x83, 0x80 // add hi r8 r3 r4 LSR r8
1467 };
1468 const byte kInstruction_add_mi_r4_r2_r1_ROR_r6[] = {
1469   0x71, 0x46, 0x82, 0x40 // add mi r4 r2 r1 ROR r6
1470 };
1471 const byte kInstruction_add_cs_r7_r5_r4_LSR_r3[] = {
1472   0x34, 0x73, 0x85, 0x20 // add cs r7 r5 r4 LSR r3
1473 };
1474 const byte kInstruction_add_le_r12_r12_r9_ASR_r4[] = {
1475   0x59, 0xc4, 0x8c, 0xd0 // add le r12 r12 r9 ASR r4
1476 };
1477 const byte kInstruction_add_vc_r7_r4_r13_LSR_r8[] = {
1478   0x3d, 0x78, 0x84, 0x70 // add vc r7 r4 r13 LSR r8
1479 };
1480 const byte kInstruction_add_le_r0_r14_r14_ROR_r9[] = {
1481   0x7e, 0x09, 0x8e, 0xd0 // add le r0 r14 r14 ROR r9
1482 };
1483 const byte kInstruction_add_le_r0_r8_r13_LSL_r2[] = {
1484   0x1d, 0x02, 0x88, 0xd0 // add le r0 r8 r13 LSL r2
1485 };
1486 const byte kInstruction_add_vc_r6_r3_r0_LSL_r6[] = {
1487   0x10, 0x66, 0x83, 0x70 // add vc r6 r3 r0 LSL r6
1488 };
1489 const byte kInstruction_add_vc_r12_r1_r11_ASR_r8[] = {
1490   0x5b, 0xc8, 0x81, 0x70 // add vc r12 r1 r11 ASR r8
1491 };
1492 const byte kInstruction_add_lt_r13_r10_r0_LSL_r9[] = {
1493   0x10, 0xd9, 0x8a, 0xb0 // add lt r13 r10 r0 LSL r9
1494 };
1495 const byte kInstruction_add_cc_r0_r1_r0_ASR_r6[] = {
1496   0x50, 0x06, 0x81, 0x30 // add cc r0 r1 r0 ASR r6
1497 };
1498 const byte kInstruction_add_eq_r12_r12_r14_LSR_r12[] = {
1499   0x3e, 0xcc, 0x8c, 0x00 // add eq r12 r12 r14 LSR r12
1500 };
1501 const byte kInstruction_add_eq_r7_r12_r3_LSR_r7[] = {
1502   0x33, 0x77, 0x8c, 0x00 // add eq r7 r12 r3 LSR r7
1503 };
1504 const byte kInstruction_add_lt_r6_r4_r6_ASR_r4[] = {
1505   0x56, 0x64, 0x84, 0xb0 // add lt r6 r4 r6 ASR r4
1506 };
1507 const byte kInstruction_add_vs_r0_r3_r3_ROR_r8[] = {
1508   0x73, 0x08, 0x83, 0x60 // add vs r0 r3 r3 ROR r8
1509 };
1510 const byte kInstruction_add_vc_r2_r12_r3_LSR_r14[] = {
1511   0x33, 0x2e, 0x8c, 0x70 // add vc r2 r12 r3 LSR r14
1512 };
1513 const byte kInstruction_add_ne_r2_r0_r14_ASR_r9[] = {
1514   0x5e, 0x29, 0x80, 0x10 // add ne r2 r0 r14 ASR r9
1515 };
1516 const byte kInstruction_add_al_r14_r2_r4_ROR_r10[] = {
1517   0x74, 0xea, 0x82, 0xe0 // add al r14 r2 r4 ROR r10
1518 };
1519 const byte kInstruction_add_ge_r10_r3_r12_LSR_r12[] = {
1520   0x3c, 0xac, 0x83, 0xa0 // add ge r10 r3 r12 LSR r12
1521 };
1522 const byte kInstruction_add_pl_r6_r11_r8_LSL_r14[] = {
1523   0x18, 0x6e, 0x8b, 0x50 // add pl r6 r11 r8 LSL r14
1524 };
1525 const byte kInstruction_add_gt_r8_r1_r7_LSR_r0[] = {
1526   0x37, 0x80, 0x81, 0xc0 // add gt r8 r1 r7 LSR r0
1527 };
1528 const byte kInstruction_add_eq_r1_r14_r6_ASR_r12[] = {
1529   0x56, 0x1c, 0x8e, 0x00 // add eq r1 r14 r6 ASR r12
1530 };
1531 const byte kInstruction_add_gt_r8_r1_r11_LSR_r7[] = {
1532   0x3b, 0x87, 0x81, 0xc0 // add gt r8 r1 r11 LSR r7
1533 };
1534 const byte kInstruction_add_cc_r4_r13_r4_ROR_r4[] = {
1535   0x74, 0x44, 0x8d, 0x30 // add cc r4 r13 r4 ROR r4
1536 };
1537 const byte kInstruction_add_vc_r5_r0_r12_LSR_r11[] = {
1538   0x3c, 0x5b, 0x80, 0x70 // add vc r5 r0 r12 LSR r11
1539 };
1540 const byte kInstruction_add_eq_r3_r0_r1_LSL_r13[] = {
1541   0x11, 0x3d, 0x80, 0x00 // add eq r3 r0 r1 LSL r13
1542 };
1543 const byte kInstruction_add_lt_r1_r0_r11_ASR_r6[] = {
1544   0x5b, 0x16, 0x80, 0xb0 // add lt r1 r0 r11 ASR r6
1545 };
1546 const byte kInstruction_add_hi_r6_r2_r1_ASR_r0[] = {
1547   0x51, 0x60, 0x82, 0x80 // add hi r6 r2 r1 ASR r0
1548 };
1549 const byte kInstruction_add_eq_r1_r2_r11_LSL_r11[] = {
1550   0x1b, 0x1b, 0x82, 0x00 // add eq r1 r2 r11 LSL r11
1551 };
1552 const byte kInstruction_add_cs_r12_r9_r14_ROR_r10[] = {
1553   0x7e, 0xca, 0x89, 0x20 // add cs r12 r9 r14 ROR r10
1554 };
1555 const byte kInstruction_add_ne_r8_r10_r7_ROR_r0[] = {
1556   0x77, 0x80, 0x8a, 0x10 // add ne r8 r10 r7 ROR r0
1557 };
1558 const byte kInstruction_add_pl_r8_r14_r8_ASR_r10[] = {
1559   0x58, 0x8a, 0x8e, 0x50 // add pl r8 r14 r8 ASR r10
1560 };
1561 const byte kInstruction_add_cc_r4_r3_r10_LSR_r9[] = {
1562   0x3a, 0x49, 0x83, 0x30 // add cc r4 r3 r10 LSR r9
1563 };
1564 const byte kInstruction_add_le_r4_r1_r2_ASR_r6[] = {
1565   0x52, 0x46, 0x81, 0xd0 // add le r4 r1 r2 ASR r6
1566 };
1567 const byte kInstruction_add_vs_r0_r3_r5_ASR_r3[] = {
1568   0x55, 0x03, 0x83, 0x60 // add vs r0 r3 r5 ASR r3
1569 };
1570 const byte kInstruction_add_lt_r5_r14_r1_ROR_r12[] = {
1571   0x71, 0x5c, 0x8e, 0xb0 // add lt r5 r14 r1 ROR r12
1572 };
1573 const byte kInstruction_add_lt_r2_r0_r14_LSL_r13[] = {
1574   0x1e, 0x2d, 0x80, 0xb0 // add lt r2 r0 r14 LSL r13
1575 };
1576 const byte kInstruction_add_cs_r5_r12_r12_ASR_r3[] = {
1577   0x5c, 0x53, 0x8c, 0x20 // add cs r5 r12 r12 ASR r3
1578 };
1579 const byte kInstruction_add_ls_r14_r1_r2_ROR_r7[] = {
1580   0x72, 0xe7, 0x81, 0x90 // add ls r14 r1 r2 ROR r7
1581 };
1582 const byte kInstruction_add_ge_r6_r3_r14_ROR_r4[] = {
1583   0x7e, 0x64, 0x83, 0xa0 // add ge r6 r3 r14 ROR r4
1584 };
1585 const byte kInstruction_add_al_r13_r1_r9_ROR_r10[] = {
1586   0x79, 0xda, 0x81, 0xe0 // add al r13 r1 r9 ROR r10
1587 };
1588 const byte kInstruction_add_al_r0_r4_r5_ASR_r2[] = {
1589   0x55, 0x02, 0x84, 0xe0 // add al r0 r4 r5 ASR r2
1590 };
1591 const byte kInstruction_add_cc_r6_r13_r12_ASR_r8[] = {
1592   0x5c, 0x68, 0x8d, 0x30 // add cc r6 r13 r12 ASR r8
1593 };
1594 const byte kInstruction_add_eq_r0_r14_r13_LSR_r10[] = {
1595   0x3d, 0x0a, 0x8e, 0x00 // add eq r0 r14 r13 LSR r10
1596 };
1597 const byte kInstruction_add_vs_r5_r8_r6_ASR_r7[] = {
1598   0x56, 0x57, 0x88, 0x60 // add vs r5 r8 r6 ASR r7
1599 };
1600 const byte kInstruction_add_cs_r9_r2_r10_LSL_r9[] = {
1601   0x1a, 0x99, 0x82, 0x20 // add cs r9 r2 r10 LSL r9
1602 };
1603 const byte kInstruction_add_hi_r3_r0_r13_ASR_r5[] = {
1604   0x5d, 0x35, 0x80, 0x80 // add hi r3 r0 r13 ASR r5
1605 };
1606 const byte kInstruction_add_al_r9_r10_r10_ASR_r5[] = {
1607   0x5a, 0x95, 0x8a, 0xe0 // add al r9 r10 r10 ASR r5
1608 };
1609 const byte kInstruction_add_eq_r3_r13_r3_LSL_r9[] = {
1610   0x13, 0x39, 0x8d, 0x00 // add eq r3 r13 r3 LSL r9
1611 };
1612 const byte kInstruction_add_al_r0_r3_r13_LSL_r13[] = {
1613   0x1d, 0x0d, 0x83, 0xe0 // add al r0 r3 r13 LSL r13
1614 };
1615 const byte kInstruction_add_le_r0_r14_r10_ASR_r5[] = {
1616   0x5a, 0x05, 0x8e, 0xd0 // add le r0 r14 r10 ASR r5
1617 };
1618 const byte kInstruction_add_vs_r14_r1_r3_ASR_r0[] = {
1619   0x53, 0xe0, 0x81, 0x60 // add vs r14 r1 r3 ASR r0
1620 };
1621 const byte kInstruction_add_pl_r8_r9_r3_LSL_r10[] = {
1622   0x13, 0x8a, 0x89, 0x50 // add pl r8 r9 r3 LSL r10
1623 };
1624 const byte kInstruction_add_ge_r13_r9_r0_ROR_r0[] = {
1625   0x70, 0xd0, 0x89, 0xa0 // add ge r13 r9 r0 ROR r0
1626 };
1627 const byte kInstruction_add_gt_r14_r11_r1_LSR_r0[] = {
1628   0x31, 0xe0, 0x8b, 0xc0 // add gt r14 r11 r1 LSR r0
1629 };
1630 const byte kInstruction_add_ls_r9_r2_r9_ROR_r14[] = {
1631   0x79, 0x9e, 0x82, 0x90 // add ls r9 r2 r9 ROR r14
1632 };
1633 const byte kInstruction_add_mi_r12_r4_r9_LSR_r7[] = {
1634   0x39, 0xc7, 0x84, 0x40 // add mi r12 r4 r9 LSR r7
1635 };
1636 const byte kInstruction_add_lt_r9_r14_r5_ASR_r14[] = {
1637   0x55, 0x9e, 0x8e, 0xb0 // add lt r9 r14 r5 ASR r14
1638 };
1639 const byte kInstruction_add_ne_r11_r8_r12_LSL_r14[] = {
1640   0x1c, 0xbe, 0x88, 0x10 // add ne r11 r8 r12 LSL r14
1641 };
1642 const byte kInstruction_add_lt_r3_r11_r12_LSR_r3[] = {
1643   0x3c, 0x33, 0x8b, 0xb0 // add lt r3 r11 r12 LSR r3
1644 };
1645 const byte kInstruction_add_cs_r8_r12_r8_LSL_r13[] = {
1646   0x18, 0x8d, 0x8c, 0x20 // add cs r8 r12 r8 LSL r13
1647 };
1648 const byte kInstruction_add_gt_r1_r4_r4_LSL_r5[] = {
1649   0x14, 0x15, 0x84, 0xc0 // add gt r1 r4 r4 LSL r5
1650 };
1651 const byte kInstruction_add_ge_r5_r12_r10_ASR_r13[] = {
1652   0x5a, 0x5d, 0x8c, 0xa0 // add ge r5 r12 r10 ASR r13
1653 };
1654 const byte kInstruction_add_cs_r1_r6_r9_LSL_r6[] = {
1655   0x19, 0x16, 0x86, 0x20 // add cs r1 r6 r9 LSL r6
1656 };
1657 const byte kInstruction_add_pl_r0_r13_r7_ASR_r8[] = {
1658   0x57, 0x08, 0x8d, 0x50 // add pl r0 r13 r7 ASR r8
1659 };
1660 const byte kInstruction_add_lt_r8_r11_r9_LSL_r4[] = {
1661   0x19, 0x84, 0x8b, 0xb0 // add lt r8 r11 r9 LSL r4
1662 };
1663 const byte kInstruction_add_hi_r9_r1_r6_LSL_r6[] = {
1664   0x16, 0x96, 0x81, 0x80 // add hi r9 r1 r6 LSL r6
1665 };
1666 const byte kInstruction_add_cc_r11_r9_r10_ASR_r2[] = {
1667   0x5a, 0xb2, 0x89, 0x30 // add cc r11 r9 r10 ASR r2
1668 };
1669 const byte kInstruction_add_gt_r4_r0_r10_LSR_r4[] = {
1670   0x3a, 0x44, 0x80, 0xc0 // add gt r4 r0 r10 LSR r4
1671 };
1672 const byte kInstruction_add_al_r8_r10_r4_LSL_r13[] = {
1673   0x14, 0x8d, 0x8a, 0xe0 // add al r8 r10 r4 LSL r13
1674 };
1675 const byte kInstruction_add_vs_r6_r8_r13_ASR_r10[] = {
1676   0x5d, 0x6a, 0x88, 0x60 // add vs r6 r8 r13 ASR r10
1677 };
1678 const byte kInstruction_add_mi_r13_r13_r14_ROR_r8[] = {
1679   0x7e, 0xd8, 0x8d, 0x40 // add mi r13 r13 r14 ROR r8
1680 };
1681 const byte kInstruction_add_mi_r3_r13_r11_LSL_r8[] = {
1682   0x1b, 0x38, 0x8d, 0x40 // add mi r3 r13 r11 LSL r8
1683 };
1684 const byte kInstruction_add_cc_r11_r4_r1_LSR_r14[] = {
1685   0x31, 0xbe, 0x84, 0x30 // add cc r11 r4 r1 LSR r14
1686 };
1687 const byte kInstruction_add_al_r6_r7_r9_ASR_r7[] = {
1688   0x59, 0x67, 0x87, 0xe0 // add al r6 r7 r9 ASR r7
1689 };
1690 const byte kInstruction_add_cs_r10_r2_r10_LSL_r13[] = {
1691   0x1a, 0xad, 0x82, 0x20 // add cs r10 r2 r10 LSL r13
1692 };
1693 const byte kInstruction_add_eq_r1_r10_r14_ROR_r12[] = {
1694   0x7e, 0x1c, 0x8a, 0x00 // add eq r1 r10 r14 ROR r12
1695 };
1696 const byte kInstruction_add_ge_r4_r5_r6_LSR_r13[] = {
1697   0x36, 0x4d, 0x85, 0xa0 // add ge r4 r5 r6 LSR r13
1698 };
1699 const byte kInstruction_add_cs_r11_r6_r1_LSR_r12[] = {
1700   0x31, 0xbc, 0x86, 0x20 // add cs r11 r6 r1 LSR r12
1701 };
1702 const byte kInstruction_add_lt_r6_r6_r8_LSL_r10[] = {
1703   0x18, 0x6a, 0x86, 0xb0 // add lt r6 r6 r8 LSL r10
1704 };
1705 const byte kInstruction_add_mi_r2_r12_r8_LSL_r2[] = {
1706   0x18, 0x22, 0x8c, 0x40 // add mi r2 r12 r8 LSL r2
1707 };
1708 const byte kInstruction_add_le_r2_r11_r3_ROR_r2[] = {
1709   0x73, 0x22, 0x8b, 0xd0 // add le r2 r11 r3 ROR r2
1710 };
1711 const byte kInstruction_add_eq_r7_r4_r2_LSR_r11[] = {
1712   0x32, 0x7b, 0x84, 0x00 // add eq r7 r4 r2 LSR r11
1713 };
1714 const byte kInstruction_add_pl_r10_r8_r3_ASR_r12[] = {
1715   0x53, 0xac, 0x88, 0x50 // add pl r10 r8 r3 ASR r12
1716 };
1717 const byte kInstruction_add_ge_r4_r8_r11_ROR_r13[] = {
1718   0x7b, 0x4d, 0x88, 0xa0 // add ge r4 r8 r11 ROR r13
1719 };
1720 const byte kInstruction_add_ge_r13_r3_r14_LSL_r11[] = {
1721   0x1e, 0xdb, 0x83, 0xa0 // add ge r13 r3 r14 LSL r11
1722 };
1723 const byte kInstruction_add_cc_r2_r8_r8_LSL_r14[] = {
1724   0x18, 0x2e, 0x88, 0x30 // add cc r2 r8 r8 LSL r14
1725 };
1726 const byte kInstruction_add_le_r3_r2_r5_LSR_r6[] = {
1727   0x35, 0x36, 0x82, 0xd0 // add le r3 r2 r5 LSR r6
1728 };
1729 const byte kInstruction_add_ls_r1_r9_r9_ROR_r3[] = {
1730   0x79, 0x13, 0x89, 0x90 // add ls r1 r9 r9 ROR r3
1731 };
1732 const byte kInstruction_add_pl_r14_r9_r3_ASR_r9[] = {
1733   0x53, 0xe9, 0x89, 0x50 // add pl r14 r9 r3 ASR r9
1734 };
1735 const byte kInstruction_add_cs_r13_r2_r9_ROR_r7[] = {
1736   0x79, 0xd7, 0x82, 0x20 // add cs r13 r2 r9 ROR r7
1737 };
1738 const byte kInstruction_add_eq_r9_r10_r4_ROR_r8[] = {
1739   0x74, 0x98, 0x8a, 0x00 // add eq r9 r10 r4 ROR r8
1740 };
1741 const byte kInstruction_add_lt_r1_r2_r0_ROR_r9[] = {
1742   0x70, 0x19, 0x82, 0xb0 // add lt r1 r2 r0 ROR r9
1743 };
1744 const byte kInstruction_add_hi_r14_r1_r2_LSR_r8[] = {
1745   0x32, 0xe8, 0x81, 0x80 // add hi r14 r1 r2 LSR r8
1746 };
1747 const byte kInstruction_add_ne_r10_r7_r3_ROR_r13[] = {
1748   0x73, 0xad, 0x87, 0x10 // add ne r10 r7 r3 ROR r13
1749 };
1750 const byte kInstruction_add_ls_r3_r6_r3_LSL_r1[] = {
1751   0x13, 0x31, 0x86, 0x90 // add ls r3 r6 r3 LSL r1
1752 };
1753 const byte kInstruction_add_eq_r3_r0_r12_ROR_r6[] = {
1754   0x7c, 0x36, 0x80, 0x00 // add eq r3 r0 r12 ROR r6
1755 };
1756 const byte kInstruction_add_cc_r7_r4_r8_LSL_r6[] = {
1757   0x18, 0x76, 0x84, 0x30 // add cc r7 r4 r8 LSL r6
1758 };
1759 const byte kInstruction_add_al_r0_r7_r2_LSR_r3[] = {
1760   0x32, 0x03, 0x87, 0xe0 // add al r0 r7 r2 LSR r3
1761 };
1762 const byte kInstruction_add_pl_r13_r4_r14_ASR_r10[] = {
1763   0x5e, 0xda, 0x84, 0x50 // add pl r13 r4 r14 ASR r10
1764 };
1765 const byte kInstruction_add_vs_r7_r14_r4_ASR_r12[] = {
1766   0x54, 0x7c, 0x8e, 0x60 // add vs r7 r14 r4 ASR r12
1767 };
1768 const byte kInstruction_add_al_r3_r2_r12_ASR_r13[] = {
1769   0x5c, 0x3d, 0x82, 0xe0 // add al r3 r2 r12 ASR r13
1770 };
1771 const byte kInstruction_add_vs_r12_r13_r12_LSL_r2[] = {
1772   0x1c, 0xc2, 0x8d, 0x60 // add vs r12 r13 r12 LSL r2
1773 };
1774 const byte kInstruction_add_ge_r8_r7_r10_LSR_r8[] = {
1775   0x3a, 0x88, 0x87, 0xa0 // add ge r8 r7 r10 LSR r8
1776 };
1777 const byte kInstruction_add_vs_r14_r10_r1_LSR_r0[] = {
1778   0x31, 0xe0, 0x8a, 0x60 // add vs r14 r10 r1 LSR r0
1779 };
1780 const byte kInstruction_add_ls_r13_r11_r6_LSL_r6[] = {
1781   0x16, 0xd6, 0x8b, 0x90 // add ls r13 r11 r6 LSL r6
1782 };
1783 const byte kInstruction_add_ne_r3_r1_r2_ASR_r6[] = {
1784   0x52, 0x36, 0x81, 0x10 // add ne r3 r1 r2 ASR r6
1785 };
1786 const byte kInstruction_add_cs_r2_r9_r11_ROR_r0[] = {
1787   0x7b, 0x20, 0x89, 0x20 // add cs r2 r9 r11 ROR r0
1788 };
1789 const byte kInstruction_add_ls_r7_r12_r9_LSR_r5[] = {
1790   0x39, 0x75, 0x8c, 0x90 // add ls r7 r12 r9 LSR r5
1791 };
1792 const byte kInstruction_add_ls_r13_r9_r11_ASR_r8[] = {
1793   0x5b, 0xd8, 0x89, 0x90 // add ls r13 r9 r11 ASR r8
1794 };
1795 const byte kInstruction_add_mi_r6_r7_r4_ASR_r0[] = {
1796   0x54, 0x60, 0x87, 0x40 // add mi r6 r7 r4 ASR r0
1797 };
1798 const byte kInstruction_add_cc_r10_r7_r3_ROR_r2[] = {
1799   0x73, 0xa2, 0x87, 0x30 // add cc r10 r7 r3 ROR r2
1800 };
1801 const byte kInstruction_add_ne_r3_r8_r12_ROR_r1[] = {
1802   0x7c, 0x31, 0x88, 0x10 // add ne r3 r8 r12 ROR r1
1803 };
1804 const byte kInstruction_add_hi_r5_r11_r7_ROR_r11[] = {
1805   0x77, 0x5b, 0x8b, 0x80 // add hi r5 r11 r7 ROR r11
1806 };
1807 const byte kInstruction_add_eq_r12_r10_r1_LSL_r0[] = {
1808   0x11, 0xc0, 0x8a, 0x00 // add eq r12 r10 r1 LSL r0
1809 };
1810 const byte kInstruction_add_mi_r2_r7_r0_LSR_r10[] = {
1811   0x30, 0x2a, 0x87, 0x40 // add mi r2 r7 r0 LSR r10
1812 };
1813 const byte kInstruction_add_ge_r8_r5_r12_LSR_r6[] = {
1814   0x3c, 0x86, 0x85, 0xa0 // add ge r8 r5 r12 LSR r6
1815 };
1816 const byte kInstruction_add_vc_r1_r0_r14_ROR_r4[] = {
1817   0x7e, 0x14, 0x80, 0x70 // add vc r1 r0 r14 ROR r4
1818 };
1819 const byte kInstruction_add_gt_r5_r2_r1_LSR_r0[] = {
1820   0x31, 0x50, 0x82, 0xc0 // add gt r5 r2 r1 LSR r0
1821 };
1822 const byte kInstruction_add_cs_r1_r1_r2_LSR_r5[] = {
1823   0x32, 0x15, 0x81, 0x20 // add cs r1 r1 r2 LSR r5
1824 };
1825 const byte kInstruction_add_ge_r9_r14_r9_ASR_r3[] = {
1826   0x59, 0x93, 0x8e, 0xa0 // add ge r9 r14 r9 ASR r3
1827 };
1828 const byte kInstruction_add_gt_r9_r1_r10_LSR_r14[] = {
1829   0x3a, 0x9e, 0x81, 0xc0 // add gt r9 r1 r10 LSR r14
1830 };
1831 const byte kInstruction_add_ls_r3_r5_r2_ASR_r7[] = {
1832   0x52, 0x37, 0x85, 0x90 // add ls r3 r5 r2 ASR r7
1833 };
1834 const byte kInstruction_add_ls_r7_r11_r8_LSR_r12[] = {
1835   0x38, 0x7c, 0x8b, 0x90 // add ls r7 r11 r8 LSR r12
1836 };
1837 const byte kInstruction_add_ls_r14_r9_r6_LSR_r9[] = {
1838   0x36, 0xe9, 0x89, 0x90 // add ls r14 r9 r6 LSR r9
1839 };
1840 const byte kInstruction_add_cs_r2_r12_r10_ROR_r5[] = {
1841   0x7a, 0x25, 0x8c, 0x20 // add cs r2 r12 r10 ROR r5
1842 };
1843 const byte kInstruction_add_eq_r8_r6_r14_LSR_r9[] = {
1844   0x3e, 0x89, 0x86, 0x00 // add eq r8 r6 r14 LSR r9
1845 };
1846 const byte kInstruction_add_lt_r8_r0_r14_ASR_r12[] = {
1847   0x5e, 0x8c, 0x80, 0xb0 // add lt r8 r0 r14 ASR r12
1848 };
1849 const byte kInstruction_add_al_r14_r7_r8_ROR_r8[] = {
1850   0x78, 0xe8, 0x87, 0xe0 // add al r14 r7 r8 ROR r8
1851 };
1852 const byte kInstruction_add_lt_r5_r12_r3_LSL_r5[] = {
1853   0x13, 0x55, 0x8c, 0xb0 // add lt r5 r12 r3 LSL r5
1854 };
1855 const byte kInstruction_add_gt_r0_r0_r3_ROR_r12[] = {
1856   0x73, 0x0c, 0x80, 0xc0 // add gt r0 r0 r3 ROR r12
1857 };
1858 const byte kInstruction_add_ge_r6_r5_r10_ASR_r13[] = {
1859   0x5a, 0x6d, 0x85, 0xa0 // add ge r6 r5 r10 ASR r13
1860 };
1861 const byte kInstruction_add_vc_r5_r11_r6_LSL_r11[] = {
1862   0x16, 0x5b, 0x8b, 0x70 // add vc r5 r11 r6 LSL r11
1863 };
1864 const byte kInstruction_add_gt_r10_r5_r9_LSR_r3[] = {
1865   0x39, 0xa3, 0x85, 0xc0 // add gt r10 r5 r9 LSR r3
1866 };
1867 const byte kInstruction_add_vc_r14_r3_r12_LSL_r2[] = {
1868   0x1c, 0xe2, 0x83, 0x70 // add vc r14 r3 r12 LSL r2
1869 };
1870 const byte kInstruction_add_eq_r12_r2_r13_LSL_r6[] = {
1871   0x1d, 0xc6, 0x82, 0x00 // add eq r12 r2 r13 LSL r6
1872 };
1873 const byte kInstruction_add_le_r5_r7_r12_LSL_r10[] = {
1874   0x1c, 0x5a, 0x87, 0xd0 // add le r5 r7 r12 LSL r10
1875 };
1876 const byte kInstruction_add_cc_r8_r4_r1_LSR_r3[] = {
1877   0x31, 0x83, 0x84, 0x30 // add cc r8 r4 r1 LSR r3
1878 };
1879 const byte kInstruction_add_ne_r2_r13_r1_LSL_r13[] = {
1880   0x11, 0x2d, 0x8d, 0x10 // add ne r2 r13 r1 LSL r13
1881 };
1882 const byte kInstruction_add_ls_r14_r7_r8_ASR_r0[] = {
1883   0x58, 0xe0, 0x87, 0x90 // add ls r14 r7 r8 ASR r0
1884 };
1885 const byte kInstruction_add_mi_r3_r0_r5_ASR_r8[] = {
1886   0x55, 0x38, 0x80, 0x40 // add mi r3 r0 r5 ASR r8
1887 };
1888 const byte kInstruction_add_mi_r2_r3_r1_LSL_r3[] = {
1889   0x11, 0x23, 0x83, 0x40 // add mi r2 r3 r1 LSL r3
1890 };
1891 const byte kInstruction_add_vs_r14_r4_r4_LSR_r5[] = {
1892   0x34, 0xe5, 0x84, 0x60 // add vs r14 r4 r4 LSR r5
1893 };
1894 const byte kInstruction_add_le_r7_r3_r1_LSL_r10[] = {
1895   0x11, 0x7a, 0x83, 0xd0 // add le r7 r3 r1 LSL r10
1896 };
1897 const byte kInstruction_add_mi_r7_r14_r4_ASR_r14[] = {
1898   0x54, 0x7e, 0x8e, 0x40 // add mi r7 r14 r4 ASR r14
1899 };
1900 const byte kInstruction_add_mi_r11_r5_r4_ASR_r13[] = {
1901   0x54, 0xbd, 0x85, 0x40 // add mi r11 r5 r4 ASR r13
1902 };
1903 const byte kInstruction_add_vs_r3_r10_r5_LSR_r9[] = {
1904   0x35, 0x39, 0x8a, 0x60 // add vs r3 r10 r5 LSR r9
1905 };
1906 const byte kInstruction_add_hi_r11_r3_r11_LSR_r7[] = {
1907   0x3b, 0xb7, 0x83, 0x80 // add hi r11 r3 r11 LSR r7
1908 };
1909 const byte kInstruction_add_ls_r14_r4_r10_LSL_r13[] = {
1910   0x1a, 0xed, 0x84, 0x90 // add ls r14 r4 r10 LSL r13
1911 };
1912 const byte kInstruction_add_cc_r11_r0_r13_LSL_r7[] = {
1913   0x1d, 0xb7, 0x80, 0x30 // add cc r11 r0 r13 LSL r7
1914 };
1915 const byte kInstruction_add_al_r10_r3_r7_ASR_r0[] = {
1916   0x57, 0xa0, 0x83, 0xe0 // add al r10 r3 r7 ASR r0
1917 };
1918 const byte kInstruction_add_cs_r4_r7_r1_ROR_r8[] = {
1919   0x71, 0x48, 0x87, 0x20 // add cs r4 r7 r1 ROR r8
1920 };
1921 const byte kInstruction_add_lt_r4_r0_r2_LSR_r5[] = {
1922   0x32, 0x45, 0x80, 0xb0 // add lt r4 r0 r2 LSR r5
1923 };
1924 const byte kInstruction_add_eq_r0_r11_r9_LSL_r8[] = {
1925   0x19, 0x08, 0x8b, 0x00 // add eq r0 r11 r9 LSL r8
1926 };
1927 const byte kInstruction_add_mi_r6_r1_r4_LSL_r13[] = {
1928   0x14, 0x6d, 0x81, 0x40 // add mi r6 r1 r4 LSL r13
1929 };
1930 const byte kInstruction_add_lt_r8_r13_r9_ASR_r5[] = {
1931   0x59, 0x85, 0x8d, 0xb0 // add lt r8 r13 r9 ASR r5
1932 };
1933 const byte kInstruction_add_lt_r13_r7_r1_ROR_r0[] = {
1934   0x71, 0xd0, 0x87, 0xb0 // add lt r13 r7 r1 ROR r0
1935 };
1936 const byte kInstruction_add_hi_r12_r10_r5_ASR_r5[] = {
1937   0x55, 0xc5, 0x8a, 0x80 // add hi r12 r10 r5 ASR r5
1938 };
1939 const byte kInstruction_add_hi_r12_r11_r7_ROR_r3[] = {
1940   0x77, 0xc3, 0x8b, 0x80 // add hi r12 r11 r7 ROR r3
1941 };
1942 const byte kInstruction_add_ge_r8_r5_r0_ASR_r14[] = {
1943   0x50, 0x8e, 0x85, 0xa0 // add ge r8 r5 r0 ASR r14
1944 };
1945 const byte kInstruction_add_mi_r5_r0_r11_LSR_r10[] = {
1946   0x3b, 0x5a, 0x80, 0x40 // add mi r5 r0 r11 LSR r10
1947 };
1948 const byte kInstruction_add_vs_r10_r11_r2_LSR_r0[] = {
1949   0x32, 0xa0, 0x8b, 0x60 // add vs r10 r11 r2 LSR r0
1950 };
1951 const byte kInstruction_add_ls_r10_r8_r6_ROR_r3[] = {
1952   0x76, 0xa3, 0x88, 0x90 // add ls r10 r8 r6 ROR r3
1953 };
1954 const byte kInstruction_add_gt_r10_r0_r2_ROR_r3[] = {
1955   0x72, 0xa3, 0x80, 0xc0 // add gt r10 r0 r2 ROR r3
1956 };
1957 const byte kInstruction_add_vs_r4_r10_r10_LSL_r5[] = {
1958   0x1a, 0x45, 0x8a, 0x60 // add vs r4 r10 r10 LSL r5
1959 };
1960 const byte kInstruction_add_vc_r12_r11_r12_LSR_r2[] = {
1961   0x3c, 0xc2, 0x8b, 0x70 // add vc r12 r11 r12 LSR r2
1962 };
1963 const byte kInstruction_add_eq_r5_r8_r2_LSR_r1[] = {
1964   0x32, 0x51, 0x88, 0x00 // add eq r5 r8 r2 LSR r1
1965 };
1966 const byte kInstruction_add_le_r8_r10_r4_LSL_r3[] = {
1967   0x14, 0x83, 0x8a, 0xd0 // add le r8 r10 r4 LSL r3
1968 };
1969 const byte kInstruction_add_al_r1_r10_r10_ROR_r10[] = {
1970   0x7a, 0x1a, 0x8a, 0xe0 // add al r1 r10 r10 ROR r10
1971 };
1972 const byte kInstruction_add_al_r5_r5_r6_ROR_r11[] = {
1973   0x76, 0x5b, 0x85, 0xe0 // add al r5 r5 r6 ROR r11
1974 };
1975 const byte kInstruction_add_vs_r4_r0_r9_ASR_r4[] = {
1976   0x59, 0x44, 0x80, 0x60 // add vs r4 r0 r9 ASR r4
1977 };
1978 const byte kInstruction_add_gt_r6_r9_r1_LSL_r9[] = {
1979   0x11, 0x69, 0x89, 0xc0 // add gt r6 r9 r1 LSL r9
1980 };
1981 const byte kInstruction_add_lt_r3_r12_r10_LSR_r0[] = {
1982   0x3a, 0x30, 0x8c, 0xb0 // add lt r3 r12 r10 LSR r0
1983 };
1984 const byte kInstruction_add_eq_r2_r0_r8_LSR_r0[] = {
1985   0x38, 0x20, 0x80, 0x00 // add eq r2 r0 r8 LSR r0
1986 };
1987 const byte kInstruction_add_gt_r0_r11_r7_LSR_r14[] = {
1988   0x37, 0x0e, 0x8b, 0xc0 // add gt r0 r11 r7 LSR r14
1989 };
1990 const byte kInstruction_add_ls_r6_r1_r9_LSL_r10[] = {
1991   0x19, 0x6a, 0x81, 0x90 // add ls r6 r1 r9 LSL r10
1992 };
1993 const byte kInstruction_add_eq_r3_r13_r13_LSL_r13[] = {
1994   0x1d, 0x3d, 0x8d, 0x00 // add eq r3 r13 r13 LSL r13
1995 };
1996 const byte kInstruction_add_ne_r11_r6_r6_LSR_r11[] = {
1997   0x36, 0xbb, 0x86, 0x10 // add ne r11 r6 r6 LSR r11
1998 };
1999 const byte kInstruction_add_le_r12_r0_r3_LSL_r4[] = {
2000   0x13, 0xc4, 0x80, 0xd0 // add le r12 r0 r3 LSL r4
2001 };
2002 const byte kInstruction_add_pl_r0_r0_r1_LSR_r6[] = {
2003   0x31, 0x06, 0x80, 0x50 // add pl r0 r0 r1 LSR r6
2004 };
2005 const byte kInstruction_add_vc_r1_r14_r7_LSL_r9[] = {
2006   0x17, 0x19, 0x8e, 0x70 // add vc r1 r14 r7 LSL r9
2007 };
2008 const byte kInstruction_add_lt_r0_r11_r10_LSR_r13[] = {
2009   0x3a, 0x0d, 0x8b, 0xb0 // add lt r0 r11 r10 LSR r13
2010 };
2011 const byte kInstruction_add_cs_r4_r11_r9_ROR_r7[] = {
2012   0x79, 0x47, 0x8b, 0x20 // add cs r4 r11 r9 ROR r7
2013 };
2014 const byte kInstruction_add_vc_r8_r10_r10_LSR_r14[] = {
2015   0x3a, 0x8e, 0x8a, 0x70 // add vc r8 r10 r10 LSR r14
2016 };
2017 const byte kInstruction_add_ls_r4_r8_r0_LSR_r6[] = {
2018   0x30, 0x46, 0x88, 0x90 // add ls r4 r8 r0 LSR r6
2019 };
2020 const byte kInstruction_add_ne_r10_r12_r10_ASR_r3[] = {
2021   0x5a, 0xa3, 0x8c, 0x10 // add ne r10 r12 r10 ASR r3
2022 };
2023 const byte kInstruction_add_ls_r13_r13_r12_LSL_r0[] = {
2024   0x1c, 0xd0, 0x8d, 0x90 // add ls r13 r13 r12 LSL r0
2025 };
2026 const byte kInstruction_add_vs_r6_r10_r8_LSR_r11[] = {
2027   0x38, 0x6b, 0x8a, 0x60 // add vs r6 r10 r8 LSR r11
2028 };
2029 const byte kInstruction_add_vs_r2_r3_r5_ROR_r1[] = {
2030   0x75, 0x21, 0x83, 0x60 // add vs r2 r3 r5 ROR r1
2031 };
2032 const byte kInstruction_add_lt_r2_r9_r5_LSR_r5[] = {
2033   0x35, 0x25, 0x89, 0xb0 // add lt r2 r9 r5 LSR r5
2034 };
2035 const byte kInstruction_add_ne_r11_r1_r8_LSL_r8[] = {
2036   0x18, 0xb8, 0x81, 0x10 // add ne r11 r1 r8 LSL r8
2037 };
2038 const byte kInstruction_add_ne_r1_r3_r11_ROR_r10[] = {
2039   0x7b, 0x1a, 0x83, 0x10 // add ne r1 r3 r11 ROR r10
2040 };
2041 const byte kInstruction_add_gt_r6_r7_r7_ROR_r6[] = {
2042   0x77, 0x66, 0x87, 0xc0 // add gt r6 r7 r7 ROR r6
2043 };
2044 const byte kInstruction_add_cc_r14_r6_r5_LSR_r5[] = {
2045   0x35, 0xe5, 0x86, 0x30 // add cc r14 r6 r5 LSR r5
2046 };
2047 const byte kInstruction_add_eq_r11_r8_r8_ASR_r10[] = {
2048   0x58, 0xba, 0x88, 0x00 // add eq r11 r8 r8 ASR r10
2049 };
2050 const byte kInstruction_add_al_r11_r12_r12_ROR_r3[] = {
2051   0x7c, 0xb3, 0x8c, 0xe0 // add al r11 r12 r12 ROR r3
2052 };
2053 const byte kInstruction_add_lt_r6_r13_r10_ASR_r6[] = {
2054   0x5a, 0x66, 0x8d, 0xb0 // add lt r6 r13 r10 ASR r6
2055 };
2056 const byte kInstruction_add_gt_r3_r11_r0_ASR_r2[] = {
2057   0x50, 0x32, 0x8b, 0xc0 // add gt r3 r11 r0 ASR r2
2058 };
2059 const byte kInstruction_add_lt_r9_r1_r13_LSL_r6[] = {
2060   0x1d, 0x96, 0x81, 0xb0 // add lt r9 r1 r13 LSL r6
2061 };
2062 const byte kInstruction_add_pl_r0_r9_r10_LSL_r9[] = {
2063   0x1a, 0x09, 0x89, 0x50 // add pl r0 r9 r10 LSL r9
2064 };
2065 const byte kInstruction_add_hi_r9_r4_r5_LSL_r14[] = {
2066   0x15, 0x9e, 0x84, 0x80 // add hi r9 r4 r5 LSL r14
2067 };
2068 const byte kInstruction_add_ge_r9_r3_r2_LSL_r7[] = {
2069   0x12, 0x97, 0x83, 0xa0 // add ge r9 r3 r2 LSL r7
2070 };
2071 const byte kInstruction_add_al_r3_r13_r9_ASR_r2[] = {
2072   0x59, 0x32, 0x8d, 0xe0 // add al r3 r13 r9 ASR r2
2073 };
2074 const byte kInstruction_add_ne_r5_r2_r3_ROR_r6[] = {
2075   0x73, 0x56, 0x82, 0x10 // add ne r5 r2 r3 ROR r6
2076 };
2077 const byte kInstruction_add_cc_r11_r6_r13_ROR_r4[] = {
2078   0x7d, 0xb4, 0x86, 0x30 // add cc r11 r6 r13 ROR r4
2079 };
2080 const byte kInstruction_add_le_r11_r7_r9_LSR_r11[] = {
2081   0x39, 0xbb, 0x87, 0xd0 // add le r11 r7 r9 LSR r11
2082 };
2083 const byte kInstruction_add_vs_r3_r13_r6_ASR_r7[] = {
2084   0x56, 0x37, 0x8d, 0x60 // add vs r3 r13 r6 ASR r7
2085 };
2086 const byte kInstruction_add_mi_r3_r1_r14_LSL_r0[] = {
2087   0x1e, 0x30, 0x81, 0x40 // add mi r3 r1 r14 LSL r0
2088 };
2089 const byte kInstruction_add_vc_r4_r6_r8_LSR_r7[] = {
2090   0x38, 0x47, 0x86, 0x70 // add vc r4 r6 r8 LSR r7
2091 };
2092 const byte kInstruction_add_gt_r5_r2_r0_LSL_r6[] = {
2093   0x10, 0x56, 0x82, 0xc0 // add gt r5 r2 r0 LSL r6
2094 };
2095 const byte kInstruction_add_cc_r13_r13_r5_LSR_r10[] = {
2096   0x35, 0xda, 0x8d, 0x30 // add cc r13 r13 r5 LSR r10
2097 };
2098 const byte kInstruction_add_eq_r7_r5_r6_ROR_r12[] = {
2099   0x76, 0x7c, 0x85, 0x00 // add eq r7 r5 r6 ROR r12
2100 };
2101 const byte kInstruction_add_ls_r1_r5_r14_ROR_r0[] = {
2102   0x7e, 0x10, 0x85, 0x90 // add ls r1 r5 r14 ROR r0
2103 };
2104 const byte kInstruction_add_mi_r11_r14_r6_LSL_r5[] = {
2105   0x16, 0xb5, 0x8e, 0x40 // add mi r11 r14 r6 LSL r5
2106 };
2107 const byte kInstruction_add_ne_r11_r8_r12_ASR_r0[] = {
2108   0x5c, 0xb0, 0x88, 0x10 // add ne r11 r8 r12 ASR r0
2109 };
2110 const byte kInstruction_add_vs_r6_r7_r13_LSL_r9[] = {
2111   0x1d, 0x69, 0x87, 0x60 // add vs r6 r7 r13 LSL r9
2112 };
2113 const byte kInstruction_add_gt_r4_r9_r2_LSR_r9[] = {
2114   0x32, 0x49, 0x89, 0xc0 // add gt r4 r9 r2 LSR r9
2115 };
2116 const byte kInstruction_add_ls_r2_r14_r6_ASR_r12[] = {
2117   0x56, 0x2c, 0x8e, 0x90 // add ls r2 r14 r6 ASR r12
2118 };
2119 const byte kInstruction_add_cc_r8_r10_r12_LSL_r8[] = {
2120   0x1c, 0x88, 0x8a, 0x30 // add cc r8 r10 r12 LSL r8
2121 };
2122 const byte kInstruction_add_ne_r8_r7_r0_LSL_r9[] = {
2123   0x10, 0x89, 0x87, 0x10 // add ne r8 r7 r0 LSL r9
2124 };
2125 const byte kInstruction_add_vs_r5_r14_r3_ASR_r10[] = {
2126   0x53, 0x5a, 0x8e, 0x60 // add vs r5 r14 r3 ASR r10
2127 };
2128 const byte kInstruction_add_al_r12_r6_r13_LSR_r14[] = {
2129   0x3d, 0xce, 0x86, 0xe0 // add al r12 r6 r13 LSR r14
2130 };
2131 const byte kInstruction_add_ge_r14_r11_r11_ROR_r1[] = {
2132   0x7b, 0xe1, 0x8b, 0xa0 // add ge r14 r11 r11 ROR r1
2133 };
2134 const byte kInstruction_add_le_r9_r6_r0_LSR_r4[] = {
2135   0x30, 0x94, 0x86, 0xd0 // add le r9 r6 r0 LSR r4
2136 };
2137 const byte kInstruction_add_le_r0_r8_r14_ASR_r10[] = {
2138   0x5e, 0x0a, 0x88, 0xd0 // add le r0 r8 r14 ASR r10
2139 };
2140 const byte kInstruction_add_hi_r4_r13_r7_LSL_r6[] = {
2141   0x17, 0x46, 0x8d, 0x80 // add hi r4 r13 r7 LSL r6
2142 };
2143 const byte kInstruction_add_vc_r13_r0_r14_ROR_r4[] = {
2144   0x7e, 0xd4, 0x80, 0x70 // add vc r13 r0 r14 ROR r4
2145 };
2146 const byte kInstruction_add_cc_r1_r6_r12_ASR_r10[] = {
2147   0x5c, 0x1a, 0x86, 0x30 // add cc r1 r6 r12 ASR r10
2148 };
2149 const byte kInstruction_add_le_r13_r0_r4_LSL_r9[] = {
2150   0x14, 0xd9, 0x80, 0xd0 // add le r13 r0 r4 LSL r9
2151 };
2152 const byte kInstruction_add_vc_r5_r4_r3_LSR_r0[] = {
2153   0x33, 0x50, 0x84, 0x70 // add vc r5 r4 r3 LSR r0
2154 };
2155 const byte kInstruction_add_ne_r9_r14_r0_LSR_r11[] = {
2156   0x30, 0x9b, 0x8e, 0x10 // add ne r9 r14 r0 LSR r11
2157 };
2158 const byte kInstruction_add_hi_r7_r4_r9_ASR_r5[] = {
2159   0x59, 0x75, 0x84, 0x80 // add hi r7 r4 r9 ASR r5
2160 };
2161 const byte kInstruction_add_cc_r0_r8_r7_LSL_r5[] = {
2162   0x17, 0x05, 0x88, 0x30 // add cc r0 r8 r7 LSL r5
2163 };
2164 const byte kInstruction_add_vs_r3_r5_r1_ROR_r12[] = {
2165   0x71, 0x3c, 0x85, 0x60 // add vs r3 r5 r1 ROR r12
2166 };
2167 const byte kInstruction_add_cc_r0_r4_r9_LSR_r5[] = {
2168   0x39, 0x05, 0x84, 0x30 // add cc r0 r4 r9 LSR r5
2169 };
2170 const byte kInstruction_add_cc_r5_r12_r1_LSL_r14[] = {
2171   0x11, 0x5e, 0x8c, 0x30 // add cc r5 r12 r1 LSL r14
2172 };
2173 const byte kInstruction_add_cs_r3_r6_r1_LSL_r14[] = {
2174   0x11, 0x3e, 0x86, 0x20 // add cs r3 r6 r1 LSL r14
2175 };
2176 const byte kInstruction_add_gt_r2_r3_r0_ASR_r0[] = {
2177   0x50, 0x20, 0x83, 0xc0 // add gt r2 r3 r0 ASR r0
2178 };
2179 const byte kInstruction_add_cs_r4_r9_r6_LSL_r11[] = {
2180   0x16, 0x4b, 0x89, 0x20 // add cs r4 r9 r6 LSL r11
2181 };
2182 const byte kInstruction_add_ne_r8_r7_r3_ROR_r10[] = {
2183   0x73, 0x8a, 0x87, 0x10 // add ne r8 r7 r3 ROR r10
2184 };
2185 const byte kInstruction_add_lt_r8_r4_r13_ROR_r5[] = {
2186   0x7d, 0x85, 0x84, 0xb0 // add lt r8 r4 r13 ROR r5
2187 };
2188 const byte kInstruction_add_gt_r5_r6_r6_ROR_r7[] = {
2189   0x76, 0x57, 0x86, 0xc0 // add gt r5 r6 r6 ROR r7
2190 };
2191 const byte kInstruction_add_al_r13_r2_r4_ASR_r1[] = {
2192   0x54, 0xd1, 0x82, 0xe0 // add al r13 r2 r4 ASR r1
2193 };
2194 const byte kInstruction_add_hi_r0_r6_r11_ASR_r2[] = {
2195   0x5b, 0x02, 0x86, 0x80 // add hi r0 r6 r11 ASR r2
2196 };
2197 const byte kInstruction_add_mi_r10_r13_r13_LSR_r6[] = {
2198   0x3d, 0xa6, 0x8d, 0x40 // add mi r10 r13 r13 LSR r6
2199 };
2200 const byte kInstruction_add_hi_r12_r1_r7_LSL_r7[] = {
2201   0x17, 0xc7, 0x81, 0x80 // add hi r12 r1 r7 LSL r7
2202 };
2203 const byte kInstruction_add_ge_r10_r13_r12_LSL_r6[] = {
2204   0x1c, 0xa6, 0x8d, 0xa0 // add ge r10 r13 r12 LSL r6
2205 };
2206 const byte kInstruction_add_ls_r12_r4_r10_LSL_r9[] = {
2207   0x1a, 0xc9, 0x84, 0x90 // add ls r12 r4 r10 LSL r9
2208 };
2209 const byte kInstruction_add_hi_r7_r6_r7_ASR_r10[] = {
2210   0x57, 0x7a, 0x86, 0x80 // add hi r7 r6 r7 ASR r10
2211 };
2212 const byte kInstruction_add_hi_r6_r11_r14_LSL_r9[] = {
2213   0x1e, 0x69, 0x8b, 0x80 // add hi r6 r11 r14 LSL r9
2214 };
2215 const byte kInstruction_add_cs_r5_r2_r8_ASR_r5[] = {
2216   0x58, 0x55, 0x82, 0x20 // add cs r5 r2 r8 ASR r5
2217 };
2218 const byte kInstruction_add_hi_r9_r14_r10_LSR_r4[] = {
2219   0x3a, 0x94, 0x8e, 0x80 // add hi r9 r14 r10 LSR r4
2220 };
2221 const byte kInstruction_add_ne_r4_r11_r5_ROR_r4[] = {
2222   0x75, 0x44, 0x8b, 0x10 // add ne r4 r11 r5 ROR r4
2223 };
2224 const byte kInstruction_add_mi_r13_r12_r5_ROR_r4[] = {
2225   0x75, 0xd4, 0x8c, 0x40 // add mi r13 r12 r5 ROR r4
2226 };
2227 const byte kInstruction_add_gt_r5_r9_r10_LSR_r12[] = {
2228   0x3a, 0x5c, 0x89, 0xc0 // add gt r5 r9 r10 LSR r12
2229 };
2230 const byte kInstruction_add_hi_r5_r7_r13_LSR_r1[] = {
2231   0x3d, 0x51, 0x87, 0x80 // add hi r5 r7 r13 LSR r1
2232 };
2233 const byte kInstruction_add_cs_r8_r11_r5_LSR_r10[] = {
2234   0x35, 0x8a, 0x8b, 0x20 // add cs r8 r11 r5 LSR r10
2235 };
2236 const byte kInstruction_add_hi_r12_r0_r1_LSL_r7[] = {
2237   0x11, 0xc7, 0x80, 0x80 // add hi r12 r0 r1 LSL r7
2238 };
2239 const byte kInstruction_add_al_r2_r3_r3_LSR_r12[] = {
2240   0x33, 0x2c, 0x83, 0xe0 // add al r2 r3 r3 LSR r12
2241 };
2242 const byte kInstruction_add_vs_r12_r0_r0_LSL_r13[] = {
2243   0x10, 0xcd, 0x80, 0x60 // add vs r12 r0 r0 LSL r13
2244 };
2245 const byte kInstruction_add_hi_r14_r9_r8_ROR_r2[] = {
2246   0x78, 0xe2, 0x89, 0x80 // add hi r14 r9 r8 ROR r2
2247 };
2248 const byte kInstruction_add_ls_r4_r8_r5_LSL_r11[] = {
2249   0x15, 0x4b, 0x88, 0x90 // add ls r4 r8 r5 LSL r11
2250 };
2251 const byte kInstruction_add_mi_r1_r8_r2_LSR_r5[] = {
2252   0x32, 0x15, 0x88, 0x40 // add mi r1 r8 r2 LSR r5
2253 };
2254 const byte kInstruction_add_mi_r4_r13_r7_LSR_r13[] = {
2255   0x37, 0x4d, 0x8d, 0x40 // add mi r4 r13 r7 LSR r13
2256 };
2257 const byte kInstruction_add_eq_r11_r1_r6_ROR_r10[] = {
2258   0x76, 0xba, 0x81, 0x00 // add eq r11 r1 r6 ROR r10
2259 };
2260 const byte kInstruction_add_le_r1_r4_r5_ROR_r6[] = {
2261   0x75, 0x16, 0x84, 0xd0 // add le r1 r4 r5 ROR r6
2262 };
2263 const byte kInstruction_add_lt_r0_r3_r7_LSL_r3[] = {
2264   0x17, 0x03, 0x83, 0xb0 // add lt r0 r3 r7 LSL r3
2265 };
2266 const byte kInstruction_add_lt_r4_r13_r3_LSL_r0[] = {
2267   0x13, 0x40, 0x8d, 0xb0 // add lt r4 r13 r3 LSL r0
2268 };
2269 const byte kInstruction_add_lt_r12_r11_r6_ASR_r11[] = {
2270   0x56, 0xcb, 0x8b, 0xb0 // add lt r12 r11 r6 ASR r11
2271 };
2272 const byte kInstruction_add_ge_r2_r1_r13_LSL_r14[] = {
2273   0x1d, 0x2e, 0x81, 0xa0 // add ge r2 r1 r13 LSL r14
2274 };
2275 const byte kInstruction_add_ge_r6_r4_r7_ROR_r9[] = {
2276   0x77, 0x69, 0x84, 0xa0 // add ge r6 r4 r7 ROR r9
2277 };
2278 const byte kInstruction_add_mi_r7_r5_r1_LSL_r3[] = {
2279   0x11, 0x73, 0x85, 0x40 // add mi r7 r5 r1 LSL r3
2280 };
2281 const byte kInstruction_add_le_r0_r2_r8_ASR_r13[] = {
2282   0x58, 0x0d, 0x82, 0xd0 // add le r0 r2 r8 ASR r13
2283 };
2284 const byte kInstruction_add_vc_r0_r5_r12_LSR_r5[] = {
2285   0x3c, 0x05, 0x85, 0x70 // add vc r0 r5 r12 LSR r5
2286 };
2287 const byte kInstruction_add_cs_r10_r10_r14_LSL_r11[] = {
2288   0x1e, 0xab, 0x8a, 0x20 // add cs r10 r10 r14 LSL r11
2289 };
2290 const byte kInstruction_add_hi_r12_r1_r6_ASR_r14[] = {
2291   0x56, 0xce, 0x81, 0x80 // add hi r12 r1 r6 ASR r14
2292 };
2293 const byte kInstruction_add_vc_r6_r8_r9_LSR_r5[] = {
2294   0x39, 0x65, 0x88, 0x70 // add vc r6 r8 r9 LSR r5
2295 };
2296 const byte kInstruction_add_mi_r7_r2_r4_ASR_r4[] = {
2297   0x54, 0x74, 0x82, 0x40 // add mi r7 r2 r4 ASR r4
2298 };
2299 const byte kInstruction_add_pl_r7_r6_r4_ROR_r12[] = {
2300   0x74, 0x7c, 0x86, 0x50 // add pl r7 r6 r4 ROR r12
2301 };
2302 const byte kInstruction_add_ge_r0_r7_r8_LSR_r11[] = {
2303   0x38, 0x0b, 0x87, 0xa0 // add ge r0 r7 r8 LSR r11
2304 };
2305 const byte kInstruction_add_cc_r8_r14_r14_LSR_r14[] = {
2306   0x3e, 0x8e, 0x8e, 0x30 // add cc r8 r14 r14 LSR r14
2307 };
2308 const byte kInstruction_add_ne_r10_r7_r10_LSL_r3[] = {
2309   0x1a, 0xa3, 0x87, 0x10 // add ne r10 r7 r10 LSL r3
2310 };
2311 const byte kInstruction_add_hi_r2_r11_r11_LSL_r10[] = {
2312   0x1b, 0x2a, 0x8b, 0x80 // add hi r2 r11 r11 LSL r10
2313 };
2314 const byte kInstruction_add_eq_r7_r7_r3_LSR_r12[] = {
2315   0x33, 0x7c, 0x87, 0x00 // add eq r7 r7 r3 LSR r12
2316 };
2317 const byte kInstruction_add_al_r7_r1_r12_LSR_r5[] = {
2318   0x3c, 0x75, 0x81, 0xe0 // add al r7 r1 r12 LSR r5
2319 };
2320 const byte kInstruction_add_ge_r10_r3_r7_LSL_r0[] = {
2321   0x17, 0xa0, 0x83, 0xa0 // add ge r10 r3 r7 LSL r0
2322 };
2323 const byte kInstruction_add_ge_r6_r1_r6_LSL_r5[] = {
2324   0x16, 0x65, 0x81, 0xa0 // add ge r6 r1 r6 LSL r5
2325 };
2326 const byte kInstruction_add_al_r3_r1_r0_LSL_r13[] = {
2327   0x10, 0x3d, 0x81, 0xe0 // add al r3 r1 r0 LSL r13
2328 };
2329 const byte kInstruction_add_eq_r4_r8_r0_ASR_r0[] = {
2330   0x50, 0x40, 0x88, 0x00 // add eq r4 r8 r0 ASR r0
2331 };
2332 const byte kInstruction_add_cs_r8_r6_r6_LSL_r7[] = {
2333   0x16, 0x87, 0x86, 0x20 // add cs r8 r6 r6 LSL r7
2334 };
2335 const byte kInstruction_add_vs_r5_r9_r2_ASR_r6[] = {
2336   0x52, 0x56, 0x89, 0x60 // add vs r5 r9 r2 ASR r6
2337 };
2338 const byte kInstruction_add_lt_r1_r5_r2_ASR_r0[] = {
2339   0x52, 0x10, 0x85, 0xb0 // add lt r1 r5 r2 ASR r0
2340 };
2341 const byte kInstruction_add_eq_r8_r14_r1_ASR_r2[] = {
2342   0x51, 0x82, 0x8e, 0x00 // add eq r8 r14 r1 ASR r2
2343 };
2344 const byte kInstruction_add_mi_r6_r13_r12_LSL_r2[] = {
2345   0x1c, 0x62, 0x8d, 0x40 // add mi r6 r13 r12 LSL r2
2346 };
2347 const byte kInstruction_add_mi_r13_r4_r0_ROR_r1[] = {
2348   0x70, 0xd1, 0x84, 0x40 // add mi r13 r4 r0 ROR r1
2349 };
2350 const byte kInstruction_add_cs_r7_r2_r1_ASR_r10[] = {
2351   0x51, 0x7a, 0x82, 0x20 // add cs r7 r2 r1 ASR r10
2352 };
2353 const byte kInstruction_add_ge_r9_r4_r3_ASR_r5[] = {
2354   0x53, 0x95, 0x84, 0xa0 // add ge r9 r4 r3 ASR r5
2355 };
2356 const byte kInstruction_add_gt_r7_r1_r12_LSL_r7[] = {
2357   0x1c, 0x77, 0x81, 0xc0 // add gt r7 r1 r12 LSL r7
2358 };
2359 const byte kInstruction_add_hi_r4_r5_r4_LSL_r11[] = {
2360   0x14, 0x4b, 0x85, 0x80 // add hi r4 r5 r4 LSL r11
2361 };
2362 const byte kInstruction_add_cc_r13_r14_r9_LSL_r14[] = {
2363   0x19, 0xde, 0x8e, 0x30 // add cc r13 r14 r9 LSL r14
2364 };
2365 const byte kInstruction_add_cs_r12_r8_r14_ROR_r12[] = {
2366   0x7e, 0xcc, 0x88, 0x20 // add cs r12 r8 r14 ROR r12
2367 };
2368 const byte kInstruction_add_vc_r12_r11_r10_ROR_r4[] = {
2369   0x7a, 0xc4, 0x8b, 0x70 // add vc r12 r11 r10 ROR r4
2370 };
2371 const byte kInstruction_add_ge_r14_r13_r4_ROR_r11[] = {
2372   0x74, 0xeb, 0x8d, 0xa0 // add ge r14 r13 r4 ROR r11
2373 };
2374 const byte kInstruction_add_le_r3_r5_r2_ROR_r6[] = {
2375   0x72, 0x36, 0x85, 0xd0 // add le r3 r5 r2 ROR r6
2376 };
2377 const byte kInstruction_add_eq_r3_r4_r13_ASR_r0[] = {
2378   0x5d, 0x30, 0x84, 0x00 // add eq r3 r4 r13 ASR r0
2379 };
2380 const byte kInstruction_add_vc_r7_r6_r3_ASR_r11[] = {
2381   0x53, 0x7b, 0x86, 0x70 // add vc r7 r6 r3 ASR r11
2382 };
2383 const byte kInstruction_add_pl_r6_r9_r11_LSL_r8[] = {
2384   0x1b, 0x68, 0x89, 0x50 // add pl r6 r9 r11 LSL r8
2385 };
2386 const byte kInstruction_add_vc_r11_r14_r13_ASR_r4[] = {
2387   0x5d, 0xb4, 0x8e, 0x70 // add vc r11 r14 r13 ASR r4
2388 };
2389 const byte kInstruction_add_cs_r4_r11_r3_LSR_r7[] = {
2390   0x33, 0x47, 0x8b, 0x20 // add cs r4 r11 r3 LSR r7
2391 };
2392 const byte kInstruction_add_ge_r5_r7_r3_ASR_r8[] = {
2393   0x53, 0x58, 0x87, 0xa0 // add ge r5 r7 r3 ASR r8
2394 };
2395 const byte kInstruction_add_vc_r5_r7_r10_ROR_r9[] = {
2396   0x7a, 0x59, 0x87, 0x70 // add vc r5 r7 r10 ROR r9
2397 };
2398 const byte kInstruction_add_gt_r7_r12_r2_LSR_r5[] = {
2399   0x32, 0x75, 0x8c, 0xc0 // add gt r7 r12 r2 LSR r5
2400 };
2401 const byte kInstruction_add_mi_r14_r2_r6_LSL_r8[] = {
2402   0x16, 0xe8, 0x82, 0x40 // add mi r14 r2 r6 LSL r8
2403 };
2404 const byte kInstruction_add_hi_r0_r2_r11_ASR_r1[] = {
2405   0x5b, 0x01, 0x82, 0x80 // add hi r0 r2 r11 ASR r1
2406 };
2407 const byte kInstruction_add_al_r13_r7_r4_ASR_r5[] = {
2408   0x54, 0xd5, 0x87, 0xe0 // add al r13 r7 r4 ASR r5
2409 };
2410 const byte kInstruction_add_le_r3_r4_r7_LSR_r14[] = {
2411   0x37, 0x3e, 0x84, 0xd0 // add le r3 r4 r7 LSR r14
2412 };
2413 const byte kInstruction_add_lt_r4_r10_r8_LSR_r5[] = {
2414   0x38, 0x45, 0x8a, 0xb0 // add lt r4 r10 r8 LSR r5
2415 };
2416 const byte kInstruction_add_vc_r1_r1_r8_ROR_r14[] = {
2417   0x78, 0x1e, 0x81, 0x70 // add vc r1 r1 r8 ROR r14
2418 };
2419 const byte kInstruction_add_le_r3_r10_r3_ROR_r0[] = {
2420   0x73, 0x30, 0x8a, 0xd0 // add le r3 r10 r3 ROR r0
2421 };
2422 const byte kInstruction_add_ne_r4_r11_r7_ASR_r6[] = {
2423   0x57, 0x46, 0x8b, 0x10 // add ne r4 r11 r7 ASR r6
2424 };
2425 const byte kInstruction_add_lt_r9_r10_r6_LSR_r1[] = {
2426   0x36, 0x91, 0x8a, 0xb0 // add lt r9 r10 r6 LSR r1
2427 };
2428 const byte kInstruction_add_ne_r9_r12_r8_LSR_r6[] = {
2429   0x38, 0x96, 0x8c, 0x10 // add ne r9 r12 r8 LSR r6
2430 };
2431 const byte kInstruction_add_ne_r7_r6_r8_ASR_r12[] = {
2432   0x58, 0x7c, 0x86, 0x10 // add ne r7 r6 r8 ASR r12
2433 };
2434 const byte kInstruction_add_ge_r0_r9_r1_ASR_r11[] = {
2435   0x51, 0x0b, 0x89, 0xa0 // add ge r0 r9 r1 ASR r11
2436 };
2437 const byte kInstruction_add_vc_r10_r14_r8_ASR_r11[] = {
2438   0x58, 0xab, 0x8e, 0x70 // add vc r10 r14 r8 ASR r11
2439 };
2440 const byte kInstruction_add_ge_r6_r1_r14_ROR_r4[] = {
2441   0x7e, 0x64, 0x81, 0xa0 // add ge r6 r1 r14 ROR r4
2442 };
2443 const byte kInstruction_add_cs_r12_r2_r4_ROR_r13[] = {
2444   0x74, 0xcd, 0x82, 0x20 // add cs r12 r2 r4 ROR r13
2445 };
2446 const byte kInstruction_add_hi_r9_r8_r5_ASR_r3[] = {
2447   0x55, 0x93, 0x88, 0x80 // add hi r9 r8 r5 ASR r3
2448 };
2449 const byte kInstruction_add_ge_r0_r3_r9_ASR_r7[] = {
2450   0x59, 0x07, 0x83, 0xa0 // add ge r0 r3 r9 ASR r7
2451 };
2452 const byte kInstruction_add_le_r14_r6_r9_ASR_r5[] = {
2453   0x59, 0xe5, 0x86, 0xd0 // add le r14 r6 r9 ASR r5
2454 };
2455 const byte kInstruction_add_hi_r2_r3_r6_LSR_r3[] = {
2456   0x36, 0x23, 0x83, 0x80 // add hi r2 r3 r6 LSR r3
2457 };
2458 const byte kInstruction_add_le_r4_r8_r2_ASR_r3[] = {
2459   0x52, 0x43, 0x88, 0xd0 // add le r4 r8 r2 ASR r3
2460 };
2461 const byte kInstruction_add_vs_r5_r9_r2_LSR_r5[] = {
2462   0x32, 0x55, 0x89, 0x60 // add vs r5 r9 r2 LSR r5
2463 };
2464 const byte kInstruction_add_vs_r7_r11_r6_ASR_r3[] = {
2465   0x56, 0x73, 0x8b, 0x60 // add vs r7 r11 r6 ASR r3
2466 };
2467 const byte kInstruction_add_gt_r13_r11_r14_ROR_r1[] = {
2468   0x7e, 0xd1, 0x8b, 0xc0 // add gt r13 r11 r14 ROR r1
2469 };
2470 const byte kInstruction_add_al_r7_r3_r7_LSR_r12[] = {
2471   0x37, 0x7c, 0x83, 0xe0 // add al r7 r3 r7 LSR r12
2472 };
2473 const byte kInstruction_add_cs_r10_r9_r4_LSR_r5[] = {
2474   0x34, 0xa5, 0x89, 0x20 // add cs r10 r9 r4 LSR r5
2475 };
2476 const byte kInstruction_add_ls_r12_r10_r8_LSR_r8[] = {
2477   0x38, 0xc8, 0x8a, 0x90 // add ls r12 r10 r8 LSR r8
2478 };
2479 const byte kInstruction_add_lt_r14_r14_r13_LSR_r10[] = {
2480   0x3d, 0xea, 0x8e, 0xb0 // add lt r14 r14 r13 LSR r10
2481 };
2482 const byte kInstruction_add_vc_r3_r4_r7_ROR_r2[] = {
2483   0x77, 0x32, 0x84, 0x70 // add vc r3 r4 r7 ROR r2
2484 };
2485 const byte kInstruction_add_cc_r14_r11_r0_ASR_r9[] = {
2486   0x50, 0xe9, 0x8b, 0x30 // add cc r14 r11 r0 ASR r9
2487 };
2488 const byte kInstruction_add_eq_r3_r11_r14_ASR_r13[] = {
2489   0x5e, 0x3d, 0x8b, 0x00 // add eq r3 r11 r14 ASR r13
2490 };
2491 const byte kInstruction_add_mi_r13_r1_r11_ROR_r7[] = {
2492   0x7b, 0xd7, 0x81, 0x40 // add mi r13 r1 r11 ROR r7
2493 };
2494 const byte kInstruction_add_al_r9_r2_r12_ASR_r12[] = {
2495   0x5c, 0x9c, 0x82, 0xe0 // add al r9 r2 r12 ASR r12
2496 };
2497 const byte kInstruction_add_ls_r5_r10_r11_LSL_r10[] = {
2498   0x1b, 0x5a, 0x8a, 0x90 // add ls r5 r10 r11 LSL r10
2499 };
2500 const byte kInstruction_add_gt_r10_r1_r0_LSL_r8[] = {
2501   0x10, 0xa8, 0x81, 0xc0 // add gt r10 r1 r0 LSL r8
2502 };
2503 const byte kInstruction_add_hi_r13_r1_r4_LSL_r9[] = {
2504   0x14, 0xd9, 0x81, 0x80 // add hi r13 r1 r4 LSL r9
2505 };
2506 const byte kInstruction_add_ls_r7_r9_r0_ASR_r4[] = {
2507   0x50, 0x74, 0x89, 0x90 // add ls r7 r9 r0 ASR r4
2508 };
2509 const byte kInstruction_add_ls_r12_r7_r9_LSR_r1[] = {
2510   0x39, 0xc1, 0x87, 0x90 // add ls r12 r7 r9 LSR r1
2511 };
2512 const byte kInstruction_add_mi_r0_r14_r7_LSL_r8[] = {
2513   0x17, 0x08, 0x8e, 0x40 // add mi r0 r14 r7 LSL r8
2514 };
2515 const byte kInstruction_add_ge_r5_r0_r13_ROR_r12[] = {
2516   0x7d, 0x5c, 0x80, 0xa0 // add ge r5 r0 r13 ROR r12
2517 };
2518 const byte kInstruction_add_lt_r5_r11_r1_LSL_r9[] = {
2519   0x11, 0x59, 0x8b, 0xb0 // add lt r5 r11 r1 LSL r9
2520 };
2521 const byte kInstruction_add_eq_r10_r13_r2_ROR_r11[] = {
2522   0x72, 0xab, 0x8d, 0x00 // add eq r10 r13 r2 ROR r11
2523 };
2524 const byte kInstruction_add_vc_r2_r11_r0_ASR_r2[] = {
2525   0x50, 0x22, 0x8b, 0x70 // add vc r2 r11 r0 ASR r2
2526 };
2527 const byte kInstruction_add_eq_r7_r7_r3_ASR_r8[] = {
2528   0x53, 0x78, 0x87, 0x00 // add eq r7 r7 r3 ASR r8
2529 };
2530 const byte kInstruction_add_cs_r9_r10_r0_LSL_r3[] = {
2531   0x10, 0x93, 0x8a, 0x20 // add cs r9 r10 r0 LSL r3
2532 };
2533 const byte kInstruction_add_gt_r12_r14_r9_ASR_r0[] = {
2534   0x59, 0xc0, 0x8e, 0xc0 // add gt r12 r14 r9 ASR r0
2535 };
2536 const byte kInstruction_add_vc_r6_r5_r0_ROR_r7[] = {
2537   0x70, 0x67, 0x85, 0x70 // add vc r6 r5 r0 ROR r7
2538 };
2539 const byte kInstruction_add_cs_r4_r14_r0_LSL_r12[] = {
2540   0x10, 0x4c, 0x8e, 0x20 // add cs r4 r14 r0 LSL r12
2541 };
2542 const byte kInstruction_add_ge_r12_r3_r0_ASR_r1[] = {
2543   0x50, 0xc1, 0x83, 0xa0 // add ge r12 r3 r0 ASR r1
2544 };
2545 const byte kInstruction_add_al_r12_r4_r12_LSR_r12[] = {
2546   0x3c, 0xcc, 0x84, 0xe0 // add al r12 r4 r12 LSR r12
2547 };
2548 const byte kInstruction_add_vs_r7_r12_r4_LSR_r7[] = {
2549   0x34, 0x77, 0x8c, 0x60 // add vs r7 r12 r4 LSR r7
2550 };
2551 const byte kInstruction_add_hi_r14_r6_r10_LSR_r3[] = {
2552   0x3a, 0xe3, 0x86, 0x80 // add hi r14 r6 r10 LSR r3
2553 };
2554 const byte kInstruction_add_gt_r6_r9_r13_ROR_r0[] = {
2555   0x7d, 0x60, 0x89, 0xc0 // add gt r6 r9 r13 ROR r0
2556 };
2557 const byte kInstruction_add_le_r11_r11_r14_LSR_r13[] = {
2558   0x3e, 0xbd, 0x8b, 0xd0 // add le r11 r11 r14 LSR r13
2559 };
2560 const byte kInstruction_add_hi_r10_r7_r5_ROR_r0[] = {
2561   0x75, 0xa0, 0x87, 0x80 // add hi r10 r7 r5 ROR r0
2562 };
2563 const byte kInstruction_add_le_r9_r1_r6_ASR_r11[] = {
2564   0x56, 0x9b, 0x81, 0xd0 // add le r9 r1 r6 ASR r11
2565 };
2566 const byte kInstruction_add_gt_r8_r2_r9_LSL_r14[] = {
2567   0x19, 0x8e, 0x82, 0xc0 // add gt r8 r2 r9 LSL r14
2568 };
2569 const byte kInstruction_add_le_r8_r3_r13_ASR_r0[] = {
2570   0x5d, 0x80, 0x83, 0xd0 // add le r8 r3 r13 ASR r0
2571 };
2572 const byte kInstruction_add_ne_r3_r6_r12_LSR_r11[] = {
2573   0x3c, 0x3b, 0x86, 0x10 // add ne r3 r6 r12 LSR r11
2574 };
2575 const byte kInstruction_add_vs_r9_r13_r5_ASR_r1[] = {
2576   0x55, 0x91, 0x8d, 0x60 // add vs r9 r13 r5 ASR r1
2577 };
2578 const byte kInstruction_add_al_r1_r12_r2_LSR_r4[] = {
2579   0x32, 0x14, 0x8c, 0xe0 // add al r1 r12 r2 LSR r4
2580 };
2581 const byte kInstruction_add_eq_r9_r12_r5_ROR_r12[] = {
2582   0x75, 0x9c, 0x8c, 0x00 // add eq r9 r12 r5 ROR r12
2583 };
2584 const byte kInstruction_add_pl_r4_r4_r14_LSR_r6[] = {
2585   0x3e, 0x46, 0x84, 0x50 // add pl r4 r4 r14 LSR r6
2586 };
2587 const byte kInstruction_add_lt_r12_r12_r2_LSL_r11[] = {
2588   0x12, 0xcb, 0x8c, 0xb0 // add lt r12 r12 r2 LSL r11
2589 };
2590 const byte kInstruction_add_al_r5_r0_r2_ROR_r1[] = {
2591   0x72, 0x51, 0x80, 0xe0 // add al r5 r0 r2 ROR r1
2592 };
2593 const byte kInstruction_add_gt_r6_r4_r8_LSL_r1[] = {
2594   0x18, 0x61, 0x84, 0xc0 // add gt r6 r4 r8 LSL r1
2595 };
2596 const byte kInstruction_add_ne_r1_r1_r10_LSR_r3[] = {
2597   0x3a, 0x13, 0x81, 0x10 // add ne r1 r1 r10 LSR r3
2598 };
2599 const byte kInstruction_add_hi_r14_r11_r5_LSR_r4[] = {
2600   0x35, 0xe4, 0x8b, 0x80 // add hi r14 r11 r5 LSR r4
2601 };
2602 const byte kInstruction_add_al_r5_r13_r12_LSR_r14[] = {
2603   0x3c, 0x5e, 0x8d, 0xe0 // add al r5 r13 r12 LSR r14
2604 };
2605 const byte kInstruction_add_cc_r6_r6_r12_ROR_r7[] = {
2606   0x7c, 0x67, 0x86, 0x30 // add cc r6 r6 r12 ROR r7
2607 };
2608 const byte kInstruction_add_ls_r4_r11_r7_ROR_r2[] = {
2609   0x77, 0x42, 0x8b, 0x90 // add ls r4 r11 r7 ROR r2
2610 };
2611 const byte kInstruction_add_eq_r7_r12_r0_LSL_r12[] = {
2612   0x10, 0x7c, 0x8c, 0x00 // add eq r7 r12 r0 LSL r12
2613 };
2614 const byte kInstruction_add_cs_r11_r9_r2_ASR_r13[] = {
2615   0x52, 0xbd, 0x89, 0x20 // add cs r11 r9 r2 ASR r13
2616 };
2617 const byte kInstruction_add_ls_r5_r13_r13_LSL_r0[] = {
2618   0x1d, 0x50, 0x8d, 0x90 // add ls r5 r13 r13 LSL r0
2619 };
2620 const byte kInstruction_add_hi_r13_r13_r6_LSR_r9[] = {
2621   0x36, 0xd9, 0x8d, 0x80 // add hi r13 r13 r6 LSR r9
2622 };
2623 const byte kInstruction_add_eq_r7_r14_r10_LSR_r2[] = {
2624   0x3a, 0x72, 0x8e, 0x00 // add eq r7 r14 r10 LSR r2
2625 };
2626 const byte kInstruction_add_ne_r2_r12_r0_LSR_r12[] = {
2627   0x30, 0x2c, 0x8c, 0x10 // add ne r2 r12 r0 LSR r12
2628 };
2629 const byte kInstruction_add_pl_r11_r0_r14_ROR_r14[] = {
2630   0x7e, 0xbe, 0x80, 0x50 // add pl r11 r0 r14 ROR r14
2631 };
2632 const byte kInstruction_add_ge_r14_r11_r0_ASR_r0[] = {
2633   0x50, 0xe0, 0x8b, 0xa0 // add ge r14 r11 r0 ASR r0
2634 };
2635 const byte kInstruction_add_ne_r7_r3_r11_ASR_r4[] = {
2636   0x5b, 0x74, 0x83, 0x10 // add ne r7 r3 r11 ASR r4
2637 };
2638 const byte kInstruction_add_eq_r0_r11_r4_LSR_r1[] = {
2639   0x34, 0x01, 0x8b, 0x00 // add eq r0 r11 r4 LSR r1
2640 };
2641 const byte kInstruction_add_cs_r5_r2_r5_ROR_r10[] = {
2642   0x75, 0x5a, 0x82, 0x20 // add cs r5 r2 r5 ROR r10
2643 };
2644 const byte kInstruction_add_eq_r9_r10_r10_LSR_r0[] = {
2645   0x3a, 0x90, 0x8a, 0x00 // add eq r9 r10 r10 LSR r0
2646 };
2647 const byte kInstruction_add_vc_r2_r0_r11_ROR_r11[] = {
2648   0x7b, 0x2b, 0x80, 0x70 // add vc r2 r0 r11 ROR r11
2649 };
2650 const byte kInstruction_add_pl_r14_r2_r1_ROR_r8[] = {
2651   0x71, 0xe8, 0x82, 0x50 // add pl r14 r2 r1 ROR r8
2652 };
2653 const byte kInstruction_add_hi_r13_r1_r14_LSR_r5[] = {
2654   0x3e, 0xd5, 0x81, 0x80 // add hi r13 r1 r14 LSR r5
2655 };
2656 const byte kInstruction_add_ls_r9_r2_r13_LSR_r14[] = {
2657   0x3d, 0x9e, 0x82, 0x90 // add ls r9 r2 r13 LSR r14
2658 };
2659 const byte kInstruction_add_le_r1_r12_r7_ROR_r1[] = {
2660   0x77, 0x11, 0x8c, 0xd0 // add le r1 r12 r7 ROR r1
2661 };
2662 const byte kInstruction_add_mi_r10_r4_r6_LSR_r5[] = {
2663   0x36, 0xa5, 0x84, 0x40 // add mi r10 r4 r6 LSR r5
2664 };
2665 const byte kInstruction_add_al_r11_r7_r7_LSR_r11[] = {
2666   0x37, 0xbb, 0x87, 0xe0 // add al r11 r7 r7 LSR r11
2667 };
2668 const byte kInstruction_add_lt_r4_r2_r6_ROR_r1[] = {
2669   0x76, 0x41, 0x82, 0xb0 // add lt r4 r2 r6 ROR r1
2670 };
2671 const byte kInstruction_add_vc_r12_r3_r7_LSL_r5[] = {
2672   0x17, 0xc5, 0x83, 0x70 // add vc r12 r3 r7 LSL r5
2673 };
2674 const byte kInstruction_add_ge_r10_r7_r2_ROR_r0[] = {
2675   0x72, 0xa0, 0x87, 0xa0 // add ge r10 r7 r2 ROR r0
2676 };
2677 const byte kInstruction_add_lt_r1_r6_r0_LSR_r4[] = {
2678   0x30, 0x14, 0x86, 0xb0 // add lt r1 r6 r0 LSR r4
2679 };
2680 const byte kInstruction_add_eq_r11_r2_r11_ROR_r3[] = {
2681   0x7b, 0xb3, 0x82, 0x00 // add eq r11 r2 r11 ROR r3
2682 };
2683 const byte kInstruction_add_ls_r1_r2_r11_LSL_r6[] = {
2684   0x1b, 0x16, 0x82, 0x90 // add ls r1 r2 r11 LSL r6
2685 };
2686 const byte kInstruction_add_al_r4_r5_r10_LSR_r13[] = {
2687   0x3a, 0x4d, 0x85, 0xe0 // add al r4 r5 r10 LSR r13
2688 };
2689 const byte kInstruction_add_ls_r5_r3_r12_LSR_r10[] = {
2690   0x3c, 0x5a, 0x83, 0x90 // add ls r5 r3 r12 LSR r10
2691 };
2692 const byte kInstruction_add_hi_r5_r11_r9_LSL_r14[] = {
2693   0x19, 0x5e, 0x8b, 0x80 // add hi r5 r11 r9 LSL r14
2694 };
2695 const byte kInstruction_add_le_r0_r8_r14_LSL_r14[] = {
2696   0x1e, 0x0e, 0x88, 0xd0 // add le r0 r8 r14 LSL r14
2697 };
2698 const byte kInstruction_add_vs_r10_r10_r2_LSR_r8[] = {
2699   0x32, 0xa8, 0x8a, 0x60 // add vs r10 r10 r2 LSR r8
2700 };
2701 const byte kInstruction_add_lt_r1_r7_r14_LSR_r1[] = {
2702   0x3e, 0x11, 0x87, 0xb0 // add lt r1 r7 r14 LSR r1
2703 };
2704 const byte kInstruction_add_al_r1_r2_r8_LSL_r1[] = {
2705   0x18, 0x11, 0x82, 0xe0 // add al r1 r2 r8 LSL r1
2706 };
2707 const byte kInstruction_add_vc_r9_r14_r2_ASR_r7[] = {
2708   0x52, 0x97, 0x8e, 0x70 // add vc r9 r14 r2 ASR r7
2709 };
2710 const byte kInstruction_add_eq_r8_r14_r12_LSL_r11[] = {
2711   0x1c, 0x8b, 0x8e, 0x00 // add eq r8 r14 r12 LSL r11
2712 };
2713 const byte kInstruction_add_cc_r13_r2_r8_ASR_r9[] = {
2714   0x58, 0xd9, 0x82, 0x30 // add cc r13 r2 r8 ASR r9
2715 };
2716 const byte kInstruction_add_cc_r13_r4_r1_ASR_r8[] = {
2717   0x51, 0xd8, 0x84, 0x30 // add cc r13 r4 r1 ASR r8
2718 };
2719 const byte kInstruction_add_ne_r14_r14_r3_ASR_r0[] = {
2720   0x53, 0xe0, 0x8e, 0x10 // add ne r14 r14 r3 ASR r0
2721 };
2722 const byte kInstruction_add_mi_r12_r9_r5_ASR_r10[] = {
2723   0x55, 0xca, 0x89, 0x40 // add mi r12 r9 r5 ASR r10
2724 };
2725 const byte kInstruction_add_ne_r10_r12_r0_ASR_r10[] = {
2726   0x50, 0xaa, 0x8c, 0x10 // add ne r10 r12 r0 ASR r10
2727 };
2728 const byte kInstruction_add_gt_r1_r6_r10_LSL_r2[] = {
2729   0x1a, 0x12, 0x86, 0xc0 // add gt r1 r6 r10 LSL r2
2730 };
2731 const byte kInstruction_add_vs_r0_r6_r6_ASR_r5[] = {
2732   0x56, 0x05, 0x86, 0x60 // add vs r0 r6 r6 ASR r5
2733 };
2734 const byte kInstruction_add_mi_r6_r12_r13_LSR_r9[] = {
2735   0x3d, 0x69, 0x8c, 0x40 // add mi r6 r12 r13 LSR r9
2736 };
2737 const byte kInstruction_add_lt_r13_r11_r4_LSL_r1[] = {
2738   0x14, 0xd1, 0x8b, 0xb0 // add lt r13 r11 r4 LSL r1
2739 };
2740 const byte kInstruction_add_cs_r12_r11_r4_LSL_r0[] = {
2741   0x14, 0xc0, 0x8b, 0x20 // add cs r12 r11 r4 LSL r0
2742 };
2743 const byte kInstruction_add_cs_r5_r1_r3_LSL_r3[] = {
2744   0x13, 0x53, 0x81, 0x20 // add cs r5 r1 r3 LSL r3
2745 };
2746 const byte kInstruction_add_ls_r0_r1_r12_LSR_r7[] = {
2747   0x3c, 0x07, 0x81, 0x90 // add ls r0 r1 r12 LSR r7
2748 };
2749 const byte kInstruction_add_al_r14_r14_r4_LSL_r2[] = {
2750   0x14, 0xe2, 0x8e, 0xe0 // add al r14 r14 r4 LSL r2
2751 };
2752 const byte kInstruction_add_hi_r5_r12_r10_ASR_r1[] = {
2753   0x5a, 0x51, 0x8c, 0x80 // add hi r5 r12 r10 ASR r1
2754 };
2755 const byte kInstruction_add_pl_r11_r5_r2_LSL_r7[] = {
2756   0x12, 0xb7, 0x85, 0x50 // add pl r11 r5 r2 LSL r7
2757 };
2758 const byte kInstruction_add_ge_r0_r4_r0_ASR_r8[] = {
2759   0x50, 0x08, 0x84, 0xa0 // add ge r0 r4 r0 ASR r8
2760 };
2761 const byte kInstruction_add_cc_r11_r6_r12_LSR_r5[] = {
2762   0x3c, 0xb5, 0x86, 0x30 // add cc r11 r6 r12 LSR r5
2763 };
2764 const byte kInstruction_add_cs_r12_r11_r0_ASR_r14[] = {
2765   0x50, 0xce, 0x8b, 0x20 // add cs r12 r11 r0 ASR r14
2766 };
2767 const byte kInstruction_add_hi_r6_r2_r3_LSL_r10[] = {
2768   0x13, 0x6a, 0x82, 0x80 // add hi r6 r2 r3 LSL r10
2769 };
2770 const byte kInstruction_add_cs_r0_r9_r1_LSR_r8[] = {
2771   0x31, 0x08, 0x89, 0x20 // add cs r0 r9 r1 LSR r8
2772 };
2773 const byte kInstruction_add_eq_r6_r5_r1_LSR_r0[] = {
2774   0x31, 0x60, 0x85, 0x00 // add eq r6 r5 r1 LSR r0
2775 };
2776 const byte kInstruction_add_eq_r12_r7_r9_LSR_r1[] = {
2777   0x39, 0xc1, 0x87, 0x00 // add eq r12 r7 r9 LSR r1
2778 };
2779 const byte kInstruction_add_pl_r4_r1_r2_LSL_r1[] = {
2780   0x12, 0x41, 0x81, 0x50 // add pl r4 r1 r2 LSL r1
2781 };
2782 const byte kInstruction_add_vc_r2_r0_r6_LSL_r13[] = {
2783   0x16, 0x2d, 0x80, 0x70 // add vc r2 r0 r6 LSL r13
2784 };
2785 const byte kInstruction_add_vs_r1_r8_r2_LSR_r12[] = {
2786   0x32, 0x1c, 0x88, 0x60 // add vs r1 r8 r2 LSR r12
2787 };
2788 const byte kInstruction_add_eq_r1_r5_r14_LSR_r4[] = {
2789   0x3e, 0x14, 0x85, 0x00 // add eq r1 r5 r14 LSR r4
2790 };
2791 const byte kInstruction_add_cs_r5_r12_r8_LSR_r6[] = {
2792   0x38, 0x56, 0x8c, 0x20 // add cs r5 r12 r8 LSR r6
2793 };
2794 const byte kInstruction_add_vs_r5_r9_r13_LSL_r10[] = {
2795   0x1d, 0x5a, 0x89, 0x60 // add vs r5 r9 r13 LSL r10
2796 };
2797 const byte kInstruction_add_le_r14_r14_r12_LSL_r9[] = {
2798   0x1c, 0xe9, 0x8e, 0xd0 // add le r14 r14 r12 LSL r9
2799 };
2800 const byte kInstruction_add_cc_r13_r7_r12_LSR_r4[] = {
2801   0x3c, 0xd4, 0x87, 0x30 // add cc r13 r7 r12 LSR r4
2802 };
2803 const byte kInstruction_add_eq_r13_r2_r0_LSR_r14[] = {
2804   0x30, 0xde, 0x82, 0x00 // add eq r13 r2 r0 LSR r14
2805 };
2806 const byte kInstruction_add_eq_r13_r11_r0_LSL_r2[] = {
2807   0x10, 0xd2, 0x8b, 0x00 // add eq r13 r11 r0 LSL r2
2808 };
2809 const byte kInstruction_add_al_r7_r2_r13_ROR_r5[] = {
2810   0x7d, 0x75, 0x82, 0xe0 // add al r7 r2 r13 ROR r5
2811 };
2812 const byte kInstruction_add_vc_r1_r9_r6_LSL_r11[] = {
2813   0x16, 0x1b, 0x89, 0x70 // add vc r1 r9 r6 LSL r11
2814 };
2815 const byte kInstruction_add_lt_r1_r0_r0_ROR_r13[] = {
2816   0x70, 0x1d, 0x80, 0xb0 // add lt r1 r0 r0 ROR r13
2817 };
2818 const byte kInstruction_add_le_r11_r4_r5_ASR_r2[] = {
2819   0x55, 0xb2, 0x84, 0xd0 // add le r11 r4 r5 ASR r2
2820 };
2821 const byte kInstruction_add_vs_r7_r7_r3_ROR_r1[] = {
2822   0x73, 0x71, 0x87, 0x60 // add vs r7 r7 r3 ROR r1
2823 };
2824 const byte kInstruction_add_ls_r7_r5_r5_ASR_r11[] = {
2825   0x55, 0x7b, 0x85, 0x90 // add ls r7 r5 r5 ASR r11
2826 };
2827 const byte kInstruction_add_cc_r7_r10_r8_ROR_r12[] = {
2828   0x78, 0x7c, 0x8a, 0x30 // add cc r7 r10 r8 ROR r12
2829 };
2830 const byte kInstruction_add_ne_r11_r11_r10_ROR_r11[] = {
2831   0x7a, 0xbb, 0x8b, 0x10 // add ne r11 r11 r10 ROR r11
2832 };
2833 const byte kInstruction_add_gt_r4_r11_r5_ASR_r12[] = {
2834   0x55, 0x4c, 0x8b, 0xc0 // add gt r4 r11 r5 ASR r12
2835 };
2836 const byte kInstruction_add_al_r3_r13_r1_ROR_r8[] = {
2837   0x71, 0x38, 0x8d, 0xe0 // add al r3 r13 r1 ROR r8
2838 };
2839 const byte kInstruction_add_le_r14_r4_r3_ROR_r10[] = {
2840   0x73, 0xea, 0x84, 0xd0 // add le r14 r4 r3 ROR r10
2841 };
2842 const byte kInstruction_add_ls_r9_r2_r13_LSL_r9[] = {
2843   0x1d, 0x99, 0x82, 0x90 // add ls r9 r2 r13 LSL r9
2844 };
2845 const byte kInstruction_add_le_r12_r7_r4_ASR_r14[] = {
2846   0x54, 0xce, 0x87, 0xd0 // add le r12 r7 r4 ASR r14
2847 };
2848 const byte kInstruction_add_lt_r1_r8_r0_ASR_r3[] = {
2849   0x50, 0x13, 0x88, 0xb0 // add lt r1 r8 r0 ASR r3
2850 };
2851 const byte kInstruction_add_ge_r1_r8_r10_ROR_r10[] = {
2852   0x7a, 0x1a, 0x88, 0xa0 // add ge r1 r8 r10 ROR r10
2853 };
2854 const byte kInstruction_add_vc_r6_r1_r14_LSL_r4[] = {
2855   0x1e, 0x64, 0x81, 0x70 // add vc r6 r1 r14 LSL r4
2856 };
2857 const byte kInstruction_add_gt_r13_r10_r0_ASR_r9[] = {
2858   0x50, 0xd9, 0x8a, 0xc0 // add gt r13 r10 r0 ASR r9
2859 };
2860 const byte kInstruction_add_ne_r8_r6_r12_LSR_r13[] = {
2861   0x3c, 0x8d, 0x86, 0x10 // add ne r8 r6 r12 LSR r13
2862 };
2863 const byte kInstruction_add_vc_r2_r6_r8_LSL_r5[] = {
2864   0x18, 0x25, 0x86, 0x70 // add vc r2 r6 r8 LSL r5
2865 };
2866 const byte kInstruction_add_lt_r3_r14_r12_ROR_r0[] = {
2867   0x7c, 0x30, 0x8e, 0xb0 // add lt r3 r14 r12 ROR r0
2868 };
2869 const byte kInstruction_add_hi_r14_r9_r5_LSL_r4[] = {
2870   0x15, 0xe4, 0x89, 0x80 // add hi r14 r9 r5 LSL r4
2871 };
2872 const byte kInstruction_add_le_r1_r9_r3_LSL_r1[] = {
2873   0x13, 0x11, 0x89, 0xd0 // add le r1 r9 r3 LSL r1
2874 };
2875 const byte kInstruction_add_ne_r1_r1_r9_LSR_r9[] = {
2876   0x39, 0x19, 0x81, 0x10 // add ne r1 r1 r9 LSR r9
2877 };
2878 const byte kInstruction_add_mi_r11_r9_r13_ASR_r1[] = {
2879   0x5d, 0xb1, 0x89, 0x40 // add mi r11 r9 r13 ASR r1
2880 };
2881 const byte kInstruction_add_hi_r9_r3_r12_ASR_r8[] = {
2882   0x5c, 0x98, 0x83, 0x80 // add hi r9 r3 r12 ASR r8
2883 };
2884 const byte kInstruction_add_le_r7_r10_r1_ASR_r12[] = {
2885   0x51, 0x7c, 0x8a, 0xd0 // add le r7 r10 r1 ASR r12
2886 };
2887 const byte kInstruction_add_vs_r12_r4_r1_ASR_r0[] = {
2888   0x51, 0xc0, 0x84, 0x60 // add vs r12 r4 r1 ASR r0
2889 };
2890 const byte kInstruction_add_vc_r10_r1_r11_LSL_r3[] = {
2891   0x1b, 0xa3, 0x81, 0x70 // add vc r10 r1 r11 LSL r3
2892 };
2893 const byte kInstruction_add_cc_r9_r8_r13_ROR_r14[] = {
2894   0x7d, 0x9e, 0x88, 0x30 // add cc r9 r8 r13 ROR r14
2895 };
2896 const byte kInstruction_add_cs_r12_r9_r11_LSL_r12[] = {
2897   0x1b, 0xcc, 0x89, 0x20 // add cs r12 r9 r11 LSL r12
2898 };
2899 const byte kInstruction_add_al_r0_r0_r4_ASR_r12[] = {
2900   0x54, 0x0c, 0x80, 0xe0 // add al r0 r0 r4 ASR r12
2901 };
2902 const byte kInstruction_add_gt_r1_r12_r3_LSR_r11[] = {
2903   0x33, 0x1b, 0x8c, 0xc0 // add gt r1 r12 r3 LSR r11
2904 };
2905 const byte kInstruction_add_hi_r2_r3_r12_LSR_r12[] = {
2906   0x3c, 0x2c, 0x83, 0x80 // add hi r2 r3 r12 LSR r12
2907 };
2908 const byte kInstruction_add_vs_r7_r4_r8_LSR_r1[] = {
2909   0x38, 0x71, 0x84, 0x60 // add vs r7 r4 r8 LSR r1
2910 };
2911 const byte kInstruction_add_hi_r3_r0_r0_ASR_r1[] = {
2912   0x50, 0x31, 0x80, 0x80 // add hi r3 r0 r0 ASR r1
2913 };
2914 const byte kInstruction_add_mi_r6_r7_r2_ROR_r8[] = {
2915   0x72, 0x68, 0x87, 0x40 // add mi r6 r7 r2 ROR r8
2916 };
2917 const byte kInstruction_add_lt_r5_r8_r10_ASR_r3[] = {
2918   0x5a, 0x53, 0x88, 0xb0 // add lt r5 r8 r10 ASR r3
2919 };
2920 const byte kInstruction_add_cs_r2_r12_r12_LSR_r1[] = {
2921   0x3c, 0x21, 0x8c, 0x20 // add cs r2 r12 r12 LSR r1
2922 };
2923 const byte kInstruction_add_eq_r4_r12_r10_LSL_r2[] = {
2924   0x1a, 0x42, 0x8c, 0x00 // add eq r4 r12 r10 LSL r2
2925 };
2926 const byte kInstruction_add_eq_r14_r3_r7_LSR_r2[] = {
2927   0x37, 0xe2, 0x83, 0x00 // add eq r14 r3 r7 LSR r2
2928 };
2929 const byte kInstruction_add_mi_r14_r11_r10_LSL_r0[] = {
2930   0x1a, 0xe0, 0x8b, 0x40 // add mi r14 r11 r10 LSL r0
2931 };
2932 const byte kInstruction_add_ge_r3_r6_r14_LSR_r9[] = {
2933   0x3e, 0x39, 0x86, 0xa0 // add ge r3 r6 r14 LSR r9
2934 };
2935 const byte kInstruction_add_lt_r9_r9_r6_LSL_r4[] = {
2936   0x16, 0x94, 0x89, 0xb0 // add lt r9 r9 r6 LSL r4
2937 };
2938 const byte kInstruction_add_vc_r7_r6_r5_ROR_r7[] = {
2939   0x75, 0x77, 0x86, 0x70 // add vc r7 r6 r5 ROR r7
2940 };
2941 const byte kInstruction_add_al_r10_r7_r4_LSR_r13[] = {
2942   0x34, 0xad, 0x87, 0xe0 // add al r10 r7 r4 LSR r13
2943 };
2944 const byte kInstruction_add_vs_r11_r1_r0_LSR_r5[] = {
2945   0x30, 0xb5, 0x81, 0x60 // add vs r11 r1 r0 LSR r5
2946 };
2947 const byte kInstruction_add_pl_r5_r3_r14_LSL_r12[] = {
2948   0x1e, 0x5c, 0x83, 0x50 // add pl r5 r3 r14 LSL r12
2949 };
2950 const byte kInstruction_add_vs_r14_r3_r2_LSL_r4[] = {
2951   0x12, 0xe4, 0x83, 0x60 // add vs r14 r3 r2 LSL r4
2952 };
2953 const byte kInstruction_add_hi_r3_r2_r5_LSR_r4[] = {
2954   0x35, 0x34, 0x82, 0x80 // add hi r3 r2 r5 LSR r4
2955 };
2956 const byte kInstruction_add_gt_r12_r2_r9_LSR_r14[] = {
2957   0x39, 0xce, 0x82, 0xc0 // add gt r12 r2 r9 LSR r14
2958 };
2959 const byte kInstruction_add_cc_r3_r11_r2_LSR_r12[] = {
2960   0x32, 0x3c, 0x8b, 0x30 // add cc r3 r11 r2 LSR r12
2961 };
2962 const byte kInstruction_add_gt_r1_r6_r2_LSL_r5[] = {
2963   0x12, 0x15, 0x86, 0xc0 // add gt r1 r6 r2 LSL r5
2964 };
2965 const byte kInstruction_add_le_r12_r5_r11_ROR_r11[] = {
2966   0x7b, 0xcb, 0x85, 0xd0 // add le r12 r5 r11 ROR r11
2967 };
2968 const byte kInstruction_add_ge_r13_r14_r11_LSL_r2[] = {
2969   0x1b, 0xd2, 0x8e, 0xa0 // add ge r13 r14 r11 LSL r2
2970 };
2971 const byte kInstruction_add_ne_r7_r14_r4_ASR_r12[] = {
2972   0x54, 0x7c, 0x8e, 0x10 // add ne r7 r14 r4 ASR r12
2973 };
2974 const byte kInstruction_add_vc_r9_r5_r4_LSL_r8[] = {
2975   0x14, 0x98, 0x85, 0x70 // add vc r9 r5 r4 LSL r8
2976 };
2977 const byte kInstruction_add_cc_r7_r3_r3_ASR_r1[] = {
2978   0x53, 0x71, 0x83, 0x30 // add cc r7 r3 r3 ASR r1
2979 };
2980 const byte kInstruction_add_ls_r3_r13_r0_ASR_r1[] = {
2981   0x50, 0x31, 0x8d, 0x90 // add ls r3 r13 r0 ASR r1
2982 };
2983 const byte kInstruction_add_lt_r7_r5_r5_ASR_r11[] = {
2984   0x55, 0x7b, 0x85, 0xb0 // add lt r7 r5 r5 ASR r11
2985 };
2986 const byte kInstruction_add_gt_r3_r6_r13_ASR_r11[] = {
2987   0x5d, 0x3b, 0x86, 0xc0 // add gt r3 r6 r13 ASR r11
2988 };
2989 const byte kInstruction_add_ge_r14_r10_r10_ASR_r10[] = {
2990   0x5a, 0xea, 0x8a, 0xa0 // add ge r14 r10 r10 ASR r10
2991 };
2992 const byte kInstruction_add_ne_r13_r14_r1_ASR_r2[] = {
2993   0x51, 0xd2, 0x8e, 0x10 // add ne r13 r14 r1 ASR r2
2994 };
2995 const byte kInstruction_add_al_r8_r12_r6_ASR_r7[] = {
2996   0x56, 0x87, 0x8c, 0xe0 // add al r8 r12 r6 ASR r7
2997 };
2998 const byte kInstruction_add_mi_r2_r7_r7_ROR_r13[] = {
2999   0x77, 0x2d, 0x87, 0x40 // add mi r2 r7 r7 ROR r13
3000 };
3001 const byte kInstruction_add_le_r14_r6_r14_ROR_r6[] = {
3002   0x7e, 0xe6, 0x86, 0xd0 // add le r14 r6 r14 ROR r6
3003 };
3004 const byte kInstruction_add_le_r11_r3_r12_LSR_r7[] = {
3005   0x3c, 0xb7, 0x83, 0xd0 // add le r11 r3 r12 LSR r7
3006 };
3007 const byte kInstruction_add_vs_r0_r12_r1_ASR_r2[] = {
3008   0x51, 0x02, 0x8c, 0x60 // add vs r0 r12 r1 ASR r2
3009 };
3010 const byte kInstruction_add_vc_r7_r7_r12_LSL_r13[] = {
3011   0x1c, 0x7d, 0x87, 0x70 // add vc r7 r7 r12 LSL r13
3012 };
3013 const byte kInstruction_add_eq_r6_r3_r8_ASR_r5[] = {
3014   0x58, 0x65, 0x83, 0x00 // add eq r6 r3 r8 ASR r5
3015 };
3016 const byte kInstruction_add_cs_r5_r4_r5_LSL_r11[] = {
3017   0x15, 0x5b, 0x84, 0x20 // add cs r5 r4 r5 LSL r11
3018 };
3019 const byte kInstruction_add_lt_r3_r6_r9_ROR_r9[] = {
3020   0x79, 0x39, 0x86, 0xb0 // add lt r3 r6 r9 ROR r9
3021 };
3022 const byte kInstruction_add_vs_r14_r14_r13_LSR_r8[] = {
3023   0x3d, 0xe8, 0x8e, 0x60 // add vs r14 r14 r13 LSR r8
3024 };
3025 const byte kInstruction_add_cc_r4_r12_r9_LSL_r10[] = {
3026   0x19, 0x4a, 0x8c, 0x30 // add cc r4 r12 r9 LSL r10
3027 };
3028 const byte kInstruction_add_gt_r4_r14_r14_ROR_r6[] = {
3029   0x7e, 0x46, 0x8e, 0xc0 // add gt r4 r14 r14 ROR r6
3030 };
3031 const byte kInstruction_add_gt_r8_r9_r10_LSR_r6[] = {
3032   0x3a, 0x86, 0x89, 0xc0 // add gt r8 r9 r10 LSR r6
3033 };
3034 const byte kInstruction_add_hi_r6_r13_r11_LSL_r7[] = {
3035   0x1b, 0x67, 0x8d, 0x80 // add hi r6 r13 r11 LSL r7
3036 };
3037 const TestResult kReferenceadd[] = {
3038   {
3039     ARRAY_SIZE(kInstruction_add_al_r6_r8_r10_LSL_r12),
3040     kInstruction_add_al_r6_r8_r10_LSL_r12,
3041   },
3042   {
3043     ARRAY_SIZE(kInstruction_add_hi_r5_r13_r6_LSL_r4),
3044     kInstruction_add_hi_r5_r13_r6_LSL_r4,
3045   },
3046   {
3047     ARRAY_SIZE(kInstruction_add_vs_r11_r0_r14_ROR_r1),
3048     kInstruction_add_vs_r11_r0_r14_ROR_r1,
3049   },
3050   {
3051     ARRAY_SIZE(kInstruction_add_vc_r5_r0_r11_ROR_r4),
3052     kInstruction_add_vc_r5_r0_r11_ROR_r4,
3053   },
3054   {
3055     ARRAY_SIZE(kInstruction_add_eq_r9_r7_r6_LSL_r1),
3056     kInstruction_add_eq_r9_r7_r6_LSL_r1,
3057   },
3058   {
3059     ARRAY_SIZE(kInstruction_add_cs_r12_r9_r12_LSR_r0),
3060     kInstruction_add_cs_r12_r9_r12_LSR_r0,
3061   },
3062   {
3063     ARRAY_SIZE(kInstruction_add_mi_r12_r3_r13_ASR_r3),
3064     kInstruction_add_mi_r12_r3_r13_ASR_r3,
3065   },
3066   {
3067     ARRAY_SIZE(kInstruction_add_vs_r13_r4_r0_LSR_r1),
3068     kInstruction_add_vs_r13_r4_r0_LSR_r1,
3069   },
3070   {
3071     ARRAY_SIZE(kInstruction_add_cc_r3_r7_r3_LSL_r13),
3072     kInstruction_add_cc_r3_r7_r3_LSL_r13,
3073   },
3074   {
3075     ARRAY_SIZE(kInstruction_add_le_r10_r1_r1_LSL_r6),
3076     kInstruction_add_le_r10_r1_r1_LSL_r6,
3077   },
3078   {
3079     ARRAY_SIZE(kInstruction_add_vc_r0_r5_r14_ASR_r12),
3080     kInstruction_add_vc_r0_r5_r14_ASR_r12,
3081   },
3082   {
3083     ARRAY_SIZE(kInstruction_add_cc_r0_r8_r0_LSL_r3),
3084     kInstruction_add_cc_r0_r8_r0_LSL_r3,
3085   },
3086   {
3087     ARRAY_SIZE(kInstruction_add_le_r14_r6_r7_ASR_r1),
3088     kInstruction_add_le_r14_r6_r7_ASR_r1,
3089   },
3090   {
3091     ARRAY_SIZE(kInstruction_add_le_r5_r2_r13_LSL_r3),
3092     kInstruction_add_le_r5_r2_r13_LSL_r3,
3093   },
3094   {
3095     ARRAY_SIZE(kInstruction_add_hi_r6_r3_r0_ROR_r4),
3096     kInstruction_add_hi_r6_r3_r0_ROR_r4,
3097   },
3098   {
3099     ARRAY_SIZE(kInstruction_add_vs_r9_r5_r4_LSR_r0),
3100     kInstruction_add_vs_r9_r5_r4_LSR_r0,
3101   },
3102   {
3103     ARRAY_SIZE(kInstruction_add_eq_r3_r8_r2_LSR_r7),
3104     kInstruction_add_eq_r3_r8_r2_LSR_r7,
3105   },
3106   {
3107     ARRAY_SIZE(kInstruction_add_mi_r11_r14_r7_LSR_r5),
3108     kInstruction_add_mi_r11_r14_r7_LSR_r5,
3109   },
3110   {
3111     ARRAY_SIZE(kInstruction_add_ge_r1_r1_r9_LSR_r3),
3112     kInstruction_add_ge_r1_r1_r9_LSR_r3,
3113   },
3114   {
3115     ARRAY_SIZE(kInstruction_add_lt_r10_r10_r5_LSL_r8),
3116     kInstruction_add_lt_r10_r10_r5_LSL_r8,
3117   },
3118   {
3119     ARRAY_SIZE(kInstruction_add_ne_r4_r10_r9_ROR_r5),
3120     kInstruction_add_ne_r4_r10_r9_ROR_r5,
3121   },
3122   {
3123     ARRAY_SIZE(kInstruction_add_lt_r10_r4_r3_LSL_r0),
3124     kInstruction_add_lt_r10_r4_r3_LSL_r0,
3125   },
3126   {
3127     ARRAY_SIZE(kInstruction_add_pl_r1_r0_r1_ROR_r1),
3128     kInstruction_add_pl_r1_r0_r1_ROR_r1,
3129   },
3130   {
3131     ARRAY_SIZE(kInstruction_add_vs_r14_r14_r11_LSR_r6),
3132     kInstruction_add_vs_r14_r14_r11_LSR_r6,
3133   },
3134   {
3135     ARRAY_SIZE(kInstruction_add_lt_r4_r6_r12_LSL_r8),
3136     kInstruction_add_lt_r4_r6_r12_LSL_r8,
3137   },
3138   {
3139     ARRAY_SIZE(kInstruction_add_cs_r12_r3_r3_ASR_r2),
3140     kInstruction_add_cs_r12_r3_r3_ASR_r2,
3141   },
3142   {
3143     ARRAY_SIZE(kInstruction_add_ge_r7_r5_r1_LSL_r2),
3144     kInstruction_add_ge_r7_r5_r1_LSL_r2,
3145   },
3146   {
3147     ARRAY_SIZE(kInstruction_add_vs_r9_r10_r2_ASR_r9),
3148     kInstruction_add_vs_r9_r10_r2_ASR_r9,
3149   },
3150   {
3151     ARRAY_SIZE(kInstruction_add_gt_r5_r10_r4_LSL_r1),
3152     kInstruction_add_gt_r5_r10_r4_LSL_r1,
3153   },
3154   {
3155     ARRAY_SIZE(kInstruction_add_hi_r13_r7_r6_ASR_r4),
3156     kInstruction_add_hi_r13_r7_r6_ASR_r4,
3157   },
3158   {
3159     ARRAY_SIZE(kInstruction_add_hi_r8_r1_r6_LSR_r7),
3160     kInstruction_add_hi_r8_r1_r6_LSR_r7,
3161   },
3162   {
3163     ARRAY_SIZE(kInstruction_add_lt_r5_r8_r12_ROR_r0),
3164     kInstruction_add_lt_r5_r8_r12_ROR_r0,
3165   },
3166   {
3167     ARRAY_SIZE(kInstruction_add_hi_r4_r2_r14_LSR_r9),
3168     kInstruction_add_hi_r4_r2_r14_LSR_r9,
3169   },
3170   {
3171     ARRAY_SIZE(kInstruction_add_ge_r7_r9_r1_ASR_r1),
3172     kInstruction_add_ge_r7_r9_r1_ASR_r1,
3173   },
3174   {
3175     ARRAY_SIZE(kInstruction_add_vc_r13_r6_r7_LSL_r5),
3176     kInstruction_add_vc_r13_r6_r7_LSL_r5,
3177   },
3178   {
3179     ARRAY_SIZE(kInstruction_add_hi_r13_r14_r5_LSR_r10),
3180     kInstruction_add_hi_r13_r14_r5_LSR_r10,
3181   },
3182   {
3183     ARRAY_SIZE(kInstruction_add_cc_r8_r1_r5_ROR_r8),
3184     kInstruction_add_cc_r8_r1_r5_ROR_r8,
3185   },
3186   {
3187     ARRAY_SIZE(kInstruction_add_mi_r6_r12_r4_ASR_r9),
3188     kInstruction_add_mi_r6_r12_r4_ASR_r9,
3189   },
3190   {
3191     ARRAY_SIZE(kInstruction_add_cs_r12_r0_r12_LSL_r9),
3192     kInstruction_add_cs_r12_r0_r12_LSL_r9,
3193   },
3194   {
3195     ARRAY_SIZE(kInstruction_add_ls_r3_r14_r1_LSL_r14),
3196     kInstruction_add_ls_r3_r14_r1_LSL_r14,
3197   },
3198   {
3199     ARRAY_SIZE(kInstruction_add_vs_r1_r10_r1_LSR_r7),
3200     kInstruction_add_vs_r1_r10_r1_LSR_r7,
3201   },
3202   {
3203     ARRAY_SIZE(kInstruction_add_pl_r0_r9_r6_ASR_r4),
3204     kInstruction_add_pl_r0_r9_r6_ASR_r4,
3205   },
3206   {
3207     ARRAY_SIZE(kInstruction_add_al_r13_r13_r3_LSR_r2),
3208     kInstruction_add_al_r13_r13_r3_LSR_r2,
3209   },
3210   {
3211     ARRAY_SIZE(kInstruction_add_le_r4_r3_r7_LSL_r5),
3212     kInstruction_add_le_r4_r3_r7_LSL_r5,
3213   },
3214   {
3215     ARRAY_SIZE(kInstruction_add_vc_r11_r9_r14_LSR_r12),
3216     kInstruction_add_vc_r11_r9_r14_LSR_r12,
3217   },
3218   {
3219     ARRAY_SIZE(kInstruction_add_le_r1_r7_r10_ROR_r7),
3220     kInstruction_add_le_r1_r7_r10_ROR_r7,
3221   },
3222   {
3223     ARRAY_SIZE(kInstruction_add_al_r10_r4_r5_ASR_r13),
3224     kInstruction_add_al_r10_r4_r5_ASR_r13,
3225   },
3226   {
3227     ARRAY_SIZE(kInstruction_add_cs_r9_r9_r7_LSL_r11),
3228     kInstruction_add_cs_r9_r9_r7_LSL_r11,
3229   },
3230   {
3231     ARRAY_SIZE(kInstruction_add_hi_r12_r4_r6_LSR_r9),
3232     kInstruction_add_hi_r12_r4_r6_LSR_r9,
3233   },
3234   {
3235     ARRAY_SIZE(kInstruction_add_ne_r7_r11_r1_ROR_r2),
3236     kInstruction_add_ne_r7_r11_r1_ROR_r2,
3237   },
3238   {
3239     ARRAY_SIZE(kInstruction_add_ne_r3_r13_r5_LSR_r6),
3240     kInstruction_add_ne_r3_r13_r5_LSR_r6,
3241   },
3242   {
3243     ARRAY_SIZE(kInstruction_add_cc_r13_r9_r7_ASR_r4),
3244     kInstruction_add_cc_r13_r9_r7_ASR_r4,
3245   },
3246   {
3247     ARRAY_SIZE(kInstruction_add_al_r6_r13_r7_LSL_r13),
3248     kInstruction_add_al_r6_r13_r7_LSL_r13,
3249   },
3250   {
3251     ARRAY_SIZE(kInstruction_add_ge_r1_r6_r6_ROR_r12),
3252     kInstruction_add_ge_r1_r6_r6_ROR_r12,
3253   },
3254   {
3255     ARRAY_SIZE(kInstruction_add_al_r6_r10_r0_ASR_r8),
3256     kInstruction_add_al_r6_r10_r0_ASR_r8,
3257   },
3258   {
3259     ARRAY_SIZE(kInstruction_add_le_r5_r13_r4_ASR_r8),
3260     kInstruction_add_le_r5_r13_r4_ASR_r8,
3261   },
3262   {
3263     ARRAY_SIZE(kInstruction_add_gt_r5_r1_r4_LSR_r6),
3264     kInstruction_add_gt_r5_r1_r4_LSR_r6,
3265   },
3266   {
3267     ARRAY_SIZE(kInstruction_add_cs_r2_r10_r14_ROR_r13),
3268     kInstruction_add_cs_r2_r10_r14_ROR_r13,
3269   },
3270   {
3271     ARRAY_SIZE(kInstruction_add_le_r2_r7_r0_ROR_r7),
3272     kInstruction_add_le_r2_r7_r0_ROR_r7,
3273   },
3274   {
3275     ARRAY_SIZE(kInstruction_add_al_r12_r7_r13_ASR_r7),
3276     kInstruction_add_al_r12_r7_r13_ASR_r7,
3277   },
3278   {
3279     ARRAY_SIZE(kInstruction_add_le_r10_r3_r2_LSR_r13),
3280     kInstruction_add_le_r10_r3_r2_LSR_r13,
3281   },
3282   {
3283     ARRAY_SIZE(kInstruction_add_al_r2_r14_r11_ROR_r0),
3284     kInstruction_add_al_r2_r14_r11_ROR_r0,
3285   },
3286   {
3287     ARRAY_SIZE(kInstruction_add_eq_r11_r1_r6_ASR_r10),
3288     kInstruction_add_eq_r11_r1_r6_ASR_r10,
3289   },
3290   {
3291     ARRAY_SIZE(kInstruction_add_vs_r11_r9_r5_LSL_r10),
3292     kInstruction_add_vs_r11_r9_r5_LSL_r10,
3293   },
3294   {
3295     ARRAY_SIZE(kInstruction_add_ne_r14_r8_r4_LSL_r8),
3296     kInstruction_add_ne_r14_r8_r4_LSL_r8,
3297   },
3298   {
3299     ARRAY_SIZE(kInstruction_add_vs_r0_r7_r5_ASR_r1),
3300     kInstruction_add_vs_r0_r7_r5_ASR_r1,
3301   },
3302   {
3303     ARRAY_SIZE(kInstruction_add_ne_r12_r6_r1_LSR_r12),
3304     kInstruction_add_ne_r12_r6_r1_LSR_r12,
3305   },
3306   {
3307     ARRAY_SIZE(kInstruction_add_vs_r8_r4_r12_ASR_r1),
3308     kInstruction_add_vs_r8_r4_r12_ASR_r1,
3309   },
3310   {
3311     ARRAY_SIZE(kInstruction_add_pl_r9_r14_r1_LSL_r13),
3312     kInstruction_add_pl_r9_r14_r1_LSL_r13,
3313   },
3314   {
3315     ARRAY_SIZE(kInstruction_add_pl_r3_r0_r10_LSR_r0),
3316     kInstruction_add_pl_r3_r0_r10_LSR_r0,
3317   },
3318   {
3319     ARRAY_SIZE(kInstruction_add_pl_r13_r9_r5_LSL_r0),
3320     kInstruction_add_pl_r13_r9_r5_LSL_r0,
3321   },
3322   {
3323     ARRAY_SIZE(kInstruction_add_vs_r2_r3_r13_ROR_r11),
3324     kInstruction_add_vs_r2_r3_r13_ROR_r11,
3325   },
3326   {
3327     ARRAY_SIZE(kInstruction_add_ls_r8_r2_r1_LSL_r5),
3328     kInstruction_add_ls_r8_r2_r1_LSL_r5,
3329   },
3330   {
3331     ARRAY_SIZE(kInstruction_add_vs_r6_r7_r10_LSL_r1),
3332     kInstruction_add_vs_r6_r7_r10_LSL_r1,
3333   },
3334   {
3335     ARRAY_SIZE(kInstruction_add_ge_r10_r8_r7_LSL_r5),
3336     kInstruction_add_ge_r10_r8_r7_LSL_r5,
3337   },
3338   {
3339     ARRAY_SIZE(kInstruction_add_ge_r6_r11_r13_ROR_r7),
3340     kInstruction_add_ge_r6_r11_r13_ROR_r7,
3341   },
3342   {
3343     ARRAY_SIZE(kInstruction_add_eq_r10_r4_r4_LSL_r14),
3344     kInstruction_add_eq_r10_r4_r4_LSL_r14,
3345   },
3346   {
3347     ARRAY_SIZE(kInstruction_add_cc_r13_r6_r0_LSR_r9),
3348     kInstruction_add_cc_r13_r6_r0_LSR_r9,
3349   },
3350   {
3351     ARRAY_SIZE(kInstruction_add_gt_r8_r7_r0_ASR_r3),
3352     kInstruction_add_gt_r8_r7_r0_ASR_r3,
3353   },
3354   {
3355     ARRAY_SIZE(kInstruction_add_pl_r11_r7_r0_ROR_r14),
3356     kInstruction_add_pl_r11_r7_r0_ROR_r14,
3357   },
3358   {
3359     ARRAY_SIZE(kInstruction_add_vc_r3_r10_r0_LSR_r10),
3360     kInstruction_add_vc_r3_r10_r0_LSR_r10,
3361   },
3362   {
3363     ARRAY_SIZE(kInstruction_add_vs_r6_r3_r9_LSR_r12),
3364     kInstruction_add_vs_r6_r3_r9_LSR_r12,
3365   },
3366   {
3367     ARRAY_SIZE(kInstruction_add_hi_r5_r3_r3_ROR_r1),
3368     kInstruction_add_hi_r5_r3_r3_ROR_r1,
3369   },
3370   {
3371     ARRAY_SIZE(kInstruction_add_mi_r9_r10_r0_ROR_r4),
3372     kInstruction_add_mi_r9_r10_r0_ROR_r4,
3373   },
3374   {
3375     ARRAY_SIZE(kInstruction_add_cc_r5_r13_r6_LSL_r6),
3376     kInstruction_add_cc_r5_r13_r6_LSL_r6,
3377   },
3378   {
3379     ARRAY_SIZE(kInstruction_add_le_r1_r4_r0_LSL_r5),
3380     kInstruction_add_le_r1_r4_r0_LSL_r5,
3381   },
3382   {
3383     ARRAY_SIZE(kInstruction_add_mi_r11_r1_r5_LSL_r13),
3384     kInstruction_add_mi_r11_r1_r5_LSL_r13,
3385   },
3386   {
3387     ARRAY_SIZE(kInstruction_add_ne_r14_r1_r10_LSR_r4),
3388     kInstruction_add_ne_r14_r1_r10_LSR_r4,
3389   },
3390   {
3391     ARRAY_SIZE(kInstruction_add_le_r11_r5_r6_ASR_r1),
3392     kInstruction_add_le_r11_r5_r6_ASR_r1,
3393   },
3394   {
3395     ARRAY_SIZE(kInstruction_add_al_r0_r9_r5_ASR_r1),
3396     kInstruction_add_al_r0_r9_r5_ASR_r1,
3397   },
3398   {
3399     ARRAY_SIZE(kInstruction_add_ne_r6_r13_r4_LSL_r11),
3400     kInstruction_add_ne_r6_r13_r4_LSL_r11,
3401   },
3402   {
3403     ARRAY_SIZE(kInstruction_add_pl_r10_r4_r14_ROR_r8),
3404     kInstruction_add_pl_r10_r4_r14_ROR_r8,
3405   },
3406   {
3407     ARRAY_SIZE(kInstruction_add_cs_r1_r8_r5_ASR_r14),
3408     kInstruction_add_cs_r1_r8_r5_ASR_r14,
3409   },
3410   {
3411     ARRAY_SIZE(kInstruction_add_ls_r12_r1_r3_LSL_r7),
3412     kInstruction_add_ls_r12_r1_r3_LSL_r7,
3413   },
3414   {
3415     ARRAY_SIZE(kInstruction_add_pl_r11_r3_r8_ROR_r10),
3416     kInstruction_add_pl_r11_r3_r8_ROR_r10,
3417   },
3418   {
3419     ARRAY_SIZE(kInstruction_add_ge_r7_r7_r5_ROR_r7),
3420     kInstruction_add_ge_r7_r7_r5_ROR_r7,
3421   },
3422   {
3423     ARRAY_SIZE(kInstruction_add_ls_r2_r11_r7_LSR_r11),
3424     kInstruction_add_ls_r2_r11_r7_LSR_r11,
3425   },
3426   {
3427     ARRAY_SIZE(kInstruction_add_le_r9_r11_r9_ASR_r2),
3428     kInstruction_add_le_r9_r11_r9_ASR_r2,
3429   },
3430   {
3431     ARRAY_SIZE(kInstruction_add_mi_r7_r7_r4_ASR_r1),
3432     kInstruction_add_mi_r7_r7_r4_ASR_r1,
3433   },
3434   {
3435     ARRAY_SIZE(kInstruction_add_cc_r7_r1_r0_ROR_r7),
3436     kInstruction_add_cc_r7_r1_r0_ROR_r7,
3437   },
3438   {
3439     ARRAY_SIZE(kInstruction_add_vs_r12_r12_r1_LSR_r10),
3440     kInstruction_add_vs_r12_r12_r1_LSR_r10,
3441   },
3442   {
3443     ARRAY_SIZE(kInstruction_add_hi_r3_r10_r12_LSR_r4),
3444     kInstruction_add_hi_r3_r10_r12_LSR_r4,
3445   },
3446   {
3447     ARRAY_SIZE(kInstruction_add_cs_r0_r14_r3_ASR_r6),
3448     kInstruction_add_cs_r0_r14_r3_ASR_r6,
3449   },
3450   {
3451     ARRAY_SIZE(kInstruction_add_ls_r7_r11_r6_ROR_r1),
3452     kInstruction_add_ls_r7_r11_r6_ROR_r1,
3453   },
3454   {
3455     ARRAY_SIZE(kInstruction_add_cs_r9_r3_r14_LSR_r0),
3456     kInstruction_add_cs_r9_r3_r14_LSR_r0,
3457   },
3458   {
3459     ARRAY_SIZE(kInstruction_add_gt_r8_r3_r11_LSL_r12),
3460     kInstruction_add_gt_r8_r3_r11_LSL_r12,
3461   },
3462   {
3463     ARRAY_SIZE(kInstruction_add_cs_r12_r6_r5_LSR_r11),
3464     kInstruction_add_cs_r12_r6_r5_LSR_r11,
3465   },
3466   {
3467     ARRAY_SIZE(kInstruction_add_gt_r3_r10_r1_ROR_r14),
3468     kInstruction_add_gt_r3_r10_r1_ROR_r14,
3469   },
3470   {
3471     ARRAY_SIZE(kInstruction_add_le_r8_r4_r3_ASR_r1),
3472     kInstruction_add_le_r8_r4_r3_ASR_r1,
3473   },
3474   {
3475     ARRAY_SIZE(kInstruction_add_ne_r6_r8_r5_ROR_r11),
3476     kInstruction_add_ne_r6_r8_r5_ROR_r11,
3477   },
3478   {
3479     ARRAY_SIZE(kInstruction_add_al_r9_r1_r11_ROR_r3),
3480     kInstruction_add_al_r9_r1_r11_ROR_r3,
3481   },
3482   {
3483     ARRAY_SIZE(kInstruction_add_ge_r13_r8_r11_ROR_r8),
3484     kInstruction_add_ge_r13_r8_r11_ROR_r8,
3485   },
3486   {
3487     ARRAY_SIZE(kInstruction_add_pl_r0_r1_r2_LSR_r9),
3488     kInstruction_add_pl_r0_r1_r2_LSR_r9,
3489   },
3490   {
3491     ARRAY_SIZE(kInstruction_add_pl_r6_r7_r13_LSL_r11),
3492     kInstruction_add_pl_r6_r7_r13_LSL_r11,
3493   },
3494   {
3495     ARRAY_SIZE(kInstruction_add_vs_r10_r9_r13_LSR_r13),
3496     kInstruction_add_vs_r10_r9_r13_LSR_r13,
3497   },
3498   {
3499     ARRAY_SIZE(kInstruction_add_le_r0_r7_r13_ROR_r9),
3500     kInstruction_add_le_r0_r7_r13_ROR_r9,
3501   },
3502   {
3503     ARRAY_SIZE(kInstruction_add_gt_r1_r14_r12_LSR_r8),
3504     kInstruction_add_gt_r1_r14_r12_LSR_r8,
3505   },
3506   {
3507     ARRAY_SIZE(kInstruction_add_ls_r14_r12_r7_LSR_r14),
3508     kInstruction_add_ls_r14_r12_r7_LSR_r14,
3509   },
3510   {
3511     ARRAY_SIZE(kInstruction_add_cs_r9_r5_r3_ASR_r9),
3512     kInstruction_add_cs_r9_r5_r3_ASR_r9,
3513   },
3514   {
3515     ARRAY_SIZE(kInstruction_add_gt_r7_r11_r11_ASR_r14),
3516     kInstruction_add_gt_r7_r11_r11_ASR_r14,
3517   },
3518   {
3519     ARRAY_SIZE(kInstruction_add_pl_r10_r14_r12_LSL_r11),
3520     kInstruction_add_pl_r10_r14_r12_LSL_r11,
3521   },
3522   {
3523     ARRAY_SIZE(kInstruction_add_mi_r5_r5_r10_LSL_r13),
3524     kInstruction_add_mi_r5_r5_r10_LSL_r13,
3525   },
3526   {
3527     ARRAY_SIZE(kInstruction_add_hi_r2_r13_r12_ASR_r10),
3528     kInstruction_add_hi_r2_r13_r12_ASR_r10,
3529   },
3530   {
3531     ARRAY_SIZE(kInstruction_add_ge_r13_r9_r12_LSR_r11),
3532     kInstruction_add_ge_r13_r9_r12_LSR_r11,
3533   },
3534   {
3535     ARRAY_SIZE(kInstruction_add_ls_r9_r3_r7_ROR_r14),
3536     kInstruction_add_ls_r9_r3_r7_ROR_r14,
3537   },
3538   {
3539     ARRAY_SIZE(kInstruction_add_al_r2_r12_r9_ROR_r10),
3540     kInstruction_add_al_r2_r12_r9_ROR_r10,
3541   },
3542   {
3543     ARRAY_SIZE(kInstruction_add_al_r10_r6_r11_ASR_r14),
3544     kInstruction_add_al_r10_r6_r11_ASR_r14,
3545   },
3546   {
3547     ARRAY_SIZE(kInstruction_add_pl_r8_r3_r9_ASR_r13),
3548     kInstruction_add_pl_r8_r3_r9_ASR_r13,
3549   },
3550   {
3551     ARRAY_SIZE(kInstruction_add_al_r0_r1_r10_ROR_r11),
3552     kInstruction_add_al_r0_r1_r10_ROR_r11,
3553   },
3554   {
3555     ARRAY_SIZE(kInstruction_add_gt_r10_r6_r10_ASR_r7),
3556     kInstruction_add_gt_r10_r6_r10_ASR_r7,
3557   },
3558   {
3559     ARRAY_SIZE(kInstruction_add_pl_r7_r10_r14_LSR_r4),
3560     kInstruction_add_pl_r7_r10_r14_LSR_r4,
3561   },
3562   {
3563     ARRAY_SIZE(kInstruction_add_cs_r13_r5_r9_LSL_r5),
3564     kInstruction_add_cs_r13_r5_r9_LSL_r5,
3565   },
3566   {
3567     ARRAY_SIZE(kInstruction_add_gt_r11_r14_r9_LSR_r4),
3568     kInstruction_add_gt_r11_r14_r9_LSR_r4,
3569   },
3570   {
3571     ARRAY_SIZE(kInstruction_add_mi_r9_r6_r9_ASR_r7),
3572     kInstruction_add_mi_r9_r6_r9_ASR_r7,
3573   },
3574   {
3575     ARRAY_SIZE(kInstruction_add_ls_r14_r12_r14_LSR_r4),
3576     kInstruction_add_ls_r14_r12_r14_LSR_r4,
3577   },
3578   {
3579     ARRAY_SIZE(kInstruction_add_al_r8_r5_r14_LSR_r1),
3580     kInstruction_add_al_r8_r5_r14_LSR_r1,
3581   },
3582   {
3583     ARRAY_SIZE(kInstruction_add_le_r7_r10_r10_LSL_r14),
3584     kInstruction_add_le_r7_r10_r10_LSL_r14,
3585   },
3586   {
3587     ARRAY_SIZE(kInstruction_add_pl_r7_r9_r5_ROR_r8),
3588     kInstruction_add_pl_r7_r9_r5_ROR_r8,
3589   },
3590   {
3591     ARRAY_SIZE(kInstruction_add_mi_r1_r6_r12_LSL_r0),
3592     kInstruction_add_mi_r1_r6_r12_LSL_r0,
3593   },
3594   {
3595     ARRAY_SIZE(kInstruction_add_ls_r9_r8_r2_LSL_r8),
3596     kInstruction_add_ls_r9_r8_r2_LSL_r8,
3597   },
3598   {
3599     ARRAY_SIZE(kInstruction_add_ge_r8_r6_r2_LSR_r3),
3600     kInstruction_add_ge_r8_r6_r2_LSR_r3,
3601   },
3602   {
3603     ARRAY_SIZE(kInstruction_add_al_r8_r6_r8_LSL_r7),
3604     kInstruction_add_al_r8_r6_r8_LSL_r7,
3605   },
3606   {
3607     ARRAY_SIZE(kInstruction_add_ls_r2_r6_r14_LSL_r8),
3608     kInstruction_add_ls_r2_r6_r14_LSL_r8,
3609   },
3610   {
3611     ARRAY_SIZE(kInstruction_add_lt_r12_r9_r5_ROR_r10),
3612     kInstruction_add_lt_r12_r9_r5_ROR_r10,
3613   },
3614   {
3615     ARRAY_SIZE(kInstruction_add_ls_r7_r12_r5_ASR_r14),
3616     kInstruction_add_ls_r7_r12_r5_ASR_r14,
3617   },
3618   {
3619     ARRAY_SIZE(kInstruction_add_cc_r0_r4_r13_ASR_r12),
3620     kInstruction_add_cc_r0_r4_r13_ASR_r12,
3621   },
3622   {
3623     ARRAY_SIZE(kInstruction_add_vc_r10_r14_r5_ROR_r1),
3624     kInstruction_add_vc_r10_r14_r5_ROR_r1,
3625   },
3626   {
3627     ARRAY_SIZE(kInstruction_add_cs_r13_r3_r2_LSR_r13),
3628     kInstruction_add_cs_r13_r3_r2_LSR_r13,
3629   },
3630   {
3631     ARRAY_SIZE(kInstruction_add_le_r1_r11_r4_ASR_r7),
3632     kInstruction_add_le_r1_r11_r4_ASR_r7,
3633   },
3634   {
3635     ARRAY_SIZE(kInstruction_add_cc_r0_r13_r3_ASR_r1),
3636     kInstruction_add_cc_r0_r13_r3_ASR_r1,
3637   },
3638   {
3639     ARRAY_SIZE(kInstruction_add_le_r0_r1_r11_ROR_r6),
3640     kInstruction_add_le_r0_r1_r11_ROR_r6,
3641   },
3642   {
3643     ARRAY_SIZE(kInstruction_add_ls_r8_r14_r12_LSR_r8),
3644     kInstruction_add_ls_r8_r14_r12_LSR_r8,
3645   },
3646   {
3647     ARRAY_SIZE(kInstruction_add_ne_r5_r0_r7_ASR_r9),
3648     kInstruction_add_ne_r5_r0_r7_ASR_r9,
3649   },
3650   {
3651     ARRAY_SIZE(kInstruction_add_vs_r2_r12_r3_ROR_r7),
3652     kInstruction_add_vs_r2_r12_r3_ROR_r7,
3653   },
3654   {
3655     ARRAY_SIZE(kInstruction_add_ne_r8_r9_r0_LSR_r10),
3656     kInstruction_add_ne_r8_r9_r0_LSR_r10,
3657   },
3658   {
3659     ARRAY_SIZE(kInstruction_add_pl_r8_r6_r8_ASR_r1),
3660     kInstruction_add_pl_r8_r6_r8_ASR_r1,
3661   },
3662   {
3663     ARRAY_SIZE(kInstruction_add_vc_r13_r1_r0_ASR_r13),
3664     kInstruction_add_vc_r13_r1_r0_ASR_r13,
3665   },
3666   {
3667     ARRAY_SIZE(kInstruction_add_vc_r9_r3_r1_LSL_r6),
3668     kInstruction_add_vc_r9_r3_r1_LSL_r6,
3669   },
3670   {
3671     ARRAY_SIZE(kInstruction_add_pl_r0_r2_r4_LSL_r1),
3672     kInstruction_add_pl_r0_r2_r4_LSL_r1,
3673   },
3674   {
3675     ARRAY_SIZE(kInstruction_add_lt_r14_r8_r13_LSR_r7),
3676     kInstruction_add_lt_r14_r8_r13_LSR_r7,
3677   },
3678   {
3679     ARRAY_SIZE(kInstruction_add_pl_r4_r9_r6_LSL_r3),
3680     kInstruction_add_pl_r4_r9_r6_LSL_r3,
3681   },
3682   {
3683     ARRAY_SIZE(kInstruction_add_hi_r0_r4_r10_LSR_r9),
3684     kInstruction_add_hi_r0_r4_r10_LSR_r9,
3685   },
3686   {
3687     ARRAY_SIZE(kInstruction_add_ne_r0_r11_r9_ASR_r14),
3688     kInstruction_add_ne_r0_r11_r9_ASR_r14,
3689   },
3690   {
3691     ARRAY_SIZE(kInstruction_add_vs_r2_r8_r2_LSL_r12),
3692     kInstruction_add_vs_r2_r8_r2_LSL_r12,
3693   },
3694   {
3695     ARRAY_SIZE(kInstruction_add_lt_r2_r0_r7_ROR_r9),
3696     kInstruction_add_lt_r2_r0_r7_ROR_r9,
3697   },
3698   {
3699     ARRAY_SIZE(kInstruction_add_gt_r10_r6_r12_ASR_r2),
3700     kInstruction_add_gt_r10_r6_r12_ASR_r2,
3701   },
3702   {
3703     ARRAY_SIZE(kInstruction_add_ne_r3_r2_r8_ASR_r6),
3704     kInstruction_add_ne_r3_r2_r8_ASR_r6,
3705   },
3706   {
3707     ARRAY_SIZE(kInstruction_add_ls_r6_r3_r12_ASR_r7),
3708     kInstruction_add_ls_r6_r3_r12_ASR_r7,
3709   },
3710   {
3711     ARRAY_SIZE(kInstruction_add_cs_r8_r4_r2_LSL_r3),
3712     kInstruction_add_cs_r8_r4_r2_LSL_r3,
3713   },
3714   {
3715     ARRAY_SIZE(kInstruction_add_eq_r12_r9_r4_ASR_r11),
3716     kInstruction_add_eq_r12_r9_r4_ASR_r11,
3717   },
3718   {
3719     ARRAY_SIZE(kInstruction_add_lt_r10_r4_r5_ROR_r13),
3720     kInstruction_add_lt_r10_r4_r5_ROR_r13,
3721   },
3722   {
3723     ARRAY_SIZE(kInstruction_add_pl_r9_r9_r13_LSL_r11),
3724     kInstruction_add_pl_r9_r9_r13_LSL_r11,
3725   },
3726   {
3727     ARRAY_SIZE(kInstruction_add_lt_r2_r12_r13_ASR_r9),
3728     kInstruction_add_lt_r2_r12_r13_ASR_r9,
3729   },
3730   {
3731     ARRAY_SIZE(kInstruction_add_ls_r1_r12_r8_LSL_r3),
3732     kInstruction_add_ls_r1_r12_r8_LSL_r3,
3733   },
3734   {
3735     ARRAY_SIZE(kInstruction_add_vs_r0_r1_r4_ASR_r11),
3736     kInstruction_add_vs_r0_r1_r4_ASR_r11,
3737   },
3738   {
3739     ARRAY_SIZE(kInstruction_add_vc_r2_r8_r9_LSR_r12),
3740     kInstruction_add_vc_r2_r8_r9_LSR_r12,
3741   },
3742   {
3743     ARRAY_SIZE(kInstruction_add_ne_r14_r12_r3_ASR_r9),
3744     kInstruction_add_ne_r14_r12_r3_ASR_r9,
3745   },
3746   {
3747     ARRAY_SIZE(kInstruction_add_gt_r14_r5_r12_LSL_r9),
3748     kInstruction_add_gt_r14_r5_r12_LSL_r9,
3749   },
3750   {
3751     ARRAY_SIZE(kInstruction_add_ls_r5_r8_r2_LSR_r5),
3752     kInstruction_add_ls_r5_r8_r2_LSR_r5,
3753   },
3754   {
3755     ARRAY_SIZE(kInstruction_add_cs_r12_r5_r3_ROR_r8),
3756     kInstruction_add_cs_r12_r5_r3_ROR_r8,
3757   },
3758   {
3759     ARRAY_SIZE(kInstruction_add_vs_r5_r11_r5_ROR_r9),
3760     kInstruction_add_vs_r5_r11_r5_ROR_r9,
3761   },
3762   {
3763     ARRAY_SIZE(kInstruction_add_lt_r4_r14_r11_LSL_r0),
3764     kInstruction_add_lt_r4_r14_r11_LSL_r0,
3765   },
3766   {
3767     ARRAY_SIZE(kInstruction_add_eq_r1_r0_r14_ROR_r13),
3768     kInstruction_add_eq_r1_r0_r14_ROR_r13,
3769   },
3770   {
3771     ARRAY_SIZE(kInstruction_add_ge_r12_r1_r13_LSR_r2),
3772     kInstruction_add_ge_r12_r1_r13_LSR_r2,
3773   },
3774   {
3775     ARRAY_SIZE(kInstruction_add_pl_r12_r8_r4_LSL_r9),
3776     kInstruction_add_pl_r12_r8_r4_LSL_r9,
3777   },
3778   {
3779     ARRAY_SIZE(kInstruction_add_eq_r7_r6_r6_LSR_r2),
3780     kInstruction_add_eq_r7_r6_r6_LSR_r2,
3781   },
3782   {
3783     ARRAY_SIZE(kInstruction_add_ls_r3_r4_r4_LSL_r9),
3784     kInstruction_add_ls_r3_r4_r4_LSL_r9,
3785   },
3786   {
3787     ARRAY_SIZE(kInstruction_add_eq_r7_r2_r0_LSR_r6),
3788     kInstruction_add_eq_r7_r2_r0_LSR_r6,
3789   },
3790   {
3791     ARRAY_SIZE(kInstruction_add_eq_r3_r13_r4_ROR_r7),
3792     kInstruction_add_eq_r3_r13_r4_ROR_r7,
3793   },
3794   {
3795     ARRAY_SIZE(kInstruction_add_eq_r12_r6_r9_LSR_r0),
3796     kInstruction_add_eq_r12_r6_r9_LSR_r0,
3797   },
3798   {
3799     ARRAY_SIZE(kInstruction_add_lt_r13_r10_r0_LSL_r10),
3800     kInstruction_add_lt_r13_r10_r0_LSL_r10,
3801   },
3802   {
3803     ARRAY_SIZE(kInstruction_add_ls_r12_r14_r13_ROR_r6),
3804     kInstruction_add_ls_r12_r14_r13_ROR_r6,
3805   },
3806   {
3807     ARRAY_SIZE(kInstruction_add_ls_r6_r3_r2_LSR_r3),
3808     kInstruction_add_ls_r6_r3_r2_LSR_r3,
3809   },
3810   {
3811     ARRAY_SIZE(kInstruction_add_lt_r13_r6_r4_ROR_r11),
3812     kInstruction_add_lt_r13_r6_r4_ROR_r11,
3813   },
3814   {
3815     ARRAY_SIZE(kInstruction_add_eq_r7_r9_r1_ROR_r12),
3816     kInstruction_add_eq_r7_r9_r1_ROR_r12,
3817   },
3818   {
3819     ARRAY_SIZE(kInstruction_add_pl_r12_r13_r3_LSL_r5),
3820     kInstruction_add_pl_r12_r13_r3_LSL_r5,
3821   },
3822   {
3823     ARRAY_SIZE(kInstruction_add_vs_r1_r3_r3_LSR_r9),
3824     kInstruction_add_vs_r1_r3_r3_LSR_r9,
3825   },
3826   {
3827     ARRAY_SIZE(kInstruction_add_pl_r3_r11_r12_ASR_r8),
3828     kInstruction_add_pl_r3_r11_r12_ASR_r8,
3829   },
3830   {
3831     ARRAY_SIZE(kInstruction_add_ne_r0_r3_r13_ASR_r11),
3832     kInstruction_add_ne_r0_r3_r13_ASR_r11,
3833   },
3834   {
3835     ARRAY_SIZE(kInstruction_add_ge_r13_r5_r3_LSR_r11),
3836     kInstruction_add_ge_r13_r5_r3_LSR_r11,
3837   },
3838   {
3839     ARRAY_SIZE(kInstruction_add_al_r0_r6_r9_LSR_r1),
3840     kInstruction_add_al_r0_r6_r9_LSR_r1,
3841   },
3842   {
3843     ARRAY_SIZE(kInstruction_add_ls_r3_r3_r5_LSR_r9),
3844     kInstruction_add_ls_r3_r3_r5_LSR_r9,
3845   },
3846   {
3847     ARRAY_SIZE(kInstruction_add_mi_r13_r3_r7_ASR_r0),
3848     kInstruction_add_mi_r13_r3_r7_ASR_r0,
3849   },
3850   {
3851     ARRAY_SIZE(kInstruction_add_vc_r1_r5_r10_LSL_r6),
3852     kInstruction_add_vc_r1_r5_r10_LSL_r6,
3853   },
3854   {
3855     ARRAY_SIZE(kInstruction_add_eq_r9_r13_r6_LSL_r0),
3856     kInstruction_add_eq_r9_r13_r6_LSL_r0,
3857   },
3858   {
3859     ARRAY_SIZE(kInstruction_add_cs_r14_r11_r9_ASR_r8),
3860     kInstruction_add_cs_r14_r11_r9_ASR_r8,
3861   },
3862   {
3863     ARRAY_SIZE(kInstruction_add_pl_r2_r3_r4_LSL_r1),
3864     kInstruction_add_pl_r2_r3_r4_LSL_r1,
3865   },
3866   {
3867     ARRAY_SIZE(kInstruction_add_vc_r0_r2_r13_ASR_r14),
3868     kInstruction_add_vc_r0_r2_r13_ASR_r14,
3869   },
3870   {
3871     ARRAY_SIZE(kInstruction_add_le_r10_r7_r13_ROR_r6),
3872     kInstruction_add_le_r10_r7_r13_ROR_r6,
3873   },
3874   {
3875     ARRAY_SIZE(kInstruction_add_hi_r12_r6_r1_LSL_r0),
3876     kInstruction_add_hi_r12_r6_r1_LSL_r0,
3877   },
3878   {
3879     ARRAY_SIZE(kInstruction_add_ls_r10_r12_r12_ROR_r4),
3880     kInstruction_add_ls_r10_r12_r12_ROR_r4,
3881   },
3882   {
3883     ARRAY_SIZE(kInstruction_add_gt_r13_r4_r11_LSL_r2),
3884     kInstruction_add_gt_r13_r4_r11_LSL_r2,
3885   },
3886   {
3887     ARRAY_SIZE(kInstruction_add_ne_r13_r10_r5_LSR_r9),
3888     kInstruction_add_ne_r13_r10_r5_LSR_r9,
3889   },
3890   {
3891     ARRAY_SIZE(kInstruction_add_ge_r0_r0_r9_LSR_r5),
3892     kInstruction_add_ge_r0_r0_r9_LSR_r5,
3893   },
3894   {
3895     ARRAY_SIZE(kInstruction_add_vs_r7_r8_r13_ROR_r4),
3896     kInstruction_add_vs_r7_r8_r13_ROR_r4,
3897   },
3898   {
3899     ARRAY_SIZE(kInstruction_add_cc_r1_r2_r8_LSL_r6),
3900     kInstruction_add_cc_r1_r2_r8_LSL_r6,
3901   },
3902   {
3903     ARRAY_SIZE(kInstruction_add_le_r7_r11_r3_LSL_r4),
3904     kInstruction_add_le_r7_r11_r3_LSL_r4,
3905   },
3906   {
3907     ARRAY_SIZE(kInstruction_add_hi_r11_r7_r3_LSL_r14),
3908     kInstruction_add_hi_r11_r7_r3_LSL_r14,
3909   },
3910   {
3911     ARRAY_SIZE(kInstruction_add_ge_r12_r4_r5_ASR_r8),
3912     kInstruction_add_ge_r12_r4_r5_ASR_r8,
3913   },
3914   {
3915     ARRAY_SIZE(kInstruction_add_vc_r12_r5_r13_LSL_r1),
3916     kInstruction_add_vc_r12_r5_r13_LSL_r1,
3917   },
3918   {
3919     ARRAY_SIZE(kInstruction_add_ls_r0_r8_r3_LSR_r3),
3920     kInstruction_add_ls_r0_r8_r3_LSR_r3,
3921   },
3922   {
3923     ARRAY_SIZE(kInstruction_add_cs_r2_r0_r11_ASR_r5),
3924     kInstruction_add_cs_r2_r0_r11_ASR_r5,
3925   },
3926   {
3927     ARRAY_SIZE(kInstruction_add_mi_r9_r1_r2_ASR_r2),
3928     kInstruction_add_mi_r9_r1_r2_ASR_r2,
3929   },
3930   {
3931     ARRAY_SIZE(kInstruction_add_pl_r7_r10_r13_LSR_r8),
3932     kInstruction_add_pl_r7_r10_r13_LSR_r8,
3933   },
3934   {
3935     ARRAY_SIZE(kInstruction_add_ne_r12_r14_r10_ROR_r1),
3936     kInstruction_add_ne_r12_r14_r10_ROR_r1,
3937   },
3938   {
3939     ARRAY_SIZE(kInstruction_add_gt_r0_r5_r9_LSL_r10),
3940     kInstruction_add_gt_r0_r5_r9_LSL_r10,
3941   },
3942   {
3943     ARRAY_SIZE(kInstruction_add_ls_r12_r12_r1_ASR_r2),
3944     kInstruction_add_ls_r12_r12_r1_ASR_r2,
3945   },
3946   {
3947     ARRAY_SIZE(kInstruction_add_ne_r14_r0_r6_ROR_r5),
3948     kInstruction_add_ne_r14_r0_r6_ROR_r5,
3949   },
3950   {
3951     ARRAY_SIZE(kInstruction_add_gt_r10_r7_r0_ROR_r1),
3952     kInstruction_add_gt_r10_r7_r0_ROR_r1,
3953   },
3954   {
3955     ARRAY_SIZE(kInstruction_add_ls_r7_r3_r0_ROR_r8),
3956     kInstruction_add_ls_r7_r3_r0_ROR_r8,
3957   },
3958   {
3959     ARRAY_SIZE(kInstruction_add_mi_r1_r11_r9_ROR_r1),
3960     kInstruction_add_mi_r1_r11_r9_ROR_r1,
3961   },
3962   {
3963     ARRAY_SIZE(kInstruction_add_pl_r8_r7_r9_ROR_r9),
3964     kInstruction_add_pl_r8_r7_r9_ROR_r9,
3965   },
3966   {
3967     ARRAY_SIZE(kInstruction_add_lt_r3_r1_r7_LSR_r4),
3968     kInstruction_add_lt_r3_r1_r7_LSR_r4,
3969   },
3970   {
3971     ARRAY_SIZE(kInstruction_add_mi_r11_r4_r4_LSL_r5),
3972     kInstruction_add_mi_r11_r4_r4_LSL_r5,
3973   },
3974   {
3975     ARRAY_SIZE(kInstruction_add_cs_r1_r7_r5_LSR_r13),
3976     kInstruction_add_cs_r1_r7_r5_LSR_r13,
3977   },
3978   {
3979     ARRAY_SIZE(kInstruction_add_ls_r0_r2_r10_ASR_r4),
3980     kInstruction_add_ls_r0_r2_r10_ASR_r4,
3981   },
3982   {
3983     ARRAY_SIZE(kInstruction_add_ge_r5_r12_r11_ASR_r3),
3984     kInstruction_add_ge_r5_r12_r11_ASR_r3,
3985   },
3986   {
3987     ARRAY_SIZE(kInstruction_add_vc_r13_r4_r13_ASR_r13),
3988     kInstruction_add_vc_r13_r4_r13_ASR_r13,
3989   },
3990   {
3991     ARRAY_SIZE(kInstruction_add_le_r9_r3_r4_LSL_r12),
3992     kInstruction_add_le_r9_r3_r4_LSL_r12,
3993   },
3994   {
3995     ARRAY_SIZE(kInstruction_add_al_r8_r14_r3_ROR_r1),
3996     kInstruction_add_al_r8_r14_r3_ROR_r1,
3997   },
3998   {
3999     ARRAY_SIZE(kInstruction_add_ls_r2_r0_r1_LSR_r4),
4000     kInstruction_add_ls_r2_r0_r1_LSR_r4,
4001   },
4002   {
4003     ARRAY_SIZE(kInstruction_add_cc_r4_r11_r0_ASR_r5),
4004     kInstruction_add_cc_r4_r11_r0_ASR_r5,
4005   },
4006   {
4007     ARRAY_SIZE(kInstruction_add_lt_r13_r1_r8_ROR_r9),
4008     kInstruction_add_lt_r13_r1_r8_ROR_r9,
4009   },
4010   {
4011     ARRAY_SIZE(kInstruction_add_mi_r5_r12_r13_ROR_r14),
4012     kInstruction_add_mi_r5_r12_r13_ROR_r14,
4013   },
4014   {
4015     ARRAY_SIZE(kInstruction_add_cs_r4_r1_r13_ASR_r13),
4016     kInstruction_add_cs_r4_r1_r13_ASR_r13,
4017   },
4018   {
4019     ARRAY_SIZE(kInstruction_add_vs_r1_r14_r1_ASR_r9),
4020     kInstruction_add_vs_r1_r14_r1_ASR_r9,
4021   },
4022   {
4023     ARRAY_SIZE(kInstruction_add_al_r14_r5_r2_LSL_r8),
4024     kInstruction_add_al_r14_r5_r2_LSL_r8,
4025   },
4026   {
4027     ARRAY_SIZE(kInstruction_add_ge_r1_r6_r5_ASR_r8),
4028     kInstruction_add_ge_r1_r6_r5_ASR_r8,
4029   },
4030   {
4031     ARRAY_SIZE(kInstruction_add_ls_r10_r3_r12_LSL_r13),
4032     kInstruction_add_ls_r10_r3_r12_LSL_r13,
4033   },
4034   {
4035     ARRAY_SIZE(kInstruction_add_vc_r8_r8_r3_ROR_r4),
4036     kInstruction_add_vc_r8_r8_r3_ROR_r4,
4037   },
4038   {
4039     ARRAY_SIZE(kInstruction_add_lt_r9_r5_r5_LSR_r6),
4040     kInstruction_add_lt_r9_r5_r5_LSR_r6,
4041   },
4042   {
4043     ARRAY_SIZE(kInstruction_add_lt_r7_r9_r12_ASR_r2),
4044     kInstruction_add_lt_r7_r9_r12_ASR_r2,
4045   },
4046   {
4047     ARRAY_SIZE(kInstruction_add_eq_r11_r14_r11_ROR_r0),
4048     kInstruction_add_eq_r11_r14_r11_ROR_r0,
4049   },
4050   {
4051     ARRAY_SIZE(kInstruction_add_hi_r5_r3_r11_LSL_r3),
4052     kInstruction_add_hi_r5_r3_r11_LSL_r3,
4053   },
4054   {
4055     ARRAY_SIZE(kInstruction_add_ls_r3_r8_r9_LSR_r10),
4056     kInstruction_add_ls_r3_r8_r9_LSR_r10,
4057   },
4058   {
4059     ARRAY_SIZE(kInstruction_add_cs_r14_r14_r0_LSL_r10),
4060     kInstruction_add_cs_r14_r14_r0_LSL_r10,
4061   },
4062   {
4063     ARRAY_SIZE(kInstruction_add_eq_r2_r8_r4_ROR_r1),
4064     kInstruction_add_eq_r2_r8_r4_ROR_r1,
4065   },
4066   {
4067     ARRAY_SIZE(kInstruction_add_gt_r3_r4_r7_ROR_r2),
4068     kInstruction_add_gt_r3_r4_r7_ROR_r2,
4069   },
4070   {
4071     ARRAY_SIZE(kInstruction_add_lt_r3_r5_r6_ROR_r7),
4072     kInstruction_add_lt_r3_r5_r6_ROR_r7,
4073   },
4074   {
4075     ARRAY_SIZE(kInstruction_add_hi_r14_r4_r2_ASR_r1),
4076     kInstruction_add_hi_r14_r4_r2_ASR_r1,
4077   },
4078   {
4079     ARRAY_SIZE(kInstruction_add_mi_r9_r6_r7_LSR_r1),
4080     kInstruction_add_mi_r9_r6_r7_LSR_r1,
4081   },
4082   {
4083     ARRAY_SIZE(kInstruction_add_pl_r11_r12_r11_LSR_r0),
4084     kInstruction_add_pl_r11_r12_r11_LSR_r0,
4085   },
4086   {
4087     ARRAY_SIZE(kInstruction_add_cs_r0_r0_r0_ROR_r4),
4088     kInstruction_add_cs_r0_r0_r0_ROR_r4,
4089   },
4090   {
4091     ARRAY_SIZE(kInstruction_add_vs_r7_r4_r13_ASR_r4),
4092     kInstruction_add_vs_r7_r4_r13_ASR_r4,
4093   },
4094   {
4095     ARRAY_SIZE(kInstruction_add_vc_r6_r8_r1_LSR_r5),
4096     kInstruction_add_vc_r6_r8_r1_LSR_r5,
4097   },
4098   {
4099     ARRAY_SIZE(kInstruction_add_gt_r6_r10_r14_LSR_r0),
4100     kInstruction_add_gt_r6_r10_r14_LSR_r0,
4101   },
4102   {
4103     ARRAY_SIZE(kInstruction_add_ne_r12_r4_r5_LSL_r10),
4104     kInstruction_add_ne_r12_r4_r5_LSL_r10,
4105   },
4106   {
4107     ARRAY_SIZE(kInstruction_add_ne_r9_r4_r5_ROR_r10),
4108     kInstruction_add_ne_r9_r4_r5_ROR_r10,
4109   },
4110   {
4111     ARRAY_SIZE(kInstruction_add_lt_r4_r2_r0_ROR_r5),
4112     kInstruction_add_lt_r4_r2_r0_ROR_r5,
4113   },
4114   {
4115     ARRAY_SIZE(kInstruction_add_ls_r0_r13_r3_ASR_r13),
4116     kInstruction_add_ls_r0_r13_r3_ASR_r13,
4117   },
4118   {
4119     ARRAY_SIZE(kInstruction_add_lt_r14_r8_r2_ROR_r1),
4120     kInstruction_add_lt_r14_r8_r2_ROR_r1,
4121   },
4122   {
4123     ARRAY_SIZE(kInstruction_add_hi_r7_r13_r2_LSR_r9),
4124     kInstruction_add_hi_r7_r13_r2_LSR_r9,
4125   },
4126   {
4127     ARRAY_SIZE(kInstruction_add_hi_r2_r5_r8_LSL_r8),
4128     kInstruction_add_hi_r2_r5_r8_LSL_r8,
4129   },
4130   {
4131     ARRAY_SIZE(kInstruction_add_vc_r1_r8_r6_LSR_r5),
4132     kInstruction_add_vc_r1_r8_r6_LSR_r5,
4133   },
4134   {
4135     ARRAY_SIZE(kInstruction_add_hi_r6_r12_r10_ROR_r2),
4136     kInstruction_add_hi_r6_r12_r10_ROR_r2,
4137   },
4138   {
4139     ARRAY_SIZE(kInstruction_add_al_r12_r13_r12_LSR_r14),
4140     kInstruction_add_al_r12_r13_r12_LSR_r14,
4141   },
4142   {
4143     ARRAY_SIZE(kInstruction_add_mi_r4_r13_r5_LSL_r7),
4144     kInstruction_add_mi_r4_r13_r5_LSL_r7,
4145   },
4146   {
4147     ARRAY_SIZE(kInstruction_add_le_r6_r7_r10_ASR_r10),
4148     kInstruction_add_le_r6_r7_r10_ASR_r10,
4149   },
4150   {
4151     ARRAY_SIZE(kInstruction_add_mi_r3_r1_r6_ASR_r2),
4152     kInstruction_add_mi_r3_r1_r6_ASR_r2,
4153   },
4154   {
4155     ARRAY_SIZE(kInstruction_add_le_r10_r2_r12_ROR_r1),
4156     kInstruction_add_le_r10_r2_r12_ROR_r1,
4157   },
4158   {
4159     ARRAY_SIZE(kInstruction_add_le_r12_r3_r5_ROR_r0),
4160     kInstruction_add_le_r12_r3_r5_ROR_r0,
4161   },
4162   {
4163     ARRAY_SIZE(kInstruction_add_ls_r9_r14_r5_ROR_r12),
4164     kInstruction_add_ls_r9_r14_r5_ROR_r12,
4165   },
4166   {
4167     ARRAY_SIZE(kInstruction_add_pl_r10_r5_r3_ROR_r0),
4168     kInstruction_add_pl_r10_r5_r3_ROR_r0,
4169   },
4170   {
4171     ARRAY_SIZE(kInstruction_add_hi_r8_r1_r9_LSL_r11),
4172     kInstruction_add_hi_r8_r1_r9_LSL_r11,
4173   },
4174   {
4175     ARRAY_SIZE(kInstruction_add_ls_r14_r5_r9_ROR_r9),
4176     kInstruction_add_ls_r14_r5_r9_ROR_r9,
4177   },
4178   {
4179     ARRAY_SIZE(kInstruction_add_hi_r7_r2_r10_LSR_r3),
4180     kInstruction_add_hi_r7_r2_r10_LSR_r3,
4181   },
4182   {
4183     ARRAY_SIZE(kInstruction_add_eq_r5_r7_r13_ROR_r11),
4184     kInstruction_add_eq_r5_r7_r13_ROR_r11,
4185   },
4186   {
4187     ARRAY_SIZE(kInstruction_add_vs_r4_r13_r9_LSR_r0),
4188     kInstruction_add_vs_r4_r13_r9_LSR_r0,
4189   },
4190   {
4191     ARRAY_SIZE(kInstruction_add_le_r3_r1_r12_ROR_r8),
4192     kInstruction_add_le_r3_r1_r12_ROR_r8,
4193   },
4194   {
4195     ARRAY_SIZE(kInstruction_add_hi_r8_r10_r10_LSL_r1),
4196     kInstruction_add_hi_r8_r10_r10_LSL_r1,
4197   },
4198   {
4199     ARRAY_SIZE(kInstruction_add_gt_r0_r4_r9_ASR_r13),
4200     kInstruction_add_gt_r0_r4_r9_ASR_r13,
4201   },
4202   {
4203     ARRAY_SIZE(kInstruction_add_ne_r0_r0_r13_LSR_r5),
4204     kInstruction_add_ne_r0_r0_r13_LSR_r5,
4205   },
4206   {
4207     ARRAY_SIZE(kInstruction_add_cc_r8_r11_r0_ASR_r12),
4208     kInstruction_add_cc_r8_r11_r0_ASR_r12,
4209   },
4210   {
4211     ARRAY_SIZE(kInstruction_add_pl_r8_r5_r6_ASR_r7),
4212     kInstruction_add_pl_r8_r5_r6_ASR_r7,
4213   },
4214   {
4215     ARRAY_SIZE(kInstruction_add_vc_r8_r3_r14_LSR_r3),
4216     kInstruction_add_vc_r8_r3_r14_LSR_r3,
4217   },
4218   {
4219     ARRAY_SIZE(kInstruction_add_ne_r0_r0_r10_ASR_r7),
4220     kInstruction_add_ne_r0_r0_r10_ASR_r7,
4221   },
4222   {
4223     ARRAY_SIZE(kInstruction_add_le_r4_r1_r9_LSL_r7),
4224     kInstruction_add_le_r4_r1_r9_LSL_r7,
4225   },
4226   {
4227     ARRAY_SIZE(kInstruction_add_ls_r3_r14_r9_LSR_r4),
4228     kInstruction_add_ls_r3_r14_r9_LSR_r4,
4229   },
4230   {
4231     ARRAY_SIZE(kInstruction_add_vc_r3_r0_r8_LSR_r1),
4232     kInstruction_add_vc_r3_r0_r8_LSR_r1,
4233   },
4234   {
4235     ARRAY_SIZE(kInstruction_add_pl_r8_r12_r1_LSL_r13),
4236     kInstruction_add_pl_r8_r12_r1_LSL_r13,
4237   },
4238   {
4239     ARRAY_SIZE(kInstruction_add_eq_r7_r12_r14_ROR_r11),
4240     kInstruction_add_eq_r7_r12_r14_ROR_r11,
4241   },
4242   {
4243     ARRAY_SIZE(kInstruction_add_hi_r12_r5_r6_LSL_r11),
4244     kInstruction_add_hi_r12_r5_r6_LSL_r11,
4245   },
4246   {
4247     ARRAY_SIZE(kInstruction_add_al_r8_r8_r1_LSL_r12),
4248     kInstruction_add_al_r8_r8_r1_LSL_r12,
4249   },
4250   {
4251     ARRAY_SIZE(kInstruction_add_pl_r3_r4_r13_ASR_r6),
4252     kInstruction_add_pl_r3_r4_r13_ASR_r6,
4253   },
4254   {
4255     ARRAY_SIZE(kInstruction_add_vc_r4_r5_r13_LSL_r6),
4256     kInstruction_add_vc_r4_r5_r13_LSL_r6,
4257   },
4258   {
4259     ARRAY_SIZE(kInstruction_add_ls_r10_r7_r2_LSL_r10),
4260     kInstruction_add_ls_r10_r7_r2_LSL_r10,
4261   },
4262   {
4263     ARRAY_SIZE(kInstruction_add_hi_r6_r4_r5_LSR_r2),
4264     kInstruction_add_hi_r6_r4_r5_LSR_r2,
4265   },
4266   {
4267     ARRAY_SIZE(kInstruction_add_hi_r1_r5_r4_LSL_r11),
4268     kInstruction_add_hi_r1_r5_r4_LSL_r11,
4269   },
4270   {
4271     ARRAY_SIZE(kInstruction_add_cc_r6_r6_r2_LSL_r0),
4272     kInstruction_add_cc_r6_r6_r2_LSL_r0,
4273   },
4274   {
4275     ARRAY_SIZE(kInstruction_add_cs_r6_r7_r14_ASR_r2),
4276     kInstruction_add_cs_r6_r7_r14_ASR_r2,
4277   },
4278   {
4279     ARRAY_SIZE(kInstruction_add_pl_r12_r1_r13_ROR_r9),
4280     kInstruction_add_pl_r12_r1_r13_ROR_r9,
4281   },
4282   {
4283     ARRAY_SIZE(kInstruction_add_eq_r4_r8_r3_ASR_r5),
4284     kInstruction_add_eq_r4_r8_r3_ASR_r5,
4285   },
4286   {
4287     ARRAY_SIZE(kInstruction_add_hi_r3_r4_r9_ROR_r4),
4288     kInstruction_add_hi_r3_r4_r9_ROR_r4,
4289   },
4290   {
4291     ARRAY_SIZE(kInstruction_add_vs_r8_r11_r7_ROR_r8),
4292     kInstruction_add_vs_r8_r11_r7_ROR_r8,
4293   },
4294   {
4295     ARRAY_SIZE(kInstruction_add_cs_r4_r1_r9_LSL_r11),
4296     kInstruction_add_cs_r4_r1_r9_LSL_r11,
4297   },
4298   {
4299     ARRAY_SIZE(kInstruction_add_eq_r0_r11_r5_ASR_r0),
4300     kInstruction_add_eq_r0_r11_r5_ASR_r0,
4301   },
4302   {
4303     ARRAY_SIZE(kInstruction_add_ne_r2_r6_r9_LSL_r8),
4304     kInstruction_add_ne_r2_r6_r9_LSL_r8,
4305   },
4306   {
4307     ARRAY_SIZE(kInstruction_add_hi_r5_r7_r12_LSL_r14),
4308     kInstruction_add_hi_r5_r7_r12_LSL_r14,
4309   },
4310   {
4311     ARRAY_SIZE(kInstruction_add_cc_r5_r6_r4_LSL_r8),
4312     kInstruction_add_cc_r5_r6_r4_LSL_r8,
4313   },
4314   {
4315     ARRAY_SIZE(kInstruction_add_eq_r6_r14_r13_LSR_r1),
4316     kInstruction_add_eq_r6_r14_r13_LSR_r1,
4317   },
4318   {
4319     ARRAY_SIZE(kInstruction_add_gt_r7_r3_r12_ASR_r10),
4320     kInstruction_add_gt_r7_r3_r12_ASR_r10,
4321   },
4322   {
4323     ARRAY_SIZE(kInstruction_add_al_r10_r3_r11_ASR_r2),
4324     kInstruction_add_al_r10_r3_r11_ASR_r2,
4325   },
4326   {
4327     ARRAY_SIZE(kInstruction_add_cs_r6_r11_r13_LSL_r12),
4328     kInstruction_add_cs_r6_r11_r13_LSL_r12,
4329   },
4330   {
4331     ARRAY_SIZE(kInstruction_add_ne_r4_r12_r5_ROR_r11),
4332     kInstruction_add_ne_r4_r12_r5_ROR_r11,
4333   },
4334   {
4335     ARRAY_SIZE(kInstruction_add_vs_r12_r14_r2_ROR_r1),
4336     kInstruction_add_vs_r12_r14_r2_ROR_r1,
4337   },
4338   {
4339     ARRAY_SIZE(kInstruction_add_ls_r11_r3_r8_ASR_r4),
4340     kInstruction_add_ls_r11_r3_r8_ASR_r4,
4341   },
4342   {
4343     ARRAY_SIZE(kInstruction_add_vc_r9_r9_r5_LSL_r4),
4344     kInstruction_add_vc_r9_r9_r5_LSL_r4,
4345   },
4346   {
4347     ARRAY_SIZE(kInstruction_add_vc_r0_r2_r10_LSR_r4),
4348     kInstruction_add_vc_r0_r2_r10_LSR_r4,
4349   },
4350   {
4351     ARRAY_SIZE(kInstruction_add_vc_r6_r0_r11_LSR_r3),
4352     kInstruction_add_vc_r6_r0_r11_LSR_r3,
4353   },
4354   {
4355     ARRAY_SIZE(kInstruction_add_vs_r11_r11_r12_ROR_r0),
4356     kInstruction_add_vs_r11_r11_r12_ROR_r0,
4357   },
4358   {
4359     ARRAY_SIZE(kInstruction_add_ls_r0_r10_r2_LSL_r8),
4360     kInstruction_add_ls_r0_r10_r2_LSL_r8,
4361   },
4362   {
4363     ARRAY_SIZE(kInstruction_add_lt_r11_r10_r13_ASR_r10),
4364     kInstruction_add_lt_r11_r10_r13_ASR_r10,
4365   },
4366   {
4367     ARRAY_SIZE(kInstruction_add_eq_r4_r4_r13_LSR_r13),
4368     kInstruction_add_eq_r4_r4_r13_LSR_r13,
4369   },
4370   {
4371     ARRAY_SIZE(kInstruction_add_le_r11_r10_r4_LSL_r13),
4372     kInstruction_add_le_r11_r10_r4_LSL_r13,
4373   },
4374   {
4375     ARRAY_SIZE(kInstruction_add_pl_r11_r7_r8_ROR_r7),
4376     kInstruction_add_pl_r11_r7_r8_ROR_r7,
4377   },
4378   {
4379     ARRAY_SIZE(kInstruction_add_eq_r10_r13_r5_LSR_r13),
4380     kInstruction_add_eq_r10_r13_r5_LSR_r13,
4381   },
4382   {
4383     ARRAY_SIZE(kInstruction_add_mi_r10_r5_r9_ASR_r7),
4384     kInstruction_add_mi_r10_r5_r9_ASR_r7,
4385   },
4386   {
4387     ARRAY_SIZE(kInstruction_add_lt_r7_r7_r0_ASR_r6),
4388     kInstruction_add_lt_r7_r7_r0_ASR_r6,
4389   },
4390   {
4391     ARRAY_SIZE(kInstruction_add_hi_r14_r12_r13_ROR_r3),
4392     kInstruction_add_hi_r14_r12_r13_ROR_r3,
4393   },
4394   {
4395     ARRAY_SIZE(kInstruction_add_hi_r9_r0_r10_LSR_r11),
4396     kInstruction_add_hi_r9_r0_r10_LSR_r11,
4397   },
4398   {
4399     ARRAY_SIZE(kInstruction_add_eq_r1_r10_r2_ASR_r10),
4400     kInstruction_add_eq_r1_r10_r2_ASR_r10,
4401   },
4402   {
4403     ARRAY_SIZE(kInstruction_add_lt_r1_r6_r0_ASR_r14),
4404     kInstruction_add_lt_r1_r6_r0_ASR_r14,
4405   },
4406   {
4407     ARRAY_SIZE(kInstruction_add_gt_r10_r2_r10_ROR_r4),
4408     kInstruction_add_gt_r10_r2_r10_ROR_r4,
4409   },
4410   {
4411     ARRAY_SIZE(kInstruction_add_ls_r3_r9_r10_LSR_r7),
4412     kInstruction_add_ls_r3_r9_r10_LSR_r7,
4413   },
4414   {
4415     ARRAY_SIZE(kInstruction_add_le_r1_r7_r7_LSR_r10),
4416     kInstruction_add_le_r1_r7_r7_LSR_r10,
4417   },
4418   {
4419     ARRAY_SIZE(kInstruction_add_pl_r2_r6_r14_ASR_r0),
4420     kInstruction_add_pl_r2_r6_r14_ASR_r0,
4421   },
4422   {
4423     ARRAY_SIZE(kInstruction_add_gt_r9_r8_r9_ASR_r10),
4424     kInstruction_add_gt_r9_r8_r9_ASR_r10,
4425   },
4426   {
4427     ARRAY_SIZE(kInstruction_add_pl_r12_r11_r14_ASR_r5),
4428     kInstruction_add_pl_r12_r11_r14_ASR_r5,
4429   },
4430   {
4431     ARRAY_SIZE(kInstruction_add_gt_r1_r12_r4_LSL_r5),
4432     kInstruction_add_gt_r1_r12_r4_LSL_r5,
4433   },
4434   {
4435     ARRAY_SIZE(kInstruction_add_le_r1_r9_r4_ROR_r0),
4436     kInstruction_add_le_r1_r9_r4_ROR_r0,
4437   },
4438   {
4439     ARRAY_SIZE(kInstruction_add_ne_r7_r2_r0_ASR_r5),
4440     kInstruction_add_ne_r7_r2_r0_ASR_r5,
4441   },
4442   {
4443     ARRAY_SIZE(kInstruction_add_cc_r4_r1_r9_LSR_r6),
4444     kInstruction_add_cc_r4_r1_r9_LSR_r6,
4445   },
4446   {
4447     ARRAY_SIZE(kInstruction_add_eq_r1_r6_r13_ASR_r12),
4448     kInstruction_add_eq_r1_r6_r13_ASR_r12,
4449   },
4450   {
4451     ARRAY_SIZE(kInstruction_add_pl_r3_r14_r13_LSR_r7),
4452     kInstruction_add_pl_r3_r14_r13_LSR_r7,
4453   },
4454   {
4455     ARRAY_SIZE(kInstruction_add_ge_r8_r2_r12_LSL_r7),
4456     kInstruction_add_ge_r8_r2_r12_LSL_r7,
4457   },
4458   {
4459     ARRAY_SIZE(kInstruction_add_ge_r10_r12_r9_ASR_r13),
4460     kInstruction_add_ge_r10_r12_r9_ASR_r13,
4461   },
4462   {
4463     ARRAY_SIZE(kInstruction_add_gt_r8_r7_r1_ASR_r7),
4464     kInstruction_add_gt_r8_r7_r1_ASR_r7,
4465   },
4466   {
4467     ARRAY_SIZE(kInstruction_add_vs_r8_r4_r5_ROR_r2),
4468     kInstruction_add_vs_r8_r4_r5_ROR_r2,
4469   },
4470   {
4471     ARRAY_SIZE(kInstruction_add_ls_r7_r3_r3_ASR_r5),
4472     kInstruction_add_ls_r7_r3_r3_ASR_r5,
4473   },
4474   {
4475     ARRAY_SIZE(kInstruction_add_al_r13_r10_r9_LSL_r4),
4476     kInstruction_add_al_r13_r10_r9_LSL_r4,
4477   },
4478   {
4479     ARRAY_SIZE(kInstruction_add_cs_r9_r0_r5_ROR_r4),
4480     kInstruction_add_cs_r9_r0_r5_ROR_r4,
4481   },
4482   {
4483     ARRAY_SIZE(kInstruction_add_eq_r14_r12_r12_ASR_r13),
4484     kInstruction_add_eq_r14_r12_r12_ASR_r13,
4485   },
4486   {
4487     ARRAY_SIZE(kInstruction_add_hi_r9_r6_r8_ASR_r2),
4488     kInstruction_add_hi_r9_r6_r8_ASR_r2,
4489   },
4490   {
4491     ARRAY_SIZE(kInstruction_add_ne_r7_r9_r10_ROR_r7),
4492     kInstruction_add_ne_r7_r9_r10_ROR_r7,
4493   },
4494   {
4495     ARRAY_SIZE(kInstruction_add_vs_r2_r3_r0_ASR_r2),
4496     kInstruction_add_vs_r2_r3_r0_ASR_r2,
4497   },
4498   {
4499     ARRAY_SIZE(kInstruction_add_cc_r13_r2_r6_ASR_r11),
4500     kInstruction_add_cc_r13_r2_r6_ASR_r11,
4501   },
4502   {
4503     ARRAY_SIZE(kInstruction_add_lt_r3_r12_r14_ASR_r0),
4504     kInstruction_add_lt_r3_r12_r14_ASR_r0,
4505   },
4506   {
4507     ARRAY_SIZE(kInstruction_add_hi_r5_r11_r11_ROR_r4),
4508     kInstruction_add_hi_r5_r11_r11_ROR_r4,
4509   },
4510   {
4511     ARRAY_SIZE(kInstruction_add_mi_r14_r5_r5_ASR_r12),
4512     kInstruction_add_mi_r14_r5_r5_ASR_r12,
4513   },
4514   {
4515     ARRAY_SIZE(kInstruction_add_pl_r13_r12_r7_LSL_r9),
4516     kInstruction_add_pl_r13_r12_r7_LSL_r9,
4517   },
4518   {
4519     ARRAY_SIZE(kInstruction_add_gt_r11_r9_r6_LSR_r13),
4520     kInstruction_add_gt_r11_r9_r6_LSR_r13,
4521   },
4522   {
4523     ARRAY_SIZE(kInstruction_add_pl_r7_r10_r13_LSR_r12),
4524     kInstruction_add_pl_r7_r10_r13_LSR_r12,
4525   },
4526   {
4527     ARRAY_SIZE(kInstruction_add_hi_r0_r10_r12_LSL_r1),
4528     kInstruction_add_hi_r0_r10_r12_LSL_r1,
4529   },
4530   {
4531     ARRAY_SIZE(kInstruction_add_ge_r12_r5_r12_ASR_r1),
4532     kInstruction_add_ge_r12_r5_r12_ASR_r1,
4533   },
4534   {
4535     ARRAY_SIZE(kInstruction_add_cc_r1_r14_r10_LSR_r8),
4536     kInstruction_add_cc_r1_r14_r10_LSR_r8,
4537   },
4538   {
4539     ARRAY_SIZE(kInstruction_add_cs_r8_r10_r9_ROR_r5),
4540     kInstruction_add_cs_r8_r10_r9_ROR_r5,
4541   },
4542   {
4543     ARRAY_SIZE(kInstruction_add_cc_r1_r14_r13_ROR_r2),
4544     kInstruction_add_cc_r1_r14_r13_ROR_r2,
4545   },
4546   {
4547     ARRAY_SIZE(kInstruction_add_hi_r7_r1_r11_ROR_r7),
4548     kInstruction_add_hi_r7_r1_r11_ROR_r7,
4549   },
4550   {
4551     ARRAY_SIZE(kInstruction_add_lt_r8_r3_r6_ASR_r8),
4552     kInstruction_add_lt_r8_r3_r6_ASR_r8,
4553   },
4554   {
4555     ARRAY_SIZE(kInstruction_add_vc_r11_r9_r5_ROR_r0),
4556     kInstruction_add_vc_r11_r9_r5_ROR_r0,
4557   },
4558   {
4559     ARRAY_SIZE(kInstruction_add_pl_r6_r0_r13_ASR_r14),
4560     kInstruction_add_pl_r6_r0_r13_ASR_r14,
4561   },
4562   {
4563     ARRAY_SIZE(kInstruction_add_vc_r2_r12_r1_ROR_r3),
4564     kInstruction_add_vc_r2_r12_r1_ROR_r3,
4565   },
4566   {
4567     ARRAY_SIZE(kInstruction_add_gt_r11_r0_r2_ROR_r0),
4568     kInstruction_add_gt_r11_r0_r2_ROR_r0,
4569   },
4570   {
4571     ARRAY_SIZE(kInstruction_add_le_r1_r13_r9_ROR_r0),
4572     kInstruction_add_le_r1_r13_r9_ROR_r0,
4573   },
4574   {
4575     ARRAY_SIZE(kInstruction_add_lt_r14_r0_r9_LSL_r3),
4576     kInstruction_add_lt_r14_r0_r9_LSL_r3,
4577   },
4578   {
4579     ARRAY_SIZE(kInstruction_add_al_r12_r6_r10_LSR_r8),
4580     kInstruction_add_al_r12_r6_r10_LSR_r8,
4581   },
4582   {
4583     ARRAY_SIZE(kInstruction_add_cc_r4_r14_r1_LSR_r12),
4584     kInstruction_add_cc_r4_r14_r1_LSR_r12,
4585   },
4586   {
4587     ARRAY_SIZE(kInstruction_add_ge_r0_r3_r5_LSL_r1),
4588     kInstruction_add_ge_r0_r3_r5_LSL_r1,
4589   },
4590   {
4591     ARRAY_SIZE(kInstruction_add_eq_r1_r11_r12_ASR_r8),
4592     kInstruction_add_eq_r1_r11_r12_ASR_r8,
4593   },
4594   {
4595     ARRAY_SIZE(kInstruction_add_hi_r8_r7_r14_LSR_r4),
4596     kInstruction_add_hi_r8_r7_r14_LSR_r4,
4597   },
4598   {
4599     ARRAY_SIZE(kInstruction_add_eq_r14_r11_r1_LSR_r7),
4600     kInstruction_add_eq_r14_r11_r1_LSR_r7,
4601   },
4602   {
4603     ARRAY_SIZE(kInstruction_add_ge_r6_r12_r4_LSL_r1),
4604     kInstruction_add_ge_r6_r12_r4_LSL_r1,
4605   },
4606   {
4607     ARRAY_SIZE(kInstruction_add_vs_r12_r6_r0_ASR_r12),
4608     kInstruction_add_vs_r12_r6_r0_ASR_r12,
4609   },
4610   {
4611     ARRAY_SIZE(kInstruction_add_gt_r9_r3_r6_LSR_r13),
4612     kInstruction_add_gt_r9_r3_r6_LSR_r13,
4613   },
4614   {
4615     ARRAY_SIZE(kInstruction_add_lt_r4_r5_r6_LSR_r12),
4616     kInstruction_add_lt_r4_r5_r6_LSR_r12,
4617   },
4618   {
4619     ARRAY_SIZE(kInstruction_add_cc_r8_r2_r5_ROR_r10),
4620     kInstruction_add_cc_r8_r2_r5_ROR_r10,
4621   },
4622   {
4623     ARRAY_SIZE(kInstruction_add_eq_r2_r10_r10_ASR_r3),
4624     kInstruction_add_eq_r2_r10_r10_ASR_r3,
4625   },
4626   {
4627     ARRAY_SIZE(kInstruction_add_vc_r1_r2_r11_LSR_r10),
4628     kInstruction_add_vc_r1_r2_r11_LSR_r10,
4629   },
4630   {
4631     ARRAY_SIZE(kInstruction_add_hi_r6_r1_r9_LSR_r1),
4632     kInstruction_add_hi_r6_r1_r9_LSR_r1,
4633   },
4634   {
4635     ARRAY_SIZE(kInstruction_add_cs_r10_r14_r10_LSL_r5),
4636     kInstruction_add_cs_r10_r14_r10_LSL_r5,
4637   },
4638   {
4639     ARRAY_SIZE(kInstruction_add_mi_r3_r9_r3_LSL_r10),
4640     kInstruction_add_mi_r3_r9_r3_LSL_r10,
4641   },
4642   {
4643     ARRAY_SIZE(kInstruction_add_vs_r2_r14_r3_LSL_r10),
4644     kInstruction_add_vs_r2_r14_r3_LSL_r10,
4645   },
4646   {
4647     ARRAY_SIZE(kInstruction_add_hi_r1_r2_r10_ASR_r1),
4648     kInstruction_add_hi_r1_r2_r10_ASR_r1,
4649   },
4650   {
4651     ARRAY_SIZE(kInstruction_add_ne_r13_r8_r7_LSL_r11),
4652     kInstruction_add_ne_r13_r8_r7_LSL_r11,
4653   },
4654   {
4655     ARRAY_SIZE(kInstruction_add_eq_r10_r10_r9_LSR_r9),
4656     kInstruction_add_eq_r10_r10_r9_LSR_r9,
4657   },
4658   {
4659     ARRAY_SIZE(kInstruction_add_eq_r12_r6_r2_ASR_r12),
4660     kInstruction_add_eq_r12_r6_r2_ASR_r12,
4661   },
4662   {
4663     ARRAY_SIZE(kInstruction_add_cs_r14_r7_r3_LSR_r9),
4664     kInstruction_add_cs_r14_r7_r3_LSR_r9,
4665   },
4666   {
4667     ARRAY_SIZE(kInstruction_add_vc_r11_r14_r12_ROR_r2),
4668     kInstruction_add_vc_r11_r14_r12_ROR_r2,
4669   },
4670   {
4671     ARRAY_SIZE(kInstruction_add_lt_r11_r8_r3_LSR_r14),
4672     kInstruction_add_lt_r11_r8_r3_LSR_r14,
4673   },
4674   {
4675     ARRAY_SIZE(kInstruction_add_ls_r8_r8_r7_ROR_r14),
4676     kInstruction_add_ls_r8_r8_r7_ROR_r14,
4677   },
4678   {
4679     ARRAY_SIZE(kInstruction_add_hi_r14_r0_r3_ROR_r0),
4680     kInstruction_add_hi_r14_r0_r3_ROR_r0,
4681   },
4682   {
4683     ARRAY_SIZE(kInstruction_add_ge_r6_r2_r6_ROR_r13),
4684     kInstruction_add_ge_r6_r2_r6_ROR_r13,
4685   },
4686   {
4687     ARRAY_SIZE(kInstruction_add_le_r10_r10_r0_LSL_r2),
4688     kInstruction_add_le_r10_r10_r0_LSL_r2,
4689   },
4690   {
4691     ARRAY_SIZE(kInstruction_add_cc_r4_r7_r1_LSR_r10),
4692     kInstruction_add_cc_r4_r7_r1_LSR_r10,
4693   },
4694   {
4695     ARRAY_SIZE(kInstruction_add_al_r4_r0_r8_ROR_r7),
4696     kInstruction_add_al_r4_r0_r8_ROR_r7,
4697   },
4698   {
4699     ARRAY_SIZE(kInstruction_add_ne_r10_r5_r3_LSL_r9),
4700     kInstruction_add_ne_r10_r5_r3_LSL_r9,
4701   },
4702   {
4703     ARRAY_SIZE(kInstruction_add_vs_r11_r7_r5_LSL_r14),
4704     kInstruction_add_vs_r11_r7_r5_LSL_r14,
4705   },
4706   {
4707     ARRAY_SIZE(kInstruction_add_eq_r7_r10_r14_ASR_r8),
4708     kInstruction_add_eq_r7_r10_r14_ASR_r8,
4709   },
4710   {
4711     ARRAY_SIZE(kInstruction_add_ls_r4_r5_r9_ASR_r1),
4712     kInstruction_add_ls_r4_r5_r9_ASR_r1,
4713   },
4714   {
4715     ARRAY_SIZE(kInstruction_add_lt_r13_r14_r8_ROR_r2),
4716     kInstruction_add_lt_r13_r14_r8_ROR_r2,
4717   },
4718   {
4719     ARRAY_SIZE(kInstruction_add_cc_r7_r6_r9_LSR_r5),
4720     kInstruction_add_cc_r7_r6_r9_LSR_r5,
4721   },
4722   {
4723     ARRAY_SIZE(kInstruction_add_mi_r8_r7_r13_ASR_r2),
4724     kInstruction_add_mi_r8_r7_r13_ASR_r2,
4725   },
4726   {
4727     ARRAY_SIZE(kInstruction_add_al_r2_r11_r2_LSR_r8),
4728     kInstruction_add_al_r2_r11_r2_LSR_r8,
4729   },
4730   {
4731     ARRAY_SIZE(kInstruction_add_al_r6_r7_r6_LSR_r1),
4732     kInstruction_add_al_r6_r7_r6_LSR_r1,
4733   },
4734   {
4735     ARRAY_SIZE(kInstruction_add_cs_r4_r11_r6_LSR_r1),
4736     kInstruction_add_cs_r4_r11_r6_LSR_r1,
4737   },
4738   {
4739     ARRAY_SIZE(kInstruction_add_ne_r14_r2_r2_ROR_r1),
4740     kInstruction_add_ne_r14_r2_r2_ROR_r1,
4741   },
4742   {
4743     ARRAY_SIZE(kInstruction_add_ls_r5_r10_r3_LSR_r10),
4744     kInstruction_add_ls_r5_r10_r3_LSR_r10,
4745   },
4746   {
4747     ARRAY_SIZE(kInstruction_add_le_r12_r11_r9_ROR_r4),
4748     kInstruction_add_le_r12_r11_r9_ROR_r4,
4749   },
4750   {
4751     ARRAY_SIZE(kInstruction_add_vs_r10_r1_r4_LSL_r4),
4752     kInstruction_add_vs_r10_r1_r4_LSL_r4,
4753   },
4754   {
4755     ARRAY_SIZE(kInstruction_add_hi_r2_r5_r5_LSL_r10),
4756     kInstruction_add_hi_r2_r5_r5_LSL_r10,
4757   },
4758   {
4759     ARRAY_SIZE(kInstruction_add_ls_r12_r3_r13_ROR_r4),
4760     kInstruction_add_ls_r12_r3_r13_ROR_r4,
4761   },
4762   {
4763     ARRAY_SIZE(kInstruction_add_pl_r3_r0_r2_ASR_r8),
4764     kInstruction_add_pl_r3_r0_r2_ASR_r8,
4765   },
4766   {
4767     ARRAY_SIZE(kInstruction_add_mi_r12_r5_r3_LSL_r1),
4768     kInstruction_add_mi_r12_r5_r3_LSL_r1,
4769   },
4770   {
4771     ARRAY_SIZE(kInstruction_add_eq_r6_r11_r3_ROR_r2),
4772     kInstruction_add_eq_r6_r11_r3_ROR_r2,
4773   },
4774   {
4775     ARRAY_SIZE(kInstruction_add_vs_r7_r10_r0_LSL_r6),
4776     kInstruction_add_vs_r7_r10_r0_LSL_r6,
4777   },
4778   {
4779     ARRAY_SIZE(kInstruction_add_cs_r14_r2_r12_LSL_r12),
4780     kInstruction_add_cs_r14_r2_r12_LSL_r12,
4781   },
4782   {
4783     ARRAY_SIZE(kInstruction_add_ls_r3_r5_r0_LSR_r10),
4784     kInstruction_add_ls_r3_r5_r0_LSR_r10,
4785   },
4786   {
4787     ARRAY_SIZE(kInstruction_add_gt_r0_r12_r13_ROR_r1),
4788     kInstruction_add_gt_r0_r12_r13_ROR_r1,
4789   },
4790   {
4791     ARRAY_SIZE(kInstruction_add_al_r4_r12_r1_ROR_r7),
4792     kInstruction_add_al_r4_r12_r1_ROR_r7,
4793   },
4794   {
4795     ARRAY_SIZE(kInstruction_add_hi_r6_r1_r10_LSL_r6),
4796     kInstruction_add_hi_r6_r1_r10_LSL_r6,
4797   },
4798   {
4799     ARRAY_SIZE(kInstruction_add_ne_r9_r2_r0_ROR_r7),
4800     kInstruction_add_ne_r9_r2_r0_ROR_r7,
4801   },
4802   {
4803     ARRAY_SIZE(kInstruction_add_le_r5_r7_r5_LSR_r0),
4804     kInstruction_add_le_r5_r7_r5_LSR_r0,
4805   },
4806   {
4807     ARRAY_SIZE(kInstruction_add_vs_r8_r11_r9_ROR_r10),
4808     kInstruction_add_vs_r8_r11_r9_ROR_r10,
4809   },
4810   {
4811     ARRAY_SIZE(kInstruction_add_gt_r6_r11_r12_ROR_r1),
4812     kInstruction_add_gt_r6_r11_r12_ROR_r1,
4813   },
4814   {
4815     ARRAY_SIZE(kInstruction_add_ne_r2_r10_r4_ASR_r14),
4816     kInstruction_add_ne_r2_r10_r4_ASR_r14,
4817   },
4818   {
4819     ARRAY_SIZE(kInstruction_add_al_r8_r7_r0_ROR_r8),
4820     kInstruction_add_al_r8_r7_r0_ROR_r8,
4821   },
4822   {
4823     ARRAY_SIZE(kInstruction_add_hi_r7_r10_r10_LSR_r3),
4824     kInstruction_add_hi_r7_r10_r10_LSR_r3,
4825   },
4826   {
4827     ARRAY_SIZE(kInstruction_add_cs_r5_r5_r4_LSL_r1),
4828     kInstruction_add_cs_r5_r5_r4_LSL_r1,
4829   },
4830   {
4831     ARRAY_SIZE(kInstruction_add_gt_r11_r14_r14_LSL_r7),
4832     kInstruction_add_gt_r11_r14_r14_LSL_r7,
4833   },
4834   {
4835     ARRAY_SIZE(kInstruction_add_lt_r1_r8_r1_LSR_r2),
4836     kInstruction_add_lt_r1_r8_r1_LSR_r2,
4837   },
4838   {
4839     ARRAY_SIZE(kInstruction_add_hi_r2_r12_r9_ASR_r4),
4840     kInstruction_add_hi_r2_r12_r9_ASR_r4,
4841   },
4842   {
4843     ARRAY_SIZE(kInstruction_add_eq_r8_r6_r7_ASR_r3),
4844     kInstruction_add_eq_r8_r6_r7_ASR_r3,
4845   },
4846   {
4847     ARRAY_SIZE(kInstruction_add_mi_r7_r7_r1_ROR_r1),
4848     kInstruction_add_mi_r7_r7_r1_ROR_r1,
4849   },
4850   {
4851     ARRAY_SIZE(kInstruction_add_cc_r12_r3_r13_LSL_r4),
4852     kInstruction_add_cc_r12_r3_r13_LSL_r4,
4853   },
4854   {
4855     ARRAY_SIZE(kInstruction_add_vs_r14_r1_r0_ASR_r4),
4856     kInstruction_add_vs_r14_r1_r0_ASR_r4,
4857   },
4858   {
4859     ARRAY_SIZE(kInstruction_add_lt_r6_r2_r12_LSR_r4),
4860     kInstruction_add_lt_r6_r2_r12_LSR_r4,
4861   },
4862   {
4863     ARRAY_SIZE(kInstruction_add_pl_r13_r3_r1_LSL_r2),
4864     kInstruction_add_pl_r13_r3_r1_LSL_r2,
4865   },
4866   {
4867     ARRAY_SIZE(kInstruction_add_ne_r7_r14_r5_ROR_r10),
4868     kInstruction_add_ne_r7_r14_r5_ROR_r10,
4869   },
4870   {
4871     ARRAY_SIZE(kInstruction_add_al_r9_r8_r9_LSL_r0),
4872     kInstruction_add_al_r9_r8_r9_LSL_r0,
4873   },
4874   {
4875     ARRAY_SIZE(kInstruction_add_ge_r8_r7_r3_LSL_r13),
4876     kInstruction_add_ge_r8_r7_r3_LSL_r13,
4877   },
4878   {
4879     ARRAY_SIZE(kInstruction_add_lt_r12_r10_r4_ROR_r13),
4880     kInstruction_add_lt_r12_r10_r4_ROR_r13,
4881   },
4882   {
4883     ARRAY_SIZE(kInstruction_add_vs_r9_r14_r5_LSR_r2),
4884     kInstruction_add_vs_r9_r14_r5_LSR_r2,
4885   },
4886   {
4887     ARRAY_SIZE(kInstruction_add_pl_r4_r10_r0_ROR_r13),
4888     kInstruction_add_pl_r4_r10_r0_ROR_r13,
4889   },
4890   {
4891     ARRAY_SIZE(kInstruction_add_vc_r1_r14_r5_ASR_r14),
4892     kInstruction_add_vc_r1_r14_r5_ASR_r14,
4893   },
4894   {
4895     ARRAY_SIZE(kInstruction_add_vs_r10_r3_r8_LSR_r10),
4896     kInstruction_add_vs_r10_r3_r8_LSR_r10,
4897   },
4898   {
4899     ARRAY_SIZE(kInstruction_add_eq_r1_r4_r11_ROR_r2),
4900     kInstruction_add_eq_r1_r4_r11_ROR_r2,
4901   },
4902   {
4903     ARRAY_SIZE(kInstruction_add_pl_r2_r6_r10_LSL_r4),
4904     kInstruction_add_pl_r2_r6_r10_LSL_r4,
4905   },
4906   {
4907     ARRAY_SIZE(kInstruction_add_ne_r9_r0_r3_ASR_r13),
4908     kInstruction_add_ne_r9_r0_r3_ASR_r13,
4909   },
4910   {
4911     ARRAY_SIZE(kInstruction_add_gt_r10_r5_r5_ROR_r1),
4912     kInstruction_add_gt_r10_r5_r5_ROR_r1,
4913   },
4914   {
4915     ARRAY_SIZE(kInstruction_add_gt_r0_r8_r2_LSL_r2),
4916     kInstruction_add_gt_r0_r8_r2_LSL_r2,
4917   },
4918   {
4919     ARRAY_SIZE(kInstruction_add_pl_r10_r9_r10_LSL_r10),
4920     kInstruction_add_pl_r10_r9_r10_LSL_r10,
4921   },
4922   {
4923     ARRAY_SIZE(kInstruction_add_ls_r5_r10_r0_LSR_r5),
4924     kInstruction_add_ls_r5_r10_r0_LSR_r5,
4925   },
4926   {
4927     ARRAY_SIZE(kInstruction_add_al_r5_r10_r4_ROR_r9),
4928     kInstruction_add_al_r5_r10_r4_ROR_r9,
4929   },
4930   {
4931     ARRAY_SIZE(kInstruction_add_hi_r10_r7_r1_ROR_r10),
4932     kInstruction_add_hi_r10_r7_r1_ROR_r10,
4933   },
4934   {
4935     ARRAY_SIZE(kInstruction_add_cs_r10_r12_r11_ROR_r9),
4936     kInstruction_add_cs_r10_r12_r11_ROR_r9,
4937   },
4938   {
4939     ARRAY_SIZE(kInstruction_add_vs_r4_r0_r6_ASR_r3),
4940     kInstruction_add_vs_r4_r0_r6_ASR_r3,
4941   },
4942   {
4943     ARRAY_SIZE(kInstruction_add_hi_r8_r3_r4_LSR_r8),
4944     kInstruction_add_hi_r8_r3_r4_LSR_r8,
4945   },
4946   {
4947     ARRAY_SIZE(kInstruction_add_mi_r4_r2_r1_ROR_r6),
4948     kInstruction_add_mi_r4_r2_r1_ROR_r6,
4949   },
4950   {
4951     ARRAY_SIZE(kInstruction_add_cs_r7_r5_r4_LSR_r3),
4952     kInstruction_add_cs_r7_r5_r4_LSR_r3,
4953   },
4954   {
4955     ARRAY_SIZE(kInstruction_add_le_r12_r12_r9_ASR_r4),
4956     kInstruction_add_le_r12_r12_r9_ASR_r4,
4957   },
4958   {
4959     ARRAY_SIZE(kInstruction_add_vc_r7_r4_r13_LSR_r8),
4960     kInstruction_add_vc_r7_r4_r13_LSR_r8,
4961   },
4962   {
4963     ARRAY_SIZE(kInstruction_add_le_r0_r14_r14_ROR_r9),
4964     kInstruction_add_le_r0_r14_r14_ROR_r9,
4965   },
4966   {
4967     ARRAY_SIZE(kInstruction_add_le_r0_r8_r13_LSL_r2),
4968     kInstruction_add_le_r0_r8_r13_LSL_r2,
4969   },
4970   {
4971     ARRAY_SIZE(kInstruction_add_vc_r6_r3_r0_LSL_r6),
4972     kInstruction_add_vc_r6_r3_r0_LSL_r6,
4973   },
4974   {
4975     ARRAY_SIZE(kInstruction_add_vc_r12_r1_r11_ASR_r8),
4976     kInstruction_add_vc_r12_r1_r11_ASR_r8,
4977   },
4978   {
4979     ARRAY_SIZE(kInstruction_add_lt_r13_r10_r0_LSL_r9),
4980     kInstruction_add_lt_r13_r10_r0_LSL_r9,
4981   },
4982   {
4983     ARRAY_SIZE(kInstruction_add_cc_r0_r1_r0_ASR_r6),
4984     kInstruction_add_cc_r0_r1_r0_ASR_r6,
4985   },
4986   {
4987     ARRAY_SIZE(kInstruction_add_eq_r12_r12_r14_LSR_r12),
4988     kInstruction_add_eq_r12_r12_r14_LSR_r12,
4989   },
4990   {
4991     ARRAY_SIZE(kInstruction_add_eq_r7_r12_r3_LSR_r7),
4992     kInstruction_add_eq_r7_r12_r3_LSR_r7,
4993   },
4994   {
4995     ARRAY_SIZE(kInstruction_add_lt_r6_r4_r6_ASR_r4),
4996     kInstruction_add_lt_r6_r4_r6_ASR_r4,
4997   },
4998   {
4999     ARRAY_SIZE(kInstruction_add_vs_r0_r3_r3_ROR_r8),
5000     kInstruction_add_vs_r0_r3_r3_ROR_r8,
5001   },
5002   {
5003     ARRAY_SIZE(kInstruction_add_vc_r2_r12_r3_LSR_r14),
5004     kInstruction_add_vc_r2_r12_r3_LSR_r14,
5005   },
5006   {
5007     ARRAY_SIZE(kInstruction_add_ne_r2_r0_r14_ASR_r9),
5008     kInstruction_add_ne_r2_r0_r14_ASR_r9,
5009   },
5010   {
5011     ARRAY_SIZE(kInstruction_add_al_r14_r2_r4_ROR_r10),
5012     kInstruction_add_al_r14_r2_r4_ROR_r10,
5013   },
5014   {
5015     ARRAY_SIZE(kInstruction_add_ge_r10_r3_r12_LSR_r12),
5016     kInstruction_add_ge_r10_r3_r12_LSR_r12,
5017   },
5018   {
5019     ARRAY_SIZE(kInstruction_add_pl_r6_r11_r8_LSL_r14),
5020     kInstruction_add_pl_r6_r11_r8_LSL_r14,
5021   },
5022   {
5023     ARRAY_SIZE(kInstruction_add_gt_r8_r1_r7_LSR_r0),
5024     kInstruction_add_gt_r8_r1_r7_LSR_r0,
5025   },
5026   {
5027     ARRAY_SIZE(kInstruction_add_eq_r1_r14_r6_ASR_r12),
5028     kInstruction_add_eq_r1_r14_r6_ASR_r12,
5029   },
5030   {
5031     ARRAY_SIZE(kInstruction_add_gt_r8_r1_r11_LSR_r7),
5032     kInstruction_add_gt_r8_r1_r11_LSR_r7,
5033   },
5034   {
5035     ARRAY_SIZE(kInstruction_add_cc_r4_r13_r4_ROR_r4),
5036     kInstruction_add_cc_r4_r13_r4_ROR_r4,
5037   },
5038   {
5039     ARRAY_SIZE(kInstruction_add_vc_r5_r0_r12_LSR_r11),
5040     kInstruction_add_vc_r5_r0_r12_LSR_r11,
5041   },
5042   {
5043     ARRAY_SIZE(kInstruction_add_eq_r3_r0_r1_LSL_r13),
5044     kInstruction_add_eq_r3_r0_r1_LSL_r13,
5045   },
5046   {
5047     ARRAY_SIZE(kInstruction_add_lt_r1_r0_r11_ASR_r6),
5048     kInstruction_add_lt_r1_r0_r11_ASR_r6,
5049   },
5050   {
5051     ARRAY_SIZE(kInstruction_add_hi_r6_r2_r1_ASR_r0),
5052     kInstruction_add_hi_r6_r2_r1_ASR_r0,
5053   },
5054   {
5055     ARRAY_SIZE(kInstruction_add_eq_r1_r2_r11_LSL_r11),
5056     kInstruction_add_eq_r1_r2_r11_LSL_r11,
5057   },
5058   {
5059     ARRAY_SIZE(kInstruction_add_cs_r12_r9_r14_ROR_r10),
5060     kInstruction_add_cs_r12_r9_r14_ROR_r10,
5061   },
5062   {
5063     ARRAY_SIZE(kInstruction_add_ne_r8_r10_r7_ROR_r0),
5064     kInstruction_add_ne_r8_r10_r7_ROR_r0,
5065   },
5066   {
5067     ARRAY_SIZE(kInstruction_add_pl_r8_r14_r8_ASR_r10),
5068     kInstruction_add_pl_r8_r14_r8_ASR_r10,
5069   },
5070   {
5071     ARRAY_SIZE(kInstruction_add_cc_r4_r3_r10_LSR_r9),
5072     kInstruction_add_cc_r4_r3_r10_LSR_r9,
5073   },
5074   {
5075     ARRAY_SIZE(kInstruction_add_le_r4_r1_r2_ASR_r6),
5076     kInstruction_add_le_r4_r1_r2_ASR_r6,
5077   },
5078   {
5079     ARRAY_SIZE(kInstruction_add_vs_r0_r3_r5_ASR_r3),
5080     kInstruction_add_vs_r0_r3_r5_ASR_r3,
5081   },
5082   {
5083     ARRAY_SIZE(kInstruction_add_lt_r5_r14_r1_ROR_r12),
5084     kInstruction_add_lt_r5_r14_r1_ROR_r12,
5085   },
5086   {
5087     ARRAY_SIZE(kInstruction_add_lt_r2_r0_r14_LSL_r13),
5088     kInstruction_add_lt_r2_r0_r14_LSL_r13,
5089   },
5090   {
5091     ARRAY_SIZE(kInstruction_add_cs_r5_r12_r12_ASR_r3),
5092     kInstruction_add_cs_r5_r12_r12_ASR_r3,
5093   },
5094   {
5095     ARRAY_SIZE(kInstruction_add_ls_r14_r1_r2_ROR_r7),
5096     kInstruction_add_ls_r14_r1_r2_ROR_r7,
5097   },
5098   {
5099     ARRAY_SIZE(kInstruction_add_ge_r6_r3_r14_ROR_r4),
5100     kInstruction_add_ge_r6_r3_r14_ROR_r4,
5101   },
5102   {
5103     ARRAY_SIZE(kInstruction_add_al_r13_r1_r9_ROR_r10),
5104     kInstruction_add_al_r13_r1_r9_ROR_r10,
5105   },
5106   {
5107     ARRAY_SIZE(kInstruction_add_al_r0_r4_r5_ASR_r2),
5108     kInstruction_add_al_r0_r4_r5_ASR_r2,
5109   },
5110   {
5111     ARRAY_SIZE(kInstruction_add_cc_r6_r13_r12_ASR_r8),
5112     kInstruction_add_cc_r6_r13_r12_ASR_r8,
5113   },
5114   {
5115     ARRAY_SIZE(kInstruction_add_eq_r0_r14_r13_LSR_r10),
5116     kInstruction_add_eq_r0_r14_r13_LSR_r10,
5117   },
5118   {
5119     ARRAY_SIZE(kInstruction_add_vs_r5_r8_r6_ASR_r7),
5120     kInstruction_add_vs_r5_r8_r6_ASR_r7,
5121   },
5122   {
5123     ARRAY_SIZE(kInstruction_add_cs_r9_r2_r10_LSL_r9),
5124     kInstruction_add_cs_r9_r2_r10_LSL_r9,
5125   },
5126   {
5127     ARRAY_SIZE(kInstruction_add_hi_r3_r0_r13_ASR_r5),
5128     kInstruction_add_hi_r3_r0_r13_ASR_r5,
5129   },
5130   {
5131     ARRAY_SIZE(kInstruction_add_al_r9_r10_r10_ASR_r5),
5132     kInstruction_add_al_r9_r10_r10_ASR_r5,
5133   },
5134   {
5135     ARRAY_SIZE(kInstruction_add_eq_r3_r13_r3_LSL_r9),
5136     kInstruction_add_eq_r3_r13_r3_LSL_r9,
5137   },
5138   {
5139     ARRAY_SIZE(kInstruction_add_al_r0_r3_r13_LSL_r13),
5140     kInstruction_add_al_r0_r3_r13_LSL_r13,
5141   },
5142   {
5143     ARRAY_SIZE(kInstruction_add_le_r0_r14_r10_ASR_r5),
5144     kInstruction_add_le_r0_r14_r10_ASR_r5,
5145   },
5146   {
5147     ARRAY_SIZE(kInstruction_add_vs_r14_r1_r3_ASR_r0),
5148     kInstruction_add_vs_r14_r1_r3_ASR_r0,
5149   },
5150   {
5151     ARRAY_SIZE(kInstruction_add_pl_r8_r9_r3_LSL_r10),
5152     kInstruction_add_pl_r8_r9_r3_LSL_r10,
5153   },
5154   {
5155     ARRAY_SIZE(kInstruction_add_ge_r13_r9_r0_ROR_r0),
5156     kInstruction_add_ge_r13_r9_r0_ROR_r0,
5157   },
5158   {
5159     ARRAY_SIZE(kInstruction_add_gt_r14_r11_r1_LSR_r0),
5160     kInstruction_add_gt_r14_r11_r1_LSR_r0,
5161   },
5162   {
5163     ARRAY_SIZE(kInstruction_add_ls_r9_r2_r9_ROR_r14),
5164     kInstruction_add_ls_r9_r2_r9_ROR_r14,
5165   },
5166   {
5167     ARRAY_SIZE(kInstruction_add_mi_r12_r4_r9_LSR_r7),
5168     kInstruction_add_mi_r12_r4_r9_LSR_r7,
5169   },
5170   {
5171     ARRAY_SIZE(kInstruction_add_lt_r9_r14_r5_ASR_r14),
5172     kInstruction_add_lt_r9_r14_r5_ASR_r14,
5173   },
5174   {
5175     ARRAY_SIZE(kInstruction_add_ne_r11_r8_r12_LSL_r14),
5176     kInstruction_add_ne_r11_r8_r12_LSL_r14,
5177   },
5178   {
5179     ARRAY_SIZE(kInstruction_add_lt_r3_r11_r12_LSR_r3),
5180     kInstruction_add_lt_r3_r11_r12_LSR_r3,
5181   },
5182   {
5183     ARRAY_SIZE(kInstruction_add_cs_r8_r12_r8_LSL_r13),
5184     kInstruction_add_cs_r8_r12_r8_LSL_r13,
5185   },
5186   {
5187     ARRAY_SIZE(kInstruction_add_gt_r1_r4_r4_LSL_r5),
5188     kInstruction_add_gt_r1_r4_r4_LSL_r5,
5189   },
5190   {
5191     ARRAY_SIZE(kInstruction_add_ge_r5_r12_r10_ASR_r13),
5192     kInstruction_add_ge_r5_r12_r10_ASR_r13,
5193   },
5194   {
5195     ARRAY_SIZE(kInstruction_add_cs_r1_r6_r9_LSL_r6),
5196     kInstruction_add_cs_r1_r6_r9_LSL_r6,
5197   },
5198   {
5199     ARRAY_SIZE(kInstruction_add_pl_r0_r13_r7_ASR_r8),
5200     kInstruction_add_pl_r0_r13_r7_ASR_r8,
5201   },
5202   {
5203     ARRAY_SIZE(kInstruction_add_lt_r8_r11_r9_LSL_r4),
5204     kInstruction_add_lt_r8_r11_r9_LSL_r4,
5205   },
5206   {
5207     ARRAY_SIZE(kInstruction_add_hi_r9_r1_r6_LSL_r6),
5208     kInstruction_add_hi_r9_r1_r6_LSL_r6,
5209   },
5210   {
5211     ARRAY_SIZE(kInstruction_add_cc_r11_r9_r10_ASR_r2),
5212     kInstruction_add_cc_r11_r9_r10_ASR_r2,
5213   },
5214   {
5215     ARRAY_SIZE(kInstruction_add_gt_r4_r0_r10_LSR_r4),
5216     kInstruction_add_gt_r4_r0_r10_LSR_r4,
5217   },
5218   {
5219     ARRAY_SIZE(kInstruction_add_al_r8_r10_r4_LSL_r13),
5220     kInstruction_add_al_r8_r10_r4_LSL_r13,
5221   },
5222   {
5223     ARRAY_SIZE(kInstruction_add_vs_r6_r8_r13_ASR_r10),
5224     kInstruction_add_vs_r6_r8_r13_ASR_r10,
5225   },
5226   {
5227     ARRAY_SIZE(kInstruction_add_mi_r13_r13_r14_ROR_r8),
5228     kInstruction_add_mi_r13_r13_r14_ROR_r8,
5229   },
5230   {
5231     ARRAY_SIZE(kInstruction_add_mi_r3_r13_r11_LSL_r8),
5232     kInstruction_add_mi_r3_r13_r11_LSL_r8,
5233   },
5234   {
5235     ARRAY_SIZE(kInstruction_add_cc_r11_r4_r1_LSR_r14),
5236     kInstruction_add_cc_r11_r4_r1_LSR_r14,
5237   },
5238   {
5239     ARRAY_SIZE(kInstruction_add_al_r6_r7_r9_ASR_r7),
5240     kInstruction_add_al_r6_r7_r9_ASR_r7,
5241   },
5242   {
5243     ARRAY_SIZE(kInstruction_add_cs_r10_r2_r10_LSL_r13),
5244     kInstruction_add_cs_r10_r2_r10_LSL_r13,
5245   },
5246   {
5247     ARRAY_SIZE(kInstruction_add_eq_r1_r10_r14_ROR_r12),
5248     kInstruction_add_eq_r1_r10_r14_ROR_r12,
5249   },
5250   {
5251     ARRAY_SIZE(kInstruction_add_ge_r4_r5_r6_LSR_r13),
5252     kInstruction_add_ge_r4_r5_r6_LSR_r13,
5253   },
5254   {
5255     ARRAY_SIZE(kInstruction_add_cs_r11_r6_r1_LSR_r12),
5256     kInstruction_add_cs_r11_r6_r1_LSR_r12,
5257   },
5258   {
5259     ARRAY_SIZE(kInstruction_add_lt_r6_r6_r8_LSL_r10),
5260     kInstruction_add_lt_r6_r6_r8_LSL_r10,
5261   },
5262   {
5263     ARRAY_SIZE(kInstruction_add_mi_r2_r12_r8_LSL_r2),
5264     kInstruction_add_mi_r2_r12_r8_LSL_r2,
5265   },
5266   {
5267     ARRAY_SIZE(kInstruction_add_le_r2_r11_r3_ROR_r2),
5268     kInstruction_add_le_r2_r11_r3_ROR_r2,
5269   },
5270   {
5271     ARRAY_SIZE(kInstruction_add_eq_r7_r4_r2_LSR_r11),
5272     kInstruction_add_eq_r7_r4_r2_LSR_r11,
5273   },
5274   {
5275     ARRAY_SIZE(kInstruction_add_pl_r10_r8_r3_ASR_r12),
5276     kInstruction_add_pl_r10_r8_r3_ASR_r12,
5277   },
5278   {
5279     ARRAY_SIZE(kInstruction_add_ge_r4_r8_r11_ROR_r13),
5280     kInstruction_add_ge_r4_r8_r11_ROR_r13,
5281   },
5282   {
5283     ARRAY_SIZE(kInstruction_add_ge_r13_r3_r14_LSL_r11),
5284     kInstruction_add_ge_r13_r3_r14_LSL_r11,
5285   },
5286   {
5287     ARRAY_SIZE(kInstruction_add_cc_r2_r8_r8_LSL_r14),
5288     kInstruction_add_cc_r2_r8_r8_LSL_r14,
5289   },
5290   {
5291     ARRAY_SIZE(kInstruction_add_le_r3_r2_r5_LSR_r6),
5292     kInstruction_add_le_r3_r2_r5_LSR_r6,
5293   },
5294   {
5295     ARRAY_SIZE(kInstruction_add_ls_r1_r9_r9_ROR_r3),
5296     kInstruction_add_ls_r1_r9_r9_ROR_r3,
5297   },
5298   {
5299     ARRAY_SIZE(kInstruction_add_pl_r14_r9_r3_ASR_r9),
5300     kInstruction_add_pl_r14_r9_r3_ASR_r9,
5301   },
5302   {
5303     ARRAY_SIZE(kInstruction_add_cs_r13_r2_r9_ROR_r7),
5304     kInstruction_add_cs_r13_r2_r9_ROR_r7,
5305   },
5306   {
5307     ARRAY_SIZE(kInstruction_add_eq_r9_r10_r4_ROR_r8),
5308     kInstruction_add_eq_r9_r10_r4_ROR_r8,
5309   },
5310   {
5311     ARRAY_SIZE(kInstruction_add_lt_r1_r2_r0_ROR_r9),
5312     kInstruction_add_lt_r1_r2_r0_ROR_r9,
5313   },
5314   {
5315     ARRAY_SIZE(kInstruction_add_hi_r14_r1_r2_LSR_r8),
5316     kInstruction_add_hi_r14_r1_r2_LSR_r8,
5317   },
5318   {
5319     ARRAY_SIZE(kInstruction_add_ne_r10_r7_r3_ROR_r13),
5320     kInstruction_add_ne_r10_r7_r3_ROR_r13,
5321   },
5322   {
5323     ARRAY_SIZE(kInstruction_add_ls_r3_r6_r3_LSL_r1),
5324     kInstruction_add_ls_r3_r6_r3_LSL_r1,
5325   },
5326   {
5327     ARRAY_SIZE(kInstruction_add_eq_r3_r0_r12_ROR_r6),
5328     kInstruction_add_eq_r3_r0_r12_ROR_r6,
5329   },
5330   {
5331     ARRAY_SIZE(kInstruction_add_cc_r7_r4_r8_LSL_r6),
5332     kInstruction_add_cc_r7_r4_r8_LSL_r6,
5333   },
5334   {
5335     ARRAY_SIZE(kInstruction_add_al_r0_r7_r2_LSR_r3),
5336     kInstruction_add_al_r0_r7_r2_LSR_r3,
5337   },
5338   {
5339     ARRAY_SIZE(kInstruction_add_pl_r13_r4_r14_ASR_r10),
5340     kInstruction_add_pl_r13_r4_r14_ASR_r10,
5341   },
5342   {
5343     ARRAY_SIZE(kInstruction_add_vs_r7_r14_r4_ASR_r12),
5344     kInstruction_add_vs_r7_r14_r4_ASR_r12,
5345   },
5346   {
5347     ARRAY_SIZE(kInstruction_add_al_r3_r2_r12_ASR_r13),
5348     kInstruction_add_al_r3_r2_r12_ASR_r13,
5349   },
5350   {
5351     ARRAY_SIZE(kInstruction_add_vs_r12_r13_r12_LSL_r2),
5352     kInstruction_add_vs_r12_r13_r12_LSL_r2,
5353   },
5354   {
5355     ARRAY_SIZE(kInstruction_add_ge_r8_r7_r10_LSR_r8),
5356     kInstruction_add_ge_r8_r7_r10_LSR_r8,
5357   },
5358   {
5359     ARRAY_SIZE(kInstruction_add_vs_r14_r10_r1_LSR_r0),
5360     kInstruction_add_vs_r14_r10_r1_LSR_r0,
5361   },
5362   {
5363     ARRAY_SIZE(kInstruction_add_ls_r13_r11_r6_LSL_r6),
5364     kInstruction_add_ls_r13_r11_r6_LSL_r6,
5365   },
5366   {
5367     ARRAY_SIZE(kInstruction_add_ne_r3_r1_r2_ASR_r6),
5368     kInstruction_add_ne_r3_r1_r2_ASR_r6,
5369   },
5370   {
5371     ARRAY_SIZE(kInstruction_add_cs_r2_r9_r11_ROR_r0),
5372     kInstruction_add_cs_r2_r9_r11_ROR_r0,
5373   },
5374   {
5375     ARRAY_SIZE(kInstruction_add_ls_r7_r12_r9_LSR_r5),
5376     kInstruction_add_ls_r7_r12_r9_LSR_r5,
5377   },
5378   {
5379     ARRAY_SIZE(kInstruction_add_ls_r13_r9_r11_ASR_r8),
5380     kInstruction_add_ls_r13_r9_r11_ASR_r8,
5381   },
5382   {
5383     ARRAY_SIZE(kInstruction_add_mi_r6_r7_r4_ASR_r0),
5384     kInstruction_add_mi_r6_r7_r4_ASR_r0,
5385   },
5386   {
5387     ARRAY_SIZE(kInstruction_add_cc_r10_r7_r3_ROR_r2),
5388     kInstruction_add_cc_r10_r7_r3_ROR_r2,
5389   },
5390   {
5391     ARRAY_SIZE(kInstruction_add_ne_r3_r8_r12_ROR_r1),
5392     kInstruction_add_ne_r3_r8_r12_ROR_r1,
5393   },
5394   {
5395     ARRAY_SIZE(kInstruction_add_hi_r5_r11_r7_ROR_r11),
5396     kInstruction_add_hi_r5_r11_r7_ROR_r11,
5397   },
5398   {
5399     ARRAY_SIZE(kInstruction_add_eq_r12_r10_r1_LSL_r0),
5400     kInstruction_add_eq_r12_r10_r1_LSL_r0,
5401   },
5402   {
5403     ARRAY_SIZE(kInstruction_add_mi_r2_r7_r0_LSR_r10),
5404     kInstruction_add_mi_r2_r7_r0_LSR_r10,
5405   },
5406   {
5407     ARRAY_SIZE(kInstruction_add_ge_r8_r5_r12_LSR_r6),
5408     kInstruction_add_ge_r8_r5_r12_LSR_r6,
5409   },
5410   {
5411     ARRAY_SIZE(kInstruction_add_vc_r1_r0_r14_ROR_r4),
5412     kInstruction_add_vc_r1_r0_r14_ROR_r4,
5413   },
5414   {
5415     ARRAY_SIZE(kInstruction_add_gt_r5_r2_r1_LSR_r0),
5416     kInstruction_add_gt_r5_r2_r1_LSR_r0,
5417   },
5418   {
5419     ARRAY_SIZE(kInstruction_add_cs_r1_r1_r2_LSR_r5),
5420     kInstruction_add_cs_r1_r1_r2_LSR_r5,
5421   },
5422   {
5423     ARRAY_SIZE(kInstruction_add_ge_r9_r14_r9_ASR_r3),
5424     kInstruction_add_ge_r9_r14_r9_ASR_r3,
5425   },
5426   {
5427     ARRAY_SIZE(kInstruction_add_gt_r9_r1_r10_LSR_r14),
5428     kInstruction_add_gt_r9_r1_r10_LSR_r14,
5429   },
5430   {
5431     ARRAY_SIZE(kInstruction_add_ls_r3_r5_r2_ASR_r7),
5432     kInstruction_add_ls_r3_r5_r2_ASR_r7,
5433   },
5434   {
5435     ARRAY_SIZE(kInstruction_add_ls_r7_r11_r8_LSR_r12),
5436     kInstruction_add_ls_r7_r11_r8_LSR_r12,
5437   },
5438   {
5439     ARRAY_SIZE(kInstruction_add_ls_r14_r9_r6_LSR_r9),
5440     kInstruction_add_ls_r14_r9_r6_LSR_r9,
5441   },
5442   {
5443     ARRAY_SIZE(kInstruction_add_cs_r2_r12_r10_ROR_r5),
5444     kInstruction_add_cs_r2_r12_r10_ROR_r5,
5445   },
5446   {
5447     ARRAY_SIZE(kInstruction_add_eq_r8_r6_r14_LSR_r9),
5448     kInstruction_add_eq_r8_r6_r14_LSR_r9,
5449   },
5450   {
5451     ARRAY_SIZE(kInstruction_add_lt_r8_r0_r14_ASR_r12),
5452     kInstruction_add_lt_r8_r0_r14_ASR_r12,
5453   },
5454   {
5455     ARRAY_SIZE(kInstruction_add_al_r14_r7_r8_ROR_r8),
5456     kInstruction_add_al_r14_r7_r8_ROR_r8,
5457   },
5458   {
5459     ARRAY_SIZE(kInstruction_add_lt_r5_r12_r3_LSL_r5),
5460     kInstruction_add_lt_r5_r12_r3_LSL_r5,
5461   },
5462   {
5463     ARRAY_SIZE(kInstruction_add_gt_r0_r0_r3_ROR_r12),
5464     kInstruction_add_gt_r0_r0_r3_ROR_r12,
5465   },
5466   {
5467     ARRAY_SIZE(kInstruction_add_ge_r6_r5_r10_ASR_r13),
5468     kInstruction_add_ge_r6_r5_r10_ASR_r13,
5469   },
5470   {
5471     ARRAY_SIZE(kInstruction_add_vc_r5_r11_r6_LSL_r11),
5472     kInstruction_add_vc_r5_r11_r6_LSL_r11,
5473   },
5474   {
5475     ARRAY_SIZE(kInstruction_add_gt_r10_r5_r9_LSR_r3),
5476     kInstruction_add_gt_r10_r5_r9_LSR_r3,
5477   },
5478   {
5479     ARRAY_SIZE(kInstruction_add_vc_r14_r3_r12_LSL_r2),
5480     kInstruction_add_vc_r14_r3_r12_LSL_r2,
5481   },
5482   {
5483     ARRAY_SIZE(kInstruction_add_eq_r12_r2_r13_LSL_r6),
5484     kInstruction_add_eq_r12_r2_r13_LSL_r6,
5485   },
5486   {
5487     ARRAY_SIZE(kInstruction_add_le_r5_r7_r12_LSL_r10),
5488     kInstruction_add_le_r5_r7_r12_LSL_r10,
5489   },
5490   {
5491     ARRAY_SIZE(kInstruction_add_cc_r8_r4_r1_LSR_r3),
5492     kInstruction_add_cc_r8_r4_r1_LSR_r3,
5493   },
5494   {
5495     ARRAY_SIZE(kInstruction_add_ne_r2_r13_r1_LSL_r13),
5496     kInstruction_add_ne_r2_r13_r1_LSL_r13,
5497   },
5498   {
5499     ARRAY_SIZE(kInstruction_add_ls_r14_r7_r8_ASR_r0),
5500     kInstruction_add_ls_r14_r7_r8_ASR_r0,
5501   },
5502   {
5503     ARRAY_SIZE(kInstruction_add_mi_r3_r0_r5_ASR_r8),
5504     kInstruction_add_mi_r3_r0_r5_ASR_r8,
5505   },
5506   {
5507     ARRAY_SIZE(kInstruction_add_mi_r2_r3_r1_LSL_r3),
5508     kInstruction_add_mi_r2_r3_r1_LSL_r3,
5509   },
5510   {
5511     ARRAY_SIZE(kInstruction_add_vs_r14_r4_r4_LSR_r5),
5512     kInstruction_add_vs_r14_r4_r4_LSR_r5,
5513   },
5514   {
5515     ARRAY_SIZE(kInstruction_add_le_r7_r3_r1_LSL_r10),
5516     kInstruction_add_le_r7_r3_r1_LSL_r10,
5517   },
5518   {
5519     ARRAY_SIZE(kInstruction_add_mi_r7_r14_r4_ASR_r14),
5520     kInstruction_add_mi_r7_r14_r4_ASR_r14,
5521   },
5522   {
5523     ARRAY_SIZE(kInstruction_add_mi_r11_r5_r4_ASR_r13),
5524     kInstruction_add_mi_r11_r5_r4_ASR_r13,
5525   },
5526   {
5527     ARRAY_SIZE(kInstruction_add_vs_r3_r10_r5_LSR_r9),
5528     kInstruction_add_vs_r3_r10_r5_LSR_r9,
5529   },
5530   {
5531     ARRAY_SIZE(kInstruction_add_hi_r11_r3_r11_LSR_r7),
5532     kInstruction_add_hi_r11_r3_r11_LSR_r7,
5533   },
5534   {
5535     ARRAY_SIZE(kInstruction_add_ls_r14_r4_r10_LSL_r13),
5536     kInstruction_add_ls_r14_r4_r10_LSL_r13,
5537   },
5538   {
5539     ARRAY_SIZE(kInstruction_add_cc_r11_r0_r13_LSL_r7),
5540     kInstruction_add_cc_r11_r0_r13_LSL_r7,
5541   },
5542   {
5543     ARRAY_SIZE(kInstruction_add_al_r10_r3_r7_ASR_r0),
5544     kInstruction_add_al_r10_r3_r7_ASR_r0,
5545   },
5546   {
5547     ARRAY_SIZE(kInstruction_add_cs_r4_r7_r1_ROR_r8),
5548     kInstruction_add_cs_r4_r7_r1_ROR_r8,
5549   },
5550   {
5551     ARRAY_SIZE(kInstruction_add_lt_r4_r0_r2_LSR_r5),
5552     kInstruction_add_lt_r4_r0_r2_LSR_r5,
5553   },
5554   {
5555     ARRAY_SIZE(kInstruction_add_eq_r0_r11_r9_LSL_r8),
5556     kInstruction_add_eq_r0_r11_r9_LSL_r8,
5557   },
5558   {
5559     ARRAY_SIZE(kInstruction_add_mi_r6_r1_r4_LSL_r13),
5560     kInstruction_add_mi_r6_r1_r4_LSL_r13,
5561   },
5562   {
5563     ARRAY_SIZE(kInstruction_add_lt_r8_r13_r9_ASR_r5),
5564     kInstruction_add_lt_r8_r13_r9_ASR_r5,
5565   },
5566   {
5567     ARRAY_SIZE(kInstruction_add_lt_r13_r7_r1_ROR_r0),
5568     kInstruction_add_lt_r13_r7_r1_ROR_r0,
5569   },
5570   {
5571     ARRAY_SIZE(kInstruction_add_hi_r12_r10_r5_ASR_r5),
5572     kInstruction_add_hi_r12_r10_r5_ASR_r5,
5573   },
5574   {
5575     ARRAY_SIZE(kInstruction_add_hi_r12_r11_r7_ROR_r3),
5576     kInstruction_add_hi_r12_r11_r7_ROR_r3,
5577   },
5578   {
5579     ARRAY_SIZE(kInstruction_add_ge_r8_r5_r0_ASR_r14),
5580     kInstruction_add_ge_r8_r5_r0_ASR_r14,
5581   },
5582   {
5583     ARRAY_SIZE(kInstruction_add_mi_r5_r0_r11_LSR_r10),
5584     kInstruction_add_mi_r5_r0_r11_LSR_r10,
5585   },
5586   {
5587     ARRAY_SIZE(kInstruction_add_vs_r10_r11_r2_LSR_r0),
5588     kInstruction_add_vs_r10_r11_r2_LSR_r0,
5589   },
5590   {
5591     ARRAY_SIZE(kInstruction_add_ls_r10_r8_r6_ROR_r3),
5592     kInstruction_add_ls_r10_r8_r6_ROR_r3,
5593   },
5594   {
5595     ARRAY_SIZE(kInstruction_add_gt_r10_r0_r2_ROR_r3),
5596     kInstruction_add_gt_r10_r0_r2_ROR_r3,
5597   },
5598   {
5599     ARRAY_SIZE(kInstruction_add_vs_r4_r10_r10_LSL_r5),
5600     kInstruction_add_vs_r4_r10_r10_LSL_r5,
5601   },
5602   {
5603     ARRAY_SIZE(kInstruction_add_vc_r12_r11_r12_LSR_r2),
5604     kInstruction_add_vc_r12_r11_r12_LSR_r2,
5605   },
5606   {
5607     ARRAY_SIZE(kInstruction_add_eq_r5_r8_r2_LSR_r1),
5608     kInstruction_add_eq_r5_r8_r2_LSR_r1,
5609   },
5610   {
5611     ARRAY_SIZE(kInstruction_add_le_r8_r10_r4_LSL_r3),
5612     kInstruction_add_le_r8_r10_r4_LSL_r3,
5613   },
5614   {
5615     ARRAY_SIZE(kInstruction_add_al_r1_r10_r10_ROR_r10),
5616     kInstruction_add_al_r1_r10_r10_ROR_r10,
5617   },
5618   {
5619     ARRAY_SIZE(kInstruction_add_al_r5_r5_r6_ROR_r11),
5620     kInstruction_add_al_r5_r5_r6_ROR_r11,
5621   },
5622   {
5623     ARRAY_SIZE(kInstruction_add_vs_r4_r0_r9_ASR_r4),
5624     kInstruction_add_vs_r4_r0_r9_ASR_r4,
5625   },
5626   {
5627     ARRAY_SIZE(kInstruction_add_gt_r6_r9_r1_LSL_r9),
5628     kInstruction_add_gt_r6_r9_r1_LSL_r9,
5629   },
5630   {
5631     ARRAY_SIZE(kInstruction_add_lt_r3_r12_r10_LSR_r0),
5632     kInstruction_add_lt_r3_r12_r10_LSR_r0,
5633   },
5634   {
5635     ARRAY_SIZE(kInstruction_add_eq_r2_r0_r8_LSR_r0),
5636     kInstruction_add_eq_r2_r0_r8_LSR_r0,
5637   },
5638   {
5639     ARRAY_SIZE(kInstruction_add_gt_r0_r11_r7_LSR_r14),
5640     kInstruction_add_gt_r0_r11_r7_LSR_r14,
5641   },
5642   {
5643     ARRAY_SIZE(kInstruction_add_ls_r6_r1_r9_LSL_r10),
5644     kInstruction_add_ls_r6_r1_r9_LSL_r10,
5645   },
5646   {
5647     ARRAY_SIZE(kInstruction_add_eq_r3_r13_r13_LSL_r13),
5648     kInstruction_add_eq_r3_r13_r13_LSL_r13,
5649   },
5650   {
5651     ARRAY_SIZE(kInstruction_add_ne_r11_r6_r6_LSR_r11),
5652     kInstruction_add_ne_r11_r6_r6_LSR_r11,
5653   },
5654   {
5655     ARRAY_SIZE(kInstruction_add_le_r12_r0_r3_LSL_r4),
5656     kInstruction_add_le_r12_r0_r3_LSL_r4,
5657   },
5658   {
5659     ARRAY_SIZE(kInstruction_add_pl_r0_r0_r1_LSR_r6),
5660     kInstruction_add_pl_r0_r0_r1_LSR_r6,
5661   },
5662   {
5663     ARRAY_SIZE(kInstruction_add_vc_r1_r14_r7_LSL_r9),
5664     kInstruction_add_vc_r1_r14_r7_LSL_r9,
5665   },
5666   {
5667     ARRAY_SIZE(kInstruction_add_lt_r0_r11_r10_LSR_r13),
5668     kInstruction_add_lt_r0_r11_r10_LSR_r13,
5669   },
5670   {
5671     ARRAY_SIZE(kInstruction_add_cs_r4_r11_r9_ROR_r7),
5672     kInstruction_add_cs_r4_r11_r9_ROR_r7,
5673   },
5674   {
5675     ARRAY_SIZE(kInstruction_add_vc_r8_r10_r10_LSR_r14),
5676     kInstruction_add_vc_r8_r10_r10_LSR_r14,
5677   },
5678   {
5679     ARRAY_SIZE(kInstruction_add_ls_r4_r8_r0_LSR_r6),
5680     kInstruction_add_ls_r4_r8_r0_LSR_r6,
5681   },
5682   {
5683     ARRAY_SIZE(kInstruction_add_ne_r10_r12_r10_ASR_r3),
5684     kInstruction_add_ne_r10_r12_r10_ASR_r3,
5685   },
5686   {
5687     ARRAY_SIZE(kInstruction_add_ls_r13_r13_r12_LSL_r0),
5688     kInstruction_add_ls_r13_r13_r12_LSL_r0,
5689   },
5690   {
5691     ARRAY_SIZE(kInstruction_add_vs_r6_r10_r8_LSR_r11),
5692     kInstruction_add_vs_r6_r10_r8_LSR_r11,
5693   },
5694   {
5695     ARRAY_SIZE(kInstruction_add_vs_r2_r3_r5_ROR_r1),
5696     kInstruction_add_vs_r2_r3_r5_ROR_r1,
5697   },
5698   {
5699     ARRAY_SIZE(kInstruction_add_lt_r2_r9_r5_LSR_r5),
5700     kInstruction_add_lt_r2_r9_r5_LSR_r5,
5701   },
5702   {
5703     ARRAY_SIZE(kInstruction_add_ne_r11_r1_r8_LSL_r8),
5704     kInstruction_add_ne_r11_r1_r8_LSL_r8,
5705   },
5706   {
5707     ARRAY_SIZE(kInstruction_add_ne_r1_r3_r11_ROR_r10),
5708     kInstruction_add_ne_r1_r3_r11_ROR_r10,
5709   },
5710   {
5711     ARRAY_SIZE(kInstruction_add_gt_r6_r7_r7_ROR_r6),
5712     kInstruction_add_gt_r6_r7_r7_ROR_r6,
5713   },
5714   {
5715     ARRAY_SIZE(kInstruction_add_cc_r14_r6_r5_LSR_r5),
5716     kInstruction_add_cc_r14_r6_r5_LSR_r5,
5717   },
5718   {
5719     ARRAY_SIZE(kInstruction_add_eq_r11_r8_r8_ASR_r10),
5720     kInstruction_add_eq_r11_r8_r8_ASR_r10,
5721   },
5722   {
5723     ARRAY_SIZE(kInstruction_add_al_r11_r12_r12_ROR_r3),
5724     kInstruction_add_al_r11_r12_r12_ROR_r3,
5725   },
5726   {
5727     ARRAY_SIZE(kInstruction_add_lt_r6_r13_r10_ASR_r6),
5728     kInstruction_add_lt_r6_r13_r10_ASR_r6,
5729   },
5730   {
5731     ARRAY_SIZE(kInstruction_add_gt_r3_r11_r0_ASR_r2),
5732     kInstruction_add_gt_r3_r11_r0_ASR_r2,
5733   },
5734   {
5735     ARRAY_SIZE(kInstruction_add_lt_r9_r1_r13_LSL_r6),
5736     kInstruction_add_lt_r9_r1_r13_LSL_r6,
5737   },
5738   {
5739     ARRAY_SIZE(kInstruction_add_pl_r0_r9_r10_LSL_r9),
5740     kInstruction_add_pl_r0_r9_r10_LSL_r9,
5741   },
5742   {
5743     ARRAY_SIZE(kInstruction_add_hi_r9_r4_r5_LSL_r14),
5744     kInstruction_add_hi_r9_r4_r5_LSL_r14,
5745   },
5746   {
5747     ARRAY_SIZE(kInstruction_add_ge_r9_r3_r2_LSL_r7),
5748     kInstruction_add_ge_r9_r3_r2_LSL_r7,
5749   },
5750   {
5751     ARRAY_SIZE(kInstruction_add_al_r3_r13_r9_ASR_r2),
5752     kInstruction_add_al_r3_r13_r9_ASR_r2,
5753   },
5754   {
5755     ARRAY_SIZE(kInstruction_add_ne_r5_r2_r3_ROR_r6),
5756     kInstruction_add_ne_r5_r2_r3_ROR_r6,
5757   },
5758   {
5759     ARRAY_SIZE(kInstruction_add_cc_r11_r6_r13_ROR_r4),
5760     kInstruction_add_cc_r11_r6_r13_ROR_r4,
5761   },
5762   {
5763     ARRAY_SIZE(kInstruction_add_le_r11_r7_r9_LSR_r11),
5764     kInstruction_add_le_r11_r7_r9_LSR_r11,
5765   },
5766   {
5767     ARRAY_SIZE(kInstruction_add_vs_r3_r13_r6_ASR_r7),
5768     kInstruction_add_vs_r3_r13_r6_ASR_r7,
5769   },
5770   {
5771     ARRAY_SIZE(kInstruction_add_mi_r3_r1_r14_LSL_r0),
5772     kInstruction_add_mi_r3_r1_r14_LSL_r0,
5773   },
5774   {
5775     ARRAY_SIZE(kInstruction_add_vc_r4_r6_r8_LSR_r7),
5776     kInstruction_add_vc_r4_r6_r8_LSR_r7,
5777   },
5778   {
5779     ARRAY_SIZE(kInstruction_add_gt_r5_r2_r0_LSL_r6),
5780     kInstruction_add_gt_r5_r2_r0_LSL_r6,
5781   },
5782   {
5783     ARRAY_SIZE(kInstruction_add_cc_r13_r13_r5_LSR_r10),
5784     kInstruction_add_cc_r13_r13_r5_LSR_r10,
5785   },
5786   {
5787     ARRAY_SIZE(kInstruction_add_eq_r7_r5_r6_ROR_r12),
5788     kInstruction_add_eq_r7_r5_r6_ROR_r12,
5789   },
5790   {
5791     ARRAY_SIZE(kInstruction_add_ls_r1_r5_r14_ROR_r0),
5792     kInstruction_add_ls_r1_r5_r14_ROR_r0,
5793   },
5794   {
5795     ARRAY_SIZE(kInstruction_add_mi_r11_r14_r6_LSL_r5),
5796     kInstruction_add_mi_r11_r14_r6_LSL_r5,
5797   },
5798   {
5799     ARRAY_SIZE(kInstruction_add_ne_r11_r8_r12_ASR_r0),
5800     kInstruction_add_ne_r11_r8_r12_ASR_r0,
5801   },
5802   {
5803     ARRAY_SIZE(kInstruction_add_vs_r6_r7_r13_LSL_r9),
5804     kInstruction_add_vs_r6_r7_r13_LSL_r9,
5805   },
5806   {
5807     ARRAY_SIZE(kInstruction_add_gt_r4_r9_r2_LSR_r9),
5808     kInstruction_add_gt_r4_r9_r2_LSR_r9,
5809   },
5810   {
5811     ARRAY_SIZE(kInstruction_add_ls_r2_r14_r6_ASR_r12),
5812     kInstruction_add_ls_r2_r14_r6_ASR_r12,
5813   },
5814   {
5815     ARRAY_SIZE(kInstruction_add_cc_r8_r10_r12_LSL_r8),
5816     kInstruction_add_cc_r8_r10_r12_LSL_r8,
5817   },
5818   {
5819     ARRAY_SIZE(kInstruction_add_ne_r8_r7_r0_LSL_r9),
5820     kInstruction_add_ne_r8_r7_r0_LSL_r9,
5821   },
5822   {
5823     ARRAY_SIZE(kInstruction_add_vs_r5_r14_r3_ASR_r10),
5824     kInstruction_add_vs_r5_r14_r3_ASR_r10,
5825   },
5826   {
5827     ARRAY_SIZE(kInstruction_add_al_r12_r6_r13_LSR_r14),
5828     kInstruction_add_al_r12_r6_r13_LSR_r14,
5829   },
5830   {
5831     ARRAY_SIZE(kInstruction_add_ge_r14_r11_r11_ROR_r1),
5832     kInstruction_add_ge_r14_r11_r11_ROR_r1,
5833   },
5834   {
5835     ARRAY_SIZE(kInstruction_add_le_r9_r6_r0_LSR_r4),
5836     kInstruction_add_le_r9_r6_r0_LSR_r4,
5837   },
5838   {
5839     ARRAY_SIZE(kInstruction_add_le_r0_r8_r14_ASR_r10),
5840     kInstruction_add_le_r0_r8_r14_ASR_r10,
5841   },
5842   {
5843     ARRAY_SIZE(kInstruction_add_hi_r4_r13_r7_LSL_r6),
5844     kInstruction_add_hi_r4_r13_r7_LSL_r6,
5845   },
5846   {
5847     ARRAY_SIZE(kInstruction_add_vc_r13_r0_r14_ROR_r4),
5848     kInstruction_add_vc_r13_r0_r14_ROR_r4,
5849   },
5850   {
5851     ARRAY_SIZE(kInstruction_add_cc_r1_r6_r12_ASR_r10),
5852     kInstruction_add_cc_r1_r6_r12_ASR_r10,
5853   },
5854   {
5855     ARRAY_SIZE(kInstruction_add_le_r13_r0_r4_LSL_r9),
5856     kInstruction_add_le_r13_r0_r4_LSL_r9,
5857   },
5858   {
5859     ARRAY_SIZE(kInstruction_add_vc_r5_r4_r3_LSR_r0),
5860     kInstruction_add_vc_r5_r4_r3_LSR_r0,
5861   },
5862   {
5863     ARRAY_SIZE(kInstruction_add_ne_r9_r14_r0_LSR_r11),
5864     kInstruction_add_ne_r9_r14_r0_LSR_r11,
5865   },
5866   {
5867     ARRAY_SIZE(kInstruction_add_hi_r7_r4_r9_ASR_r5),
5868     kInstruction_add_hi_r7_r4_r9_ASR_r5,
5869   },
5870   {
5871     ARRAY_SIZE(kInstruction_add_cc_r0_r8_r7_LSL_r5),
5872     kInstruction_add_cc_r0_r8_r7_LSL_r5,
5873   },
5874   {
5875     ARRAY_SIZE(kInstruction_add_vs_r3_r5_r1_ROR_r12),
5876     kInstruction_add_vs_r3_r5_r1_ROR_r12,
5877   },
5878   {
5879     ARRAY_SIZE(kInstruction_add_cc_r0_r4_r9_LSR_r5),
5880     kInstruction_add_cc_r0_r4_r9_LSR_r5,
5881   },
5882   {
5883     ARRAY_SIZE(kInstruction_add_cc_r5_r12_r1_LSL_r14),
5884     kInstruction_add_cc_r5_r12_r1_LSL_r14,
5885   },
5886   {
5887     ARRAY_SIZE(kInstruction_add_cs_r3_r6_r1_LSL_r14),
5888     kInstruction_add_cs_r3_r6_r1_LSL_r14,
5889   },
5890   {
5891     ARRAY_SIZE(kInstruction_add_gt_r2_r3_r0_ASR_r0),
5892     kInstruction_add_gt_r2_r3_r0_ASR_r0,
5893   },
5894   {
5895     ARRAY_SIZE(kInstruction_add_cs_r4_r9_r6_LSL_r11),
5896     kInstruction_add_cs_r4_r9_r6_LSL_r11,
5897   },
5898   {
5899     ARRAY_SIZE(kInstruction_add_ne_r8_r7_r3_ROR_r10),
5900     kInstruction_add_ne_r8_r7_r3_ROR_r10,
5901   },
5902   {
5903     ARRAY_SIZE(kInstruction_add_lt_r8_r4_r13_ROR_r5),
5904     kInstruction_add_lt_r8_r4_r13_ROR_r5,
5905   },
5906   {
5907     ARRAY_SIZE(kInstruction_add_gt_r5_r6_r6_ROR_r7),
5908     kInstruction_add_gt_r5_r6_r6_ROR_r7,
5909   },
5910   {
5911     ARRAY_SIZE(kInstruction_add_al_r13_r2_r4_ASR_r1),
5912     kInstruction_add_al_r13_r2_r4_ASR_r1,
5913   },
5914   {
5915     ARRAY_SIZE(kInstruction_add_hi_r0_r6_r11_ASR_r2),
5916     kInstruction_add_hi_r0_r6_r11_ASR_r2,
5917   },
5918   {
5919     ARRAY_SIZE(kInstruction_add_mi_r10_r13_r13_LSR_r6),
5920     kInstruction_add_mi_r10_r13_r13_LSR_r6,
5921   },
5922   {
5923     ARRAY_SIZE(kInstruction_add_hi_r12_r1_r7_LSL_r7),
5924     kInstruction_add_hi_r12_r1_r7_LSL_r7,
5925   },
5926   {
5927     ARRAY_SIZE(kInstruction_add_ge_r10_r13_r12_LSL_r6),
5928     kInstruction_add_ge_r10_r13_r12_LSL_r6,
5929   },
5930   {
5931     ARRAY_SIZE(kInstruction_add_ls_r12_r4_r10_LSL_r9),
5932     kInstruction_add_ls_r12_r4_r10_LSL_r9,
5933   },
5934   {
5935     ARRAY_SIZE(kInstruction_add_hi_r7_r6_r7_ASR_r10),
5936     kInstruction_add_hi_r7_r6_r7_ASR_r10,
5937   },
5938   {
5939     ARRAY_SIZE(kInstruction_add_hi_r6_r11_r14_LSL_r9),
5940     kInstruction_add_hi_r6_r11_r14_LSL_r9,
5941   },
5942   {
5943     ARRAY_SIZE(kInstruction_add_cs_r5_r2_r8_ASR_r5),
5944     kInstruction_add_cs_r5_r2_r8_ASR_r5,
5945   },
5946   {
5947     ARRAY_SIZE(kInstruction_add_hi_r9_r14_r10_LSR_r4),
5948     kInstruction_add_hi_r9_r14_r10_LSR_r4,
5949   },
5950   {
5951     ARRAY_SIZE(kInstruction_add_ne_r4_r11_r5_ROR_r4),
5952     kInstruction_add_ne_r4_r11_r5_ROR_r4,
5953   },
5954   {
5955     ARRAY_SIZE(kInstruction_add_mi_r13_r12_r5_ROR_r4),
5956     kInstruction_add_mi_r13_r12_r5_ROR_r4,
5957   },
5958   {
5959     ARRAY_SIZE(kInstruction_add_gt_r5_r9_r10_LSR_r12),
5960     kInstruction_add_gt_r5_r9_r10_LSR_r12,
5961   },
5962   {
5963     ARRAY_SIZE(kInstruction_add_hi_r5_r7_r13_LSR_r1),
5964     kInstruction_add_hi_r5_r7_r13_LSR_r1,
5965   },
5966   {
5967     ARRAY_SIZE(kInstruction_add_cs_r8_r11_r5_LSR_r10),
5968     kInstruction_add_cs_r8_r11_r5_LSR_r10,
5969   },
5970   {
5971     ARRAY_SIZE(kInstruction_add_hi_r12_r0_r1_LSL_r7),
5972     kInstruction_add_hi_r12_r0_r1_LSL_r7,
5973   },
5974   {
5975     ARRAY_SIZE(kInstruction_add_al_r2_r3_r3_LSR_r12),
5976     kInstruction_add_al_r2_r3_r3_LSR_r12,
5977   },
5978   {
5979     ARRAY_SIZE(kInstruction_add_vs_r12_r0_r0_LSL_r13),
5980     kInstruction_add_vs_r12_r0_r0_LSL_r13,
5981   },
5982   {
5983     ARRAY_SIZE(kInstruction_add_hi_r14_r9_r8_ROR_r2),
5984     kInstruction_add_hi_r14_r9_r8_ROR_r2,
5985   },
5986   {
5987     ARRAY_SIZE(kInstruction_add_ls_r4_r8_r5_LSL_r11),
5988     kInstruction_add_ls_r4_r8_r5_LSL_r11,
5989   },
5990   {
5991     ARRAY_SIZE(kInstruction_add_mi_r1_r8_r2_LSR_r5),
5992     kInstruction_add_mi_r1_r8_r2_LSR_r5,
5993   },
5994   {
5995     ARRAY_SIZE(kInstruction_add_mi_r4_r13_r7_LSR_r13),
5996     kInstruction_add_mi_r4_r13_r7_LSR_r13,
5997   },
5998   {
5999     ARRAY_SIZE(kInstruction_add_eq_r11_r1_r6_ROR_r10),
6000     kInstruction_add_eq_r11_r1_r6_ROR_r10,
6001   },
6002   {
6003     ARRAY_SIZE(kInstruction_add_le_r1_r4_r5_ROR_r6),
6004     kInstruction_add_le_r1_r4_r5_ROR_r6,
6005   },
6006   {
6007     ARRAY_SIZE(kInstruction_add_lt_r0_r3_r7_LSL_r3),
6008     kInstruction_add_lt_r0_r3_r7_LSL_r3,
6009   },
6010   {
6011     ARRAY_SIZE(kInstruction_add_lt_r4_r13_r3_LSL_r0),
6012     kInstruction_add_lt_r4_r13_r3_LSL_r0,
6013   },
6014   {
6015     ARRAY_SIZE(kInstruction_add_lt_r12_r11_r6_ASR_r11),
6016     kInstruction_add_lt_r12_r11_r6_ASR_r11,
6017   },
6018   {
6019     ARRAY_SIZE(kInstruction_add_ge_r2_r1_r13_LSL_r14),
6020     kInstruction_add_ge_r2_r1_r13_LSL_r14,
6021   },
6022   {
6023     ARRAY_SIZE(kInstruction_add_ge_r6_r4_r7_ROR_r9),
6024     kInstruction_add_ge_r6_r4_r7_ROR_r9,
6025   },
6026   {
6027     ARRAY_SIZE(kInstruction_add_mi_r7_r5_r1_LSL_r3),
6028     kInstruction_add_mi_r7_r5_r1_LSL_r3,
6029   },
6030   {
6031     ARRAY_SIZE(kInstruction_add_le_r0_r2_r8_ASR_r13),
6032     kInstruction_add_le_r0_r2_r8_ASR_r13,
6033   },
6034   {
6035     ARRAY_SIZE(kInstruction_add_vc_r0_r5_r12_LSR_r5),
6036     kInstruction_add_vc_r0_r5_r12_LSR_r5,
6037   },
6038   {
6039     ARRAY_SIZE(kInstruction_add_cs_r10_r10_r14_LSL_r11),
6040     kInstruction_add_cs_r10_r10_r14_LSL_r11,
6041   },
6042   {
6043     ARRAY_SIZE(kInstruction_add_hi_r12_r1_r6_ASR_r14),
6044     kInstruction_add_hi_r12_r1_r6_ASR_r14,
6045   },
6046   {
6047     ARRAY_SIZE(kInstruction_add_vc_r6_r8_r9_LSR_r5),
6048     kInstruction_add_vc_r6_r8_r9_LSR_r5,
6049   },
6050   {
6051     ARRAY_SIZE(kInstruction_add_mi_r7_r2_r4_ASR_r4),
6052     kInstruction_add_mi_r7_r2_r4_ASR_r4,
6053   },
6054   {
6055     ARRAY_SIZE(kInstruction_add_pl_r7_r6_r4_ROR_r12),
6056     kInstruction_add_pl_r7_r6_r4_ROR_r12,
6057   },
6058   {
6059     ARRAY_SIZE(kInstruction_add_ge_r0_r7_r8_LSR_r11),
6060     kInstruction_add_ge_r0_r7_r8_LSR_r11,
6061   },
6062   {
6063     ARRAY_SIZE(kInstruction_add_cc_r8_r14_r14_LSR_r14),
6064     kInstruction_add_cc_r8_r14_r14_LSR_r14,
6065   },
6066   {
6067     ARRAY_SIZE(kInstruction_add_ne_r10_r7_r10_LSL_r3),
6068     kInstruction_add_ne_r10_r7_r10_LSL_r3,
6069   },
6070   {
6071     ARRAY_SIZE(kInstruction_add_hi_r2_r11_r11_LSL_r10),
6072     kInstruction_add_hi_r2_r11_r11_LSL_r10,
6073   },
6074   {
6075     ARRAY_SIZE(kInstruction_add_eq_r7_r7_r3_LSR_r12),
6076     kInstruction_add_eq_r7_r7_r3_LSR_r12,
6077   },
6078   {
6079     ARRAY_SIZE(kInstruction_add_al_r7_r1_r12_LSR_r5),
6080     kInstruction_add_al_r7_r1_r12_LSR_r5,
6081   },
6082   {
6083     ARRAY_SIZE(kInstruction_add_ge_r10_r3_r7_LSL_r0),
6084     kInstruction_add_ge_r10_r3_r7_LSL_r0,
6085   },
6086   {
6087     ARRAY_SIZE(kInstruction_add_ge_r6_r1_r6_LSL_r5),
6088     kInstruction_add_ge_r6_r1_r6_LSL_r5,
6089   },
6090   {
6091     ARRAY_SIZE(kInstruction_add_al_r3_r1_r0_LSL_r13),
6092     kInstruction_add_al_r3_r1_r0_LSL_r13,
6093   },
6094   {
6095     ARRAY_SIZE(kInstruction_add_eq_r4_r8_r0_ASR_r0),
6096     kInstruction_add_eq_r4_r8_r0_ASR_r0,
6097   },
6098   {
6099     ARRAY_SIZE(kInstruction_add_cs_r8_r6_r6_LSL_r7),
6100     kInstruction_add_cs_r8_r6_r6_LSL_r7,
6101   },
6102   {
6103     ARRAY_SIZE(kInstruction_add_vs_r5_r9_r2_ASR_r6),
6104     kInstruction_add_vs_r5_r9_r2_ASR_r6,
6105   },
6106   {
6107     ARRAY_SIZE(kInstruction_add_lt_r1_r5_r2_ASR_r0),
6108     kInstruction_add_lt_r1_r5_r2_ASR_r0,
6109   },
6110   {
6111     ARRAY_SIZE(kInstruction_add_eq_r8_r14_r1_ASR_r2),
6112     kInstruction_add_eq_r8_r14_r1_ASR_r2,
6113   },
6114   {
6115     ARRAY_SIZE(kInstruction_add_mi_r6_r13_r12_LSL_r2),
6116     kInstruction_add_mi_r6_r13_r12_LSL_r2,
6117   },
6118   {
6119     ARRAY_SIZE(kInstruction_add_mi_r13_r4_r0_ROR_r1),
6120     kInstruction_add_mi_r13_r4_r0_ROR_r1,
6121   },
6122   {
6123     ARRAY_SIZE(kInstruction_add_cs_r7_r2_r1_ASR_r10),
6124     kInstruction_add_cs_r7_r2_r1_ASR_r10,
6125   },
6126   {
6127     ARRAY_SIZE(kInstruction_add_ge_r9_r4_r3_ASR_r5),
6128     kInstruction_add_ge_r9_r4_r3_ASR_r5,
6129   },
6130   {
6131     ARRAY_SIZE(kInstruction_add_gt_r7_r1_r12_LSL_r7),
6132     kInstruction_add_gt_r7_r1_r12_LSL_r7,
6133   },
6134   {
6135     ARRAY_SIZE(kInstruction_add_hi_r4_r5_r4_LSL_r11),
6136     kInstruction_add_hi_r4_r5_r4_LSL_r11,
6137   },
6138   {
6139     ARRAY_SIZE(kInstruction_add_cc_r13_r14_r9_LSL_r14),
6140     kInstruction_add_cc_r13_r14_r9_LSL_r14,
6141   },
6142   {
6143     ARRAY_SIZE(kInstruction_add_cs_r12_r8_r14_ROR_r12),
6144     kInstruction_add_cs_r12_r8_r14_ROR_r12,
6145   },
6146   {
6147     ARRAY_SIZE(kInstruction_add_vc_r12_r11_r10_ROR_r4),
6148     kInstruction_add_vc_r12_r11_r10_ROR_r4,
6149   },
6150   {
6151     ARRAY_SIZE(kInstruction_add_ge_r14_r13_r4_ROR_r11),
6152     kInstruction_add_ge_r14_r13_r4_ROR_r11,
6153   },
6154   {
6155     ARRAY_SIZE(kInstruction_add_le_r3_r5_r2_ROR_r6),
6156     kInstruction_add_le_r3_r5_r2_ROR_r6,
6157   },
6158   {
6159     ARRAY_SIZE(kInstruction_add_eq_r3_r4_r13_ASR_r0),
6160     kInstruction_add_eq_r3_r4_r13_ASR_r0,
6161   },
6162   {
6163     ARRAY_SIZE(kInstruction_add_vc_r7_r6_r3_ASR_r11),
6164     kInstruction_add_vc_r7_r6_r3_ASR_r11,
6165   },
6166   {
6167     ARRAY_SIZE(kInstruction_add_pl_r6_r9_r11_LSL_r8),
6168     kInstruction_add_pl_r6_r9_r11_LSL_r8,
6169   },
6170   {
6171     ARRAY_SIZE(kInstruction_add_vc_r11_r14_r13_ASR_r4),
6172     kInstruction_add_vc_r11_r14_r13_ASR_r4,
6173   },
6174   {
6175     ARRAY_SIZE(kInstruction_add_cs_r4_r11_r3_LSR_r7),
6176     kInstruction_add_cs_r4_r11_r3_LSR_r7,
6177   },
6178   {
6179     ARRAY_SIZE(kInstruction_add_ge_r5_r7_r3_ASR_r8),
6180     kInstruction_add_ge_r5_r7_r3_ASR_r8,
6181   },
6182   {
6183     ARRAY_SIZE(kInstruction_add_vc_r5_r7_r10_ROR_r9),
6184     kInstruction_add_vc_r5_r7_r10_ROR_r9,
6185   },
6186   {
6187     ARRAY_SIZE(kInstruction_add_gt_r7_r12_r2_LSR_r5),
6188     kInstruction_add_gt_r7_r12_r2_LSR_r5,
6189   },
6190   {
6191     ARRAY_SIZE(kInstruction_add_mi_r14_r2_r6_LSL_r8),
6192     kInstruction_add_mi_r14_r2_r6_LSL_r8,
6193   },
6194   {
6195     ARRAY_SIZE(kInstruction_add_hi_r0_r2_r11_ASR_r1),
6196     kInstruction_add_hi_r0_r2_r11_ASR_r1,
6197   },
6198   {
6199     ARRAY_SIZE(kInstruction_add_al_r13_r7_r4_ASR_r5),
6200     kInstruction_add_al_r13_r7_r4_ASR_r5,
6201   },
6202   {
6203     ARRAY_SIZE(kInstruction_add_le_r3_r4_r7_LSR_r14),
6204     kInstruction_add_le_r3_r4_r7_LSR_r14,
6205   },
6206   {
6207     ARRAY_SIZE(kInstruction_add_lt_r4_r10_r8_LSR_r5),
6208     kInstruction_add_lt_r4_r10_r8_LSR_r5,
6209   },
6210   {
6211     ARRAY_SIZE(kInstruction_add_vc_r1_r1_r8_ROR_r14),
6212     kInstruction_add_vc_r1_r1_r8_ROR_r14,
6213   },
6214   {
6215     ARRAY_SIZE(kInstruction_add_le_r3_r10_r3_ROR_r0),
6216     kInstruction_add_le_r3_r10_r3_ROR_r0,
6217   },
6218   {
6219     ARRAY_SIZE(kInstruction_add_ne_r4_r11_r7_ASR_r6),
6220     kInstruction_add_ne_r4_r11_r7_ASR_r6,
6221   },
6222   {
6223     ARRAY_SIZE(kInstruction_add_lt_r9_r10_r6_LSR_r1),
6224     kInstruction_add_lt_r9_r10_r6_LSR_r1,
6225   },
6226   {
6227     ARRAY_SIZE(kInstruction_add_ne_r9_r12_r8_LSR_r6),
6228     kInstruction_add_ne_r9_r12_r8_LSR_r6,
6229   },
6230   {
6231     ARRAY_SIZE(kInstruction_add_ne_r7_r6_r8_ASR_r12),
6232     kInstruction_add_ne_r7_r6_r8_ASR_r12,
6233   },
6234   {
6235     ARRAY_SIZE(kInstruction_add_ge_r0_r9_r1_ASR_r11),
6236     kInstruction_add_ge_r0_r9_r1_ASR_r11,
6237   },
6238   {
6239     ARRAY_SIZE(kInstruction_add_vc_r10_r14_r8_ASR_r11),
6240     kInstruction_add_vc_r10_r14_r8_ASR_r11,
6241   },
6242   {
6243     ARRAY_SIZE(kInstruction_add_ge_r6_r1_r14_ROR_r4),
6244     kInstruction_add_ge_r6_r1_r14_ROR_r4,
6245   },
6246   {
6247     ARRAY_SIZE(kInstruction_add_cs_r12_r2_r4_ROR_r13),
6248     kInstruction_add_cs_r12_r2_r4_ROR_r13,
6249   },
6250   {
6251     ARRAY_SIZE(kInstruction_add_hi_r9_r8_r5_ASR_r3),
6252     kInstruction_add_hi_r9_r8_r5_ASR_r3,
6253   },
6254   {
6255     ARRAY_SIZE(kInstruction_add_ge_r0_r3_r9_ASR_r7),
6256     kInstruction_add_ge_r0_r3_r9_ASR_r7,
6257   },
6258   {
6259     ARRAY_SIZE(kInstruction_add_le_r14_r6_r9_ASR_r5),
6260     kInstruction_add_le_r14_r6_r9_ASR_r5,
6261   },
6262   {
6263     ARRAY_SIZE(kInstruction_add_hi_r2_r3_r6_LSR_r3),
6264     kInstruction_add_hi_r2_r3_r6_LSR_r3,
6265   },
6266   {
6267     ARRAY_SIZE(kInstruction_add_le_r4_r8_r2_ASR_r3),
6268     kInstruction_add_le_r4_r8_r2_ASR_r3,
6269   },
6270   {
6271     ARRAY_SIZE(kInstruction_add_vs_r5_r9_r2_LSR_r5),
6272     kInstruction_add_vs_r5_r9_r2_LSR_r5,
6273   },
6274   {
6275     ARRAY_SIZE(kInstruction_add_vs_r7_r11_r6_ASR_r3),
6276     kInstruction_add_vs_r7_r11_r6_ASR_r3,
6277   },
6278   {
6279     ARRAY_SIZE(kInstruction_add_gt_r13_r11_r14_ROR_r1),
6280     kInstruction_add_gt_r13_r11_r14_ROR_r1,
6281   },
6282   {
6283     ARRAY_SIZE(kInstruction_add_al_r7_r3_r7_LSR_r12),
6284     kInstruction_add_al_r7_r3_r7_LSR_r12,
6285   },
6286   {
6287     ARRAY_SIZE(kInstruction_add_cs_r10_r9_r4_LSR_r5),
6288     kInstruction_add_cs_r10_r9_r4_LSR_r5,
6289   },
6290   {
6291     ARRAY_SIZE(kInstruction_add_ls_r12_r10_r8_LSR_r8),
6292     kInstruction_add_ls_r12_r10_r8_LSR_r8,
6293   },
6294   {
6295     ARRAY_SIZE(kInstruction_add_lt_r14_r14_r13_LSR_r10),
6296     kInstruction_add_lt_r14_r14_r13_LSR_r10,
6297   },
6298   {
6299     ARRAY_SIZE(kInstruction_add_vc_r3_r4_r7_ROR_r2),
6300     kInstruction_add_vc_r3_r4_r7_ROR_r2,
6301   },
6302   {
6303     ARRAY_SIZE(kInstruction_add_cc_r14_r11_r0_ASR_r9),
6304     kInstruction_add_cc_r14_r11_r0_ASR_r9,
6305   },
6306   {
6307     ARRAY_SIZE(kInstruction_add_eq_r3_r11_r14_ASR_r13),
6308     kInstruction_add_eq_r3_r11_r14_ASR_r13,
6309   },
6310   {
6311     ARRAY_SIZE(kInstruction_add_mi_r13_r1_r11_ROR_r7),
6312     kInstruction_add_mi_r13_r1_r11_ROR_r7,
6313   },
6314   {
6315     ARRAY_SIZE(kInstruction_add_al_r9_r2_r12_ASR_r12),
6316     kInstruction_add_al_r9_r2_r12_ASR_r12,
6317   },
6318   {
6319     ARRAY_SIZE(kInstruction_add_ls_r5_r10_r11_LSL_r10),
6320     kInstruction_add_ls_r5_r10_r11_LSL_r10,
6321   },
6322   {
6323     ARRAY_SIZE(kInstruction_add_gt_r10_r1_r0_LSL_r8),
6324     kInstruction_add_gt_r10_r1_r0_LSL_r8,
6325   },
6326   {
6327     ARRAY_SIZE(kInstruction_add_hi_r13_r1_r4_LSL_r9),
6328     kInstruction_add_hi_r13_r1_r4_LSL_r9,
6329   },
6330   {
6331     ARRAY_SIZE(kInstruction_add_ls_r7_r9_r0_ASR_r4),
6332     kInstruction_add_ls_r7_r9_r0_ASR_r4,
6333   },
6334   {
6335     ARRAY_SIZE(kInstruction_add_ls_r12_r7_r9_LSR_r1),
6336     kInstruction_add_ls_r12_r7_r9_LSR_r1,
6337   },
6338   {
6339     ARRAY_SIZE(kInstruction_add_mi_r0_r14_r7_LSL_r8),
6340     kInstruction_add_mi_r0_r14_r7_LSL_r8,
6341   },
6342   {
6343     ARRAY_SIZE(kInstruction_add_ge_r5_r0_r13_ROR_r12),
6344     kInstruction_add_ge_r5_r0_r13_ROR_r12,
6345   },
6346   {
6347     ARRAY_SIZE(kInstruction_add_lt_r5_r11_r1_LSL_r9),
6348     kInstruction_add_lt_r5_r11_r1_LSL_r9,
6349   },
6350   {
6351     ARRAY_SIZE(kInstruction_add_eq_r10_r13_r2_ROR_r11),
6352     kInstruction_add_eq_r10_r13_r2_ROR_r11,
6353   },
6354   {
6355     ARRAY_SIZE(kInstruction_add_vc_r2_r11_r0_ASR_r2),
6356     kInstruction_add_vc_r2_r11_r0_ASR_r2,
6357   },
6358   {
6359     ARRAY_SIZE(kInstruction_add_eq_r7_r7_r3_ASR_r8),
6360     kInstruction_add_eq_r7_r7_r3_ASR_r8,
6361   },
6362   {
6363     ARRAY_SIZE(kInstruction_add_cs_r9_r10_r0_LSL_r3),
6364     kInstruction_add_cs_r9_r10_r0_LSL_r3,
6365   },
6366   {
6367     ARRAY_SIZE(kInstruction_add_gt_r12_r14_r9_ASR_r0),
6368     kInstruction_add_gt_r12_r14_r9_ASR_r0,
6369   },
6370   {
6371     ARRAY_SIZE(kInstruction_add_vc_r6_r5_r0_ROR_r7),
6372     kInstruction_add_vc_r6_r5_r0_ROR_r7,
6373   },
6374   {
6375     ARRAY_SIZE(kInstruction_add_cs_r4_r14_r0_LSL_r12),
6376     kInstruction_add_cs_r4_r14_r0_LSL_r12,
6377   },
6378   {
6379     ARRAY_SIZE(kInstruction_add_ge_r12_r3_r0_ASR_r1),
6380     kInstruction_add_ge_r12_r3_r0_ASR_r1,
6381   },
6382   {
6383     ARRAY_SIZE(kInstruction_add_al_r12_r4_r12_LSR_r12),
6384     kInstruction_add_al_r12_r4_r12_LSR_r12,
6385   },
6386   {
6387     ARRAY_SIZE(kInstruction_add_vs_r7_r12_r4_LSR_r7),
6388     kInstruction_add_vs_r7_r12_r4_LSR_r7,
6389   },
6390   {
6391     ARRAY_SIZE(kInstruction_add_hi_r14_r6_r10_LSR_r3),
6392     kInstruction_add_hi_r14_r6_r10_LSR_r3,
6393   },
6394   {
6395     ARRAY_SIZE(kInstruction_add_gt_r6_r9_r13_ROR_r0),
6396     kInstruction_add_gt_r6_r9_r13_ROR_r0,
6397   },
6398   {
6399     ARRAY_SIZE(kInstruction_add_le_r11_r11_r14_LSR_r13),
6400     kInstruction_add_le_r11_r11_r14_LSR_r13,
6401   },
6402   {
6403     ARRAY_SIZE(kInstruction_add_hi_r10_r7_r5_ROR_r0),
6404     kInstruction_add_hi_r10_r7_r5_ROR_r0,
6405   },
6406   {
6407     ARRAY_SIZE(kInstruction_add_le_r9_r1_r6_ASR_r11),
6408     kInstruction_add_le_r9_r1_r6_ASR_r11,
6409   },
6410   {
6411     ARRAY_SIZE(kInstruction_add_gt_r8_r2_r9_LSL_r14),
6412     kInstruction_add_gt_r8_r2_r9_LSL_r14,
6413   },
6414   {
6415     ARRAY_SIZE(kInstruction_add_le_r8_r3_r13_ASR_r0),
6416     kInstruction_add_le_r8_r3_r13_ASR_r0,
6417   },
6418   {
6419     ARRAY_SIZE(kInstruction_add_ne_r3_r6_r12_LSR_r11),
6420     kInstruction_add_ne_r3_r6_r12_LSR_r11,
6421   },
6422   {
6423     ARRAY_SIZE(kInstruction_add_vs_r9_r13_r5_ASR_r1),
6424     kInstruction_add_vs_r9_r13_r5_ASR_r1,
6425   },
6426   {
6427     ARRAY_SIZE(kInstruction_add_al_r1_r12_r2_LSR_r4),
6428     kInstruction_add_al_r1_r12_r2_LSR_r4,
6429   },
6430   {
6431     ARRAY_SIZE(kInstruction_add_eq_r9_r12_r5_ROR_r12),
6432     kInstruction_add_eq_r9_r12_r5_ROR_r12,
6433   },
6434   {
6435     ARRAY_SIZE(kInstruction_add_pl_r4_r4_r14_LSR_r6),
6436     kInstruction_add_pl_r4_r4_r14_LSR_r6,
6437   },
6438   {
6439     ARRAY_SIZE(kInstruction_add_lt_r12_r12_r2_LSL_r11),
6440     kInstruction_add_lt_r12_r12_r2_LSL_r11,
6441   },
6442   {
6443     ARRAY_SIZE(kInstruction_add_al_r5_r0_r2_ROR_r1),
6444     kInstruction_add_al_r5_r0_r2_ROR_r1,
6445   },
6446   {
6447     ARRAY_SIZE(kInstruction_add_gt_r6_r4_r8_LSL_r1),
6448     kInstruction_add_gt_r6_r4_r8_LSL_r1,
6449   },
6450   {
6451     ARRAY_SIZE(kInstruction_add_ne_r1_r1_r10_LSR_r3),
6452     kInstruction_add_ne_r1_r1_r10_LSR_r3,
6453   },
6454   {
6455     ARRAY_SIZE(kInstruction_add_hi_r14_r11_r5_LSR_r4),
6456     kInstruction_add_hi_r14_r11_r5_LSR_r4,
6457   },
6458   {
6459     ARRAY_SIZE(kInstruction_add_al_r5_r13_r12_LSR_r14),
6460     kInstruction_add_al_r5_r13_r12_LSR_r14,
6461   },
6462   {
6463     ARRAY_SIZE(kInstruction_add_cc_r6_r6_r12_ROR_r7),
6464     kInstruction_add_cc_r6_r6_r12_ROR_r7,
6465   },
6466   {
6467     ARRAY_SIZE(kInstruction_add_ls_r4_r11_r7_ROR_r2),
6468     kInstruction_add_ls_r4_r11_r7_ROR_r2,
6469   },
6470   {
6471     ARRAY_SIZE(kInstruction_add_eq_r7_r12_r0_LSL_r12),
6472     kInstruction_add_eq_r7_r12_r0_LSL_r12,
6473   },
6474   {
6475     ARRAY_SIZE(kInstruction_add_cs_r11_r9_r2_ASR_r13),
6476     kInstruction_add_cs_r11_r9_r2_ASR_r13,
6477   },
6478   {
6479     ARRAY_SIZE(kInstruction_add_ls_r5_r13_r13_LSL_r0),
6480     kInstruction_add_ls_r5_r13_r13_LSL_r0,
6481   },
6482   {
6483     ARRAY_SIZE(kInstruction_add_hi_r13_r13_r6_LSR_r9),
6484     kInstruction_add_hi_r13_r13_r6_LSR_r9,
6485   },
6486   {
6487     ARRAY_SIZE(kInstruction_add_eq_r7_r14_r10_LSR_r2),
6488     kInstruction_add_eq_r7_r14_r10_LSR_r2,
6489   },
6490   {
6491     ARRAY_SIZE(kInstruction_add_ne_r2_r12_r0_LSR_r12),
6492     kInstruction_add_ne_r2_r12_r0_LSR_r12,
6493   },
6494   {
6495     ARRAY_SIZE(kInstruction_add_pl_r11_r0_r14_ROR_r14),
6496     kInstruction_add_pl_r11_r0_r14_ROR_r14,
6497   },
6498   {
6499     ARRAY_SIZE(kInstruction_add_ge_r14_r11_r0_ASR_r0),
6500     kInstruction_add_ge_r14_r11_r0_ASR_r0,
6501   },
6502   {
6503     ARRAY_SIZE(kInstruction_add_ne_r7_r3_r11_ASR_r4),
6504     kInstruction_add_ne_r7_r3_r11_ASR_r4,
6505   },
6506   {
6507     ARRAY_SIZE(kInstruction_add_eq_r0_r11_r4_LSR_r1),
6508     kInstruction_add_eq_r0_r11_r4_LSR_r1,
6509   },
6510   {
6511     ARRAY_SIZE(kInstruction_add_cs_r5_r2_r5_ROR_r10),
6512     kInstruction_add_cs_r5_r2_r5_ROR_r10,
6513   },
6514   {
6515     ARRAY_SIZE(kInstruction_add_eq_r9_r10_r10_LSR_r0),
6516     kInstruction_add_eq_r9_r10_r10_LSR_r0,
6517   },
6518   {
6519     ARRAY_SIZE(kInstruction_add_vc_r2_r0_r11_ROR_r11),
6520     kInstruction_add_vc_r2_r0_r11_ROR_r11,
6521   },
6522   {
6523     ARRAY_SIZE(kInstruction_add_pl_r14_r2_r1_ROR_r8),
6524     kInstruction_add_pl_r14_r2_r1_ROR_r8,
6525   },
6526   {
6527     ARRAY_SIZE(kInstruction_add_hi_r13_r1_r14_LSR_r5),
6528     kInstruction_add_hi_r13_r1_r14_LSR_r5,
6529   },
6530   {
6531     ARRAY_SIZE(kInstruction_add_ls_r9_r2_r13_LSR_r14),
6532     kInstruction_add_ls_r9_r2_r13_LSR_r14,
6533   },
6534   {
6535     ARRAY_SIZE(kInstruction_add_le_r1_r12_r7_ROR_r1),
6536     kInstruction_add_le_r1_r12_r7_ROR_r1,
6537   },
6538   {
6539     ARRAY_SIZE(kInstruction_add_mi_r10_r4_r6_LSR_r5),
6540     kInstruction_add_mi_r10_r4_r6_LSR_r5,
6541   },
6542   {
6543     ARRAY_SIZE(kInstruction_add_al_r11_r7_r7_LSR_r11),
6544     kInstruction_add_al_r11_r7_r7_LSR_r11,
6545   },
6546   {
6547     ARRAY_SIZE(kInstruction_add_lt_r4_r2_r6_ROR_r1),
6548     kInstruction_add_lt_r4_r2_r6_ROR_r1,
6549   },
6550   {
6551     ARRAY_SIZE(kInstruction_add_vc_r12_r3_r7_LSL_r5),
6552     kInstruction_add_vc_r12_r3_r7_LSL_r5,
6553   },
6554   {
6555     ARRAY_SIZE(kInstruction_add_ge_r10_r7_r2_ROR_r0),
6556     kInstruction_add_ge_r10_r7_r2_ROR_r0,
6557   },
6558   {
6559     ARRAY_SIZE(kInstruction_add_lt_r1_r6_r0_LSR_r4),
6560     kInstruction_add_lt_r1_r6_r0_LSR_r4,
6561   },
6562   {
6563     ARRAY_SIZE(kInstruction_add_eq_r11_r2_r11_ROR_r3),
6564     kInstruction_add_eq_r11_r2_r11_ROR_r3,
6565   },
6566   {
6567     ARRAY_SIZE(kInstruction_add_ls_r1_r2_r11_LSL_r6),
6568     kInstruction_add_ls_r1_r2_r11_LSL_r6,
6569   },
6570   {
6571     ARRAY_SIZE(kInstruction_add_al_r4_r5_r10_LSR_r13),
6572     kInstruction_add_al_r4_r5_r10_LSR_r13,
6573   },
6574   {
6575     ARRAY_SIZE(kInstruction_add_ls_r5_r3_r12_LSR_r10),
6576     kInstruction_add_ls_r5_r3_r12_LSR_r10,
6577   },
6578   {
6579     ARRAY_SIZE(kInstruction_add_hi_r5_r11_r9_LSL_r14),
6580     kInstruction_add_hi_r5_r11_r9_LSL_r14,
6581   },
6582   {
6583     ARRAY_SIZE(kInstruction_add_le_r0_r8_r14_LSL_r14),
6584     kInstruction_add_le_r0_r8_r14_LSL_r14,
6585   },
6586   {
6587     ARRAY_SIZE(kInstruction_add_vs_r10_r10_r2_LSR_r8),
6588     kInstruction_add_vs_r10_r10_r2_LSR_r8,
6589   },
6590   {
6591     ARRAY_SIZE(kInstruction_add_lt_r1_r7_r14_LSR_r1),
6592     kInstruction_add_lt_r1_r7_r14_LSR_r1,
6593   },
6594   {
6595     ARRAY_SIZE(kInstruction_add_al_r1_r2_r8_LSL_r1),
6596     kInstruction_add_al_r1_r2_r8_LSL_r1,
6597   },
6598   {
6599     ARRAY_SIZE(kInstruction_add_vc_r9_r14_r2_ASR_r7),
6600     kInstruction_add_vc_r9_r14_r2_ASR_r7,
6601   },
6602   {
6603     ARRAY_SIZE(kInstruction_add_eq_r8_r14_r12_LSL_r11),
6604     kInstruction_add_eq_r8_r14_r12_LSL_r11,
6605   },
6606   {
6607     ARRAY_SIZE(kInstruction_add_cc_r13_r2_r8_ASR_r9),
6608     kInstruction_add_cc_r13_r2_r8_ASR_r9,
6609   },
6610   {
6611     ARRAY_SIZE(kInstruction_add_cc_r13_r4_r1_ASR_r8),
6612     kInstruction_add_cc_r13_r4_r1_ASR_r8,
6613   },
6614   {
6615     ARRAY_SIZE(kInstruction_add_ne_r14_r14_r3_ASR_r0),
6616     kInstruction_add_ne_r14_r14_r3_ASR_r0,
6617   },
6618   {
6619     ARRAY_SIZE(kInstruction_add_mi_r12_r9_r5_ASR_r10),
6620     kInstruction_add_mi_r12_r9_r5_ASR_r10,
6621   },
6622   {
6623     ARRAY_SIZE(kInstruction_add_ne_r10_r12_r0_ASR_r10),
6624     kInstruction_add_ne_r10_r12_r0_ASR_r10,
6625   },
6626   {
6627     ARRAY_SIZE(kInstruction_add_gt_r1_r6_r10_LSL_r2),
6628     kInstruction_add_gt_r1_r6_r10_LSL_r2,
6629   },
6630   {
6631     ARRAY_SIZE(kInstruction_add_vs_r0_r6_r6_ASR_r5),
6632     kInstruction_add_vs_r0_r6_r6_ASR_r5,
6633   },
6634   {
6635     ARRAY_SIZE(kInstruction_add_mi_r6_r12_r13_LSR_r9),
6636     kInstruction_add_mi_r6_r12_r13_LSR_r9,
6637   },
6638   {
6639     ARRAY_SIZE(kInstruction_add_lt_r13_r11_r4_LSL_r1),
6640     kInstruction_add_lt_r13_r11_r4_LSL_r1,
6641   },
6642   {
6643     ARRAY_SIZE(kInstruction_add_cs_r12_r11_r4_LSL_r0),
6644     kInstruction_add_cs_r12_r11_r4_LSL_r0,
6645   },
6646   {
6647     ARRAY_SIZE(kInstruction_add_cs_r5_r1_r3_LSL_r3),
6648     kInstruction_add_cs_r5_r1_r3_LSL_r3,
6649   },
6650   {
6651     ARRAY_SIZE(kInstruction_add_ls_r0_r1_r12_LSR_r7),
6652     kInstruction_add_ls_r0_r1_r12_LSR_r7,
6653   },
6654   {
6655     ARRAY_SIZE(kInstruction_add_al_r14_r14_r4_LSL_r2),
6656     kInstruction_add_al_r14_r14_r4_LSL_r2,
6657   },
6658   {
6659     ARRAY_SIZE(kInstruction_add_hi_r5_r12_r10_ASR_r1),
6660     kInstruction_add_hi_r5_r12_r10_ASR_r1,
6661   },
6662   {
6663     ARRAY_SIZE(kInstruction_add_pl_r11_r5_r2_LSL_r7),
6664     kInstruction_add_pl_r11_r5_r2_LSL_r7,
6665   },
6666   {
6667     ARRAY_SIZE(kInstruction_add_ge_r0_r4_r0_ASR_r8),
6668     kInstruction_add_ge_r0_r4_r0_ASR_r8,
6669   },
6670   {
6671     ARRAY_SIZE(kInstruction_add_cc_r11_r6_r12_LSR_r5),
6672     kInstruction_add_cc_r11_r6_r12_LSR_r5,
6673   },
6674   {
6675     ARRAY_SIZE(kInstruction_add_cs_r12_r11_r0_ASR_r14),
6676     kInstruction_add_cs_r12_r11_r0_ASR_r14,
6677   },
6678   {
6679     ARRAY_SIZE(kInstruction_add_hi_r6_r2_r3_LSL_r10),
6680     kInstruction_add_hi_r6_r2_r3_LSL_r10,
6681   },
6682   {
6683     ARRAY_SIZE(kInstruction_add_cs_r0_r9_r1_LSR_r8),
6684     kInstruction_add_cs_r0_r9_r1_LSR_r8,
6685   },
6686   {
6687     ARRAY_SIZE(kInstruction_add_eq_r6_r5_r1_LSR_r0),
6688     kInstruction_add_eq_r6_r5_r1_LSR_r0,
6689   },
6690   {
6691     ARRAY_SIZE(kInstruction_add_eq_r12_r7_r9_LSR_r1),
6692     kInstruction_add_eq_r12_r7_r9_LSR_r1,
6693   },
6694   {
6695     ARRAY_SIZE(kInstruction_add_pl_r4_r1_r2_LSL_r1),
6696     kInstruction_add_pl_r4_r1_r2_LSL_r1,
6697   },
6698   {
6699     ARRAY_SIZE(kInstruction_add_vc_r2_r0_r6_LSL_r13),
6700     kInstruction_add_vc_r2_r0_r6_LSL_r13,
6701   },
6702   {
6703     ARRAY_SIZE(kInstruction_add_vs_r1_r8_r2_LSR_r12),
6704     kInstruction_add_vs_r1_r8_r2_LSR_r12,
6705   },
6706   {
6707     ARRAY_SIZE(kInstruction_add_eq_r1_r5_r14_LSR_r4),
6708     kInstruction_add_eq_r1_r5_r14_LSR_r4,
6709   },
6710   {
6711     ARRAY_SIZE(kInstruction_add_cs_r5_r12_r8_LSR_r6),
6712     kInstruction_add_cs_r5_r12_r8_LSR_r6,
6713   },
6714   {
6715     ARRAY_SIZE(kInstruction_add_vs_r5_r9_r13_LSL_r10),
6716     kInstruction_add_vs_r5_r9_r13_LSL_r10,
6717   },
6718   {
6719     ARRAY_SIZE(kInstruction_add_le_r14_r14_r12_LSL_r9),
6720     kInstruction_add_le_r14_r14_r12_LSL_r9,
6721   },
6722   {
6723     ARRAY_SIZE(kInstruction_add_cc_r13_r7_r12_LSR_r4),
6724     kInstruction_add_cc_r13_r7_r12_LSR_r4,
6725   },
6726   {
6727     ARRAY_SIZE(kInstruction_add_eq_r13_r2_r0_LSR_r14),
6728     kInstruction_add_eq_r13_r2_r0_LSR_r14,
6729   },
6730   {
6731     ARRAY_SIZE(kInstruction_add_eq_r13_r11_r0_LSL_r2),
6732     kInstruction_add_eq_r13_r11_r0_LSL_r2,
6733   },
6734   {
6735     ARRAY_SIZE(kInstruction_add_al_r7_r2_r13_ROR_r5),
6736     kInstruction_add_al_r7_r2_r13_ROR_r5,
6737   },
6738   {
6739     ARRAY_SIZE(kInstruction_add_vc_r1_r9_r6_LSL_r11),
6740     kInstruction_add_vc_r1_r9_r6_LSL_r11,
6741   },
6742   {
6743     ARRAY_SIZE(kInstruction_add_lt_r1_r0_r0_ROR_r13),
6744     kInstruction_add_lt_r1_r0_r0_ROR_r13,
6745   },
6746   {
6747     ARRAY_SIZE(kInstruction_add_le_r11_r4_r5_ASR_r2),
6748     kInstruction_add_le_r11_r4_r5_ASR_r2,
6749   },
6750   {
6751     ARRAY_SIZE(kInstruction_add_vs_r7_r7_r3_ROR_r1),
6752     kInstruction_add_vs_r7_r7_r3_ROR_r1,
6753   },
6754   {
6755     ARRAY_SIZE(kInstruction_add_ls_r7_r5_r5_ASR_r11),
6756     kInstruction_add_ls_r7_r5_r5_ASR_r11,
6757   },
6758   {
6759     ARRAY_SIZE(kInstruction_add_cc_r7_r10_r8_ROR_r12),
6760     kInstruction_add_cc_r7_r10_r8_ROR_r12,
6761   },
6762   {
6763     ARRAY_SIZE(kInstruction_add_ne_r11_r11_r10_ROR_r11),
6764     kInstruction_add_ne_r11_r11_r10_ROR_r11,
6765   },
6766   {
6767     ARRAY_SIZE(kInstruction_add_gt_r4_r11_r5_ASR_r12),
6768     kInstruction_add_gt_r4_r11_r5_ASR_r12,
6769   },
6770   {
6771     ARRAY_SIZE(kInstruction_add_al_r3_r13_r1_ROR_r8),
6772     kInstruction_add_al_r3_r13_r1_ROR_r8,
6773   },
6774   {
6775     ARRAY_SIZE(kInstruction_add_le_r14_r4_r3_ROR_r10),
6776     kInstruction_add_le_r14_r4_r3_ROR_r10,
6777   },
6778   {
6779     ARRAY_SIZE(kInstruction_add_ls_r9_r2_r13_LSL_r9),
6780     kInstruction_add_ls_r9_r2_r13_LSL_r9,
6781   },
6782   {
6783     ARRAY_SIZE(kInstruction_add_le_r12_r7_r4_ASR_r14),
6784     kInstruction_add_le_r12_r7_r4_ASR_r14,
6785   },
6786   {
6787     ARRAY_SIZE(kInstruction_add_lt_r1_r8_r0_ASR_r3),
6788     kInstruction_add_lt_r1_r8_r0_ASR_r3,
6789   },
6790   {
6791     ARRAY_SIZE(kInstruction_add_ge_r1_r8_r10_ROR_r10),
6792     kInstruction_add_ge_r1_r8_r10_ROR_r10,
6793   },
6794   {
6795     ARRAY_SIZE(kInstruction_add_vc_r6_r1_r14_LSL_r4),
6796     kInstruction_add_vc_r6_r1_r14_LSL_r4,
6797   },
6798   {
6799     ARRAY_SIZE(kInstruction_add_gt_r13_r10_r0_ASR_r9),
6800     kInstruction_add_gt_r13_r10_r0_ASR_r9,
6801   },
6802   {
6803     ARRAY_SIZE(kInstruction_add_ne_r8_r6_r12_LSR_r13),
6804     kInstruction_add_ne_r8_r6_r12_LSR_r13,
6805   },
6806   {
6807     ARRAY_SIZE(kInstruction_add_vc_r2_r6_r8_LSL_r5),
6808     kInstruction_add_vc_r2_r6_r8_LSL_r5,
6809   },
6810   {
6811     ARRAY_SIZE(kInstruction_add_lt_r3_r14_r12_ROR_r0),
6812     kInstruction_add_lt_r3_r14_r12_ROR_r0,
6813   },
6814   {
6815     ARRAY_SIZE(kInstruction_add_hi_r14_r9_r5_LSL_r4),
6816     kInstruction_add_hi_r14_r9_r5_LSL_r4,
6817   },
6818   {
6819     ARRAY_SIZE(kInstruction_add_le_r1_r9_r3_LSL_r1),
6820     kInstruction_add_le_r1_r9_r3_LSL_r1,
6821   },
6822   {
6823     ARRAY_SIZE(kInstruction_add_ne_r1_r1_r9_LSR_r9),
6824     kInstruction_add_ne_r1_r1_r9_LSR_r9,
6825   },
6826   {
6827     ARRAY_SIZE(kInstruction_add_mi_r11_r9_r13_ASR_r1),
6828     kInstruction_add_mi_r11_r9_r13_ASR_r1,
6829   },
6830   {
6831     ARRAY_SIZE(kInstruction_add_hi_r9_r3_r12_ASR_r8),
6832     kInstruction_add_hi_r9_r3_r12_ASR_r8,
6833   },
6834   {
6835     ARRAY_SIZE(kInstruction_add_le_r7_r10_r1_ASR_r12),
6836     kInstruction_add_le_r7_r10_r1_ASR_r12,
6837   },
6838   {
6839     ARRAY_SIZE(kInstruction_add_vs_r12_r4_r1_ASR_r0),
6840     kInstruction_add_vs_r12_r4_r1_ASR_r0,
6841   },
6842   {
6843     ARRAY_SIZE(kInstruction_add_vc_r10_r1_r11_LSL_r3),
6844     kInstruction_add_vc_r10_r1_r11_LSL_r3,
6845   },
6846   {
6847     ARRAY_SIZE(kInstruction_add_cc_r9_r8_r13_ROR_r14),
6848     kInstruction_add_cc_r9_r8_r13_ROR_r14,
6849   },
6850   {
6851     ARRAY_SIZE(kInstruction_add_cs_r12_r9_r11_LSL_r12),
6852     kInstruction_add_cs_r12_r9_r11_LSL_r12,
6853   },
6854   {
6855     ARRAY_SIZE(kInstruction_add_al_r0_r0_r4_ASR_r12),
6856     kInstruction_add_al_r0_r0_r4_ASR_r12,
6857   },
6858   {
6859     ARRAY_SIZE(kInstruction_add_gt_r1_r12_r3_LSR_r11),
6860     kInstruction_add_gt_r1_r12_r3_LSR_r11,
6861   },
6862   {
6863     ARRAY_SIZE(kInstruction_add_hi_r2_r3_r12_LSR_r12),
6864     kInstruction_add_hi_r2_r3_r12_LSR_r12,
6865   },
6866   {
6867     ARRAY_SIZE(kInstruction_add_vs_r7_r4_r8_LSR_r1),
6868     kInstruction_add_vs_r7_r4_r8_LSR_r1,
6869   },
6870   {
6871     ARRAY_SIZE(kInstruction_add_hi_r3_r0_r0_ASR_r1),
6872     kInstruction_add_hi_r3_r0_r0_ASR_r1,
6873   },
6874   {
6875     ARRAY_SIZE(kInstruction_add_mi_r6_r7_r2_ROR_r8),
6876     kInstruction_add_mi_r6_r7_r2_ROR_r8,
6877   },
6878   {
6879     ARRAY_SIZE(kInstruction_add_lt_r5_r8_r10_ASR_r3),
6880     kInstruction_add_lt_r5_r8_r10_ASR_r3,
6881   },
6882   {
6883     ARRAY_SIZE(kInstruction_add_cs_r2_r12_r12_LSR_r1),
6884     kInstruction_add_cs_r2_r12_r12_LSR_r1,
6885   },
6886   {
6887     ARRAY_SIZE(kInstruction_add_eq_r4_r12_r10_LSL_r2),
6888     kInstruction_add_eq_r4_r12_r10_LSL_r2,
6889   },
6890   {
6891     ARRAY_SIZE(kInstruction_add_eq_r14_r3_r7_LSR_r2),
6892     kInstruction_add_eq_r14_r3_r7_LSR_r2,
6893   },
6894   {
6895     ARRAY_SIZE(kInstruction_add_mi_r14_r11_r10_LSL_r0),
6896     kInstruction_add_mi_r14_r11_r10_LSL_r0,
6897   },
6898   {
6899     ARRAY_SIZE(kInstruction_add_ge_r3_r6_r14_LSR_r9),
6900     kInstruction_add_ge_r3_r6_r14_LSR_r9,
6901   },
6902   {
6903     ARRAY_SIZE(kInstruction_add_lt_r9_r9_r6_LSL_r4),
6904     kInstruction_add_lt_r9_r9_r6_LSL_r4,
6905   },
6906   {
6907     ARRAY_SIZE(kInstruction_add_vc_r7_r6_r5_ROR_r7),
6908     kInstruction_add_vc_r7_r6_r5_ROR_r7,
6909   },
6910   {
6911     ARRAY_SIZE(kInstruction_add_al_r10_r7_r4_LSR_r13),
6912     kInstruction_add_al_r10_r7_r4_LSR_r13,
6913   },
6914   {
6915     ARRAY_SIZE(kInstruction_add_vs_r11_r1_r0_LSR_r5),
6916     kInstruction_add_vs_r11_r1_r0_LSR_r5,
6917   },
6918   {
6919     ARRAY_SIZE(kInstruction_add_pl_r5_r3_r14_LSL_r12),
6920     kInstruction_add_pl_r5_r3_r14_LSL_r12,
6921   },
6922   {
6923     ARRAY_SIZE(kInstruction_add_vs_r14_r3_r2_LSL_r4),
6924     kInstruction_add_vs_r14_r3_r2_LSL_r4,
6925   },
6926   {
6927     ARRAY_SIZE(kInstruction_add_hi_r3_r2_r5_LSR_r4),
6928     kInstruction_add_hi_r3_r2_r5_LSR_r4,
6929   },
6930   {
6931     ARRAY_SIZE(kInstruction_add_gt_r12_r2_r9_LSR_r14),
6932     kInstruction_add_gt_r12_r2_r9_LSR_r14,
6933   },
6934   {
6935     ARRAY_SIZE(kInstruction_add_cc_r3_r11_r2_LSR_r12),
6936     kInstruction_add_cc_r3_r11_r2_LSR_r12,
6937   },
6938   {
6939     ARRAY_SIZE(kInstruction_add_gt_r1_r6_r2_LSL_r5),
6940     kInstruction_add_gt_r1_r6_r2_LSL_r5,
6941   },
6942   {
6943     ARRAY_SIZE(kInstruction_add_le_r12_r5_r11_ROR_r11),
6944     kInstruction_add_le_r12_r5_r11_ROR_r11,
6945   },
6946   {
6947     ARRAY_SIZE(kInstruction_add_ge_r13_r14_r11_LSL_r2),
6948     kInstruction_add_ge_r13_r14_r11_LSL_r2,
6949   },
6950   {
6951     ARRAY_SIZE(kInstruction_add_ne_r7_r14_r4_ASR_r12),
6952     kInstruction_add_ne_r7_r14_r4_ASR_r12,
6953   },
6954   {
6955     ARRAY_SIZE(kInstruction_add_vc_r9_r5_r4_LSL_r8),
6956     kInstruction_add_vc_r9_r5_r4_LSL_r8,
6957   },
6958   {
6959     ARRAY_SIZE(kInstruction_add_cc_r7_r3_r3_ASR_r1),
6960     kInstruction_add_cc_r7_r3_r3_ASR_r1,
6961   },
6962   {
6963     ARRAY_SIZE(kInstruction_add_ls_r3_r13_r0_ASR_r1),
6964     kInstruction_add_ls_r3_r13_r0_ASR_r1,
6965   },
6966   {
6967     ARRAY_SIZE(kInstruction_add_lt_r7_r5_r5_ASR_r11),
6968     kInstruction_add_lt_r7_r5_r5_ASR_r11,
6969   },
6970   {
6971     ARRAY_SIZE(kInstruction_add_gt_r3_r6_r13_ASR_r11),
6972     kInstruction_add_gt_r3_r6_r13_ASR_r11,
6973   },
6974   {
6975     ARRAY_SIZE(kInstruction_add_ge_r14_r10_r10_ASR_r10),
6976     kInstruction_add_ge_r14_r10_r10_ASR_r10,
6977   },
6978   {
6979     ARRAY_SIZE(kInstruction_add_ne_r13_r14_r1_ASR_r2),
6980     kInstruction_add_ne_r13_r14_r1_ASR_r2,
6981   },
6982   {
6983     ARRAY_SIZE(kInstruction_add_al_r8_r12_r6_ASR_r7),
6984     kInstruction_add_al_r8_r12_r6_ASR_r7,
6985   },
6986   {
6987     ARRAY_SIZE(kInstruction_add_mi_r2_r7_r7_ROR_r13),
6988     kInstruction_add_mi_r2_r7_r7_ROR_r13,
6989   },
6990   {
6991     ARRAY_SIZE(kInstruction_add_le_r14_r6_r14_ROR_r6),
6992     kInstruction_add_le_r14_r6_r14_ROR_r6,
6993   },
6994   {
6995     ARRAY_SIZE(kInstruction_add_le_r11_r3_r12_LSR_r7),
6996     kInstruction_add_le_r11_r3_r12_LSR_r7,
6997   },
6998   {
6999     ARRAY_SIZE(kInstruction_add_vs_r0_r12_r1_ASR_r2),
7000     kInstruction_add_vs_r0_r12_r1_ASR_r2,
7001   },
7002   {
7003     ARRAY_SIZE(kInstruction_add_vc_r7_r7_r12_LSL_r13),
7004     kInstruction_add_vc_r7_r7_r12_LSL_r13,
7005   },
7006   {
7007     ARRAY_SIZE(kInstruction_add_eq_r6_r3_r8_ASR_r5),
7008     kInstruction_add_eq_r6_r3_r8_ASR_r5,
7009   },
7010   {
7011     ARRAY_SIZE(kInstruction_add_cs_r5_r4_r5_LSL_r11),
7012     kInstruction_add_cs_r5_r4_r5_LSL_r11,
7013   },
7014   {
7015     ARRAY_SIZE(kInstruction_add_lt_r3_r6_r9_ROR_r9),
7016     kInstruction_add_lt_r3_r6_r9_ROR_r9,
7017   },
7018   {
7019     ARRAY_SIZE(kInstruction_add_vs_r14_r14_r13_LSR_r8),
7020     kInstruction_add_vs_r14_r14_r13_LSR_r8,
7021   },
7022   {
7023     ARRAY_SIZE(kInstruction_add_cc_r4_r12_r9_LSL_r10),
7024     kInstruction_add_cc_r4_r12_r9_LSL_r10,
7025   },
7026   {
7027     ARRAY_SIZE(kInstruction_add_gt_r4_r14_r14_ROR_r6),
7028     kInstruction_add_gt_r4_r14_r14_ROR_r6,
7029   },
7030   {
7031     ARRAY_SIZE(kInstruction_add_gt_r8_r9_r10_LSR_r6),
7032     kInstruction_add_gt_r8_r9_r10_LSR_r6,
7033   },
7034   {
7035     ARRAY_SIZE(kInstruction_add_hi_r6_r13_r11_LSL_r7),
7036     kInstruction_add_hi_r6_r13_r11_LSL_r7,
7037   },
7038 };
7039 
7040 #endif  // VIXL_ASSEMBLER_COND_RD_RN_OPERAND_RM_SHIFT_RS_A32_ADD_H_
7041