• Home
  • History
  • Annotate
  • 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_RM_A32_SHSUB8_H_
35  #define VIXL_ASSEMBLER_COND_RD_RN_RM_A32_SHSUB8_H_
36  
37  const byte kInstruction_shsub8_hi_r1_r9_r5[] = {
38    0xf5, 0x1f, 0x39, 0x86 // shsub8 hi r1 r9 r5
39  };
40  const byte kInstruction_shsub8_pl_r8_r6_r2[] = {
41    0xf2, 0x8f, 0x36, 0x56 // shsub8 pl r8 r6 r2
42  };
43  const byte kInstruction_shsub8_hi_r5_r8_r2[] = {
44    0xf2, 0x5f, 0x38, 0x86 // shsub8 hi r5 r8 r2
45  };
46  const byte kInstruction_shsub8_vc_r9_r2_r7[] = {
47    0xf7, 0x9f, 0x32, 0x76 // shsub8 vc r9 r2 r7
48  };
49  const byte kInstruction_shsub8_lt_r4_r6_r3[] = {
50    0xf3, 0x4f, 0x36, 0xb6 // shsub8 lt r4 r6 r3
51  };
52  const byte kInstruction_shsub8_le_r11_r6_r2[] = {
53    0xf2, 0xbf, 0x36, 0xd6 // shsub8 le r11 r6 r2
54  };
55  const byte kInstruction_shsub8_cc_r8_r14_r4[] = {
56    0xf4, 0x8f, 0x3e, 0x36 // shsub8 cc r8 r14 r4
57  };
58  const byte kInstruction_shsub8_le_r5_r14_r6[] = {
59    0xf6, 0x5f, 0x3e, 0xd6 // shsub8 le r5 r14 r6
60  };
61  const byte kInstruction_shsub8_lt_r6_r1_r0[] = {
62    0xf0, 0x6f, 0x31, 0xb6 // shsub8 lt r6 r1 r0
63  };
64  const byte kInstruction_shsub8_lt_r5_r0_r9[] = {
65    0xf9, 0x5f, 0x30, 0xb6 // shsub8 lt r5 r0 r9
66  };
67  const byte kInstruction_shsub8_le_r8_r12_r7[] = {
68    0xf7, 0x8f, 0x3c, 0xd6 // shsub8 le r8 r12 r7
69  };
70  const byte kInstruction_shsub8_eq_r7_r14_r6[] = {
71    0xf6, 0x7f, 0x3e, 0x06 // shsub8 eq r7 r14 r6
72  };
73  const byte kInstruction_shsub8_cs_r7_r4_r6[] = {
74    0xf6, 0x7f, 0x34, 0x26 // shsub8 cs r7 r4 r6
75  };
76  const byte kInstruction_shsub8_gt_r9_r6_r9[] = {
77    0xf9, 0x9f, 0x36, 0xc6 // shsub8 gt r9 r6 r9
78  };
79  const byte kInstruction_shsub8_ne_r13_r9_r1[] = {
80    0xf1, 0xdf, 0x39, 0x16 // shsub8 ne r13 r9 r1
81  };
82  const byte kInstruction_shsub8_ge_r13_r1_r13[] = {
83    0xfd, 0xdf, 0x31, 0xa6 // shsub8 ge r13 r1 r13
84  };
85  const byte kInstruction_shsub8_ls_r8_r10_r2[] = {
86    0xf2, 0x8f, 0x3a, 0x96 // shsub8 ls r8 r10 r2
87  };
88  const byte kInstruction_shsub8_hi_r0_r13_r5[] = {
89    0xf5, 0x0f, 0x3d, 0x86 // shsub8 hi r0 r13 r5
90  };
91  const byte kInstruction_shsub8_pl_r13_r7_r8[] = {
92    0xf8, 0xdf, 0x37, 0x56 // shsub8 pl r13 r7 r8
93  };
94  const byte kInstruction_shsub8_ge_r4_r13_r11[] = {
95    0xfb, 0x4f, 0x3d, 0xa6 // shsub8 ge r4 r13 r11
96  };
97  const byte kInstruction_shsub8_cs_r5_r10_r5[] = {
98    0xf5, 0x5f, 0x3a, 0x26 // shsub8 cs r5 r10 r5
99  };
100  const byte kInstruction_shsub8_cs_r5_r4_r3[] = {
101    0xf3, 0x5f, 0x34, 0x26 // shsub8 cs r5 r4 r3
102  };
103  const byte kInstruction_shsub8_ls_r6_r14_r8[] = {
104    0xf8, 0x6f, 0x3e, 0x96 // shsub8 ls r6 r14 r8
105  };
106  const byte kInstruction_shsub8_vs_r3_r8_r6[] = {
107    0xf6, 0x3f, 0x38, 0x66 // shsub8 vs r3 r8 r6
108  };
109  const byte kInstruction_shsub8_vc_r7_r12_r3[] = {
110    0xf3, 0x7f, 0x3c, 0x76 // shsub8 vc r7 r12 r3
111  };
112  const byte kInstruction_shsub8_ge_r1_r4_r1[] = {
113    0xf1, 0x1f, 0x34, 0xa6 // shsub8 ge r1 r4 r1
114  };
115  const byte kInstruction_shsub8_cc_r4_r7_r10[] = {
116    0xfa, 0x4f, 0x37, 0x36 // shsub8 cc r4 r7 r10
117  };
118  const byte kInstruction_shsub8_cc_r2_r0_r13[] = {
119    0xfd, 0x2f, 0x30, 0x36 // shsub8 cc r2 r0 r13
120  };
121  const byte kInstruction_shsub8_vs_r9_r6_r8[] = {
122    0xf8, 0x9f, 0x36, 0x66 // shsub8 vs r9 r6 r8
123  };
124  const byte kInstruction_shsub8_cs_r14_r11_r13[] = {
125    0xfd, 0xef, 0x3b, 0x26 // shsub8 cs r14 r11 r13
126  };
127  const byte kInstruction_shsub8_pl_r5_r8_r4[] = {
128    0xf4, 0x5f, 0x38, 0x56 // shsub8 pl r5 r8 r4
129  };
130  const byte kInstruction_shsub8_pl_r2_r3_r7[] = {
131    0xf7, 0x2f, 0x33, 0x56 // shsub8 pl r2 r3 r7
132  };
133  const byte kInstruction_shsub8_cs_r7_r12_r14[] = {
134    0xfe, 0x7f, 0x3c, 0x26 // shsub8 cs r7 r12 r14
135  };
136  const byte kInstruction_shsub8_hi_r6_r6_r1[] = {
137    0xf1, 0x6f, 0x36, 0x86 // shsub8 hi r6 r6 r1
138  };
139  const byte kInstruction_shsub8_cc_r6_r9_r6[] = {
140    0xf6, 0x6f, 0x39, 0x36 // shsub8 cc r6 r9 r6
141  };
142  const byte kInstruction_shsub8_ne_r12_r12_r0[] = {
143    0xf0, 0xcf, 0x3c, 0x16 // shsub8 ne r12 r12 r0
144  };
145  const byte kInstruction_shsub8_cc_r9_r3_r8[] = {
146    0xf8, 0x9f, 0x33, 0x36 // shsub8 cc r9 r3 r8
147  };
148  const byte kInstruction_shsub8_mi_r13_r6_r1[] = {
149    0xf1, 0xdf, 0x36, 0x46 // shsub8 mi r13 r6 r1
150  };
151  const byte kInstruction_shsub8_lt_r4_r8_r6[] = {
152    0xf6, 0x4f, 0x38, 0xb6 // shsub8 lt r4 r8 r6
153  };
154  const byte kInstruction_shsub8_hi_r11_r5_r9[] = {
155    0xf9, 0xbf, 0x35, 0x86 // shsub8 hi r11 r5 r9
156  };
157  const byte kInstruction_shsub8_cc_r6_r10_r6[] = {
158    0xf6, 0x6f, 0x3a, 0x36 // shsub8 cc r6 r10 r6
159  };
160  const byte kInstruction_shsub8_eq_r10_r10_r5[] = {
161    0xf5, 0xaf, 0x3a, 0x06 // shsub8 eq r10 r10 r5
162  };
163  const byte kInstruction_shsub8_al_r5_r4_r11[] = {
164    0xfb, 0x5f, 0x34, 0xe6 // shsub8 al r5 r4 r11
165  };
166  const byte kInstruction_shsub8_pl_r11_r11_r2[] = {
167    0xf2, 0xbf, 0x3b, 0x56 // shsub8 pl r11 r11 r2
168  };
169  const byte kInstruction_shsub8_ls_r6_r14_r12[] = {
170    0xfc, 0x6f, 0x3e, 0x96 // shsub8 ls r6 r14 r12
171  };
172  const byte kInstruction_shsub8_vc_r7_r7_r2[] = {
173    0xf2, 0x7f, 0x37, 0x76 // shsub8 vc r7 r7 r2
174  };
175  const byte kInstruction_shsub8_eq_r10_r8_r4[] = {
176    0xf4, 0xaf, 0x38, 0x06 // shsub8 eq r10 r8 r4
177  };
178  const byte kInstruction_shsub8_al_r14_r7_r2[] = {
179    0xf2, 0xef, 0x37, 0xe6 // shsub8 al r14 r7 r2
180  };
181  const byte kInstruction_shsub8_cs_r3_r11_r10[] = {
182    0xfa, 0x3f, 0x3b, 0x26 // shsub8 cs r3 r11 r10
183  };
184  const byte kInstruction_shsub8_ls_r11_r4_r0[] = {
185    0xf0, 0xbf, 0x34, 0x96 // shsub8 ls r11 r4 r0
186  };
187  const byte kInstruction_shsub8_hi_r11_r8_r9[] = {
188    0xf9, 0xbf, 0x38, 0x86 // shsub8 hi r11 r8 r9
189  };
190  const byte kInstruction_shsub8_vs_r2_r14_r13[] = {
191    0xfd, 0x2f, 0x3e, 0x66 // shsub8 vs r2 r14 r13
192  };
193  const byte kInstruction_shsub8_al_r1_r13_r9[] = {
194    0xf9, 0x1f, 0x3d, 0xe6 // shsub8 al r1 r13 r9
195  };
196  const byte kInstruction_shsub8_eq_r3_r9_r13[] = {
197    0xfd, 0x3f, 0x39, 0x06 // shsub8 eq r3 r9 r13
198  };
199  const byte kInstruction_shsub8_ge_r10_r3_r13[] = {
200    0xfd, 0xaf, 0x33, 0xa6 // shsub8 ge r10 r3 r13
201  };
202  const byte kInstruction_shsub8_pl_r8_r5_r10[] = {
203    0xfa, 0x8f, 0x35, 0x56 // shsub8 pl r8 r5 r10
204  };
205  const byte kInstruction_shsub8_vc_r8_r11_r6[] = {
206    0xf6, 0x8f, 0x3b, 0x76 // shsub8 vc r8 r11 r6
207  };
208  const byte kInstruction_shsub8_eq_r0_r0_r5[] = {
209    0xf5, 0x0f, 0x30, 0x06 // shsub8 eq r0 r0 r5
210  };
211  const byte kInstruction_shsub8_ne_r6_r5_r8[] = {
212    0xf8, 0x6f, 0x35, 0x16 // shsub8 ne r6 r5 r8
213  };
214  const byte kInstruction_shsub8_hi_r5_r13_r3[] = {
215    0xf3, 0x5f, 0x3d, 0x86 // shsub8 hi r5 r13 r3
216  };
217  const byte kInstruction_shsub8_ne_r11_r14_r14[] = {
218    0xfe, 0xbf, 0x3e, 0x16 // shsub8 ne r11 r14 r14
219  };
220  const byte kInstruction_shsub8_mi_r1_r0_r6[] = {
221    0xf6, 0x1f, 0x30, 0x46 // shsub8 mi r1 r0 r6
222  };
223  const byte kInstruction_shsub8_le_r14_r8_r2[] = {
224    0xf2, 0xef, 0x38, 0xd6 // shsub8 le r14 r8 r2
225  };
226  const byte kInstruction_shsub8_eq_r9_r6_r5[] = {
227    0xf5, 0x9f, 0x36, 0x06 // shsub8 eq r9 r6 r5
228  };
229  const byte kInstruction_shsub8_eq_r11_r0_r13[] = {
230    0xfd, 0xbf, 0x30, 0x06 // shsub8 eq r11 r0 r13
231  };
232  const byte kInstruction_shsub8_pl_r4_r5_r14[] = {
233    0xfe, 0x4f, 0x35, 0x56 // shsub8 pl r4 r5 r14
234  };
235  const byte kInstruction_shsub8_cs_r13_r5_r13[] = {
236    0xfd, 0xdf, 0x35, 0x26 // shsub8 cs r13 r5 r13
237  };
238  const byte kInstruction_shsub8_mi_r0_r13_r8[] = {
239    0xf8, 0x0f, 0x3d, 0x46 // shsub8 mi r0 r13 r8
240  };
241  const byte kInstruction_shsub8_lt_r2_r13_r3[] = {
242    0xf3, 0x2f, 0x3d, 0xb6 // shsub8 lt r2 r13 r3
243  };
244  const byte kInstruction_shsub8_ls_r8_r1_r11[] = {
245    0xfb, 0x8f, 0x31, 0x96 // shsub8 ls r8 r1 r11
246  };
247  const byte kInstruction_shsub8_vc_r14_r11_r8[] = {
248    0xf8, 0xef, 0x3b, 0x76 // shsub8 vc r14 r11 r8
249  };
250  const byte kInstruction_shsub8_lt_r4_r13_r12[] = {
251    0xfc, 0x4f, 0x3d, 0xb6 // shsub8 lt r4 r13 r12
252  };
253  const byte kInstruction_shsub8_eq_r2_r1_r14[] = {
254    0xfe, 0x2f, 0x31, 0x06 // shsub8 eq r2 r1 r14
255  };
256  const byte kInstruction_shsub8_eq_r9_r4_r14[] = {
257    0xfe, 0x9f, 0x34, 0x06 // shsub8 eq r9 r4 r14
258  };
259  const byte kInstruction_shsub8_hi_r10_r6_r13[] = {
260    0xfd, 0xaf, 0x36, 0x86 // shsub8 hi r10 r6 r13
261  };
262  const byte kInstruction_shsub8_ge_r12_r9_r4[] = {
263    0xf4, 0xcf, 0x39, 0xa6 // shsub8 ge r12 r9 r4
264  };
265  const byte kInstruction_shsub8_le_r9_r11_r14[] = {
266    0xfe, 0x9f, 0x3b, 0xd6 // shsub8 le r9 r11 r14
267  };
268  const byte kInstruction_shsub8_ls_r0_r9_r5[] = {
269    0xf5, 0x0f, 0x39, 0x96 // shsub8 ls r0 r9 r5
270  };
271  const byte kInstruction_shsub8_mi_r2_r3_r8[] = {
272    0xf8, 0x2f, 0x33, 0x46 // shsub8 mi r2 r3 r8
273  };
274  const byte kInstruction_shsub8_ne_r14_r10_r14[] = {
275    0xfe, 0xef, 0x3a, 0x16 // shsub8 ne r14 r10 r14
276  };
277  const byte kInstruction_shsub8_eq_r6_r2_r10[] = {
278    0xfa, 0x6f, 0x32, 0x06 // shsub8 eq r6 r2 r10
279  };
280  const byte kInstruction_shsub8_lt_r11_r0_r12[] = {
281    0xfc, 0xbf, 0x30, 0xb6 // shsub8 lt r11 r0 r12
282  };
283  const byte kInstruction_shsub8_ne_r1_r12_r10[] = {
284    0xfa, 0x1f, 0x3c, 0x16 // shsub8 ne r1 r12 r10
285  };
286  const byte kInstruction_shsub8_cc_r1_r0_r2[] = {
287    0xf2, 0x1f, 0x30, 0x36 // shsub8 cc r1 r0 r2
288  };
289  const byte kInstruction_shsub8_al_r5_r5_r7[] = {
290    0xf7, 0x5f, 0x35, 0xe6 // shsub8 al r5 r5 r7
291  };
292  const byte kInstruction_shsub8_hi_r7_r13_r1[] = {
293    0xf1, 0x7f, 0x3d, 0x86 // shsub8 hi r7 r13 r1
294  };
295  const byte kInstruction_shsub8_cs_r4_r4_r9[] = {
296    0xf9, 0x4f, 0x34, 0x26 // shsub8 cs r4 r4 r9
297  };
298  const byte kInstruction_shsub8_eq_r14_r4_r14[] = {
299    0xfe, 0xef, 0x34, 0x06 // shsub8 eq r14 r4 r14
300  };
301  const byte kInstruction_shsub8_vs_r10_r5_r14[] = {
302    0xfe, 0xaf, 0x35, 0x66 // shsub8 vs r10 r5 r14
303  };
304  const byte kInstruction_shsub8_gt_r4_r3_r11[] = {
305    0xfb, 0x4f, 0x33, 0xc6 // shsub8 gt r4 r3 r11
306  };
307  const byte kInstruction_shsub8_ne_r14_r10_r12[] = {
308    0xfc, 0xef, 0x3a, 0x16 // shsub8 ne r14 r10 r12
309  };
310  const byte kInstruction_shsub8_vs_r2_r11_r0[] = {
311    0xf0, 0x2f, 0x3b, 0x66 // shsub8 vs r2 r11 r0
312  };
313  const byte kInstruction_shsub8_ge_r5_r12_r7[] = {
314    0xf7, 0x5f, 0x3c, 0xa6 // shsub8 ge r5 r12 r7
315  };
316  const byte kInstruction_shsub8_mi_r7_r14_r6[] = {
317    0xf6, 0x7f, 0x3e, 0x46 // shsub8 mi r7 r14 r6
318  };
319  const byte kInstruction_shsub8_gt_r8_r3_r8[] = {
320    0xf8, 0x8f, 0x33, 0xc6 // shsub8 gt r8 r3 r8
321  };
322  const byte kInstruction_shsub8_hi_r9_r14_r3[] = {
323    0xf3, 0x9f, 0x3e, 0x86 // shsub8 hi r9 r14 r3
324  };
325  const byte kInstruction_shsub8_vc_r2_r11_r2[] = {
326    0xf2, 0x2f, 0x3b, 0x76 // shsub8 vc r2 r11 r2
327  };
328  const byte kInstruction_shsub8_hi_r11_r7_r12[] = {
329    0xfc, 0xbf, 0x37, 0x86 // shsub8 hi r11 r7 r12
330  };
331  const byte kInstruction_shsub8_cs_r6_r4_r11[] = {
332    0xfb, 0x6f, 0x34, 0x26 // shsub8 cs r6 r4 r11
333  };
334  const byte kInstruction_shsub8_cs_r12_r5_r9[] = {
335    0xf9, 0xcf, 0x35, 0x26 // shsub8 cs r12 r5 r9
336  };
337  const byte kInstruction_shsub8_ls_r5_r10_r5[] = {
338    0xf5, 0x5f, 0x3a, 0x96 // shsub8 ls r5 r10 r5
339  };
340  const byte kInstruction_shsub8_ls_r0_r9_r13[] = {
341    0xfd, 0x0f, 0x39, 0x96 // shsub8 ls r0 r9 r13
342  };
343  const byte kInstruction_shsub8_lt_r3_r3_r5[] = {
344    0xf5, 0x3f, 0x33, 0xb6 // shsub8 lt r3 r3 r5
345  };
346  const byte kInstruction_shsub8_mi_r0_r12_r8[] = {
347    0xf8, 0x0f, 0x3c, 0x46 // shsub8 mi r0 r12 r8
348  };
349  const byte kInstruction_shsub8_pl_r3_r12_r12[] = {
350    0xfc, 0x3f, 0x3c, 0x56 // shsub8 pl r3 r12 r12
351  };
352  const byte kInstruction_shsub8_eq_r8_r12_r5[] = {
353    0xf5, 0x8f, 0x3c, 0x06 // shsub8 eq r8 r12 r5
354  };
355  const byte kInstruction_shsub8_cc_r7_r8_r1[] = {
356    0xf1, 0x7f, 0x38, 0x36 // shsub8 cc r7 r8 r1
357  };
358  const byte kInstruction_shsub8_hi_r2_r13_r10[] = {
359    0xfa, 0x2f, 0x3d, 0x86 // shsub8 hi r2 r13 r10
360  };
361  const byte kInstruction_shsub8_al_r7_r10_r10[] = {
362    0xfa, 0x7f, 0x3a, 0xe6 // shsub8 al r7 r10 r10
363  };
364  const byte kInstruction_shsub8_vc_r1_r12_r2[] = {
365    0xf2, 0x1f, 0x3c, 0x76 // shsub8 vc r1 r12 r2
366  };
367  const byte kInstruction_shsub8_cc_r8_r5_r8[] = {
368    0xf8, 0x8f, 0x35, 0x36 // shsub8 cc r8 r5 r8
369  };
370  const byte kInstruction_shsub8_ls_r3_r7_r9[] = {
371    0xf9, 0x3f, 0x37, 0x96 // shsub8 ls r3 r7 r9
372  };
373  const byte kInstruction_shsub8_al_r8_r10_r8[] = {
374    0xf8, 0x8f, 0x3a, 0xe6 // shsub8 al r8 r10 r8
375  };
376  const byte kInstruction_shsub8_lt_r4_r12_r10[] = {
377    0xfa, 0x4f, 0x3c, 0xb6 // shsub8 lt r4 r12 r10
378  };
379  const byte kInstruction_shsub8_ge_r10_r5_r11[] = {
380    0xfb, 0xaf, 0x35, 0xa6 // shsub8 ge r10 r5 r11
381  };
382  const byte kInstruction_shsub8_ls_r3_r14_r4[] = {
383    0xf4, 0x3f, 0x3e, 0x96 // shsub8 ls r3 r14 r4
384  };
385  const byte kInstruction_shsub8_hi_r3_r6_r12[] = {
386    0xfc, 0x3f, 0x36, 0x86 // shsub8 hi r3 r6 r12
387  };
388  const byte kInstruction_shsub8_hi_r6_r0_r4[] = {
389    0xf4, 0x6f, 0x30, 0x86 // shsub8 hi r6 r0 r4
390  };
391  const byte kInstruction_shsub8_al_r11_r6_r0[] = {
392    0xf0, 0xbf, 0x36, 0xe6 // shsub8 al r11 r6 r0
393  };
394  const byte kInstruction_shsub8_mi_r3_r1_r9[] = {
395    0xf9, 0x3f, 0x31, 0x46 // shsub8 mi r3 r1 r9
396  };
397  const byte kInstruction_shsub8_mi_r12_r13_r0[] = {
398    0xf0, 0xcf, 0x3d, 0x46 // shsub8 mi r12 r13 r0
399  };
400  const byte kInstruction_shsub8_le_r1_r2_r5[] = {
401    0xf5, 0x1f, 0x32, 0xd6 // shsub8 le r1 r2 r5
402  };
403  const byte kInstruction_shsub8_hi_r4_r3_r14[] = {
404    0xfe, 0x4f, 0x33, 0x86 // shsub8 hi r4 r3 r14
405  };
406  const byte kInstruction_shsub8_eq_r6_r11_r11[] = {
407    0xfb, 0x6f, 0x3b, 0x06 // shsub8 eq r6 r11 r11
408  };
409  const byte kInstruction_shsub8_cc_r14_r11_r14[] = {
410    0xfe, 0xef, 0x3b, 0x36 // shsub8 cc r14 r11 r14
411  };
412  const byte kInstruction_shsub8_hi_r4_r10_r0[] = {
413    0xf0, 0x4f, 0x3a, 0x86 // shsub8 hi r4 r10 r0
414  };
415  const byte kInstruction_shsub8_cc_r7_r11_r1[] = {
416    0xf1, 0x7f, 0x3b, 0x36 // shsub8 cc r7 r11 r1
417  };
418  const byte kInstruction_shsub8_mi_r14_r6_r10[] = {
419    0xfa, 0xef, 0x36, 0x46 // shsub8 mi r14 r6 r10
420  };
421  const byte kInstruction_shsub8_eq_r2_r0_r11[] = {
422    0xfb, 0x2f, 0x30, 0x06 // shsub8 eq r2 r0 r11
423  };
424  const byte kInstruction_shsub8_mi_r13_r5_r12[] = {
425    0xfc, 0xdf, 0x35, 0x46 // shsub8 mi r13 r5 r12
426  };
427  const byte kInstruction_shsub8_eq_r2_r12_r5[] = {
428    0xf5, 0x2f, 0x3c, 0x06 // shsub8 eq r2 r12 r5
429  };
430  const byte kInstruction_shsub8_le_r12_r0_r2[] = {
431    0xf2, 0xcf, 0x30, 0xd6 // shsub8 le r12 r0 r2
432  };
433  const byte kInstruction_shsub8_vc_r10_r10_r9[] = {
434    0xf9, 0xaf, 0x3a, 0x76 // shsub8 vc r10 r10 r9
435  };
436  const byte kInstruction_shsub8_ls_r11_r11_r8[] = {
437    0xf8, 0xbf, 0x3b, 0x96 // shsub8 ls r11 r11 r8
438  };
439  const byte kInstruction_shsub8_hi_r10_r11_r9[] = {
440    0xf9, 0xaf, 0x3b, 0x86 // shsub8 hi r10 r11 r9
441  };
442  const byte kInstruction_shsub8_vs_r7_r12_r14[] = {
443    0xfe, 0x7f, 0x3c, 0x66 // shsub8 vs r7 r12 r14
444  };
445  const byte kInstruction_shsub8_gt_r11_r14_r12[] = {
446    0xfc, 0xbf, 0x3e, 0xc6 // shsub8 gt r11 r14 r12
447  };
448  const byte kInstruction_shsub8_vs_r0_r12_r8[] = {
449    0xf8, 0x0f, 0x3c, 0x66 // shsub8 vs r0 r12 r8
450  };
451  const byte kInstruction_shsub8_al_r0_r5_r7[] = {
452    0xf7, 0x0f, 0x35, 0xe6 // shsub8 al r0 r5 r7
453  };
454  const byte kInstruction_shsub8_hi_r5_r13_r8[] = {
455    0xf8, 0x5f, 0x3d, 0x86 // shsub8 hi r5 r13 r8
456  };
457  const byte kInstruction_shsub8_le_r9_r9_r7[] = {
458    0xf7, 0x9f, 0x39, 0xd6 // shsub8 le r9 r9 r7
459  };
460  const byte kInstruction_shsub8_cc_r4_r9_r5[] = {
461    0xf5, 0x4f, 0x39, 0x36 // shsub8 cc r4 r9 r5
462  };
463  const byte kInstruction_shsub8_vs_r8_r1_r3[] = {
464    0xf3, 0x8f, 0x31, 0x66 // shsub8 vs r8 r1 r3
465  };
466  const byte kInstruction_shsub8_cc_r0_r10_r12[] = {
467    0xfc, 0x0f, 0x3a, 0x36 // shsub8 cc r0 r10 r12
468  };
469  const byte kInstruction_shsub8_eq_r7_r14_r0[] = {
470    0xf0, 0x7f, 0x3e, 0x06 // shsub8 eq r7 r14 r0
471  };
472  const byte kInstruction_shsub8_vs_r12_r9_r11[] = {
473    0xfb, 0xcf, 0x39, 0x66 // shsub8 vs r12 r9 r11
474  };
475  const byte kInstruction_shsub8_gt_r5_r9_r11[] = {
476    0xfb, 0x5f, 0x39, 0xc6 // shsub8 gt r5 r9 r11
477  };
478  const byte kInstruction_shsub8_cs_r14_r13_r7[] = {
479    0xf7, 0xef, 0x3d, 0x26 // shsub8 cs r14 r13 r7
480  };
481  const byte kInstruction_shsub8_mi_r11_r3_r10[] = {
482    0xfa, 0xbf, 0x33, 0x46 // shsub8 mi r11 r3 r10
483  };
484  const byte kInstruction_shsub8_hi_r11_r8_r12[] = {
485    0xfc, 0xbf, 0x38, 0x86 // shsub8 hi r11 r8 r12
486  };
487  const byte kInstruction_shsub8_cs_r3_r8_r13[] = {
488    0xfd, 0x3f, 0x38, 0x26 // shsub8 cs r3 r8 r13
489  };
490  const byte kInstruction_shsub8_pl_r10_r12_r6[] = {
491    0xf6, 0xaf, 0x3c, 0x56 // shsub8 pl r10 r12 r6
492  };
493  const byte kInstruction_shsub8_vc_r7_r3_r2[] = {
494    0xf2, 0x7f, 0x33, 0x76 // shsub8 vc r7 r3 r2
495  };
496  const byte kInstruction_shsub8_mi_r9_r0_r8[] = {
497    0xf8, 0x9f, 0x30, 0x46 // shsub8 mi r9 r0 r8
498  };
499  const byte kInstruction_shsub8_eq_r2_r13_r7[] = {
500    0xf7, 0x2f, 0x3d, 0x06 // shsub8 eq r2 r13 r7
501  };
502  const byte kInstruction_shsub8_ne_r2_r14_r0[] = {
503    0xf0, 0x2f, 0x3e, 0x16 // shsub8 ne r2 r14 r0
504  };
505  const byte kInstruction_shsub8_vs_r4_r10_r0[] = {
506    0xf0, 0x4f, 0x3a, 0x66 // shsub8 vs r4 r10 r0
507  };
508  const byte kInstruction_shsub8_ls_r0_r2_r2[] = {
509    0xf2, 0x0f, 0x32, 0x96 // shsub8 ls r0 r2 r2
510  };
511  const byte kInstruction_shsub8_cc_r1_r6_r0[] = {
512    0xf0, 0x1f, 0x36, 0x36 // shsub8 cc r1 r6 r0
513  };
514  const byte kInstruction_shsub8_lt_r12_r0_r8[] = {
515    0xf8, 0xcf, 0x30, 0xb6 // shsub8 lt r12 r0 r8
516  };
517  const byte kInstruction_shsub8_cc_r9_r3_r14[] = {
518    0xfe, 0x9f, 0x33, 0x36 // shsub8 cc r9 r3 r14
519  };
520  const byte kInstruction_shsub8_vs_r7_r9_r1[] = {
521    0xf1, 0x7f, 0x39, 0x66 // shsub8 vs r7 r9 r1
522  };
523  const byte kInstruction_shsub8_eq_r11_r9_r14[] = {
524    0xfe, 0xbf, 0x39, 0x06 // shsub8 eq r11 r9 r14
525  };
526  const byte kInstruction_shsub8_pl_r6_r10_r4[] = {
527    0xf4, 0x6f, 0x3a, 0x56 // shsub8 pl r6 r10 r4
528  };
529  const byte kInstruction_shsub8_ne_r8_r5_r6[] = {
530    0xf6, 0x8f, 0x35, 0x16 // shsub8 ne r8 r5 r6
531  };
532  const byte kInstruction_shsub8_cs_r0_r6_r2[] = {
533    0xf2, 0x0f, 0x36, 0x26 // shsub8 cs r0 r6 r2
534  };
535  const byte kInstruction_shsub8_eq_r11_r12_r4[] = {
536    0xf4, 0xbf, 0x3c, 0x06 // shsub8 eq r11 r12 r4
537  };
538  const byte kInstruction_shsub8_lt_r14_r3_r14[] = {
539    0xfe, 0xef, 0x33, 0xb6 // shsub8 lt r14 r3 r14
540  };
541  const byte kInstruction_shsub8_le_r7_r12_r14[] = {
542    0xfe, 0x7f, 0x3c, 0xd6 // shsub8 le r7 r12 r14
543  };
544  const byte kInstruction_shsub8_hi_r2_r9_r9[] = {
545    0xf9, 0x2f, 0x39, 0x86 // shsub8 hi r2 r9 r9
546  };
547  const byte kInstruction_shsub8_ne_r8_r1_r0[] = {
548    0xf0, 0x8f, 0x31, 0x16 // shsub8 ne r8 r1 r0
549  };
550  const byte kInstruction_shsub8_cc_r5_r11_r2[] = {
551    0xf2, 0x5f, 0x3b, 0x36 // shsub8 cc r5 r11 r2
552  };
553  const byte kInstruction_shsub8_hi_r0_r1_r2[] = {
554    0xf2, 0x0f, 0x31, 0x86 // shsub8 hi r0 r1 r2
555  };
556  const byte kInstruction_shsub8_al_r4_r9_r4[] = {
557    0xf4, 0x4f, 0x39, 0xe6 // shsub8 al r4 r9 r4
558  };
559  const byte kInstruction_shsub8_cs_r12_r7_r14[] = {
560    0xfe, 0xcf, 0x37, 0x26 // shsub8 cs r12 r7 r14
561  };
562  const byte kInstruction_shsub8_cc_r4_r12_r10[] = {
563    0xfa, 0x4f, 0x3c, 0x36 // shsub8 cc r4 r12 r10
564  };
565  const byte kInstruction_shsub8_al_r3_r5_r10[] = {
566    0xfa, 0x3f, 0x35, 0xe6 // shsub8 al r3 r5 r10
567  };
568  const byte kInstruction_shsub8_mi_r5_r3_r7[] = {
569    0xf7, 0x5f, 0x33, 0x46 // shsub8 mi r5 r3 r7
570  };
571  const byte kInstruction_shsub8_ls_r10_r6_r2[] = {
572    0xf2, 0xaf, 0x36, 0x96 // shsub8 ls r10 r6 r2
573  };
574  const byte kInstruction_shsub8_mi_r0_r12_r11[] = {
575    0xfb, 0x0f, 0x3c, 0x46 // shsub8 mi r0 r12 r11
576  };
577  const byte kInstruction_shsub8_vc_r12_r5_r6[] = {
578    0xf6, 0xcf, 0x35, 0x76 // shsub8 vc r12 r5 r6
579  };
580  const byte kInstruction_shsub8_cs_r3_r9_r4[] = {
581    0xf4, 0x3f, 0x39, 0x26 // shsub8 cs r3 r9 r4
582  };
583  const byte kInstruction_shsub8_ls_r4_r9_r11[] = {
584    0xfb, 0x4f, 0x39, 0x96 // shsub8 ls r4 r9 r11
585  };
586  const byte kInstruction_shsub8_le_r14_r8_r13[] = {
587    0xfd, 0xef, 0x38, 0xd6 // shsub8 le r14 r8 r13
588  };
589  const byte kInstruction_shsub8_gt_r4_r10_r8[] = {
590    0xf8, 0x4f, 0x3a, 0xc6 // shsub8 gt r4 r10 r8
591  };
592  const byte kInstruction_shsub8_al_r6_r9_r9[] = {
593    0xf9, 0x6f, 0x39, 0xe6 // shsub8 al r6 r9 r9
594  };
595  const byte kInstruction_shsub8_ne_r8_r5_r12[] = {
596    0xfc, 0x8f, 0x35, 0x16 // shsub8 ne r8 r5 r12
597  };
598  const byte kInstruction_shsub8_ne_r0_r4_r8[] = {
599    0xf8, 0x0f, 0x34, 0x16 // shsub8 ne r0 r4 r8
600  };
601  const byte kInstruction_shsub8_mi_r7_r13_r3[] = {
602    0xf3, 0x7f, 0x3d, 0x46 // shsub8 mi r7 r13 r3
603  };
604  const byte kInstruction_shsub8_cc_r11_r7_r0[] = {
605    0xf0, 0xbf, 0x37, 0x36 // shsub8 cc r11 r7 r0
606  };
607  const byte kInstruction_shsub8_hi_r1_r0_r12[] = {
608    0xfc, 0x1f, 0x30, 0x86 // shsub8 hi r1 r0 r12
609  };
610  const byte kInstruction_shsub8_lt_r8_r9_r3[] = {
611    0xf3, 0x8f, 0x39, 0xb6 // shsub8 lt r8 r9 r3
612  };
613  const byte kInstruction_shsub8_al_r0_r2_r1[] = {
614    0xf1, 0x0f, 0x32, 0xe6 // shsub8 al r0 r2 r1
615  };
616  const byte kInstruction_shsub8_vs_r4_r3_r14[] = {
617    0xfe, 0x4f, 0x33, 0x66 // shsub8 vs r4 r3 r14
618  };
619  const byte kInstruction_shsub8_ge_r2_r11_r1[] = {
620    0xf1, 0x2f, 0x3b, 0xa6 // shsub8 ge r2 r11 r1
621  };
622  const byte kInstruction_shsub8_lt_r12_r9_r6[] = {
623    0xf6, 0xcf, 0x39, 0xb6 // shsub8 lt r12 r9 r6
624  };
625  const byte kInstruction_shsub8_ls_r8_r2_r7[] = {
626    0xf7, 0x8f, 0x32, 0x96 // shsub8 ls r8 r2 r7
627  };
628  const byte kInstruction_shsub8_le_r8_r13_r3[] = {
629    0xf3, 0x8f, 0x3d, 0xd6 // shsub8 le r8 r13 r3
630  };
631  const byte kInstruction_shsub8_eq_r11_r13_r14[] = {
632    0xfe, 0xbf, 0x3d, 0x06 // shsub8 eq r11 r13 r14
633  };
634  const byte kInstruction_shsub8_lt_r1_r6_r13[] = {
635    0xfd, 0x1f, 0x36, 0xb6 // shsub8 lt r1 r6 r13
636  };
637  const byte kInstruction_shsub8_cs_r3_r8_r11[] = {
638    0xfb, 0x3f, 0x38, 0x26 // shsub8 cs r3 r8 r11
639  };
640  const byte kInstruction_shsub8_pl_r12_r5_r4[] = {
641    0xf4, 0xcf, 0x35, 0x56 // shsub8 pl r12 r5 r4
642  };
643  const byte kInstruction_shsub8_eq_r8_r7_r2[] = {
644    0xf2, 0x8f, 0x37, 0x06 // shsub8 eq r8 r7 r2
645  };
646  const byte kInstruction_shsub8_ls_r2_r12_r2[] = {
647    0xf2, 0x2f, 0x3c, 0x96 // shsub8 ls r2 r12 r2
648  };
649  const byte kInstruction_shsub8_le_r14_r2_r3[] = {
650    0xf3, 0xef, 0x32, 0xd6 // shsub8 le r14 r2 r3
651  };
652  const byte kInstruction_shsub8_ge_r10_r11_r6[] = {
653    0xf6, 0xaf, 0x3b, 0xa6 // shsub8 ge r10 r11 r6
654  };
655  const byte kInstruction_shsub8_hi_r0_r2_r2[] = {
656    0xf2, 0x0f, 0x32, 0x86 // shsub8 hi r0 r2 r2
657  };
658  const byte kInstruction_shsub8_ge_r2_r0_r2[] = {
659    0xf2, 0x2f, 0x30, 0xa6 // shsub8 ge r2 r0 r2
660  };
661  const byte kInstruction_shsub8_vs_r11_r14_r0[] = {
662    0xf0, 0xbf, 0x3e, 0x66 // shsub8 vs r11 r14 r0
663  };
664  const byte kInstruction_shsub8_lt_r2_r0_r1[] = {
665    0xf1, 0x2f, 0x30, 0xb6 // shsub8 lt r2 r0 r1
666  };
667  const byte kInstruction_shsub8_cs_r2_r5_r11[] = {
668    0xfb, 0x2f, 0x35, 0x26 // shsub8 cs r2 r5 r11
669  };
670  const byte kInstruction_shsub8_ls_r7_r14_r5[] = {
671    0xf5, 0x7f, 0x3e, 0x96 // shsub8 ls r7 r14 r5
672  };
673  const byte kInstruction_shsub8_pl_r0_r0_r3[] = {
674    0xf3, 0x0f, 0x30, 0x56 // shsub8 pl r0 r0 r3
675  };
676  const byte kInstruction_shsub8_ge_r6_r8_r8[] = {
677    0xf8, 0x6f, 0x38, 0xa6 // shsub8 ge r6 r8 r8
678  };
679  const byte kInstruction_shsub8_le_r11_r1_r10[] = {
680    0xfa, 0xbf, 0x31, 0xd6 // shsub8 le r11 r1 r10
681  };
682  const byte kInstruction_shsub8_vs_r5_r2_r7[] = {
683    0xf7, 0x5f, 0x32, 0x66 // shsub8 vs r5 r2 r7
684  };
685  const byte kInstruction_shsub8_ne_r4_r4_r8[] = {
686    0xf8, 0x4f, 0x34, 0x16 // shsub8 ne r4 r4 r8
687  };
688  const byte kInstruction_shsub8_cc_r9_r14_r13[] = {
689    0xfd, 0x9f, 0x3e, 0x36 // shsub8 cc r9 r14 r13
690  };
691  const byte kInstruction_shsub8_hi_r14_r6_r3[] = {
692    0xf3, 0xef, 0x36, 0x86 // shsub8 hi r14 r6 r3
693  };
694  const byte kInstruction_shsub8_al_r0_r8_r0[] = {
695    0xf0, 0x0f, 0x38, 0xe6 // shsub8 al r0 r8 r0
696  };
697  const byte kInstruction_shsub8_lt_r6_r11_r1[] = {
698    0xf1, 0x6f, 0x3b, 0xb6 // shsub8 lt r6 r11 r1
699  };
700  const byte kInstruction_shsub8_ge_r7_r6_r12[] = {
701    0xfc, 0x7f, 0x36, 0xa6 // shsub8 ge r7 r6 r12
702  };
703  const byte kInstruction_shsub8_cs_r4_r6_r14[] = {
704    0xfe, 0x4f, 0x36, 0x26 // shsub8 cs r4 r6 r14
705  };
706  const byte kInstruction_shsub8_cs_r7_r6_r7[] = {
707    0xf7, 0x7f, 0x36, 0x26 // shsub8 cs r7 r6 r7
708  };
709  const byte kInstruction_shsub8_cs_r3_r7_r10[] = {
710    0xfa, 0x3f, 0x37, 0x26 // shsub8 cs r3 r7 r10
711  };
712  const byte kInstruction_shsub8_ne_r0_r2_r1[] = {
713    0xf1, 0x0f, 0x32, 0x16 // shsub8 ne r0 r2 r1
714  };
715  const byte kInstruction_shsub8_vs_r9_r10_r13[] = {
716    0xfd, 0x9f, 0x3a, 0x66 // shsub8 vs r9 r10 r13
717  };
718  const byte kInstruction_shsub8_vc_r11_r14_r12[] = {
719    0xfc, 0xbf, 0x3e, 0x76 // shsub8 vc r11 r14 r12
720  };
721  const byte kInstruction_shsub8_ge_r14_r8_r7[] = {
722    0xf7, 0xef, 0x38, 0xa6 // shsub8 ge r14 r8 r7
723  };
724  const byte kInstruction_shsub8_lt_r13_r0_r11[] = {
725    0xfb, 0xdf, 0x30, 0xb6 // shsub8 lt r13 r0 r11
726  };
727  const byte kInstruction_shsub8_lt_r14_r13_r4[] = {
728    0xf4, 0xef, 0x3d, 0xb6 // shsub8 lt r14 r13 r4
729  };
730  const byte kInstruction_shsub8_al_r1_r10_r9[] = {
731    0xf9, 0x1f, 0x3a, 0xe6 // shsub8 al r1 r10 r9
732  };
733  const byte kInstruction_shsub8_ge_r11_r14_r11[] = {
734    0xfb, 0xbf, 0x3e, 0xa6 // shsub8 ge r11 r14 r11
735  };
736  const byte kInstruction_shsub8_cs_r11_r4_r11[] = {
737    0xfb, 0xbf, 0x34, 0x26 // shsub8 cs r11 r4 r11
738  };
739  const byte kInstruction_shsub8_ge_r0_r14_r7[] = {
740    0xf7, 0x0f, 0x3e, 0xa6 // shsub8 ge r0 r14 r7
741  };
742  const byte kInstruction_shsub8_mi_r1_r2_r9[] = {
743    0xf9, 0x1f, 0x32, 0x46 // shsub8 mi r1 r2 r9
744  };
745  const byte kInstruction_shsub8_eq_r5_r12_r3[] = {
746    0xf3, 0x5f, 0x3c, 0x06 // shsub8 eq r5 r12 r3
747  };
748  const byte kInstruction_shsub8_ge_r1_r5_r12[] = {
749    0xfc, 0x1f, 0x35, 0xa6 // shsub8 ge r1 r5 r12
750  };
751  const byte kInstruction_shsub8_lt_r10_r11_r4[] = {
752    0xf4, 0xaf, 0x3b, 0xb6 // shsub8 lt r10 r11 r4
753  };
754  const byte kInstruction_shsub8_le_r1_r1_r5[] = {
755    0xf5, 0x1f, 0x31, 0xd6 // shsub8 le r1 r1 r5
756  };
757  const byte kInstruction_shsub8_al_r9_r1_r8[] = {
758    0xf8, 0x9f, 0x31, 0xe6 // shsub8 al r9 r1 r8
759  };
760  const byte kInstruction_shsub8_ne_r6_r8_r4[] = {
761    0xf4, 0x6f, 0x38, 0x16 // shsub8 ne r6 r8 r4
762  };
763  const byte kInstruction_shsub8_ge_r12_r2_r9[] = {
764    0xf9, 0xcf, 0x32, 0xa6 // shsub8 ge r12 r2 r9
765  };
766  const byte kInstruction_shsub8_pl_r4_r3_r10[] = {
767    0xfa, 0x4f, 0x33, 0x56 // shsub8 pl r4 r3 r10
768  };
769  const byte kInstruction_shsub8_eq_r14_r4_r11[] = {
770    0xfb, 0xef, 0x34, 0x06 // shsub8 eq r14 r4 r11
771  };
772  const byte kInstruction_shsub8_cc_r9_r7_r6[] = {
773    0xf6, 0x9f, 0x37, 0x36 // shsub8 cc r9 r7 r6
774  };
775  const byte kInstruction_shsub8_ge_r12_r4_r5[] = {
776    0xf5, 0xcf, 0x34, 0xa6 // shsub8 ge r12 r4 r5
777  };
778  const byte kInstruction_shsub8_hi_r2_r3_r4[] = {
779    0xf4, 0x2f, 0x33, 0x86 // shsub8 hi r2 r3 r4
780  };
781  const byte kInstruction_shsub8_cs_r0_r3_r1[] = {
782    0xf1, 0x0f, 0x33, 0x26 // shsub8 cs r0 r3 r1
783  };
784  const byte kInstruction_shsub8_hi_r6_r2_r8[] = {
785    0xf8, 0x6f, 0x32, 0x86 // shsub8 hi r6 r2 r8
786  };
787  const byte kInstruction_shsub8_cc_r3_r14_r13[] = {
788    0xfd, 0x3f, 0x3e, 0x36 // shsub8 cc r3 r14 r13
789  };
790  const byte kInstruction_shsub8_gt_r11_r4_r7[] = {
791    0xf7, 0xbf, 0x34, 0xc6 // shsub8 gt r11 r4 r7
792  };
793  const byte kInstruction_shsub8_hi_r5_r0_r12[] = {
794    0xfc, 0x5f, 0x30, 0x86 // shsub8 hi r5 r0 r12
795  };
796  const byte kInstruction_shsub8_gt_r0_r14_r14[] = {
797    0xfe, 0x0f, 0x3e, 0xc6 // shsub8 gt r0 r14 r14
798  };
799  const byte kInstruction_shsub8_hi_r9_r0_r10[] = {
800    0xfa, 0x9f, 0x30, 0x86 // shsub8 hi r9 r0 r10
801  };
802  const byte kInstruction_shsub8_vc_r7_r11_r8[] = {
803    0xf8, 0x7f, 0x3b, 0x76 // shsub8 vc r7 r11 r8
804  };
805  const byte kInstruction_shsub8_pl_r11_r9_r6[] = {
806    0xf6, 0xbf, 0x39, 0x56 // shsub8 pl r11 r9 r6
807  };
808  const byte kInstruction_shsub8_al_r3_r3_r7[] = {
809    0xf7, 0x3f, 0x33, 0xe6 // shsub8 al r3 r3 r7
810  };
811  const byte kInstruction_shsub8_mi_r5_r7_r9[] = {
812    0xf9, 0x5f, 0x37, 0x46 // shsub8 mi r5 r7 r9
813  };
814  const byte kInstruction_shsub8_cc_r11_r2_r4[] = {
815    0xf4, 0xbf, 0x32, 0x36 // shsub8 cc r11 r2 r4
816  };
817  const byte kInstruction_shsub8_cc_r9_r13_r10[] = {
818    0xfa, 0x9f, 0x3d, 0x36 // shsub8 cc r9 r13 r10
819  };
820  const byte kInstruction_shsub8_al_r5_r2_r6[] = {
821    0xf6, 0x5f, 0x32, 0xe6 // shsub8 al r5 r2 r6
822  };
823  const byte kInstruction_shsub8_ge_r9_r4_r6[] = {
824    0xf6, 0x9f, 0x34, 0xa6 // shsub8 ge r9 r4 r6
825  };
826  const byte kInstruction_shsub8_ls_r3_r3_r4[] = {
827    0xf4, 0x3f, 0x33, 0x96 // shsub8 ls r3 r3 r4
828  };
829  const byte kInstruction_shsub8_ge_r14_r1_r8[] = {
830    0xf8, 0xef, 0x31, 0xa6 // shsub8 ge r14 r1 r8
831  };
832  const byte kInstruction_shsub8_ls_r7_r12_r7[] = {
833    0xf7, 0x7f, 0x3c, 0x96 // shsub8 ls r7 r12 r7
834  };
835  const byte kInstruction_shsub8_al_r11_r10_r5[] = {
836    0xf5, 0xbf, 0x3a, 0xe6 // shsub8 al r11 r10 r5
837  };
838  const byte kInstruction_shsub8_al_r7_r4_r6[] = {
839    0xf6, 0x7f, 0x34, 0xe6 // shsub8 al r7 r4 r6
840  };
841  const byte kInstruction_shsub8_vs_r12_r4_r10[] = {
842    0xfa, 0xcf, 0x34, 0x66 // shsub8 vs r12 r4 r10
843  };
844  const byte kInstruction_shsub8_eq_r4_r4_r4[] = {
845    0xf4, 0x4f, 0x34, 0x06 // shsub8 eq r4 r4 r4
846  };
847  const byte kInstruction_shsub8_vs_r6_r6_r12[] = {
848    0xfc, 0x6f, 0x36, 0x66 // shsub8 vs r6 r6 r12
849  };
850  const byte kInstruction_shsub8_pl_r9_r3_r5[] = {
851    0xf5, 0x9f, 0x33, 0x56 // shsub8 pl r9 r3 r5
852  };
853  const byte kInstruction_shsub8_eq_r6_r5_r13[] = {
854    0xfd, 0x6f, 0x35, 0x06 // shsub8 eq r6 r5 r13
855  };
856  const byte kInstruction_shsub8_cc_r8_r2_r12[] = {
857    0xfc, 0x8f, 0x32, 0x36 // shsub8 cc r8 r2 r12
858  };
859  const byte kInstruction_shsub8_le_r4_r2_r0[] = {
860    0xf0, 0x4f, 0x32, 0xd6 // shsub8 le r4 r2 r0
861  };
862  const byte kInstruction_shsub8_lt_r7_r9_r8[] = {
863    0xf8, 0x7f, 0x39, 0xb6 // shsub8 lt r7 r9 r8
864  };
865  const byte kInstruction_shsub8_le_r4_r7_r11[] = {
866    0xfb, 0x4f, 0x37, 0xd6 // shsub8 le r4 r7 r11
867  };
868  const byte kInstruction_shsub8_eq_r5_r7_r5[] = {
869    0xf5, 0x5f, 0x37, 0x06 // shsub8 eq r5 r7 r5
870  };
871  const byte kInstruction_shsub8_vc_r10_r7_r12[] = {
872    0xfc, 0xaf, 0x37, 0x76 // shsub8 vc r10 r7 r12
873  };
874  const byte kInstruction_shsub8_eq_r7_r10_r6[] = {
875    0xf6, 0x7f, 0x3a, 0x06 // shsub8 eq r7 r10 r6
876  };
877  const byte kInstruction_shsub8_pl_r1_r12_r2[] = {
878    0xf2, 0x1f, 0x3c, 0x56 // shsub8 pl r1 r12 r2
879  };
880  const byte kInstruction_shsub8_le_r14_r6_r6[] = {
881    0xf6, 0xef, 0x36, 0xd6 // shsub8 le r14 r6 r6
882  };
883  const byte kInstruction_shsub8_ne_r3_r8_r8[] = {
884    0xf8, 0x3f, 0x38, 0x16 // shsub8 ne r3 r8 r8
885  };
886  const byte kInstruction_shsub8_eq_r4_r12_r8[] = {
887    0xf8, 0x4f, 0x3c, 0x06 // shsub8 eq r4 r12 r8
888  };
889  const byte kInstruction_shsub8_ge_r11_r2_r3[] = {
890    0xf3, 0xbf, 0x32, 0xa6 // shsub8 ge r11 r2 r3
891  };
892  const byte kInstruction_shsub8_hi_r12_r6_r11[] = {
893    0xfb, 0xcf, 0x36, 0x86 // shsub8 hi r12 r6 r11
894  };
895  const byte kInstruction_shsub8_cs_r4_r5_r10[] = {
896    0xfa, 0x4f, 0x35, 0x26 // shsub8 cs r4 r5 r10
897  };
898  const byte kInstruction_shsub8_ge_r10_r2_r10[] = {
899    0xfa, 0xaf, 0x32, 0xa6 // shsub8 ge r10 r2 r10
900  };
901  const byte kInstruction_shsub8_ge_r5_r14_r6[] = {
902    0xf6, 0x5f, 0x3e, 0xa6 // shsub8 ge r5 r14 r6
903  };
904  const byte kInstruction_shsub8_gt_r13_r7_r5[] = {
905    0xf5, 0xdf, 0x37, 0xc6 // shsub8 gt r13 r7 r5
906  };
907  const byte kInstruction_shsub8_ge_r13_r4_r12[] = {
908    0xfc, 0xdf, 0x34, 0xa6 // shsub8 ge r13 r4 r12
909  };
910  const byte kInstruction_shsub8_lt_r8_r10_r14[] = {
911    0xfe, 0x8f, 0x3a, 0xb6 // shsub8 lt r8 r10 r14
912  };
913  const byte kInstruction_shsub8_le_r4_r3_r13[] = {
914    0xfd, 0x4f, 0x33, 0xd6 // shsub8 le r4 r3 r13
915  };
916  const byte kInstruction_shsub8_pl_r0_r9_r0[] = {
917    0xf0, 0x0f, 0x39, 0x56 // shsub8 pl r0 r9 r0
918  };
919  const byte kInstruction_shsub8_eq_r2_r3_r1[] = {
920    0xf1, 0x2f, 0x33, 0x06 // shsub8 eq r2 r3 r1
921  };
922  const byte kInstruction_shsub8_vc_r0_r0_r3[] = {
923    0xf3, 0x0f, 0x30, 0x76 // shsub8 vc r0 r0 r3
924  };
925  const byte kInstruction_shsub8_mi_r10_r8_r11[] = {
926    0xfb, 0xaf, 0x38, 0x46 // shsub8 mi r10 r8 r11
927  };
928  const byte kInstruction_shsub8_mi_r5_r14_r14[] = {
929    0xfe, 0x5f, 0x3e, 0x46 // shsub8 mi r5 r14 r14
930  };
931  const byte kInstruction_shsub8_gt_r5_r11_r2[] = {
932    0xf2, 0x5f, 0x3b, 0xc6 // shsub8 gt r5 r11 r2
933  };
934  const byte kInstruction_shsub8_al_r4_r7_r11[] = {
935    0xfb, 0x4f, 0x37, 0xe6 // shsub8 al r4 r7 r11
936  };
937  const TestResult kReferenceshsub8[] = {
938    {
939      ARRAY_SIZE(kInstruction_shsub8_hi_r1_r9_r5),
940      kInstruction_shsub8_hi_r1_r9_r5,
941    },
942    {
943      ARRAY_SIZE(kInstruction_shsub8_pl_r8_r6_r2),
944      kInstruction_shsub8_pl_r8_r6_r2,
945    },
946    {
947      ARRAY_SIZE(kInstruction_shsub8_hi_r5_r8_r2),
948      kInstruction_shsub8_hi_r5_r8_r2,
949    },
950    {
951      ARRAY_SIZE(kInstruction_shsub8_vc_r9_r2_r7),
952      kInstruction_shsub8_vc_r9_r2_r7,
953    },
954    {
955      ARRAY_SIZE(kInstruction_shsub8_lt_r4_r6_r3),
956      kInstruction_shsub8_lt_r4_r6_r3,
957    },
958    {
959      ARRAY_SIZE(kInstruction_shsub8_le_r11_r6_r2),
960      kInstruction_shsub8_le_r11_r6_r2,
961    },
962    {
963      ARRAY_SIZE(kInstruction_shsub8_cc_r8_r14_r4),
964      kInstruction_shsub8_cc_r8_r14_r4,
965    },
966    {
967      ARRAY_SIZE(kInstruction_shsub8_le_r5_r14_r6),
968      kInstruction_shsub8_le_r5_r14_r6,
969    },
970    {
971      ARRAY_SIZE(kInstruction_shsub8_lt_r6_r1_r0),
972      kInstruction_shsub8_lt_r6_r1_r0,
973    },
974    {
975      ARRAY_SIZE(kInstruction_shsub8_lt_r5_r0_r9),
976      kInstruction_shsub8_lt_r5_r0_r9,
977    },
978    {
979      ARRAY_SIZE(kInstruction_shsub8_le_r8_r12_r7),
980      kInstruction_shsub8_le_r8_r12_r7,
981    },
982    {
983      ARRAY_SIZE(kInstruction_shsub8_eq_r7_r14_r6),
984      kInstruction_shsub8_eq_r7_r14_r6,
985    },
986    {
987      ARRAY_SIZE(kInstruction_shsub8_cs_r7_r4_r6),
988      kInstruction_shsub8_cs_r7_r4_r6,
989    },
990    {
991      ARRAY_SIZE(kInstruction_shsub8_gt_r9_r6_r9),
992      kInstruction_shsub8_gt_r9_r6_r9,
993    },
994    {
995      ARRAY_SIZE(kInstruction_shsub8_ne_r13_r9_r1),
996      kInstruction_shsub8_ne_r13_r9_r1,
997    },
998    {
999      ARRAY_SIZE(kInstruction_shsub8_ge_r13_r1_r13),
1000      kInstruction_shsub8_ge_r13_r1_r13,
1001    },
1002    {
1003      ARRAY_SIZE(kInstruction_shsub8_ls_r8_r10_r2),
1004      kInstruction_shsub8_ls_r8_r10_r2,
1005    },
1006    {
1007      ARRAY_SIZE(kInstruction_shsub8_hi_r0_r13_r5),
1008      kInstruction_shsub8_hi_r0_r13_r5,
1009    },
1010    {
1011      ARRAY_SIZE(kInstruction_shsub8_pl_r13_r7_r8),
1012      kInstruction_shsub8_pl_r13_r7_r8,
1013    },
1014    {
1015      ARRAY_SIZE(kInstruction_shsub8_ge_r4_r13_r11),
1016      kInstruction_shsub8_ge_r4_r13_r11,
1017    },
1018    {
1019      ARRAY_SIZE(kInstruction_shsub8_cs_r5_r10_r5),
1020      kInstruction_shsub8_cs_r5_r10_r5,
1021    },
1022    {
1023      ARRAY_SIZE(kInstruction_shsub8_cs_r5_r4_r3),
1024      kInstruction_shsub8_cs_r5_r4_r3,
1025    },
1026    {
1027      ARRAY_SIZE(kInstruction_shsub8_ls_r6_r14_r8),
1028      kInstruction_shsub8_ls_r6_r14_r8,
1029    },
1030    {
1031      ARRAY_SIZE(kInstruction_shsub8_vs_r3_r8_r6),
1032      kInstruction_shsub8_vs_r3_r8_r6,
1033    },
1034    {
1035      ARRAY_SIZE(kInstruction_shsub8_vc_r7_r12_r3),
1036      kInstruction_shsub8_vc_r7_r12_r3,
1037    },
1038    {
1039      ARRAY_SIZE(kInstruction_shsub8_ge_r1_r4_r1),
1040      kInstruction_shsub8_ge_r1_r4_r1,
1041    },
1042    {
1043      ARRAY_SIZE(kInstruction_shsub8_cc_r4_r7_r10),
1044      kInstruction_shsub8_cc_r4_r7_r10,
1045    },
1046    {
1047      ARRAY_SIZE(kInstruction_shsub8_cc_r2_r0_r13),
1048      kInstruction_shsub8_cc_r2_r0_r13,
1049    },
1050    {
1051      ARRAY_SIZE(kInstruction_shsub8_vs_r9_r6_r8),
1052      kInstruction_shsub8_vs_r9_r6_r8,
1053    },
1054    {
1055      ARRAY_SIZE(kInstruction_shsub8_cs_r14_r11_r13),
1056      kInstruction_shsub8_cs_r14_r11_r13,
1057    },
1058    {
1059      ARRAY_SIZE(kInstruction_shsub8_pl_r5_r8_r4),
1060      kInstruction_shsub8_pl_r5_r8_r4,
1061    },
1062    {
1063      ARRAY_SIZE(kInstruction_shsub8_pl_r2_r3_r7),
1064      kInstruction_shsub8_pl_r2_r3_r7,
1065    },
1066    {
1067      ARRAY_SIZE(kInstruction_shsub8_cs_r7_r12_r14),
1068      kInstruction_shsub8_cs_r7_r12_r14,
1069    },
1070    {
1071      ARRAY_SIZE(kInstruction_shsub8_hi_r6_r6_r1),
1072      kInstruction_shsub8_hi_r6_r6_r1,
1073    },
1074    {
1075      ARRAY_SIZE(kInstruction_shsub8_cc_r6_r9_r6),
1076      kInstruction_shsub8_cc_r6_r9_r6,
1077    },
1078    {
1079      ARRAY_SIZE(kInstruction_shsub8_ne_r12_r12_r0),
1080      kInstruction_shsub8_ne_r12_r12_r0,
1081    },
1082    {
1083      ARRAY_SIZE(kInstruction_shsub8_cc_r9_r3_r8),
1084      kInstruction_shsub8_cc_r9_r3_r8,
1085    },
1086    {
1087      ARRAY_SIZE(kInstruction_shsub8_mi_r13_r6_r1),
1088      kInstruction_shsub8_mi_r13_r6_r1,
1089    },
1090    {
1091      ARRAY_SIZE(kInstruction_shsub8_lt_r4_r8_r6),
1092      kInstruction_shsub8_lt_r4_r8_r6,
1093    },
1094    {
1095      ARRAY_SIZE(kInstruction_shsub8_hi_r11_r5_r9),
1096      kInstruction_shsub8_hi_r11_r5_r9,
1097    },
1098    {
1099      ARRAY_SIZE(kInstruction_shsub8_cc_r6_r10_r6),
1100      kInstruction_shsub8_cc_r6_r10_r6,
1101    },
1102    {
1103      ARRAY_SIZE(kInstruction_shsub8_eq_r10_r10_r5),
1104      kInstruction_shsub8_eq_r10_r10_r5,
1105    },
1106    {
1107      ARRAY_SIZE(kInstruction_shsub8_al_r5_r4_r11),
1108      kInstruction_shsub8_al_r5_r4_r11,
1109    },
1110    {
1111      ARRAY_SIZE(kInstruction_shsub8_pl_r11_r11_r2),
1112      kInstruction_shsub8_pl_r11_r11_r2,
1113    },
1114    {
1115      ARRAY_SIZE(kInstruction_shsub8_ls_r6_r14_r12),
1116      kInstruction_shsub8_ls_r6_r14_r12,
1117    },
1118    {
1119      ARRAY_SIZE(kInstruction_shsub8_vc_r7_r7_r2),
1120      kInstruction_shsub8_vc_r7_r7_r2,
1121    },
1122    {
1123      ARRAY_SIZE(kInstruction_shsub8_eq_r10_r8_r4),
1124      kInstruction_shsub8_eq_r10_r8_r4,
1125    },
1126    {
1127      ARRAY_SIZE(kInstruction_shsub8_al_r14_r7_r2),
1128      kInstruction_shsub8_al_r14_r7_r2,
1129    },
1130    {
1131      ARRAY_SIZE(kInstruction_shsub8_cs_r3_r11_r10),
1132      kInstruction_shsub8_cs_r3_r11_r10,
1133    },
1134    {
1135      ARRAY_SIZE(kInstruction_shsub8_ls_r11_r4_r0),
1136      kInstruction_shsub8_ls_r11_r4_r0,
1137    },
1138    {
1139      ARRAY_SIZE(kInstruction_shsub8_hi_r11_r8_r9),
1140      kInstruction_shsub8_hi_r11_r8_r9,
1141    },
1142    {
1143      ARRAY_SIZE(kInstruction_shsub8_vs_r2_r14_r13),
1144      kInstruction_shsub8_vs_r2_r14_r13,
1145    },
1146    {
1147      ARRAY_SIZE(kInstruction_shsub8_al_r1_r13_r9),
1148      kInstruction_shsub8_al_r1_r13_r9,
1149    },
1150    {
1151      ARRAY_SIZE(kInstruction_shsub8_eq_r3_r9_r13),
1152      kInstruction_shsub8_eq_r3_r9_r13,
1153    },
1154    {
1155      ARRAY_SIZE(kInstruction_shsub8_ge_r10_r3_r13),
1156      kInstruction_shsub8_ge_r10_r3_r13,
1157    },
1158    {
1159      ARRAY_SIZE(kInstruction_shsub8_pl_r8_r5_r10),
1160      kInstruction_shsub8_pl_r8_r5_r10,
1161    },
1162    {
1163      ARRAY_SIZE(kInstruction_shsub8_vc_r8_r11_r6),
1164      kInstruction_shsub8_vc_r8_r11_r6,
1165    },
1166    {
1167      ARRAY_SIZE(kInstruction_shsub8_eq_r0_r0_r5),
1168      kInstruction_shsub8_eq_r0_r0_r5,
1169    },
1170    {
1171      ARRAY_SIZE(kInstruction_shsub8_ne_r6_r5_r8),
1172      kInstruction_shsub8_ne_r6_r5_r8,
1173    },
1174    {
1175      ARRAY_SIZE(kInstruction_shsub8_hi_r5_r13_r3),
1176      kInstruction_shsub8_hi_r5_r13_r3,
1177    },
1178    {
1179      ARRAY_SIZE(kInstruction_shsub8_ne_r11_r14_r14),
1180      kInstruction_shsub8_ne_r11_r14_r14,
1181    },
1182    {
1183      ARRAY_SIZE(kInstruction_shsub8_mi_r1_r0_r6),
1184      kInstruction_shsub8_mi_r1_r0_r6,
1185    },
1186    {
1187      ARRAY_SIZE(kInstruction_shsub8_le_r14_r8_r2),
1188      kInstruction_shsub8_le_r14_r8_r2,
1189    },
1190    {
1191      ARRAY_SIZE(kInstruction_shsub8_eq_r9_r6_r5),
1192      kInstruction_shsub8_eq_r9_r6_r5,
1193    },
1194    {
1195      ARRAY_SIZE(kInstruction_shsub8_eq_r11_r0_r13),
1196      kInstruction_shsub8_eq_r11_r0_r13,
1197    },
1198    {
1199      ARRAY_SIZE(kInstruction_shsub8_pl_r4_r5_r14),
1200      kInstruction_shsub8_pl_r4_r5_r14,
1201    },
1202    {
1203      ARRAY_SIZE(kInstruction_shsub8_cs_r13_r5_r13),
1204      kInstruction_shsub8_cs_r13_r5_r13,
1205    },
1206    {
1207      ARRAY_SIZE(kInstruction_shsub8_mi_r0_r13_r8),
1208      kInstruction_shsub8_mi_r0_r13_r8,
1209    },
1210    {
1211      ARRAY_SIZE(kInstruction_shsub8_lt_r2_r13_r3),
1212      kInstruction_shsub8_lt_r2_r13_r3,
1213    },
1214    {
1215      ARRAY_SIZE(kInstruction_shsub8_ls_r8_r1_r11),
1216      kInstruction_shsub8_ls_r8_r1_r11,
1217    },
1218    {
1219      ARRAY_SIZE(kInstruction_shsub8_vc_r14_r11_r8),
1220      kInstruction_shsub8_vc_r14_r11_r8,
1221    },
1222    {
1223      ARRAY_SIZE(kInstruction_shsub8_lt_r4_r13_r12),
1224      kInstruction_shsub8_lt_r4_r13_r12,
1225    },
1226    {
1227      ARRAY_SIZE(kInstruction_shsub8_eq_r2_r1_r14),
1228      kInstruction_shsub8_eq_r2_r1_r14,
1229    },
1230    {
1231      ARRAY_SIZE(kInstruction_shsub8_eq_r9_r4_r14),
1232      kInstruction_shsub8_eq_r9_r4_r14,
1233    },
1234    {
1235      ARRAY_SIZE(kInstruction_shsub8_hi_r10_r6_r13),
1236      kInstruction_shsub8_hi_r10_r6_r13,
1237    },
1238    {
1239      ARRAY_SIZE(kInstruction_shsub8_ge_r12_r9_r4),
1240      kInstruction_shsub8_ge_r12_r9_r4,
1241    },
1242    {
1243      ARRAY_SIZE(kInstruction_shsub8_le_r9_r11_r14),
1244      kInstruction_shsub8_le_r9_r11_r14,
1245    },
1246    {
1247      ARRAY_SIZE(kInstruction_shsub8_ls_r0_r9_r5),
1248      kInstruction_shsub8_ls_r0_r9_r5,
1249    },
1250    {
1251      ARRAY_SIZE(kInstruction_shsub8_mi_r2_r3_r8),
1252      kInstruction_shsub8_mi_r2_r3_r8,
1253    },
1254    {
1255      ARRAY_SIZE(kInstruction_shsub8_ne_r14_r10_r14),
1256      kInstruction_shsub8_ne_r14_r10_r14,
1257    },
1258    {
1259      ARRAY_SIZE(kInstruction_shsub8_eq_r6_r2_r10),
1260      kInstruction_shsub8_eq_r6_r2_r10,
1261    },
1262    {
1263      ARRAY_SIZE(kInstruction_shsub8_lt_r11_r0_r12),
1264      kInstruction_shsub8_lt_r11_r0_r12,
1265    },
1266    {
1267      ARRAY_SIZE(kInstruction_shsub8_ne_r1_r12_r10),
1268      kInstruction_shsub8_ne_r1_r12_r10,
1269    },
1270    {
1271      ARRAY_SIZE(kInstruction_shsub8_cc_r1_r0_r2),
1272      kInstruction_shsub8_cc_r1_r0_r2,
1273    },
1274    {
1275      ARRAY_SIZE(kInstruction_shsub8_al_r5_r5_r7),
1276      kInstruction_shsub8_al_r5_r5_r7,
1277    },
1278    {
1279      ARRAY_SIZE(kInstruction_shsub8_hi_r7_r13_r1),
1280      kInstruction_shsub8_hi_r7_r13_r1,
1281    },
1282    {
1283      ARRAY_SIZE(kInstruction_shsub8_cs_r4_r4_r9),
1284      kInstruction_shsub8_cs_r4_r4_r9,
1285    },
1286    {
1287      ARRAY_SIZE(kInstruction_shsub8_eq_r14_r4_r14),
1288      kInstruction_shsub8_eq_r14_r4_r14,
1289    },
1290    {
1291      ARRAY_SIZE(kInstruction_shsub8_vs_r10_r5_r14),
1292      kInstruction_shsub8_vs_r10_r5_r14,
1293    },
1294    {
1295      ARRAY_SIZE(kInstruction_shsub8_gt_r4_r3_r11),
1296      kInstruction_shsub8_gt_r4_r3_r11,
1297    },
1298    {
1299      ARRAY_SIZE(kInstruction_shsub8_ne_r14_r10_r12),
1300      kInstruction_shsub8_ne_r14_r10_r12,
1301    },
1302    {
1303      ARRAY_SIZE(kInstruction_shsub8_vs_r2_r11_r0),
1304      kInstruction_shsub8_vs_r2_r11_r0,
1305    },
1306    {
1307      ARRAY_SIZE(kInstruction_shsub8_ge_r5_r12_r7),
1308      kInstruction_shsub8_ge_r5_r12_r7,
1309    },
1310    {
1311      ARRAY_SIZE(kInstruction_shsub8_mi_r7_r14_r6),
1312      kInstruction_shsub8_mi_r7_r14_r6,
1313    },
1314    {
1315      ARRAY_SIZE(kInstruction_shsub8_gt_r8_r3_r8),
1316      kInstruction_shsub8_gt_r8_r3_r8,
1317    },
1318    {
1319      ARRAY_SIZE(kInstruction_shsub8_hi_r9_r14_r3),
1320      kInstruction_shsub8_hi_r9_r14_r3,
1321    },
1322    {
1323      ARRAY_SIZE(kInstruction_shsub8_vc_r2_r11_r2),
1324      kInstruction_shsub8_vc_r2_r11_r2,
1325    },
1326    {
1327      ARRAY_SIZE(kInstruction_shsub8_hi_r11_r7_r12),
1328      kInstruction_shsub8_hi_r11_r7_r12,
1329    },
1330    {
1331      ARRAY_SIZE(kInstruction_shsub8_cs_r6_r4_r11),
1332      kInstruction_shsub8_cs_r6_r4_r11,
1333    },
1334    {
1335      ARRAY_SIZE(kInstruction_shsub8_cs_r12_r5_r9),
1336      kInstruction_shsub8_cs_r12_r5_r9,
1337    },
1338    {
1339      ARRAY_SIZE(kInstruction_shsub8_ls_r5_r10_r5),
1340      kInstruction_shsub8_ls_r5_r10_r5,
1341    },
1342    {
1343      ARRAY_SIZE(kInstruction_shsub8_ls_r0_r9_r13),
1344      kInstruction_shsub8_ls_r0_r9_r13,
1345    },
1346    {
1347      ARRAY_SIZE(kInstruction_shsub8_lt_r3_r3_r5),
1348      kInstruction_shsub8_lt_r3_r3_r5,
1349    },
1350    {
1351      ARRAY_SIZE(kInstruction_shsub8_mi_r0_r12_r8),
1352      kInstruction_shsub8_mi_r0_r12_r8,
1353    },
1354    {
1355      ARRAY_SIZE(kInstruction_shsub8_pl_r3_r12_r12),
1356      kInstruction_shsub8_pl_r3_r12_r12,
1357    },
1358    {
1359      ARRAY_SIZE(kInstruction_shsub8_eq_r8_r12_r5),
1360      kInstruction_shsub8_eq_r8_r12_r5,
1361    },
1362    {
1363      ARRAY_SIZE(kInstruction_shsub8_cc_r7_r8_r1),
1364      kInstruction_shsub8_cc_r7_r8_r1,
1365    },
1366    {
1367      ARRAY_SIZE(kInstruction_shsub8_hi_r2_r13_r10),
1368      kInstruction_shsub8_hi_r2_r13_r10,
1369    },
1370    {
1371      ARRAY_SIZE(kInstruction_shsub8_al_r7_r10_r10),
1372      kInstruction_shsub8_al_r7_r10_r10,
1373    },
1374    {
1375      ARRAY_SIZE(kInstruction_shsub8_vc_r1_r12_r2),
1376      kInstruction_shsub8_vc_r1_r12_r2,
1377    },
1378    {
1379      ARRAY_SIZE(kInstruction_shsub8_cc_r8_r5_r8),
1380      kInstruction_shsub8_cc_r8_r5_r8,
1381    },
1382    {
1383      ARRAY_SIZE(kInstruction_shsub8_ls_r3_r7_r9),
1384      kInstruction_shsub8_ls_r3_r7_r9,
1385    },
1386    {
1387      ARRAY_SIZE(kInstruction_shsub8_al_r8_r10_r8),
1388      kInstruction_shsub8_al_r8_r10_r8,
1389    },
1390    {
1391      ARRAY_SIZE(kInstruction_shsub8_lt_r4_r12_r10),
1392      kInstruction_shsub8_lt_r4_r12_r10,
1393    },
1394    {
1395      ARRAY_SIZE(kInstruction_shsub8_ge_r10_r5_r11),
1396      kInstruction_shsub8_ge_r10_r5_r11,
1397    },
1398    {
1399      ARRAY_SIZE(kInstruction_shsub8_ls_r3_r14_r4),
1400      kInstruction_shsub8_ls_r3_r14_r4,
1401    },
1402    {
1403      ARRAY_SIZE(kInstruction_shsub8_hi_r3_r6_r12),
1404      kInstruction_shsub8_hi_r3_r6_r12,
1405    },
1406    {
1407      ARRAY_SIZE(kInstruction_shsub8_hi_r6_r0_r4),
1408      kInstruction_shsub8_hi_r6_r0_r4,
1409    },
1410    {
1411      ARRAY_SIZE(kInstruction_shsub8_al_r11_r6_r0),
1412      kInstruction_shsub8_al_r11_r6_r0,
1413    },
1414    {
1415      ARRAY_SIZE(kInstruction_shsub8_mi_r3_r1_r9),
1416      kInstruction_shsub8_mi_r3_r1_r9,
1417    },
1418    {
1419      ARRAY_SIZE(kInstruction_shsub8_mi_r12_r13_r0),
1420      kInstruction_shsub8_mi_r12_r13_r0,
1421    },
1422    {
1423      ARRAY_SIZE(kInstruction_shsub8_le_r1_r2_r5),
1424      kInstruction_shsub8_le_r1_r2_r5,
1425    },
1426    {
1427      ARRAY_SIZE(kInstruction_shsub8_hi_r4_r3_r14),
1428      kInstruction_shsub8_hi_r4_r3_r14,
1429    },
1430    {
1431      ARRAY_SIZE(kInstruction_shsub8_eq_r6_r11_r11),
1432      kInstruction_shsub8_eq_r6_r11_r11,
1433    },
1434    {
1435      ARRAY_SIZE(kInstruction_shsub8_cc_r14_r11_r14),
1436      kInstruction_shsub8_cc_r14_r11_r14,
1437    },
1438    {
1439      ARRAY_SIZE(kInstruction_shsub8_hi_r4_r10_r0),
1440      kInstruction_shsub8_hi_r4_r10_r0,
1441    },
1442    {
1443      ARRAY_SIZE(kInstruction_shsub8_cc_r7_r11_r1),
1444      kInstruction_shsub8_cc_r7_r11_r1,
1445    },
1446    {
1447      ARRAY_SIZE(kInstruction_shsub8_mi_r14_r6_r10),
1448      kInstruction_shsub8_mi_r14_r6_r10,
1449    },
1450    {
1451      ARRAY_SIZE(kInstruction_shsub8_eq_r2_r0_r11),
1452      kInstruction_shsub8_eq_r2_r0_r11,
1453    },
1454    {
1455      ARRAY_SIZE(kInstruction_shsub8_mi_r13_r5_r12),
1456      kInstruction_shsub8_mi_r13_r5_r12,
1457    },
1458    {
1459      ARRAY_SIZE(kInstruction_shsub8_eq_r2_r12_r5),
1460      kInstruction_shsub8_eq_r2_r12_r5,
1461    },
1462    {
1463      ARRAY_SIZE(kInstruction_shsub8_le_r12_r0_r2),
1464      kInstruction_shsub8_le_r12_r0_r2,
1465    },
1466    {
1467      ARRAY_SIZE(kInstruction_shsub8_vc_r10_r10_r9),
1468      kInstruction_shsub8_vc_r10_r10_r9,
1469    },
1470    {
1471      ARRAY_SIZE(kInstruction_shsub8_ls_r11_r11_r8),
1472      kInstruction_shsub8_ls_r11_r11_r8,
1473    },
1474    {
1475      ARRAY_SIZE(kInstruction_shsub8_hi_r10_r11_r9),
1476      kInstruction_shsub8_hi_r10_r11_r9,
1477    },
1478    {
1479      ARRAY_SIZE(kInstruction_shsub8_vs_r7_r12_r14),
1480      kInstruction_shsub8_vs_r7_r12_r14,
1481    },
1482    {
1483      ARRAY_SIZE(kInstruction_shsub8_gt_r11_r14_r12),
1484      kInstruction_shsub8_gt_r11_r14_r12,
1485    },
1486    {
1487      ARRAY_SIZE(kInstruction_shsub8_vs_r0_r12_r8),
1488      kInstruction_shsub8_vs_r0_r12_r8,
1489    },
1490    {
1491      ARRAY_SIZE(kInstruction_shsub8_al_r0_r5_r7),
1492      kInstruction_shsub8_al_r0_r5_r7,
1493    },
1494    {
1495      ARRAY_SIZE(kInstruction_shsub8_hi_r5_r13_r8),
1496      kInstruction_shsub8_hi_r5_r13_r8,
1497    },
1498    {
1499      ARRAY_SIZE(kInstruction_shsub8_le_r9_r9_r7),
1500      kInstruction_shsub8_le_r9_r9_r7,
1501    },
1502    {
1503      ARRAY_SIZE(kInstruction_shsub8_cc_r4_r9_r5),
1504      kInstruction_shsub8_cc_r4_r9_r5,
1505    },
1506    {
1507      ARRAY_SIZE(kInstruction_shsub8_vs_r8_r1_r3),
1508      kInstruction_shsub8_vs_r8_r1_r3,
1509    },
1510    {
1511      ARRAY_SIZE(kInstruction_shsub8_cc_r0_r10_r12),
1512      kInstruction_shsub8_cc_r0_r10_r12,
1513    },
1514    {
1515      ARRAY_SIZE(kInstruction_shsub8_eq_r7_r14_r0),
1516      kInstruction_shsub8_eq_r7_r14_r0,
1517    },
1518    {
1519      ARRAY_SIZE(kInstruction_shsub8_vs_r12_r9_r11),
1520      kInstruction_shsub8_vs_r12_r9_r11,
1521    },
1522    {
1523      ARRAY_SIZE(kInstruction_shsub8_gt_r5_r9_r11),
1524      kInstruction_shsub8_gt_r5_r9_r11,
1525    },
1526    {
1527      ARRAY_SIZE(kInstruction_shsub8_cs_r14_r13_r7),
1528      kInstruction_shsub8_cs_r14_r13_r7,
1529    },
1530    {
1531      ARRAY_SIZE(kInstruction_shsub8_mi_r11_r3_r10),
1532      kInstruction_shsub8_mi_r11_r3_r10,
1533    },
1534    {
1535      ARRAY_SIZE(kInstruction_shsub8_hi_r11_r8_r12),
1536      kInstruction_shsub8_hi_r11_r8_r12,
1537    },
1538    {
1539      ARRAY_SIZE(kInstruction_shsub8_cs_r3_r8_r13),
1540      kInstruction_shsub8_cs_r3_r8_r13,
1541    },
1542    {
1543      ARRAY_SIZE(kInstruction_shsub8_pl_r10_r12_r6),
1544      kInstruction_shsub8_pl_r10_r12_r6,
1545    },
1546    {
1547      ARRAY_SIZE(kInstruction_shsub8_vc_r7_r3_r2),
1548      kInstruction_shsub8_vc_r7_r3_r2,
1549    },
1550    {
1551      ARRAY_SIZE(kInstruction_shsub8_mi_r9_r0_r8),
1552      kInstruction_shsub8_mi_r9_r0_r8,
1553    },
1554    {
1555      ARRAY_SIZE(kInstruction_shsub8_eq_r2_r13_r7),
1556      kInstruction_shsub8_eq_r2_r13_r7,
1557    },
1558    {
1559      ARRAY_SIZE(kInstruction_shsub8_ne_r2_r14_r0),
1560      kInstruction_shsub8_ne_r2_r14_r0,
1561    },
1562    {
1563      ARRAY_SIZE(kInstruction_shsub8_vs_r4_r10_r0),
1564      kInstruction_shsub8_vs_r4_r10_r0,
1565    },
1566    {
1567      ARRAY_SIZE(kInstruction_shsub8_ls_r0_r2_r2),
1568      kInstruction_shsub8_ls_r0_r2_r2,
1569    },
1570    {
1571      ARRAY_SIZE(kInstruction_shsub8_cc_r1_r6_r0),
1572      kInstruction_shsub8_cc_r1_r6_r0,
1573    },
1574    {
1575      ARRAY_SIZE(kInstruction_shsub8_lt_r12_r0_r8),
1576      kInstruction_shsub8_lt_r12_r0_r8,
1577    },
1578    {
1579      ARRAY_SIZE(kInstruction_shsub8_cc_r9_r3_r14),
1580      kInstruction_shsub8_cc_r9_r3_r14,
1581    },
1582    {
1583      ARRAY_SIZE(kInstruction_shsub8_vs_r7_r9_r1),
1584      kInstruction_shsub8_vs_r7_r9_r1,
1585    },
1586    {
1587      ARRAY_SIZE(kInstruction_shsub8_eq_r11_r9_r14),
1588      kInstruction_shsub8_eq_r11_r9_r14,
1589    },
1590    {
1591      ARRAY_SIZE(kInstruction_shsub8_pl_r6_r10_r4),
1592      kInstruction_shsub8_pl_r6_r10_r4,
1593    },
1594    {
1595      ARRAY_SIZE(kInstruction_shsub8_ne_r8_r5_r6),
1596      kInstruction_shsub8_ne_r8_r5_r6,
1597    },
1598    {
1599      ARRAY_SIZE(kInstruction_shsub8_cs_r0_r6_r2),
1600      kInstruction_shsub8_cs_r0_r6_r2,
1601    },
1602    {
1603      ARRAY_SIZE(kInstruction_shsub8_eq_r11_r12_r4),
1604      kInstruction_shsub8_eq_r11_r12_r4,
1605    },
1606    {
1607      ARRAY_SIZE(kInstruction_shsub8_lt_r14_r3_r14),
1608      kInstruction_shsub8_lt_r14_r3_r14,
1609    },
1610    {
1611      ARRAY_SIZE(kInstruction_shsub8_le_r7_r12_r14),
1612      kInstruction_shsub8_le_r7_r12_r14,
1613    },
1614    {
1615      ARRAY_SIZE(kInstruction_shsub8_hi_r2_r9_r9),
1616      kInstruction_shsub8_hi_r2_r9_r9,
1617    },
1618    {
1619      ARRAY_SIZE(kInstruction_shsub8_ne_r8_r1_r0),
1620      kInstruction_shsub8_ne_r8_r1_r0,
1621    },
1622    {
1623      ARRAY_SIZE(kInstruction_shsub8_cc_r5_r11_r2),
1624      kInstruction_shsub8_cc_r5_r11_r2,
1625    },
1626    {
1627      ARRAY_SIZE(kInstruction_shsub8_hi_r0_r1_r2),
1628      kInstruction_shsub8_hi_r0_r1_r2,
1629    },
1630    {
1631      ARRAY_SIZE(kInstruction_shsub8_al_r4_r9_r4),
1632      kInstruction_shsub8_al_r4_r9_r4,
1633    },
1634    {
1635      ARRAY_SIZE(kInstruction_shsub8_cs_r12_r7_r14),
1636      kInstruction_shsub8_cs_r12_r7_r14,
1637    },
1638    {
1639      ARRAY_SIZE(kInstruction_shsub8_cc_r4_r12_r10),
1640      kInstruction_shsub8_cc_r4_r12_r10,
1641    },
1642    {
1643      ARRAY_SIZE(kInstruction_shsub8_al_r3_r5_r10),
1644      kInstruction_shsub8_al_r3_r5_r10,
1645    },
1646    {
1647      ARRAY_SIZE(kInstruction_shsub8_mi_r5_r3_r7),
1648      kInstruction_shsub8_mi_r5_r3_r7,
1649    },
1650    {
1651      ARRAY_SIZE(kInstruction_shsub8_ls_r10_r6_r2),
1652      kInstruction_shsub8_ls_r10_r6_r2,
1653    },
1654    {
1655      ARRAY_SIZE(kInstruction_shsub8_mi_r0_r12_r11),
1656      kInstruction_shsub8_mi_r0_r12_r11,
1657    },
1658    {
1659      ARRAY_SIZE(kInstruction_shsub8_vc_r12_r5_r6),
1660      kInstruction_shsub8_vc_r12_r5_r6,
1661    },
1662    {
1663      ARRAY_SIZE(kInstruction_shsub8_cs_r3_r9_r4),
1664      kInstruction_shsub8_cs_r3_r9_r4,
1665    },
1666    {
1667      ARRAY_SIZE(kInstruction_shsub8_ls_r4_r9_r11),
1668      kInstruction_shsub8_ls_r4_r9_r11,
1669    },
1670    {
1671      ARRAY_SIZE(kInstruction_shsub8_le_r14_r8_r13),
1672      kInstruction_shsub8_le_r14_r8_r13,
1673    },
1674    {
1675      ARRAY_SIZE(kInstruction_shsub8_gt_r4_r10_r8),
1676      kInstruction_shsub8_gt_r4_r10_r8,
1677    },
1678    {
1679      ARRAY_SIZE(kInstruction_shsub8_al_r6_r9_r9),
1680      kInstruction_shsub8_al_r6_r9_r9,
1681    },
1682    {
1683      ARRAY_SIZE(kInstruction_shsub8_ne_r8_r5_r12),
1684      kInstruction_shsub8_ne_r8_r5_r12,
1685    },
1686    {
1687      ARRAY_SIZE(kInstruction_shsub8_ne_r0_r4_r8),
1688      kInstruction_shsub8_ne_r0_r4_r8,
1689    },
1690    {
1691      ARRAY_SIZE(kInstruction_shsub8_mi_r7_r13_r3),
1692      kInstruction_shsub8_mi_r7_r13_r3,
1693    },
1694    {
1695      ARRAY_SIZE(kInstruction_shsub8_cc_r11_r7_r0),
1696      kInstruction_shsub8_cc_r11_r7_r0,
1697    },
1698    {
1699      ARRAY_SIZE(kInstruction_shsub8_hi_r1_r0_r12),
1700      kInstruction_shsub8_hi_r1_r0_r12,
1701    },
1702    {
1703      ARRAY_SIZE(kInstruction_shsub8_lt_r8_r9_r3),
1704      kInstruction_shsub8_lt_r8_r9_r3,
1705    },
1706    {
1707      ARRAY_SIZE(kInstruction_shsub8_al_r0_r2_r1),
1708      kInstruction_shsub8_al_r0_r2_r1,
1709    },
1710    {
1711      ARRAY_SIZE(kInstruction_shsub8_vs_r4_r3_r14),
1712      kInstruction_shsub8_vs_r4_r3_r14,
1713    },
1714    {
1715      ARRAY_SIZE(kInstruction_shsub8_ge_r2_r11_r1),
1716      kInstruction_shsub8_ge_r2_r11_r1,
1717    },
1718    {
1719      ARRAY_SIZE(kInstruction_shsub8_lt_r12_r9_r6),
1720      kInstruction_shsub8_lt_r12_r9_r6,
1721    },
1722    {
1723      ARRAY_SIZE(kInstruction_shsub8_ls_r8_r2_r7),
1724      kInstruction_shsub8_ls_r8_r2_r7,
1725    },
1726    {
1727      ARRAY_SIZE(kInstruction_shsub8_le_r8_r13_r3),
1728      kInstruction_shsub8_le_r8_r13_r3,
1729    },
1730    {
1731      ARRAY_SIZE(kInstruction_shsub8_eq_r11_r13_r14),
1732      kInstruction_shsub8_eq_r11_r13_r14,
1733    },
1734    {
1735      ARRAY_SIZE(kInstruction_shsub8_lt_r1_r6_r13),
1736      kInstruction_shsub8_lt_r1_r6_r13,
1737    },
1738    {
1739      ARRAY_SIZE(kInstruction_shsub8_cs_r3_r8_r11),
1740      kInstruction_shsub8_cs_r3_r8_r11,
1741    },
1742    {
1743      ARRAY_SIZE(kInstruction_shsub8_pl_r12_r5_r4),
1744      kInstruction_shsub8_pl_r12_r5_r4,
1745    },
1746    {
1747      ARRAY_SIZE(kInstruction_shsub8_eq_r8_r7_r2),
1748      kInstruction_shsub8_eq_r8_r7_r2,
1749    },
1750    {
1751      ARRAY_SIZE(kInstruction_shsub8_ls_r2_r12_r2),
1752      kInstruction_shsub8_ls_r2_r12_r2,
1753    },
1754    {
1755      ARRAY_SIZE(kInstruction_shsub8_le_r14_r2_r3),
1756      kInstruction_shsub8_le_r14_r2_r3,
1757    },
1758    {
1759      ARRAY_SIZE(kInstruction_shsub8_ge_r10_r11_r6),
1760      kInstruction_shsub8_ge_r10_r11_r6,
1761    },
1762    {
1763      ARRAY_SIZE(kInstruction_shsub8_hi_r0_r2_r2),
1764      kInstruction_shsub8_hi_r0_r2_r2,
1765    },
1766    {
1767      ARRAY_SIZE(kInstruction_shsub8_ge_r2_r0_r2),
1768      kInstruction_shsub8_ge_r2_r0_r2,
1769    },
1770    {
1771      ARRAY_SIZE(kInstruction_shsub8_vs_r11_r14_r0),
1772      kInstruction_shsub8_vs_r11_r14_r0,
1773    },
1774    {
1775      ARRAY_SIZE(kInstruction_shsub8_lt_r2_r0_r1),
1776      kInstruction_shsub8_lt_r2_r0_r1,
1777    },
1778    {
1779      ARRAY_SIZE(kInstruction_shsub8_cs_r2_r5_r11),
1780      kInstruction_shsub8_cs_r2_r5_r11,
1781    },
1782    {
1783      ARRAY_SIZE(kInstruction_shsub8_ls_r7_r14_r5),
1784      kInstruction_shsub8_ls_r7_r14_r5,
1785    },
1786    {
1787      ARRAY_SIZE(kInstruction_shsub8_pl_r0_r0_r3),
1788      kInstruction_shsub8_pl_r0_r0_r3,
1789    },
1790    {
1791      ARRAY_SIZE(kInstruction_shsub8_ge_r6_r8_r8),
1792      kInstruction_shsub8_ge_r6_r8_r8,
1793    },
1794    {
1795      ARRAY_SIZE(kInstruction_shsub8_le_r11_r1_r10),
1796      kInstruction_shsub8_le_r11_r1_r10,
1797    },
1798    {
1799      ARRAY_SIZE(kInstruction_shsub8_vs_r5_r2_r7),
1800      kInstruction_shsub8_vs_r5_r2_r7,
1801    },
1802    {
1803      ARRAY_SIZE(kInstruction_shsub8_ne_r4_r4_r8),
1804      kInstruction_shsub8_ne_r4_r4_r8,
1805    },
1806    {
1807      ARRAY_SIZE(kInstruction_shsub8_cc_r9_r14_r13),
1808      kInstruction_shsub8_cc_r9_r14_r13,
1809    },
1810    {
1811      ARRAY_SIZE(kInstruction_shsub8_hi_r14_r6_r3),
1812      kInstruction_shsub8_hi_r14_r6_r3,
1813    },
1814    {
1815      ARRAY_SIZE(kInstruction_shsub8_al_r0_r8_r0),
1816      kInstruction_shsub8_al_r0_r8_r0,
1817    },
1818    {
1819      ARRAY_SIZE(kInstruction_shsub8_lt_r6_r11_r1),
1820      kInstruction_shsub8_lt_r6_r11_r1,
1821    },
1822    {
1823      ARRAY_SIZE(kInstruction_shsub8_ge_r7_r6_r12),
1824      kInstruction_shsub8_ge_r7_r6_r12,
1825    },
1826    {
1827      ARRAY_SIZE(kInstruction_shsub8_cs_r4_r6_r14),
1828      kInstruction_shsub8_cs_r4_r6_r14,
1829    },
1830    {
1831      ARRAY_SIZE(kInstruction_shsub8_cs_r7_r6_r7),
1832      kInstruction_shsub8_cs_r7_r6_r7,
1833    },
1834    {
1835      ARRAY_SIZE(kInstruction_shsub8_cs_r3_r7_r10),
1836      kInstruction_shsub8_cs_r3_r7_r10,
1837    },
1838    {
1839      ARRAY_SIZE(kInstruction_shsub8_ne_r0_r2_r1),
1840      kInstruction_shsub8_ne_r0_r2_r1,
1841    },
1842    {
1843      ARRAY_SIZE(kInstruction_shsub8_vs_r9_r10_r13),
1844      kInstruction_shsub8_vs_r9_r10_r13,
1845    },
1846    {
1847      ARRAY_SIZE(kInstruction_shsub8_vc_r11_r14_r12),
1848      kInstruction_shsub8_vc_r11_r14_r12,
1849    },
1850    {
1851      ARRAY_SIZE(kInstruction_shsub8_ge_r14_r8_r7),
1852      kInstruction_shsub8_ge_r14_r8_r7,
1853    },
1854    {
1855      ARRAY_SIZE(kInstruction_shsub8_lt_r13_r0_r11),
1856      kInstruction_shsub8_lt_r13_r0_r11,
1857    },
1858    {
1859      ARRAY_SIZE(kInstruction_shsub8_lt_r14_r13_r4),
1860      kInstruction_shsub8_lt_r14_r13_r4,
1861    },
1862    {
1863      ARRAY_SIZE(kInstruction_shsub8_al_r1_r10_r9),
1864      kInstruction_shsub8_al_r1_r10_r9,
1865    },
1866    {
1867      ARRAY_SIZE(kInstruction_shsub8_ge_r11_r14_r11),
1868      kInstruction_shsub8_ge_r11_r14_r11,
1869    },
1870    {
1871      ARRAY_SIZE(kInstruction_shsub8_cs_r11_r4_r11),
1872      kInstruction_shsub8_cs_r11_r4_r11,
1873    },
1874    {
1875      ARRAY_SIZE(kInstruction_shsub8_ge_r0_r14_r7),
1876      kInstruction_shsub8_ge_r0_r14_r7,
1877    },
1878    {
1879      ARRAY_SIZE(kInstruction_shsub8_mi_r1_r2_r9),
1880      kInstruction_shsub8_mi_r1_r2_r9,
1881    },
1882    {
1883      ARRAY_SIZE(kInstruction_shsub8_eq_r5_r12_r3),
1884      kInstruction_shsub8_eq_r5_r12_r3,
1885    },
1886    {
1887      ARRAY_SIZE(kInstruction_shsub8_ge_r1_r5_r12),
1888      kInstruction_shsub8_ge_r1_r5_r12,
1889    },
1890    {
1891      ARRAY_SIZE(kInstruction_shsub8_lt_r10_r11_r4),
1892      kInstruction_shsub8_lt_r10_r11_r4,
1893    },
1894    {
1895      ARRAY_SIZE(kInstruction_shsub8_le_r1_r1_r5),
1896      kInstruction_shsub8_le_r1_r1_r5,
1897    },
1898    {
1899      ARRAY_SIZE(kInstruction_shsub8_al_r9_r1_r8),
1900      kInstruction_shsub8_al_r9_r1_r8,
1901    },
1902    {
1903      ARRAY_SIZE(kInstruction_shsub8_ne_r6_r8_r4),
1904      kInstruction_shsub8_ne_r6_r8_r4,
1905    },
1906    {
1907      ARRAY_SIZE(kInstruction_shsub8_ge_r12_r2_r9),
1908      kInstruction_shsub8_ge_r12_r2_r9,
1909    },
1910    {
1911      ARRAY_SIZE(kInstruction_shsub8_pl_r4_r3_r10),
1912      kInstruction_shsub8_pl_r4_r3_r10,
1913    },
1914    {
1915      ARRAY_SIZE(kInstruction_shsub8_eq_r14_r4_r11),
1916      kInstruction_shsub8_eq_r14_r4_r11,
1917    },
1918    {
1919      ARRAY_SIZE(kInstruction_shsub8_cc_r9_r7_r6),
1920      kInstruction_shsub8_cc_r9_r7_r6,
1921    },
1922    {
1923      ARRAY_SIZE(kInstruction_shsub8_ge_r12_r4_r5),
1924      kInstruction_shsub8_ge_r12_r4_r5,
1925    },
1926    {
1927      ARRAY_SIZE(kInstruction_shsub8_hi_r2_r3_r4),
1928      kInstruction_shsub8_hi_r2_r3_r4,
1929    },
1930    {
1931      ARRAY_SIZE(kInstruction_shsub8_cs_r0_r3_r1),
1932      kInstruction_shsub8_cs_r0_r3_r1,
1933    },
1934    {
1935      ARRAY_SIZE(kInstruction_shsub8_hi_r6_r2_r8),
1936      kInstruction_shsub8_hi_r6_r2_r8,
1937    },
1938    {
1939      ARRAY_SIZE(kInstruction_shsub8_cc_r3_r14_r13),
1940      kInstruction_shsub8_cc_r3_r14_r13,
1941    },
1942    {
1943      ARRAY_SIZE(kInstruction_shsub8_gt_r11_r4_r7),
1944      kInstruction_shsub8_gt_r11_r4_r7,
1945    },
1946    {
1947      ARRAY_SIZE(kInstruction_shsub8_hi_r5_r0_r12),
1948      kInstruction_shsub8_hi_r5_r0_r12,
1949    },
1950    {
1951      ARRAY_SIZE(kInstruction_shsub8_gt_r0_r14_r14),
1952      kInstruction_shsub8_gt_r0_r14_r14,
1953    },
1954    {
1955      ARRAY_SIZE(kInstruction_shsub8_hi_r9_r0_r10),
1956      kInstruction_shsub8_hi_r9_r0_r10,
1957    },
1958    {
1959      ARRAY_SIZE(kInstruction_shsub8_vc_r7_r11_r8),
1960      kInstruction_shsub8_vc_r7_r11_r8,
1961    },
1962    {
1963      ARRAY_SIZE(kInstruction_shsub8_pl_r11_r9_r6),
1964      kInstruction_shsub8_pl_r11_r9_r6,
1965    },
1966    {
1967      ARRAY_SIZE(kInstruction_shsub8_al_r3_r3_r7),
1968      kInstruction_shsub8_al_r3_r3_r7,
1969    },
1970    {
1971      ARRAY_SIZE(kInstruction_shsub8_mi_r5_r7_r9),
1972      kInstruction_shsub8_mi_r5_r7_r9,
1973    },
1974    {
1975      ARRAY_SIZE(kInstruction_shsub8_cc_r11_r2_r4),
1976      kInstruction_shsub8_cc_r11_r2_r4,
1977    },
1978    {
1979      ARRAY_SIZE(kInstruction_shsub8_cc_r9_r13_r10),
1980      kInstruction_shsub8_cc_r9_r13_r10,
1981    },
1982    {
1983      ARRAY_SIZE(kInstruction_shsub8_al_r5_r2_r6),
1984      kInstruction_shsub8_al_r5_r2_r6,
1985    },
1986    {
1987      ARRAY_SIZE(kInstruction_shsub8_ge_r9_r4_r6),
1988      kInstruction_shsub8_ge_r9_r4_r6,
1989    },
1990    {
1991      ARRAY_SIZE(kInstruction_shsub8_ls_r3_r3_r4),
1992      kInstruction_shsub8_ls_r3_r3_r4,
1993    },
1994    {
1995      ARRAY_SIZE(kInstruction_shsub8_ge_r14_r1_r8),
1996      kInstruction_shsub8_ge_r14_r1_r8,
1997    },
1998    {
1999      ARRAY_SIZE(kInstruction_shsub8_ls_r7_r12_r7),
2000      kInstruction_shsub8_ls_r7_r12_r7,
2001    },
2002    {
2003      ARRAY_SIZE(kInstruction_shsub8_al_r11_r10_r5),
2004      kInstruction_shsub8_al_r11_r10_r5,
2005    },
2006    {
2007      ARRAY_SIZE(kInstruction_shsub8_al_r7_r4_r6),
2008      kInstruction_shsub8_al_r7_r4_r6,
2009    },
2010    {
2011      ARRAY_SIZE(kInstruction_shsub8_vs_r12_r4_r10),
2012      kInstruction_shsub8_vs_r12_r4_r10,
2013    },
2014    {
2015      ARRAY_SIZE(kInstruction_shsub8_eq_r4_r4_r4),
2016      kInstruction_shsub8_eq_r4_r4_r4,
2017    },
2018    {
2019      ARRAY_SIZE(kInstruction_shsub8_vs_r6_r6_r12),
2020      kInstruction_shsub8_vs_r6_r6_r12,
2021    },
2022    {
2023      ARRAY_SIZE(kInstruction_shsub8_pl_r9_r3_r5),
2024      kInstruction_shsub8_pl_r9_r3_r5,
2025    },
2026    {
2027      ARRAY_SIZE(kInstruction_shsub8_eq_r6_r5_r13),
2028      kInstruction_shsub8_eq_r6_r5_r13,
2029    },
2030    {
2031      ARRAY_SIZE(kInstruction_shsub8_cc_r8_r2_r12),
2032      kInstruction_shsub8_cc_r8_r2_r12,
2033    },
2034    {
2035      ARRAY_SIZE(kInstruction_shsub8_le_r4_r2_r0),
2036      kInstruction_shsub8_le_r4_r2_r0,
2037    },
2038    {
2039      ARRAY_SIZE(kInstruction_shsub8_lt_r7_r9_r8),
2040      kInstruction_shsub8_lt_r7_r9_r8,
2041    },
2042    {
2043      ARRAY_SIZE(kInstruction_shsub8_le_r4_r7_r11),
2044      kInstruction_shsub8_le_r4_r7_r11,
2045    },
2046    {
2047      ARRAY_SIZE(kInstruction_shsub8_eq_r5_r7_r5),
2048      kInstruction_shsub8_eq_r5_r7_r5,
2049    },
2050    {
2051      ARRAY_SIZE(kInstruction_shsub8_vc_r10_r7_r12),
2052      kInstruction_shsub8_vc_r10_r7_r12,
2053    },
2054    {
2055      ARRAY_SIZE(kInstruction_shsub8_eq_r7_r10_r6),
2056      kInstruction_shsub8_eq_r7_r10_r6,
2057    },
2058    {
2059      ARRAY_SIZE(kInstruction_shsub8_pl_r1_r12_r2),
2060      kInstruction_shsub8_pl_r1_r12_r2,
2061    },
2062    {
2063      ARRAY_SIZE(kInstruction_shsub8_le_r14_r6_r6),
2064      kInstruction_shsub8_le_r14_r6_r6,
2065    },
2066    {
2067      ARRAY_SIZE(kInstruction_shsub8_ne_r3_r8_r8),
2068      kInstruction_shsub8_ne_r3_r8_r8,
2069    },
2070    {
2071      ARRAY_SIZE(kInstruction_shsub8_eq_r4_r12_r8),
2072      kInstruction_shsub8_eq_r4_r12_r8,
2073    },
2074    {
2075      ARRAY_SIZE(kInstruction_shsub8_ge_r11_r2_r3),
2076      kInstruction_shsub8_ge_r11_r2_r3,
2077    },
2078    {
2079      ARRAY_SIZE(kInstruction_shsub8_hi_r12_r6_r11),
2080      kInstruction_shsub8_hi_r12_r6_r11,
2081    },
2082    {
2083      ARRAY_SIZE(kInstruction_shsub8_cs_r4_r5_r10),
2084      kInstruction_shsub8_cs_r4_r5_r10,
2085    },
2086    {
2087      ARRAY_SIZE(kInstruction_shsub8_ge_r10_r2_r10),
2088      kInstruction_shsub8_ge_r10_r2_r10,
2089    },
2090    {
2091      ARRAY_SIZE(kInstruction_shsub8_ge_r5_r14_r6),
2092      kInstruction_shsub8_ge_r5_r14_r6,
2093    },
2094    {
2095      ARRAY_SIZE(kInstruction_shsub8_gt_r13_r7_r5),
2096      kInstruction_shsub8_gt_r13_r7_r5,
2097    },
2098    {
2099      ARRAY_SIZE(kInstruction_shsub8_ge_r13_r4_r12),
2100      kInstruction_shsub8_ge_r13_r4_r12,
2101    },
2102    {
2103      ARRAY_SIZE(kInstruction_shsub8_lt_r8_r10_r14),
2104      kInstruction_shsub8_lt_r8_r10_r14,
2105    },
2106    {
2107      ARRAY_SIZE(kInstruction_shsub8_le_r4_r3_r13),
2108      kInstruction_shsub8_le_r4_r3_r13,
2109    },
2110    {
2111      ARRAY_SIZE(kInstruction_shsub8_pl_r0_r9_r0),
2112      kInstruction_shsub8_pl_r0_r9_r0,
2113    },
2114    {
2115      ARRAY_SIZE(kInstruction_shsub8_eq_r2_r3_r1),
2116      kInstruction_shsub8_eq_r2_r3_r1,
2117    },
2118    {
2119      ARRAY_SIZE(kInstruction_shsub8_vc_r0_r0_r3),
2120      kInstruction_shsub8_vc_r0_r0_r3,
2121    },
2122    {
2123      ARRAY_SIZE(kInstruction_shsub8_mi_r10_r8_r11),
2124      kInstruction_shsub8_mi_r10_r8_r11,
2125    },
2126    {
2127      ARRAY_SIZE(kInstruction_shsub8_mi_r5_r14_r14),
2128      kInstruction_shsub8_mi_r5_r14_r14,
2129    },
2130    {
2131      ARRAY_SIZE(kInstruction_shsub8_gt_r5_r11_r2),
2132      kInstruction_shsub8_gt_r5_r11_r2,
2133    },
2134    {
2135      ARRAY_SIZE(kInstruction_shsub8_al_r4_r7_r11),
2136      kInstruction_shsub8_al_r4_r7_r11,
2137    },
2138  };
2139  
2140  #endif  // VIXL_ASSEMBLER_COND_RD_RN_RM_A32_SHSUB8_H_
2141