• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2016, 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 from the
30 // test/aarch32/config/template-assembler-aarch32.cc.in template file using
31 // tools/generate_tests.py.
32 //
33 // PLEASE DO NOT EDIT.
34 // -----------------------------------------------------------------------------
35 
36 
37 #include "test-runner.h"
38 
39 #include "test-utils.h"
40 #include "test-utils-aarch32.h"
41 
42 #include "aarch32/assembler-aarch32.h"
43 #include "aarch32/macro-assembler-aarch32.h"
44 
45 #define BUF_SIZE (4096)
46 
47 namespace vixl {
48 namespace aarch32 {
49 
50 // List of instruction mnemonics.
51 #define FOREACH_INSTRUCTION(M) \
52   M(add)                       \
53   M(sub)
54 
55 
56 // The following definitions are defined again in each generated test, therefore
57 // we need to place them in an anomymous namespace. It expresses that they are
58 // local to this file only, and the compiler is not allowed to share these types
59 // across test files during template instantiation. Specifically, `Operands` has
60 // various layouts across generated tests so it absolutely cannot be shared.
61 
62 #ifdef VIXL_INCLUDE_TARGET_T32
63 namespace {
64 
65 // Values to be passed to the assembler to produce the instruction under test.
66 struct Operands {
67   Condition cond;
68   Register rd;
69   Register rn;
70   int32_t immediate;
71 };
72 
73 // This structure contains all data needed to test one specific
74 // instruction.
75 struct TestData {
76   // The `operands` field represents what to pass to the assembler to
77   // produce the instruction.
78   Operands operands;
79   // True if we need to generate an IT instruction for this test to be valid.
80   bool in_it_block;
81   // The condition to give the IT instruction, this will be set to "al" by
82   // default.
83   Condition it_condition;
84   // Description of the operands, used for error reporting.
85   const char* operands_description;
86   // Unique identifier, used for generating traces.
87   const char* identifier;
88 };
89 
90 struct TestResult {
91   size_t size;
92   const byte* encoding;
93 };
94 
95 // Each element of this array produce one instruction encoding.
96 const TestData kTests[] =
97     {{{mi, r3, r3, 90}, true, mi, "mi r3 r3 90", "mi_r3_r3_90"},
98      {{vc, r6, r6, 138}, true, vc, "vc r6 r6 138", "vc_r6_r6_138"},
99      {{cc, r5, r5, 72}, true, cc, "cc r5 r5 72", "cc_r5_r5_72"},
100      {{ge, r6, r6, 181}, true, ge, "ge r6 r6 181", "ge_r6_r6_181"},
101      {{cc, r1, r1, 143}, true, cc, "cc r1 r1 143", "cc_r1_r1_143"},
102      {{vc, r5, r5, 114}, true, vc, "vc r5 r5 114", "vc_r5_r5_114"},
103      {{ge, r4, r4, 195}, true, ge, "ge r4 r4 195", "ge_r4_r4_195"},
104      {{lt, r0, r0, 203}, true, lt, "lt r0 r0 203", "lt_r0_r0_203"},
105      {{hi, r1, r1, 98}, true, hi, "hi r1 r1 98", "hi_r1_r1_98"},
106      {{gt, r3, r3, 0}, true, gt, "gt r3 r3 0", "gt_r3_r3_0"},
107      {{vs, r5, r5, 195}, true, vs, "vs r5 r5 195", "vs_r5_r5_195"},
108      {{le, r6, r6, 39}, true, le, "le r6 r6 39", "le_r6_r6_39"},
109      {{mi, r0, r0, 231}, true, mi, "mi r0 r0 231", "mi_r0_r0_231"},
110      {{mi, r5, r5, 220}, true, mi, "mi r5 r5 220", "mi_r5_r5_220"},
111      {{hi, r4, r4, 60}, true, hi, "hi r4 r4 60", "hi_r4_r4_60"},
112      {{vc, r0, r0, 83}, true, vc, "vc r0 r0 83", "vc_r0_r0_83"},
113      {{lt, r3, r3, 207}, true, lt, "lt r3 r3 207", "lt_r3_r3_207"},
114      {{vs, r3, r3, 101}, true, vs, "vs r3 r3 101", "vs_r3_r3_101"},
115      {{cs, r0, r0, 182}, true, cs, "cs r0 r0 182", "cs_r0_r0_182"},
116      {{vs, r0, r0, 53}, true, vs, "vs r0 r0 53", "vs_r0_r0_53"},
117      {{hi, r7, r7, 142}, true, hi, "hi r7 r7 142", "hi_r7_r7_142"},
118      {{ls, r5, r5, 89}, true, ls, "ls r5 r5 89", "ls_r5_r5_89"},
119      {{ls, r5, r5, 32}, true, ls, "ls r5 r5 32", "ls_r5_r5_32"},
120      {{ls, r1, r1, 29}, true, ls, "ls r1 r1 29", "ls_r1_r1_29"},
121      {{hi, r3, r3, 62}, true, hi, "hi r3 r3 62", "hi_r3_r3_62"},
122      {{eq, r3, r3, 216}, true, eq, "eq r3 r3 216", "eq_r3_r3_216"},
123      {{mi, r5, r5, 167}, true, mi, "mi r5 r5 167", "mi_r5_r5_167"},
124      {{ge, r6, r6, 88}, true, ge, "ge r6 r6 88", "ge_r6_r6_88"},
125      {{lt, r1, r1, 158}, true, lt, "lt r1 r1 158", "lt_r1_r1_158"},
126      {{ge, r5, r5, 242}, true, ge, "ge r5 r5 242", "ge_r5_r5_242"},
127      {{ls, r4, r4, 225}, true, ls, "ls r4 r4 225", "ls_r4_r4_225"},
128      {{eq, r0, r0, 4}, true, eq, "eq r0 r0 4", "eq_r0_r0_4"},
129      {{vs, r1, r1, 98}, true, vs, "vs r1 r1 98", "vs_r1_r1_98"},
130      {{lt, r7, r7, 224}, true, lt, "lt r7 r7 224", "lt_r7_r7_224"},
131      {{eq, r5, r5, 162}, true, eq, "eq r5 r5 162", "eq_r5_r5_162"},
132      {{gt, r5, r5, 139}, true, gt, "gt r5 r5 139", "gt_r5_r5_139"},
133      {{cc, r4, r4, 68}, true, cc, "cc r4 r4 68", "cc_r4_r4_68"},
134      {{vc, r0, r0, 2}, true, vc, "vc r0 r0 2", "vc_r0_r0_2"},
135      {{ls, r3, r3, 114}, true, ls, "ls r3 r3 114", "ls_r3_r3_114"},
136      {{vs, r7, r7, 220}, true, vs, "vs r7 r7 220", "vs_r7_r7_220"},
137      {{cs, r6, r6, 78}, true, cs, "cs r6 r6 78", "cs_r6_r6_78"},
138      {{cs, r7, r7, 129}, true, cs, "cs r7 r7 129", "cs_r7_r7_129"},
139      {{hi, r3, r3, 17}, true, hi, "hi r3 r3 17", "hi_r3_r3_17"},
140      {{cs, r0, r0, 14}, true, cs, "cs r0 r0 14", "cs_r0_r0_14"},
141      {{hi, r3, r3, 20}, true, hi, "hi r3 r3 20", "hi_r3_r3_20"},
142      {{ne, r4, r4, 210}, true, ne, "ne r4 r4 210", "ne_r4_r4_210"},
143      {{eq, r3, r3, 172}, true, eq, "eq r3 r3 172", "eq_r3_r3_172"},
144      {{vc, r3, r3, 203}, true, vc, "vc r3 r3 203", "vc_r3_r3_203"},
145      {{hi, r3, r3, 52}, true, hi, "hi r3 r3 52", "hi_r3_r3_52"},
146      {{eq, r0, r0, 248}, true, eq, "eq r0 r0 248", "eq_r0_r0_248"},
147      {{lt, r3, r3, 43}, true, lt, "lt r3 r3 43", "lt_r3_r3_43"},
148      {{eq, r4, r4, 233}, true, eq, "eq r4 r4 233", "eq_r4_r4_233"},
149      {{eq, r6, r6, 158}, true, eq, "eq r6 r6 158", "eq_r6_r6_158"},
150      {{vs, r7, r7, 194}, true, vs, "vs r7 r7 194", "vs_r7_r7_194"},
151      {{hi, r5, r5, 116}, true, hi, "hi r5 r5 116", "hi_r5_r5_116"},
152      {{vc, r7, r7, 11}, true, vc, "vc r7 r7 11", "vc_r7_r7_11"},
153      {{le, r4, r4, 0}, true, le, "le r4 r4 0", "le_r4_r4_0"},
154      {{ge, r1, r1, 103}, true, ge, "ge r1 r1 103", "ge_r1_r1_103"},
155      {{eq, r0, r0, 124}, true, eq, "eq r0 r0 124", "eq_r0_r0_124"},
156      {{mi, r5, r5, 57}, true, mi, "mi r5 r5 57", "mi_r5_r5_57"},
157      {{ge, r7, r7, 22}, true, ge, "ge r7 r7 22", "ge_r7_r7_22"},
158      {{mi, r6, r6, 99}, true, mi, "mi r6 r6 99", "mi_r6_r6_99"},
159      {{hi, r7, r7, 195}, true, hi, "hi r7 r7 195", "hi_r7_r7_195"},
160      {{vs, r4, r4, 142}, true, vs, "vs r4 r4 142", "vs_r4_r4_142"},
161      {{hi, r6, r6, 74}, true, hi, "hi r6 r6 74", "hi_r6_r6_74"},
162      {{ne, r1, r1, 131}, true, ne, "ne r1 r1 131", "ne_r1_r1_131"},
163      {{hi, r1, r1, 96}, true, hi, "hi r1 r1 96", "hi_r1_r1_96"},
164      {{eq, r2, r2, 248}, true, eq, "eq r2 r2 248", "eq_r2_r2_248"},
165      {{le, r2, r2, 252}, true, le, "le r2 r2 252", "le_r2_r2_252"},
166      {{cc, r2, r2, 93}, true, cc, "cc r2 r2 93", "cc_r2_r2_93"},
167      {{cc, r3, r3, 130}, true, cc, "cc r3 r3 130", "cc_r3_r3_130"},
168      {{pl, r0, r0, 0}, true, pl, "pl r0 r0 0", "pl_r0_r0_0"},
169      {{gt, r3, r3, 109}, true, gt, "gt r3 r3 109", "gt_r3_r3_109"},
170      {{vs, r1, r1, 192}, true, vs, "vs r1 r1 192", "vs_r1_r1_192"},
171      {{gt, r3, r3, 53}, true, gt, "gt r3 r3 53", "gt_r3_r3_53"},
172      {{lt, r6, r6, 229}, true, lt, "lt r6 r6 229", "lt_r6_r6_229"},
173      {{lt, r4, r4, 128}, true, lt, "lt r4 r4 128", "lt_r4_r4_128"},
174      {{ne, r2, r2, 168}, true, ne, "ne r2 r2 168", "ne_r2_r2_168"},
175      {{cs, r7, r7, 91}, true, cs, "cs r7 r7 91", "cs_r7_r7_91"},
176      {{mi, r5, r5, 112}, true, mi, "mi r5 r5 112", "mi_r5_r5_112"},
177      {{vc, r0, r0, 200}, true, vc, "vc r0 r0 200", "vc_r0_r0_200"},
178      {{cs, r5, r5, 82}, true, cs, "cs r5 r5 82", "cs_r5_r5_82"},
179      {{mi, r4, r4, 176}, true, mi, "mi r4 r4 176", "mi_r4_r4_176"},
180      {{ls, r2, r2, 202}, true, ls, "ls r2 r2 202", "ls_r2_r2_202"},
181      {{mi, r1, r1, 106}, true, mi, "mi r1 r1 106", "mi_r1_r1_106"},
182      {{cc, r4, r4, 144}, true, cc, "cc r4 r4 144", "cc_r4_r4_144"},
183      {{cc, r4, r4, 241}, true, cc, "cc r4 r4 241", "cc_r4_r4_241"},
184      {{vc, r3, r3, 107}, true, vc, "vc r3 r3 107", "vc_r3_r3_107"},
185      {{ls, r2, r2, 21}, true, ls, "ls r2 r2 21", "ls_r2_r2_21"},
186      {{mi, r2, r2, 54}, true, mi, "mi r2 r2 54", "mi_r2_r2_54"},
187      {{ge, r1, r1, 69}, true, ge, "ge r1 r1 69", "ge_r1_r1_69"},
188      {{pl, r2, r2, 165}, true, pl, "pl r2 r2 165", "pl_r2_r2_165"},
189      {{gt, r2, r2, 154}, true, gt, "gt r2 r2 154", "gt_r2_r2_154"},
190      {{gt, r4, r4, 195}, true, gt, "gt r4 r4 195", "gt_r4_r4_195"},
191      {{ne, r0, r0, 223}, true, ne, "ne r0 r0 223", "ne_r0_r0_223"},
192      {{vs, r6, r6, 79}, true, vs, "vs r6 r6 79", "vs_r6_r6_79"},
193      {{lt, r4, r4, 57}, true, lt, "lt r4 r4 57", "lt_r4_r4_57"},
194      {{vs, r0, r0, 157}, true, vs, "vs r0 r0 157", "vs_r0_r0_157"},
195      {{vc, r2, r2, 69}, true, vc, "vc r2 r2 69", "vc_r2_r2_69"},
196      {{vc, r7, r7, 167}, true, vc, "vc r7 r7 167", "vc_r7_r7_167"},
197      {{lt, r4, r4, 216}, true, lt, "lt r4 r4 216", "lt_r4_r4_216"},
198      {{le, r1, r1, 159}, true, le, "le r1 r1 159", "le_r1_r1_159"},
199      {{hi, r6, r6, 193}, true, hi, "hi r6 r6 193", "hi_r6_r6_193"},
200      {{gt, r7, r7, 194}, true, gt, "gt r7 r7 194", "gt_r7_r7_194"},
201      {{pl, r1, r1, 39}, true, pl, "pl r1 r1 39", "pl_r1_r1_39"},
202      {{lt, r5, r5, 215}, true, lt, "lt r5 r5 215", "lt_r5_r5_215"},
203      {{vc, r1, r1, 11}, true, vc, "vc r1 r1 11", "vc_r1_r1_11"},
204      {{le, r0, r0, 242}, true, le, "le r0 r0 242", "le_r0_r0_242"},
205      {{eq, r3, r3, 215}, true, eq, "eq r3 r3 215", "eq_r3_r3_215"},
206      {{vs, r3, r3, 37}, true, vs, "vs r3 r3 37", "vs_r3_r3_37"},
207      {{cs, r5, r5, 78}, true, cs, "cs r5 r5 78", "cs_r5_r5_78"},
208      {{ne, r1, r1, 158}, true, ne, "ne r1 r1 158", "ne_r1_r1_158"},
209      {{ne, r0, r0, 174}, true, ne, "ne r0 r0 174", "ne_r0_r0_174"},
210      {{le, r1, r1, 81}, true, le, "le r1 r1 81", "le_r1_r1_81"},
211      {{le, r5, r5, 250}, true, le, "le r5 r5 250", "le_r5_r5_250"},
212      {{pl, r7, r7, 101}, true, pl, "pl r7 r7 101", "pl_r7_r7_101"},
213      {{hi, r7, r7, 188}, true, hi, "hi r7 r7 188", "hi_r7_r7_188"},
214      {{hi, r4, r4, 88}, true, hi, "hi r4 r4 88", "hi_r4_r4_88"},
215      {{ls, r1, r1, 42}, true, ls, "ls r1 r1 42", "ls_r1_r1_42"},
216      {{vc, r2, r2, 19}, true, vc, "vc r2 r2 19", "vc_r2_r2_19"},
217      {{mi, r6, r6, 125}, true, mi, "mi r6 r6 125", "mi_r6_r6_125"},
218      {{ls, r2, r2, 82}, true, ls, "ls r2 r2 82", "ls_r2_r2_82"},
219      {{gt, r4, r4, 150}, true, gt, "gt r4 r4 150", "gt_r4_r4_150"},
220      {{ne, r5, r5, 40}, true, ne, "ne r5 r5 40", "ne_r5_r5_40"},
221      {{cs, r4, r4, 221}, true, cs, "cs r4 r4 221", "cs_r4_r4_221"},
222      {{cc, r6, r6, 120}, true, cc, "cc r6 r6 120", "cc_r6_r6_120"},
223      {{cc, r2, r2, 211}, true, cc, "cc r2 r2 211", "cc_r2_r2_211"},
224      {{cs, r6, r6, 67}, true, cs, "cs r6 r6 67", "cs_r6_r6_67"},
225      {{gt, r0, r0, 47}, true, gt, "gt r0 r0 47", "gt_r0_r0_47"},
226      {{pl, r7, r7, 75}, true, pl, "pl r7 r7 75", "pl_r7_r7_75"},
227      {{ls, r1, r1, 234}, true, ls, "ls r1 r1 234", "ls_r1_r1_234"},
228      {{gt, r2, r2, 113}, true, gt, "gt r2 r2 113", "gt_r2_r2_113"},
229      {{lt, r2, r2, 85}, true, lt, "lt r2 r2 85", "lt_r2_r2_85"},
230      {{hi, r6, r6, 240}, true, hi, "hi r6 r6 240", "hi_r6_r6_240"},
231      {{lt, r3, r3, 93}, true, lt, "lt r3 r3 93", "lt_r3_r3_93"},
232      {{lt, r4, r4, 192}, true, lt, "lt r4 r4 192", "lt_r4_r4_192"},
233      {{gt, r1, r1, 148}, true, gt, "gt r1 r1 148", "gt_r1_r1_148"},
234      {{cs, r2, r2, 122}, true, cs, "cs r2 r2 122", "cs_r2_r2_122"},
235      {{ne, r4, r4, 111}, true, ne, "ne r4 r4 111", "ne_r4_r4_111"},
236      {{cs, r2, r2, 47}, true, cs, "cs r2 r2 47", "cs_r2_r2_47"},
237      {{cs, r4, r4, 186}, true, cs, "cs r4 r4 186", "cs_r4_r4_186"},
238      {{le, r0, r0, 183}, true, le, "le r0 r0 183", "le_r0_r0_183"},
239      {{vs, r6, r6, 232}, true, vs, "vs r6 r6 232", "vs_r6_r6_232"},
240      {{cc, r3, r3, 99}, true, cc, "cc r3 r3 99", "cc_r3_r3_99"},
241      {{lt, r4, r4, 81}, true, lt, "lt r4 r4 81", "lt_r4_r4_81"},
242      {{lt, r3, r3, 192}, true, lt, "lt r3 r3 192", "lt_r3_r3_192"},
243      {{ls, r5, r5, 219}, true, ls, "ls r5 r5 219", "ls_r5_r5_219"},
244      {{lt, r4, r4, 153}, true, lt, "lt r4 r4 153", "lt_r4_r4_153"},
245      {{vs, r6, r6, 76}, true, vs, "vs r6 r6 76", "vs_r6_r6_76"},
246      {{eq, r7, r7, 37}, true, eq, "eq r7 r7 37", "eq_r7_r7_37"},
247      {{vs, r6, r6, 202}, true, vs, "vs r6 r6 202", "vs_r6_r6_202"},
248      {{vs, r2, r2, 7}, true, vs, "vs r2 r2 7", "vs_r2_r2_7"},
249      {{vs, r3, r3, 99}, true, vs, "vs r3 r3 99", "vs_r3_r3_99"},
250      {{vs, r0, r0, 224}, true, vs, "vs r0 r0 224", "vs_r0_r0_224"},
251      {{le, r5, r5, 26}, true, le, "le r5 r5 26", "le_r5_r5_26"},
252      {{eq, r0, r0, 92}, true, eq, "eq r0 r0 92", "eq_r0_r0_92"},
253      {{cc, r7, r7, 142}, true, cc, "cc r7 r7 142", "cc_r7_r7_142"},
254      {{ls, r2, r2, 20}, true, ls, "ls r2 r2 20", "ls_r2_r2_20"},
255      {{hi, r4, r4, 0}, true, hi, "hi r4 r4 0", "hi_r4_r4_0"},
256      {{ne, r0, r0, 107}, true, ne, "ne r0 r0 107", "ne_r0_r0_107"},
257      {{vs, r6, r6, 156}, true, vs, "vs r6 r6 156", "vs_r6_r6_156"},
258      {{le, r4, r4, 32}, true, le, "le r4 r4 32", "le_r4_r4_32"},
259      {{vc, r6, r6, 184}, true, vc, "vc r6 r6 184", "vc_r6_r6_184"},
260      {{cs, r7, r7, 215}, true, cs, "cs r7 r7 215", "cs_r7_r7_215"},
261      {{gt, r7, r7, 69}, true, gt, "gt r7 r7 69", "gt_r7_r7_69"},
262      {{le, r5, r5, 87}, true, le, "le r5 r5 87", "le_r5_r5_87"},
263      {{cs, r7, r7, 153}, true, cs, "cs r7 r7 153", "cs_r7_r7_153"},
264      {{mi, r0, r0, 54}, true, mi, "mi r0 r0 54", "mi_r0_r0_54"},
265      {{ne, r1, r1, 215}, true, ne, "ne r1 r1 215", "ne_r1_r1_215"},
266      {{pl, r2, r2, 175}, true, pl, "pl r2 r2 175", "pl_r2_r2_175"},
267      {{ne, r5, r5, 46}, true, ne, "ne r5 r5 46", "ne_r5_r5_46"},
268      {{le, r3, r3, 183}, true, le, "le r3 r3 183", "le_r3_r3_183"},
269      {{pl, r3, r3, 89}, true, pl, "pl r3 r3 89", "pl_r3_r3_89"},
270      {{ne, r0, r0, 229}, true, ne, "ne r0 r0 229", "ne_r0_r0_229"},
271      {{cc, r0, r0, 142}, true, cc, "cc r0 r0 142", "cc_r0_r0_142"},
272      {{ne, r3, r3, 101}, true, ne, "ne r3 r3 101", "ne_r3_r3_101"},
273      {{vc, r3, r3, 108}, true, vc, "vc r3 r3 108", "vc_r3_r3_108"},
274      {{eq, r7, r7, 96}, true, eq, "eq r7 r7 96", "eq_r7_r7_96"},
275      {{cc, r0, r0, 204}, true, cc, "cc r0 r0 204", "cc_r0_r0_204"},
276      {{hi, r6, r6, 58}, true, hi, "hi r6 r6 58", "hi_r6_r6_58"},
277      {{vc, r6, r6, 2}, true, vc, "vc r6 r6 2", "vc_r6_r6_2"},
278      {{cc, r0, r0, 21}, true, cc, "cc r0 r0 21", "cc_r0_r0_21"},
279      {{ge, r0, r0, 223}, true, ge, "ge r0 r0 223", "ge_r0_r0_223"},
280      {{eq, r3, r3, 82}, true, eq, "eq r3 r3 82", "eq_r3_r3_82"},
281      {{hi, r3, r3, 209}, true, hi, "hi r3 r3 209", "hi_r3_r3_209"},
282      {{vs, r3, r3, 89}, true, vs, "vs r3 r3 89", "vs_r3_r3_89"},
283      {{ls, r2, r2, 19}, true, ls, "ls r2 r2 19", "ls_r2_r2_19"},
284      {{ne, r3, r3, 127}, true, ne, "ne r3 r3 127", "ne_r3_r3_127"},
285      {{cc, r1, r1, 87}, true, cc, "cc r1 r1 87", "cc_r1_r1_87"},
286      {{lt, r0, r0, 36}, true, lt, "lt r0 r0 36", "lt_r0_r0_36"},
287      {{ne, r3, r3, 217}, true, ne, "ne r3 r3 217", "ne_r3_r3_217"},
288      {{hi, r2, r2, 92}, true, hi, "hi r2 r2 92", "hi_r2_r2_92"},
289      {{vs, r3, r3, 231}, true, vs, "vs r3 r3 231", "vs_r3_r3_231"},
290      {{vc, r2, r2, 8}, true, vc, "vc r2 r2 8", "vc_r2_r2_8"},
291      {{vs, r3, r3, 49}, true, vs, "vs r3 r3 49", "vs_r3_r3_49"},
292      {{pl, r3, r3, 223}, true, pl, "pl r3 r3 223", "pl_r3_r3_223"},
293      {{ls, r3, r3, 201}, true, ls, "ls r3 r3 201", "ls_r3_r3_201"},
294      {{vc, r7, r7, 215}, true, vc, "vc r7 r7 215", "vc_r7_r7_215"},
295      {{ge, r4, r4, 208}, true, ge, "ge r4 r4 208", "ge_r4_r4_208"},
296      {{eq, r4, r4, 170}, true, eq, "eq r4 r4 170", "eq_r4_r4_170"},
297      {{vs, r0, r0, 45}, true, vs, "vs r0 r0 45", "vs_r0_r0_45"},
298      {{mi, r4, r4, 237}, true, mi, "mi r4 r4 237", "mi_r4_r4_237"},
299      {{eq, r5, r5, 142}, true, eq, "eq r5 r5 142", "eq_r5_r5_142"},
300      {{eq, r4, r4, 100}, true, eq, "eq r4 r4 100", "eq_r4_r4_100"},
301      {{mi, r1, r1, 73}, true, mi, "mi r1 r1 73", "mi_r1_r1_73"},
302      {{lt, r0, r0, 244}, true, lt, "lt r0 r0 244", "lt_r0_r0_244"},
303      {{ge, r7, r7, 233}, true, ge, "ge r7 r7 233", "ge_r7_r7_233"},
304      {{vs, r3, r3, 253}, true, vs, "vs r3 r3 253", "vs_r3_r3_253"},
305      {{cs, r5, r5, 20}, true, cs, "cs r5 r5 20", "cs_r5_r5_20"},
306      {{pl, r2, r2, 84}, true, pl, "pl r2 r2 84", "pl_r2_r2_84"},
307      {{ne, r4, r4, 90}, true, ne, "ne r4 r4 90", "ne_r4_r4_90"},
308      {{ne, r6, r6, 32}, true, ne, "ne r6 r6 32", "ne_r6_r6_32"},
309      {{gt, r6, r6, 55}, true, gt, "gt r6 r6 55", "gt_r6_r6_55"},
310      {{pl, r2, r2, 95}, true, pl, "pl r2 r2 95", "pl_r2_r2_95"},
311      {{vc, r4, r4, 67}, true, vc, "vc r4 r4 67", "vc_r4_r4_67"},
312      {{vc, r3, r3, 236}, true, vc, "vc r3 r3 236", "vc_r3_r3_236"},
313      {{mi, r7, r7, 109}, true, mi, "mi r7 r7 109", "mi_r7_r7_109"},
314      {{hi, r0, r0, 174}, true, hi, "hi r0 r0 174", "hi_r0_r0_174"},
315      {{ne, r3, r3, 6}, true, ne, "ne r3 r3 6", "ne_r3_r3_6"},
316      {{mi, r4, r4, 17}, true, mi, "mi r4 r4 17", "mi_r4_r4_17"},
317      {{ls, r3, r3, 20}, true, ls, "ls r3 r3 20", "ls_r3_r3_20"},
318      {{mi, r7, r7, 93}, true, mi, "mi r7 r7 93", "mi_r7_r7_93"},
319      {{eq, r5, r5, 9}, true, eq, "eq r5 r5 9", "eq_r5_r5_9"},
320      {{cs, r4, r4, 88}, true, cs, "cs r4 r4 88", "cs_r4_r4_88"},
321      {{cs, r4, r4, 92}, true, cs, "cs r4 r4 92", "cs_r4_r4_92"},
322      {{gt, r4, r4, 69}, true, gt, "gt r4 r4 69", "gt_r4_r4_69"},
323      {{ge, r0, r0, 219}, true, ge, "ge r0 r0 219", "ge_r0_r0_219"},
324      {{gt, r4, r4, 15}, true, gt, "gt r4 r4 15", "gt_r4_r4_15"},
325      {{gt, r5, r5, 105}, true, gt, "gt r5 r5 105", "gt_r5_r5_105"},
326      {{hi, r2, r2, 229}, true, hi, "hi r2 r2 229", "hi_r2_r2_229"},
327      {{ls, r7, r7, 32}, true, ls, "ls r7 r7 32", "ls_r7_r7_32"},
328      {{gt, r5, r5, 79}, true, gt, "gt r5 r5 79", "gt_r5_r5_79"},
329      {{ls, r7, r7, 57}, true, ls, "ls r7 r7 57", "ls_r7_r7_57"},
330      {{pl, r2, r2, 17}, true, pl, "pl r2 r2 17", "pl_r2_r2_17"},
331      {{cc, r6, r6, 67}, true, cc, "cc r6 r6 67", "cc_r6_r6_67"},
332      {{cs, r7, r7, 11}, true, cs, "cs r7 r7 11", "cs_r7_r7_11"},
333      {{mi, r6, r6, 150}, true, mi, "mi r6 r6 150", "mi_r6_r6_150"},
334      {{pl, r3, r3, 241}, true, pl, "pl r3 r3 241", "pl_r3_r3_241"},
335      {{cc, r2, r2, 65}, true, cc, "cc r2 r2 65", "cc_r2_r2_65"},
336      {{ne, r4, r4, 81}, true, ne, "ne r4 r4 81", "ne_r4_r4_81"},
337      {{lt, r4, r4, 176}, true, lt, "lt r4 r4 176", "lt_r4_r4_176"},
338      {{cs, r7, r7, 58}, true, cs, "cs r7 r7 58", "cs_r7_r7_58"},
339      {{gt, r1, r1, 114}, true, gt, "gt r1 r1 114", "gt_r1_r1_114"},
340      {{vc, r7, r7, 4}, true, vc, "vc r7 r7 4", "vc_r7_r7_4"},
341      {{le, r3, r3, 110}, true, le, "le r3 r3 110", "le_r3_r3_110"},
342      {{vs, r1, r1, 149}, true, vs, "vs r1 r1 149", "vs_r1_r1_149"},
343      {{cs, r3, r3, 179}, true, cs, "cs r3 r3 179", "cs_r3_r3_179"},
344      {{vs, r7, r7, 199}, true, vs, "vs r7 r7 199", "vs_r7_r7_199"},
345      {{ge, r4, r4, 46}, true, ge, "ge r4 r4 46", "ge_r4_r4_46"},
346      {{ls, r1, r1, 98}, true, ls, "ls r1 r1 98", "ls_r1_r1_98"},
347      {{cs, r3, r3, 60}, true, cs, "cs r3 r3 60", "cs_r3_r3_60"},
348      {{vc, r2, r2, 201}, true, vc, "vc r2 r2 201", "vc_r2_r2_201"},
349      {{le, r5, r5, 128}, true, le, "le r5 r5 128", "le_r5_r5_128"},
350      {{vs, r4, r4, 39}, true, vs, "vs r4 r4 39", "vs_r4_r4_39"},
351      {{ls, r4, r4, 106}, true, ls, "ls r4 r4 106", "ls_r4_r4_106"},
352      {{le, r5, r5, 207}, true, le, "le r5 r5 207", "le_r5_r5_207"},
353      {{cs, r6, r6, 7}, true, cs, "cs r6 r6 7", "cs_r6_r6_7"},
354      {{ne, r5, r5, 133}, true, ne, "ne r5 r5 133", "ne_r5_r5_133"},
355      {{eq, r7, r7, 28}, true, eq, "eq r7 r7 28", "eq_r7_r7_28"},
356      {{pl, r7, r7, 154}, true, pl, "pl r7 r7 154", "pl_r7_r7_154"},
357      {{vs, r3, r3, 242}, true, vs, "vs r3 r3 242", "vs_r3_r3_242"},
358      {{eq, r6, r6, 221}, true, eq, "eq r6 r6 221", "eq_r6_r6_221"},
359      {{vs, r5, r5, 97}, true, vs, "vs r5 r5 97", "vs_r5_r5_97"},
360      {{ls, r5, r5, 70}, true, ls, "ls r5 r5 70", "ls_r5_r5_70"},
361      {{vc, r6, r6, 236}, true, vc, "vc r6 r6 236", "vc_r6_r6_236"},
362      {{ne, r2, r2, 236}, true, ne, "ne r2 r2 236", "ne_r2_r2_236"},
363      {{eq, r1, r1, 198}, true, eq, "eq r1 r1 198", "eq_r1_r1_198"},
364      {{vs, r3, r3, 134}, true, vs, "vs r3 r3 134", "vs_r3_r3_134"},
365      {{ne, r5, r5, 42}, true, ne, "ne r5 r5 42", "ne_r5_r5_42"},
366      {{ge, r6, r6, 223}, true, ge, "ge r6 r6 223", "ge_r6_r6_223"},
367      {{ge, r0, r0, 48}, true, ge, "ge r0 r0 48", "ge_r0_r0_48"},
368      {{hi, r7, r7, 146}, true, hi, "hi r7 r7 146", "hi_r7_r7_146"},
369      {{ge, r4, r4, 175}, true, ge, "ge r4 r4 175", "ge_r4_r4_175"},
370      {{gt, r4, r4, 142}, true, gt, "gt r4 r4 142", "gt_r4_r4_142"},
371      {{ne, r6, r6, 24}, true, ne, "ne r6 r6 24", "ne_r6_r6_24"},
372      {{lt, r2, r2, 152}, true, lt, "lt r2 r2 152", "lt_r2_r2_152"},
373      {{hi, r2, r2, 113}, true, hi, "hi r2 r2 113", "hi_r2_r2_113"},
374      {{vc, r4, r4, 135}, true, vc, "vc r4 r4 135", "vc_r4_r4_135"},
375      {{ls, r4, r4, 40}, true, ls, "ls r4 r4 40", "ls_r4_r4_40"},
376      {{cc, r2, r2, 199}, true, cc, "cc r2 r2 199", "cc_r2_r2_199"},
377      {{vs, r6, r6, 164}, true, vs, "vs r6 r6 164", "vs_r6_r6_164"},
378      {{le, r3, r3, 184}, true, le, "le r3 r3 184", "le_r3_r3_184"},
379      {{cs, r4, r4, 158}, true, cs, "cs r4 r4 158", "cs_r4_r4_158"},
380      {{vc, r5, r5, 212}, true, vc, "vc r5 r5 212", "vc_r5_r5_212"},
381      {{gt, r5, r5, 143}, true, gt, "gt r5 r5 143", "gt_r5_r5_143"},
382      {{ne, r0, r0, 186}, true, ne, "ne r0 r0 186", "ne_r0_r0_186"},
383      {{cs, r5, r5, 233}, true, cs, "cs r5 r5 233", "cs_r5_r5_233"},
384      {{le, r1, r1, 242}, true, le, "le r1 r1 242", "le_r1_r1_242"},
385      {{ge, r6, r6, 70}, true, ge, "ge r6 r6 70", "ge_r6_r6_70"},
386      {{cc, r7, r7, 234}, true, cc, "cc r7 r7 234", "cc_r7_r7_234"},
387      {{ls, r0, r0, 191}, true, ls, "ls r0 r0 191", "ls_r0_r0_191"},
388      {{pl, r3, r3, 236}, true, pl, "pl r3 r3 236", "pl_r3_r3_236"},
389      {{cc, r7, r7, 27}, true, cc, "cc r7 r7 27", "cc_r7_r7_27"},
390      {{vs, r0, r0, 169}, true, vs, "vs r0 r0 169", "vs_r0_r0_169"},
391      {{vs, r2, r2, 193}, true, vs, "vs r2 r2 193", "vs_r2_r2_193"},
392      {{lt, r6, r6, 198}, true, lt, "lt r6 r6 198", "lt_r6_r6_198"},
393      {{ge, r7, r7, 137}, true, ge, "ge r7 r7 137", "ge_r7_r7_137"},
394      {{vs, r1, r1, 183}, true, vs, "vs r1 r1 183", "vs_r1_r1_183"},
395      {{lt, r5, r5, 180}, true, lt, "lt r5 r5 180", "lt_r5_r5_180"},
396      {{le, r3, r3, 22}, true, le, "le r3 r3 22", "le_r3_r3_22"},
397      {{ls, r7, r7, 41}, true, ls, "ls r7 r7 41", "ls_r7_r7_41"},
398      {{vs, r6, r6, 71}, true, vs, "vs r6 r6 71", "vs_r6_r6_71"},
399      {{vs, r1, r1, 81}, true, vs, "vs r1 r1 81", "vs_r1_r1_81"},
400      {{vc, r0, r0, 181}, true, vc, "vc r0 r0 181", "vc_r0_r0_181"},
401      {{lt, r0, r0, 1}, true, lt, "lt r0 r0 1", "lt_r0_r0_1"},
402      {{le, r1, r1, 182}, true, le, "le r1 r1 182", "le_r1_r1_182"},
403      {{ls, r1, r1, 167}, true, ls, "ls r1 r1 167", "ls_r1_r1_167"},
404      {{hi, r7, r7, 221}, true, hi, "hi r7 r7 221", "hi_r7_r7_221"},
405      {{ge, r1, r1, 72}, true, ge, "ge r1 r1 72", "ge_r1_r1_72"},
406      {{pl, r7, r7, 95}, true, pl, "pl r7 r7 95", "pl_r7_r7_95"},
407      {{cs, r3, r3, 252}, true, cs, "cs r3 r3 252", "cs_r3_r3_252"},
408      {{eq, r3, r3, 224}, true, eq, "eq r3 r3 224", "eq_r3_r3_224"},
409      {{mi, r5, r5, 176}, true, mi, "mi r5 r5 176", "mi_r5_r5_176"},
410      {{le, r0, r0, 213}, true, le, "le r0 r0 213", "le_r0_r0_213"},
411      {{gt, r1, r1, 91}, true, gt, "gt r1 r1 91", "gt_r1_r1_91"},
412      {{vc, r5, r5, 236}, true, vc, "vc r5 r5 236", "vc_r5_r5_236"},
413      {{hi, r4, r4, 68}, true, hi, "hi r4 r4 68", "hi_r4_r4_68"},
414      {{ls, r6, r6, 201}, true, ls, "ls r6 r6 201", "ls_r6_r6_201"},
415      {{vs, r6, r6, 146}, true, vs, "vs r6 r6 146", "vs_r6_r6_146"},
416      {{le, r5, r5, 169}, true, le, "le r5 r5 169", "le_r5_r5_169"},
417      {{pl, r1, r1, 88}, true, pl, "pl r1 r1 88", "pl_r1_r1_88"},
418      {{cc, r4, r4, 26}, true, cc, "cc r4 r4 26", "cc_r4_r4_26"},
419      {{gt, r2, r2, 228}, true, gt, "gt r2 r2 228", "gt_r2_r2_228"},
420      {{vs, r5, r5, 175}, true, vs, "vs r5 r5 175", "vs_r5_r5_175"},
421      {{ne, r3, r3, 167}, true, ne, "ne r3 r3 167", "ne_r3_r3_167"},
422      {{ge, r6, r6, 21}, true, ge, "ge r6 r6 21", "ge_r6_r6_21"},
423      {{eq, r7, r7, 114}, true, eq, "eq r7 r7 114", "eq_r7_r7_114"},
424      {{cs, r0, r0, 26}, true, cs, "cs r0 r0 26", "cs_r0_r0_26"},
425      {{pl, r4, r4, 29}, true, pl, "pl r4 r4 29", "pl_r4_r4_29"},
426      {{le, r1, r1, 71}, true, le, "le r1 r1 71", "le_r1_r1_71"},
427      {{cc, r0, r0, 62}, true, cc, "cc r0 r0 62", "cc_r0_r0_62"},
428      {{eq, r4, r4, 138}, true, eq, "eq r4 r4 138", "eq_r4_r4_138"},
429      {{cc, r4, r4, 232}, true, cc, "cc r4 r4 232", "cc_r4_r4_232"},
430      {{vs, r3, r3, 111}, true, vs, "vs r3 r3 111", "vs_r3_r3_111"},
431      {{ls, r5, r5, 80}, true, ls, "ls r5 r5 80", "ls_r5_r5_80"},
432      {{hi, r4, r4, 102}, true, hi, "hi r4 r4 102", "hi_r4_r4_102"},
433      {{vc, r0, r0, 160}, true, vc, "vc r0 r0 160", "vc_r0_r0_160"},
434      {{eq, r4, r4, 81}, true, eq, "eq r4 r4 81", "eq_r4_r4_81"},
435      {{le, r7, r7, 147}, true, le, "le r7 r7 147", "le_r7_r7_147"},
436      {{ls, r5, r5, 122}, true, ls, "ls r5 r5 122", "ls_r5_r5_122"},
437      {{lt, r3, r3, 19}, true, lt, "lt r3 r3 19", "lt_r3_r3_19"},
438      {{mi, r1, r1, 149}, true, mi, "mi r1 r1 149", "mi_r1_r1_149"},
439      {{cc, r1, r1, 199}, true, cc, "cc r1 r1 199", "cc_r1_r1_199"},
440      {{pl, r3, r3, 75}, true, pl, "pl r3 r3 75", "pl_r3_r3_75"},
441      {{eq, r6, r6, 187}, true, eq, "eq r6 r6 187", "eq_r6_r6_187"},
442      {{gt, r3, r3, 205}, true, gt, "gt r3 r3 205", "gt_r3_r3_205"},
443      {{lt, r1, r1, 24}, true, lt, "lt r1 r1 24", "lt_r1_r1_24"},
444      {{mi, r6, r6, 55}, true, mi, "mi r6 r6 55", "mi_r6_r6_55"},
445      {{cc, r3, r3, 183}, true, cc, "cc r3 r3 183", "cc_r3_r3_183"},
446      {{cc, r3, r3, 116}, true, cc, "cc r3 r3 116", "cc_r3_r3_116"},
447      {{ne, r3, r3, 139}, true, ne, "ne r3 r3 139", "ne_r3_r3_139"},
448      {{mi, r2, r2, 57}, true, mi, "mi r2 r2 57", "mi_r2_r2_57"},
449      {{pl, r2, r2, 67}, true, pl, "pl r2 r2 67", "pl_r2_r2_67"},
450      {{lt, r1, r1, 117}, true, lt, "lt r1 r1 117", "lt_r1_r1_117"},
451      {{ge, r6, r6, 24}, true, ge, "ge r6 r6 24", "ge_r6_r6_24"},
452      {{cs, r2, r2, 96}, true, cs, "cs r2 r2 96", "cs_r2_r2_96"},
453      {{vc, r5, r5, 156}, true, vc, "vc r5 r5 156", "vc_r5_r5_156"},
454      {{vs, r0, r0, 125}, true, vs, "vs r0 r0 125", "vs_r0_r0_125"},
455      {{ls, r7, r7, 183}, true, ls, "ls r7 r7 183", "ls_r7_r7_183"},
456      {{vs, r1, r1, 30}, true, vs, "vs r1 r1 30", "vs_r1_r1_30"},
457      {{cs, r1, r1, 62}, true, cs, "cs r1 r1 62", "cs_r1_r1_62"},
458      {{vc, r1, r1, 8}, true, vc, "vc r1 r1 8", "vc_r1_r1_8"},
459      {{vc, r4, r4, 184}, true, vc, "vc r4 r4 184", "vc_r4_r4_184"},
460      {{vc, r1, r1, 235}, true, vc, "vc r1 r1 235", "vc_r1_r1_235"},
461      {{gt, r2, r2, 78}, true, gt, "gt r2 r2 78", "gt_r2_r2_78"},
462      {{hi, r2, r2, 160}, true, hi, "hi r2 r2 160", "hi_r2_r2_160"},
463      {{le, r3, r3, 243}, true, le, "le r3 r3 243", "le_r3_r3_243"},
464      {{gt, r5, r5, 46}, true, gt, "gt r5 r5 46", "gt_r5_r5_46"},
465      {{ls, r5, r5, 148}, true, ls, "ls r5 r5 148", "ls_r5_r5_148"},
466      {{vs, r2, r2, 232}, true, vs, "vs r2 r2 232", "vs_r2_r2_232"},
467      {{hi, r0, r0, 13}, true, hi, "hi r0 r0 13", "hi_r0_r0_13"},
468      {{hi, r2, r2, 45}, true, hi, "hi r2 r2 45", "hi_r2_r2_45"},
469      {{mi, r1, r1, 197}, true, mi, "mi r1 r1 197", "mi_r1_r1_197"},
470      {{ls, r7, r7, 91}, true, ls, "ls r7 r7 91", "ls_r7_r7_91"},
471      {{cs, r2, r2, 192}, true, cs, "cs r2 r2 192", "cs_r2_r2_192"},
472      {{cs, r4, r4, 202}, true, cs, "cs r4 r4 202", "cs_r4_r4_202"},
473      {{ne, r6, r6, 115}, true, ne, "ne r6 r6 115", "ne_r6_r6_115"},
474      {{mi, r7, r7, 173}, true, mi, "mi r7 r7 173", "mi_r7_r7_173"},
475      {{vs, r1, r1, 236}, true, vs, "vs r1 r1 236", "vs_r1_r1_236"},
476      {{pl, r3, r3, 49}, true, pl, "pl r3 r3 49", "pl_r3_r3_49"},
477      {{cs, r1, r1, 193}, true, cs, "cs r1 r1 193", "cs_r1_r1_193"},
478      {{gt, r4, r4, 200}, true, gt, "gt r4 r4 200", "gt_r4_r4_200"},
479      {{lt, r4, r4, 141}, true, lt, "lt r4 r4 141", "lt_r4_r4_141"},
480      {{gt, r6, r6, 142}, true, gt, "gt r6 r6 142", "gt_r6_r6_142"},
481      {{le, r2, r2, 39}, true, le, "le r2 r2 39", "le_r2_r2_39"},
482      {{cc, r3, r3, 98}, true, cc, "cc r3 r3 98", "cc_r3_r3_98"},
483      {{le, r4, r4, 77}, true, le, "le r4 r4 77", "le_r4_r4_77"},
484      {{ne, r2, r2, 140}, true, ne, "ne r2 r2 140", "ne_r2_r2_140"},
485      {{cc, r3, r3, 117}, true, cc, "cc r3 r3 117", "cc_r3_r3_117"},
486      {{gt, r3, r3, 242}, true, gt, "gt r3 r3 242", "gt_r3_r3_242"},
487      {{ls, r5, r5, 90}, true, ls, "ls r5 r5 90", "ls_r5_r5_90"},
488      {{gt, r7, r7, 16}, true, gt, "gt r7 r7 16", "gt_r7_r7_16"},
489      {{vs, r5, r5, 131}, true, vs, "vs r5 r5 131", "vs_r5_r5_131"},
490      {{vc, r6, r6, 145}, true, vc, "vc r6 r6 145", "vc_r6_r6_145"},
491      {{lt, r0, r0, 94}, true, lt, "lt r0 r0 94", "lt_r0_r0_94"},
492      {{vs, r3, r3, 246}, true, vs, "vs r3 r3 246", "vs_r3_r3_246"},
493      {{le, r0, r0, 124}, true, le, "le r0 r0 124", "le_r0_r0_124"},
494      {{eq, r7, r7, 60}, true, eq, "eq r7 r7 60", "eq_r7_r7_60"},
495      {{mi, r3, r3, 244}, true, mi, "mi r3 r3 244", "mi_r3_r3_244"},
496      {{ls, r5, r5, 110}, true, ls, "ls r5 r5 110", "ls_r5_r5_110"},
497      {{lt, r2, r2, 168}, true, lt, "lt r2 r2 168", "lt_r2_r2_168"},
498      {{cs, r3, r3, 217}, true, cs, "cs r3 r3 217", "cs_r3_r3_217"},
499      {{lt, r2, r2, 155}, true, lt, "lt r2 r2 155", "lt_r2_r2_155"},
500      {{gt, r2, r2, 43}, true, gt, "gt r2 r2 43", "gt_r2_r2_43"},
501      {{pl, r3, r3, 247}, true, pl, "pl r3 r3 247", "pl_r3_r3_247"},
502      {{mi, r0, r0, 193}, true, mi, "mi r0 r0 193", "mi_r0_r0_193"},
503      {{pl, r7, r7, 22}, true, pl, "pl r7 r7 22", "pl_r7_r7_22"},
504      {{vs, r7, r7, 222}, true, vs, "vs r7 r7 222", "vs_r7_r7_222"},
505      {{le, r0, r0, 205}, true, le, "le r0 r0 205", "le_r0_r0_205"},
506      {{lt, r4, r4, 67}, true, lt, "lt r4 r4 67", "lt_r4_r4_67"},
507      {{cc, r1, r1, 60}, true, cc, "cc r1 r1 60", "cc_r1_r1_60"},
508      {{cc, r4, r4, 4}, true, cc, "cc r4 r4 4", "cc_r4_r4_4"},
509      {{vc, r1, r1, 22}, true, vc, "vc r1 r1 22", "vc_r1_r1_22"},
510      {{vc, r4, r4, 94}, true, vc, "vc r4 r4 94", "vc_r4_r4_94"},
511      {{ls, r5, r5, 180}, true, ls, "ls r5 r5 180", "ls_r5_r5_180"},
512      {{cc, r7, r7, 87}, true, cc, "cc r7 r7 87", "cc_r7_r7_87"},
513      {{ls, r3, r3, 175}, true, ls, "ls r3 r3 175", "ls_r3_r3_175"},
514      {{ge, r7, r7, 222}, true, ge, "ge r7 r7 222", "ge_r7_r7_222"},
515      {{ne, r2, r2, 166}, true, ne, "ne r2 r2 166", "ne_r2_r2_166"},
516      {{ls, r1, r1, 191}, true, ls, "ls r1 r1 191", "ls_r1_r1_191"},
517      {{vs, r0, r0, 20}, true, vs, "vs r0 r0 20", "vs_r0_r0_20"},
518      {{hi, r1, r1, 253}, true, hi, "hi r1 r1 253", "hi_r1_r1_253"},
519      {{eq, r1, r1, 2}, true, eq, "eq r1 r1 2", "eq_r1_r1_2"},
520      {{ls, r6, r6, 74}, true, ls, "ls r6 r6 74", "ls_r6_r6_74"},
521      {{mi, r6, r6, 242}, true, mi, "mi r6 r6 242", "mi_r6_r6_242"},
522      {{le, r6, r6, 242}, true, le, "le r6 r6 242", "le_r6_r6_242"},
523      {{cs, r7, r7, 110}, true, cs, "cs r7 r7 110", "cs_r7_r7_110"},
524      {{ge, r5, r5, 23}, true, ge, "ge r5 r5 23", "ge_r5_r5_23"},
525      {{lt, r5, r5, 87}, true, lt, "lt r5 r5 87", "lt_r5_r5_87"},
526      {{lt, r0, r0, 91}, true, lt, "lt r0 r0 91", "lt_r0_r0_91"},
527      {{cc, r2, r2, 68}, true, cc, "cc r2 r2 68", "cc_r2_r2_68"},
528      {{vs, r2, r2, 171}, true, vs, "vs r2 r2 171", "vs_r2_r2_171"},
529      {{pl, r6, r6, 118}, true, pl, "pl r6 r6 118", "pl_r6_r6_118"},
530      {{gt, r6, r6, 232}, true, gt, "gt r6 r6 232", "gt_r6_r6_232"},
531      {{ls, r0, r0, 255}, true, ls, "ls r0 r0 255", "ls_r0_r0_255"},
532      {{mi, r4, r4, 142}, true, mi, "mi r4 r4 142", "mi_r4_r4_142"},
533      {{lt, r5, r5, 198}, true, lt, "lt r5 r5 198", "lt_r5_r5_198"},
534      {{lt, r0, r0, 114}, true, lt, "lt r0 r0 114", "lt_r0_r0_114"},
535      {{lt, r5, r5, 129}, true, lt, "lt r5 r5 129", "lt_r5_r5_129"},
536      {{pl, r5, r5, 145}, true, pl, "pl r5 r5 145", "pl_r5_r5_145"},
537      {{hi, r7, r7, 43}, true, hi, "hi r7 r7 43", "hi_r7_r7_43"},
538      {{vs, r1, r1, 67}, true, vs, "vs r1 r1 67", "vs_r1_r1_67"},
539      {{vc, r7, r7, 78}, true, vc, "vc r7 r7 78", "vc_r7_r7_78"},
540      {{cc, r1, r1, 56}, true, cc, "cc r1 r1 56", "cc_r1_r1_56"},
541      {{vs, r0, r0, 12}, true, vs, "vs r0 r0 12", "vs_r0_r0_12"},
542      {{pl, r5, r5, 35}, true, pl, "pl r5 r5 35", "pl_r5_r5_35"},
543      {{vs, r5, r5, 105}, true, vs, "vs r5 r5 105", "vs_r5_r5_105"},
544      {{vc, r1, r1, 88}, true, vc, "vc r1 r1 88", "vc_r1_r1_88"},
545      {{lt, r2, r2, 69}, true, lt, "lt r2 r2 69", "lt_r2_r2_69"},
546      {{cs, r3, r3, 255}, true, cs, "cs r3 r3 255", "cs_r3_r3_255"},
547      {{ls, r6, r6, 5}, true, ls, "ls r6 r6 5", "ls_r6_r6_5"},
548      {{vc, r6, r6, 171}, true, vc, "vc r6 r6 171", "vc_r6_r6_171"},
549      {{pl, r5, r5, 166}, true, pl, "pl r5 r5 166", "pl_r5_r5_166"},
550      {{ls, r1, r1, 121}, true, ls, "ls r1 r1 121", "ls_r1_r1_121"},
551      {{ne, r4, r4, 120}, true, ne, "ne r4 r4 120", "ne_r4_r4_120"},
552      {{ls, r4, r4, 130}, true, ls, "ls r4 r4 130", "ls_r4_r4_130"},
553      {{ge, r6, r6, 104}, true, ge, "ge r6 r6 104", "ge_r6_r6_104"},
554      {{ge, r3, r3, 227}, true, ge, "ge r3 r3 227", "ge_r3_r3_227"},
555      {{vs, r3, r3, 202}, true, vs, "vs r3 r3 202", "vs_r3_r3_202"},
556      {{ne, r4, r4, 198}, true, ne, "ne r4 r4 198", "ne_r4_r4_198"},
557      {{cc, r5, r5, 78}, true, cc, "cc r5 r5 78", "cc_r5_r5_78"},
558      {{cs, r3, r3, 7}, true, cs, "cs r3 r3 7", "cs_r3_r3_7"},
559      {{mi, r0, r0, 35}, true, mi, "mi r0 r0 35", "mi_r0_r0_35"},
560      {{hi, r3, r3, 53}, true, hi, "hi r3 r3 53", "hi_r3_r3_53"},
561      {{cs, r5, r5, 150}, true, cs, "cs r5 r5 150", "cs_r5_r5_150"},
562      {{ge, r2, r2, 143}, true, ge, "ge r2 r2 143", "ge_r2_r2_143"},
563      {{hi, r0, r0, 229}, true, hi, "hi r0 r0 229", "hi_r0_r0_229"},
564      {{vc, r6, r6, 141}, true, vc, "vc r6 r6 141", "vc_r6_r6_141"},
565      {{pl, r7, r7, 76}, true, pl, "pl r7 r7 76", "pl_r7_r7_76"},
566      {{ne, r5, r5, 135}, true, ne, "ne r5 r5 135", "ne_r5_r5_135"},
567      {{hi, r5, r5, 51}, true, hi, "hi r5 r5 51", "hi_r5_r5_51"},
568      {{eq, r6, r6, 95}, true, eq, "eq r6 r6 95", "eq_r6_r6_95"},
569      {{cs, r6, r6, 227}, true, cs, "cs r6 r6 227", "cs_r6_r6_227"},
570      {{ge, r6, r6, 46}, true, ge, "ge r6 r6 46", "ge_r6_r6_46"},
571      {{ne, r1, r1, 150}, true, ne, "ne r1 r1 150", "ne_r1_r1_150"},
572      {{eq, r1, r1, 22}, true, eq, "eq r1 r1 22", "eq_r1_r1_22"},
573      {{vs, r2, r2, 220}, true, vs, "vs r2 r2 220", "vs_r2_r2_220"},
574      {{ls, r6, r6, 240}, true, ls, "ls r6 r6 240", "ls_r6_r6_240"},
575      {{le, r4, r4, 43}, true, le, "le r4 r4 43", "le_r4_r4_43"},
576      {{ls, r7, r7, 243}, true, ls, "ls r7 r7 243", "ls_r7_r7_243"},
577      {{hi, r3, r3, 191}, true, hi, "hi r3 r3 191", "hi_r3_r3_191"},
578      {{hi, r0, r0, 235}, true, hi, "hi r0 r0 235", "hi_r0_r0_235"},
579      {{gt, r1, r1, 59}, true, gt, "gt r1 r1 59", "gt_r1_r1_59"},
580      {{vc, r3, r3, 165}, true, vc, "vc r3 r3 165", "vc_r3_r3_165"},
581      {{vc, r1, r1, 46}, true, vc, "vc r1 r1 46", "vc_r1_r1_46"},
582      {{eq, r6, r6, 232}, true, eq, "eq r6 r6 232", "eq_r6_r6_232"},
583      {{ls, r3, r3, 132}, true, ls, "ls r3 r3 132", "ls_r3_r3_132"},
584      {{ls, r7, r7, 207}, true, ls, "ls r7 r7 207", "ls_r7_r7_207"},
585      {{vs, r7, r7, 129}, true, vs, "vs r7 r7 129", "vs_r7_r7_129"},
586      {{ne, r3, r3, 41}, true, ne, "ne r3 r3 41", "ne_r3_r3_41"},
587      {{ls, r3, r3, 153}, true, ls, "ls r3 r3 153", "ls_r3_r3_153"},
588      {{vc, r4, r4, 34}, true, vc, "vc r4 r4 34", "vc_r4_r4_34"},
589      {{cc, r7, r7, 140}, true, cc, "cc r7 r7 140", "cc_r7_r7_140"},
590      {{ne, r0, r0, 108}, true, ne, "ne r0 r0 108", "ne_r0_r0_108"},
591      {{ls, r7, r7, 44}, true, ls, "ls r7 r7 44", "ls_r7_r7_44"},
592      {{cs, r6, r6, 128}, true, cs, "cs r6 r6 128", "cs_r6_r6_128"},
593      {{ne, r3, r3, 195}, true, ne, "ne r3 r3 195", "ne_r3_r3_195"},
594      {{hi, r1, r1, 239}, true, hi, "hi r1 r1 239", "hi_r1_r1_239"},
595      {{cc, r3, r3, 243}, true, cc, "cc r3 r3 243", "cc_r3_r3_243"},
596      {{pl, r1, r1, 30}, true, pl, "pl r1 r1 30", "pl_r1_r1_30"},
597      {{lt, r4, r4, 48}, true, lt, "lt r4 r4 48", "lt_r4_r4_48"},
598      {{gt, r5, r5, 92}, true, gt, "gt r5 r5 92", "gt_r5_r5_92"},
599      {{pl, r6, r6, 167}, true, pl, "pl r6 r6 167", "pl_r6_r6_167"},
600      {{lt, r0, r0, 8}, true, lt, "lt r0 r0 8", "lt_r0_r0_8"},
601      {{vc, r4, r4, 49}, true, vc, "vc r4 r4 49", "vc_r4_r4_49"},
602      {{mi, r3, r3, 109}, true, mi, "mi r3 r3 109", "mi_r3_r3_109"},
603      {{lt, r7, r7, 58}, true, lt, "lt r7 r7 58", "lt_r7_r7_58"},
604      {{lt, r6, r6, 54}, true, lt, "lt r6 r6 54", "lt_r6_r6_54"},
605      {{eq, r7, r7, 36}, true, eq, "eq r7 r7 36", "eq_r7_r7_36"},
606      {{ls, r0, r0, 230}, true, ls, "ls r0 r0 230", "ls_r0_r0_230"},
607      {{eq, r7, r7, 133}, true, eq, "eq r7 r7 133", "eq_r7_r7_133"},
608      {{hi, r0, r0, 153}, true, hi, "hi r0 r0 153", "hi_r0_r0_153"},
609      {{cs, r6, r6, 154}, true, cs, "cs r6 r6 154", "cs_r6_r6_154"},
610      {{eq, r6, r6, 178}, true, eq, "eq r6 r6 178", "eq_r6_r6_178"},
611      {{hi, r0, r0, 206}, true, hi, "hi r0 r0 206", "hi_r0_r0_206"},
612      {{ls, r4, r4, 164}, true, ls, "ls r4 r4 164", "ls_r4_r4_164"},
613      {{lt, r3, r3, 60}, true, lt, "lt r3 r3 60", "lt_r3_r3_60"},
614      {{cs, r5, r5, 44}, true, cs, "cs r5 r5 44", "cs_r5_r5_44"},
615      {{le, r5, r5, 158}, true, le, "le r5 r5 158", "le_r5_r5_158"},
616      {{lt, r3, r3, 40}, true, lt, "lt r3 r3 40", "lt_r3_r3_40"},
617      {{le, r0, r0, 53}, true, le, "le r0 r0 53", "le_r0_r0_53"},
618      {{le, r3, r3, 189}, true, le, "le r3 r3 189", "le_r3_r3_189"},
619      {{vs, r3, r3, 8}, true, vs, "vs r3 r3 8", "vs_r3_r3_8"},
620      {{vs, r1, r1, 141}, true, vs, "vs r1 r1 141", "vs_r1_r1_141"},
621      {{vs, r3, r3, 141}, true, vs, "vs r3 r3 141", "vs_r3_r3_141"},
622      {{vs, r2, r2, 141}, true, vs, "vs r2 r2 141", "vs_r2_r2_141"},
623      {{ls, r6, r6, 254}, true, ls, "ls r6 r6 254", "ls_r6_r6_254"},
624      {{ne, r3, r3, 142}, true, ne, "ne r3 r3 142", "ne_r3_r3_142"},
625      {{hi, r0, r0, 167}, true, hi, "hi r0 r0 167", "hi_r0_r0_167"},
626      {{cs, r6, r6, 84}, true, cs, "cs r6 r6 84", "cs_r6_r6_84"},
627      {{cs, r2, r2, 234}, true, cs, "cs r2 r2 234", "cs_r2_r2_234"},
628      {{le, r6, r6, 59}, true, le, "le r6 r6 59", "le_r6_r6_59"},
629      {{hi, r2, r2, 135}, true, hi, "hi r2 r2 135", "hi_r2_r2_135"},
630      {{gt, r7, r7, 47}, true, gt, "gt r7 r7 47", "gt_r7_r7_47"},
631      {{eq, r6, r6, 122}, true, eq, "eq r6 r6 122", "eq_r6_r6_122"},
632      {{vc, r7, r7, 118}, true, vc, "vc r7 r7 118", "vc_r7_r7_118"},
633      {{cs, r2, r2, 180}, true, cs, "cs r2 r2 180", "cs_r2_r2_180"},
634      {{cs, r2, r2, 181}, true, cs, "cs r2 r2 181", "cs_r2_r2_181"},
635      {{cc, r1, r1, 190}, true, cc, "cc r1 r1 190", "cc_r1_r1_190"},
636      {{ge, r5, r5, 205}, true, ge, "ge r5 r5 205", "ge_r5_r5_205"},
637      {{gt, r7, r7, 26}, true, gt, "gt r7 r7 26", "gt_r7_r7_26"},
638      {{gt, r4, r4, 70}, true, gt, "gt r4 r4 70", "gt_r4_r4_70"},
639      {{eq, r5, r5, 102}, true, eq, "eq r5 r5 102", "eq_r5_r5_102"},
640      {{ls, r0, r0, 57}, true, ls, "ls r0 r0 57", "ls_r0_r0_57"},
641      {{pl, r1, r1, 229}, true, pl, "pl r1 r1 229", "pl_r1_r1_229"},
642      {{ge, r2, r2, 185}, true, ge, "ge r2 r2 185", "ge_r2_r2_185"},
643      {{ge, r7, r7, 80}, true, ge, "ge r7 r7 80", "ge_r7_r7_80"},
644      {{cs, r6, r6, 123}, true, cs, "cs r6 r6 123", "cs_r6_r6_123"},
645      {{pl, r4, r4, 137}, true, pl, "pl r4 r4 137", "pl_r4_r4_137"},
646      {{cc, r1, r1, 137}, true, cc, "cc r1 r1 137", "cc_r1_r1_137"},
647      {{cs, r1, r1, 67}, true, cs, "cs r1 r1 67", "cs_r1_r1_67"},
648      {{vc, r6, r6, 207}, true, vc, "vc r6 r6 207", "vc_r6_r6_207"},
649      {{cc, r0, r0, 50}, true, cc, "cc r0 r0 50", "cc_r0_r0_50"},
650      {{mi, r3, r3, 72}, true, mi, "mi r3 r3 72", "mi_r3_r3_72"},
651      {{ls, r3, r3, 31}, true, ls, "ls r3 r3 31", "ls_r3_r3_31"},
652      {{vc, r2, r2, 253}, true, vc, "vc r2 r2 253", "vc_r2_r2_253"},
653      {{vc, r3, r3, 155}, true, vc, "vc r3 r3 155", "vc_r3_r3_155"},
654      {{lt, r0, r0, 115}, true, lt, "lt r0 r0 115", "lt_r0_r0_115"},
655      {{mi, r5, r5, 236}, true, mi, "mi r5 r5 236", "mi_r5_r5_236"},
656      {{eq, r5, r5, 151}, true, eq, "eq r5 r5 151", "eq_r5_r5_151"},
657      {{eq, r5, r5, 11}, true, eq, "eq r5 r5 11", "eq_r5_r5_11"},
658      {{pl, r5, r5, 119}, true, pl, "pl r5 r5 119", "pl_r5_r5_119"},
659      {{cc, r3, r3, 192}, true, cc, "cc r3 r3 192", "cc_r3_r3_192"},
660      {{vc, r7, r7, 0}, true, vc, "vc r7 r7 0", "vc_r7_r7_0"},
661      {{hi, r1, r1, 163}, true, hi, "hi r1 r1 163", "hi_r1_r1_163"},
662      {{hi, r2, r2, 136}, true, hi, "hi r2 r2 136", "hi_r2_r2_136"},
663      {{cc, r5, r5, 235}, true, cc, "cc r5 r5 235", "cc_r5_r5_235"},
664      {{pl, r5, r5, 96}, true, pl, "pl r5 r5 96", "pl_r5_r5_96"},
665      {{ge, r3, r3, 163}, true, ge, "ge r3 r3 163", "ge_r3_r3_163"},
666      {{cs, r5, r5, 239}, true, cs, "cs r5 r5 239", "cs_r5_r5_239"},
667      {{vs, r5, r5, 27}, true, vs, "vs r5 r5 27", "vs_r5_r5_27"},
668      {{le, r6, r6, 65}, true, le, "le r6 r6 65", "le_r6_r6_65"},
669      {{gt, r0, r0, 169}, true, gt, "gt r0 r0 169", "gt_r0_r0_169"},
670      {{ls, r7, r7, 190}, true, ls, "ls r7 r7 190", "ls_r7_r7_190"},
671      {{lt, r5, r5, 205}, true, lt, "lt r5 r5 205", "lt_r5_r5_205"},
672      {{ne, r2, r2, 253}, true, ne, "ne r2 r2 253", "ne_r2_r2_253"},
673      {{cs, r1, r1, 224}, true, cs, "cs r1 r1 224", "cs_r1_r1_224"},
674      {{vs, r1, r1, 85}, true, vs, "vs r1 r1 85", "vs_r1_r1_85"},
675      {{le, r0, r0, 31}, true, le, "le r0 r0 31", "le_r0_r0_31"},
676      {{lt, r2, r2, 7}, true, lt, "lt r2 r2 7", "lt_r2_r2_7"},
677      {{ne, r0, r0, 161}, true, ne, "ne r0 r0 161", "ne_r0_r0_161"},
678      {{le, r5, r5, 46}, true, le, "le r5 r5 46", "le_r5_r5_46"},
679      {{pl, r0, r0, 235}, true, pl, "pl r0 r0 235", "pl_r0_r0_235"},
680      {{eq, r6, r6, 113}, true, eq, "eq r6 r6 113", "eq_r6_r6_113"},
681      {{mi, r6, r6, 45}, true, mi, "mi r6 r6 45", "mi_r6_r6_45"},
682      {{cs, r0, r0, 62}, true, cs, "cs r0 r0 62", "cs_r0_r0_62"},
683      {{ge, r2, r2, 225}, true, ge, "ge r2 r2 225", "ge_r2_r2_225"},
684      {{vc, r7, r7, 47}, true, vc, "vc r7 r7 47", "vc_r7_r7_47"},
685      {{vs, r5, r5, 125}, true, vs, "vs r5 r5 125", "vs_r5_r5_125"},
686      {{ls, r2, r2, 184}, true, ls, "ls r2 r2 184", "ls_r2_r2_184"},
687      {{ls, r3, r3, 113}, true, ls, "ls r3 r3 113", "ls_r3_r3_113"},
688      {{gt, r3, r3, 126}, true, gt, "gt r3 r3 126", "gt_r3_r3_126"},
689      {{gt, r5, r5, 101}, true, gt, "gt r5 r5 101", "gt_r5_r5_101"},
690      {{lt, r2, r2, 147}, true, lt, "lt r2 r2 147", "lt_r2_r2_147"},
691      {{le, r5, r5, 60}, true, le, "le r5 r5 60", "le_r5_r5_60"},
692      {{ne, r3, r3, 249}, true, ne, "ne r3 r3 249", "ne_r3_r3_249"},
693      {{cs, r3, r3, 6}, true, cs, "cs r3 r3 6", "cs_r3_r3_6"},
694      {{vc, r3, r3, 65}, true, vc, "vc r3 r3 65", "vc_r3_r3_65"},
695      {{ls, r0, r0, 137}, true, ls, "ls r0 r0 137", "ls_r0_r0_137"},
696      {{ls, r0, r0, 148}, true, ls, "ls r0 r0 148", "ls_r0_r0_148"},
697      {{cs, r2, r2, 128}, true, cs, "cs r2 r2 128", "cs_r2_r2_128"},
698      {{eq, r4, r4, 38}, true, eq, "eq r4 r4 38", "eq_r4_r4_38"},
699      {{ne, r2, r2, 57}, true, ne, "ne r2 r2 57", "ne_r2_r2_57"},
700      {{ls, r2, r2, 125}, true, ls, "ls r2 r2 125", "ls_r2_r2_125"},
701      {{lt, r7, r7, 139}, true, lt, "lt r7 r7 139", "lt_r7_r7_139"},
702      {{eq, r2, r2, 213}, true, eq, "eq r2 r2 213", "eq_r2_r2_213"},
703      {{vc, r0, r0, 7}, true, vc, "vc r0 r0 7", "vc_r0_r0_7"},
704      {{lt, r0, r0, 243}, true, lt, "lt r0 r0 243", "lt_r0_r0_243"},
705      {{lt, r0, r0, 227}, true, lt, "lt r0 r0 227", "lt_r0_r0_227"},
706      {{ge, r6, r6, 110}, true, ge, "ge r6 r6 110", "ge_r6_r6_110"},
707      {{lt, r3, r3, 152}, true, lt, "lt r3 r3 152", "lt_r3_r3_152"},
708      {{ge, r7, r7, 198}, true, ge, "ge r7 r7 198", "ge_r7_r7_198"},
709      {{mi, r3, r3, 158}, true, mi, "mi r3 r3 158", "mi_r3_r3_158"},
710      {{cc, r5, r5, 171}, true, cc, "cc r5 r5 171", "cc_r5_r5_171"},
711      {{lt, r5, r5, 227}, true, lt, "lt r5 r5 227", "lt_r5_r5_227"},
712      {{gt, r4, r4, 197}, true, gt, "gt r4 r4 197", "gt_r4_r4_197"},
713      {{hi, r0, r0, 77}, true, hi, "hi r0 r0 77", "hi_r0_r0_77"},
714      {{mi, r2, r2, 223}, true, mi, "mi r2 r2 223", "mi_r2_r2_223"},
715      {{pl, r1, r1, 62}, true, pl, "pl r1 r1 62", "pl_r1_r1_62"},
716      {{lt, r7, r7, 53}, true, lt, "lt r7 r7 53", "lt_r7_r7_53"},
717      {{ge, r5, r5, 153}, true, ge, "ge r5 r5 153", "ge_r5_r5_153"},
718      {{ge, r0, r0, 169}, true, ge, "ge r0 r0 169", "ge_r0_r0_169"},
719      {{vc, r2, r2, 57}, true, vc, "vc r2 r2 57", "vc_r2_r2_57"},
720      {{eq, r4, r4, 121}, true, eq, "eq r4 r4 121", "eq_r4_r4_121"},
721      {{lt, r1, r1, 26}, true, lt, "lt r1 r1 26", "lt_r1_r1_26"},
722      {{pl, r4, r4, 209}, true, pl, "pl r4 r4 209", "pl_r4_r4_209"},
723      {{vc, r3, r3, 233}, true, vc, "vc r3 r3 233", "vc_r3_r3_233"},
724      {{hi, r6, r6, 159}, true, hi, "hi r6 r6 159", "hi_r6_r6_159"},
725      {{pl, r2, r2, 5}, true, pl, "pl r2 r2 5", "pl_r2_r2_5"},
726      {{ne, r4, r4, 227}, true, ne, "ne r4 r4 227", "ne_r4_r4_227"},
727      {{cc, r4, r4, 116}, true, cc, "cc r4 r4 116", "cc_r4_r4_116"},
728      {{cs, r3, r3, 90}, true, cs, "cs r3 r3 90", "cs_r3_r3_90"},
729      {{lt, r5, r5, 178}, true, lt, "lt r5 r5 178", "lt_r5_r5_178"},
730      {{cs, r6, r6, 144}, true, cs, "cs r6 r6 144", "cs_r6_r6_144"},
731      {{cs, r2, r2, 255}, true, cs, "cs r2 r2 255", "cs_r2_r2_255"},
732      {{mi, r2, r2, 207}, true, mi, "mi r2 r2 207", "mi_r2_r2_207"},
733      {{ne, r4, r4, 116}, true, ne, "ne r4 r4 116", "ne_r4_r4_116"},
734      {{pl, r4, r4, 215}, true, pl, "pl r4 r4 215", "pl_r4_r4_215"},
735      {{cs, r5, r5, 24}, true, cs, "cs r5 r5 24", "cs_r5_r5_24"},
736      {{vc, r4, r4, 206}, true, vc, "vc r4 r4 206", "vc_r4_r4_206"},
737      {{ls, r4, r4, 124}, true, ls, "ls r4 r4 124", "ls_r4_r4_124"},
738      {{cs, r4, r4, 169}, true, cs, "cs r4 r4 169", "cs_r4_r4_169"},
739      {{ge, r7, r7, 168}, true, ge, "ge r7 r7 168", "ge_r7_r7_168"},
740      {{gt, r5, r5, 36}, true, gt, "gt r5 r5 36", "gt_r5_r5_36"},
741      {{le, r5, r5, 188}, true, le, "le r5 r5 188", "le_r5_r5_188"},
742      {{ne, r6, r6, 157}, true, ne, "ne r6 r6 157", "ne_r6_r6_157"},
743      {{eq, r1, r1, 236}, true, eq, "eq r1 r1 236", "eq_r1_r1_236"},
744      {{ls, r1, r1, 49}, true, ls, "ls r1 r1 49", "ls_r1_r1_49"},
745      {{vs, r3, r3, 127}, true, vs, "vs r3 r3 127", "vs_r3_r3_127"},
746      {{le, r1, r1, 232}, true, le, "le r1 r1 232", "le_r1_r1_232"},
747      {{ge, r3, r3, 145}, true, ge, "ge r3 r3 145", "ge_r3_r3_145"},
748      {{ne, r0, r0, 187}, true, ne, "ne r0 r0 187", "ne_r0_r0_187"},
749      {{lt, r0, r0, 30}, true, lt, "lt r0 r0 30", "lt_r0_r0_30"},
750      {{mi, r7, r7, 236}, true, mi, "mi r7 r7 236", "mi_r7_r7_236"},
751      {{mi, r3, r3, 2}, true, mi, "mi r3 r3 2", "mi_r3_r3_2"},
752      {{pl, r0, r0, 192}, true, pl, "pl r0 r0 192", "pl_r0_r0_192"},
753      {{ne, r0, r0, 214}, true, ne, "ne r0 r0 214", "ne_r0_r0_214"},
754      {{eq, r5, r5, 224}, true, eq, "eq r5 r5 224", "eq_r5_r5_224"},
755      {{cs, r7, r7, 157}, true, cs, "cs r7 r7 157", "cs_r7_r7_157"},
756      {{vc, r1, r1, 108}, true, vc, "vc r1 r1 108", "vc_r1_r1_108"},
757      {{eq, r3, r3, 227}, true, eq, "eq r3 r3 227", "eq_r3_r3_227"},
758      {{pl, r0, r0, 185}, true, pl, "pl r0 r0 185", "pl_r0_r0_185"},
759      {{cs, r1, r1, 42}, true, cs, "cs r1 r1 42", "cs_r1_r1_42"},
760      {{cs, r1, r1, 46}, true, cs, "cs r1 r1 46", "cs_r1_r1_46"},
761      {{mi, r5, r5, 132}, true, mi, "mi r5 r5 132", "mi_r5_r5_132"},
762      {{ne, r3, r3, 187}, true, ne, "ne r3 r3 187", "ne_r3_r3_187"},
763      {{hi, r2, r2, 26}, true, hi, "hi r2 r2 26", "hi_r2_r2_26"},
764      {{cs, r5, r5, 135}, true, cs, "cs r5 r5 135", "cs_r5_r5_135"},
765      {{vc, r2, r2, 125}, true, vc, "vc r2 r2 125", "vc_r2_r2_125"},
766      {{lt, r1, r1, 74}, true, lt, "lt r1 r1 74", "lt_r1_r1_74"},
767      {{mi, r7, r7, 83}, true, mi, "mi r7 r7 83", "mi_r7_r7_83"},
768      {{cs, r5, r5, 168}, true, cs, "cs r5 r5 168", "cs_r5_r5_168"},
769      {{eq, r3, r3, 207}, true, eq, "eq r3 r3 207", "eq_r3_r3_207"},
770      {{vc, r0, r0, 44}, true, vc, "vc r0 r0 44", "vc_r0_r0_44"},
771      {{ne, r0, r0, 182}, true, ne, "ne r0 r0 182", "ne_r0_r0_182"},
772      {{cc, r2, r2, 206}, true, cc, "cc r2 r2 206", "cc_r2_r2_206"},
773      {{le, r5, r5, 121}, true, le, "le r5 r5 121", "le_r5_r5_121"},
774      {{mi, r4, r4, 133}, true, mi, "mi r4 r4 133", "mi_r4_r4_133"},
775      {{le, r2, r2, 73}, true, le, "le r2 r2 73", "le_r2_r2_73"},
776      {{gt, r6, r6, 77}, true, gt, "gt r6 r6 77", "gt_r6_r6_77"},
777      {{hi, r6, r6, 222}, true, hi, "hi r6 r6 222", "hi_r6_r6_222"},
778      {{vs, r4, r4, 113}, true, vs, "vs r4 r4 113", "vs_r4_r4_113"},
779      {{cs, r1, r1, 225}, true, cs, "cs r1 r1 225", "cs_r1_r1_225"},
780      {{cc, r5, r5, 143}, true, cc, "cc r5 r5 143", "cc_r5_r5_143"},
781      {{vs, r0, r0, 117}, true, vs, "vs r0 r0 117", "vs_r0_r0_117"},
782      {{vc, r7, r7, 191}, true, vc, "vc r7 r7 191", "vc_r7_r7_191"},
783      {{vs, r3, r3, 164}, true, vs, "vs r3 r3 164", "vs_r3_r3_164"},
784      {{gt, r0, r0, 185}, true, gt, "gt r0 r0 185", "gt_r0_r0_185"},
785      {{gt, r7, r7, 33}, true, gt, "gt r7 r7 33", "gt_r7_r7_33"},
786      {{le, r1, r1, 137}, true, le, "le r1 r1 137", "le_r1_r1_137"},
787      {{mi, r7, r7, 192}, true, mi, "mi r7 r7 192", "mi_r7_r7_192"},
788      {{ne, r0, r0, 82}, true, ne, "ne r0 r0 82", "ne_r0_r0_82"},
789      {{mi, r3, r3, 55}, true, mi, "mi r3 r3 55", "mi_r3_r3_55"},
790      {{vc, r5, r5, 183}, true, vc, "vc r5 r5 183", "vc_r5_r5_183"},
791      {{cs, r5, r5, 22}, true, cs, "cs r5 r5 22", "cs_r5_r5_22"},
792      {{cs, r3, r3, 136}, true, cs, "cs r3 r3 136", "cs_r3_r3_136"},
793      {{lt, r5, r5, 18}, true, lt, "lt r5 r5 18", "lt_r5_r5_18"},
794      {{lt, r5, r5, 154}, true, lt, "lt r5 r5 154", "lt_r5_r5_154"},
795      {{le, r4, r4, 197}, true, le, "le r4 r4 197", "le_r4_r4_197"},
796      {{lt, r1, r1, 185}, true, lt, "lt r1 r1 185", "lt_r1_r1_185"},
797      {{cs, r5, r5, 43}, true, cs, "cs r5 r5 43", "cs_r5_r5_43"},
798      {{le, r0, r0, 108}, true, le, "le r0 r0 108", "le_r0_r0_108"},
799      {{mi, r1, r1, 227}, true, mi, "mi r1 r1 227", "mi_r1_r1_227"},
800      {{cc, r0, r0, 69}, true, cc, "cc r0 r0 69", "cc_r0_r0_69"},
801      {{le, r4, r4, 222}, true, le, "le r4 r4 222", "le_r4_r4_222"},
802      {{cs, r2, r2, 86}, true, cs, "cs r2 r2 86", "cs_r2_r2_86"},
803      {{vs, r3, r3, 10}, true, vs, "vs r3 r3 10", "vs_r3_r3_10"},
804      {{mi, r5, r5, 247}, true, mi, "mi r5 r5 247", "mi_r5_r5_247"},
805      {{gt, r0, r0, 241}, true, gt, "gt r0 r0 241", "gt_r0_r0_241"},
806      {{vs, r3, r3, 109}, true, vs, "vs r3 r3 109", "vs_r3_r3_109"},
807      {{ls, r1, r1, 102}, true, ls, "ls r1 r1 102", "ls_r1_r1_102"},
808      {{cs, r2, r2, 87}, true, cs, "cs r2 r2 87", "cs_r2_r2_87"},
809      {{lt, r0, r0, 253}, true, lt, "lt r0 r0 253", "lt_r0_r0_253"},
810      {{eq, r1, r1, 56}, true, eq, "eq r1 r1 56", "eq_r1_r1_56"},
811      {{vs, r7, r7, 147}, true, vs, "vs r7 r7 147", "vs_r7_r7_147"},
812      {{vs, r5, r5, 10}, true, vs, "vs r5 r5 10", "vs_r5_r5_10"},
813      {{lt, r1, r1, 226}, true, lt, "lt r1 r1 226", "lt_r1_r1_226"},
814      {{gt, r1, r1, 102}, true, gt, "gt r1 r1 102", "gt_r1_r1_102"},
815      {{ls, r7, r7, 66}, true, ls, "ls r7 r7 66", "ls_r7_r7_66"},
816      {{cs, r5, r5, 179}, true, cs, "cs r5 r5 179", "cs_r5_r5_179"},
817      {{eq, r5, r5, 76}, true, eq, "eq r5 r5 76", "eq_r5_r5_76"},
818      {{ls, r2, r2, 217}, true, ls, "ls r2 r2 217", "ls_r2_r2_217"},
819      {{pl, r1, r1, 82}, true, pl, "pl r1 r1 82", "pl_r1_r1_82"},
820      {{cs, r0, r0, 66}, true, cs, "cs r0 r0 66", "cs_r0_r0_66"},
821      {{ne, r4, r4, 69}, true, ne, "ne r4 r4 69", "ne_r4_r4_69"},
822      {{cs, r7, r7, 164}, true, cs, "cs r7 r7 164", "cs_r7_r7_164"},
823      {{cs, r7, r7, 159}, true, cs, "cs r7 r7 159", "cs_r7_r7_159"},
824      {{ge, r6, r6, 123}, true, ge, "ge r6 r6 123", "ge_r6_r6_123"},
825      {{ge, r6, r6, 3}, true, ge, "ge r6 r6 3", "ge_r6_r6_3"},
826      {{lt, r0, r0, 160}, true, lt, "lt r0 r0 160", "lt_r0_r0_160"},
827      {{gt, r4, r4, 228}, true, gt, "gt r4 r4 228", "gt_r4_r4_228"},
828      {{hi, r5, r5, 156}, true, hi, "hi r5 r5 156", "hi_r5_r5_156"},
829      {{gt, r0, r0, 191}, true, gt, "gt r0 r0 191", "gt_r0_r0_191"},
830      {{pl, r1, r1, 178}, true, pl, "pl r1 r1 178", "pl_r1_r1_178"},
831      {{vs, r0, r0, 243}, true, vs, "vs r0 r0 243", "vs_r0_r0_243"},
832      {{lt, r4, r4, 217}, true, lt, "lt r4 r4 217", "lt_r4_r4_217"},
833      {{hi, r3, r3, 90}, true, hi, "hi r3 r3 90", "hi_r3_r3_90"},
834      {{eq, r7, r7, 25}, true, eq, "eq r7 r7 25", "eq_r7_r7_25"},
835      {{vc, r2, r2, 212}, true, vc, "vc r2 r2 212", "vc_r2_r2_212"},
836      {{pl, r0, r0, 252}, true, pl, "pl r0 r0 252", "pl_r0_r0_252"},
837      {{cs, r4, r4, 236}, true, cs, "cs r4 r4 236", "cs_r4_r4_236"},
838      {{cc, r0, r0, 105}, true, cc, "cc r0 r0 105", "cc_r0_r0_105"},
839      {{mi, r3, r3, 134}, true, mi, "mi r3 r3 134", "mi_r3_r3_134"},
840      {{pl, r4, r4, 116}, true, pl, "pl r4 r4 116", "pl_r4_r4_116"},
841      {{lt, r5, r5, 223}, true, lt, "lt r5 r5 223", "lt_r5_r5_223"},
842      {{vs, r2, r2, 242}, true, vs, "vs r2 r2 242", "vs_r2_r2_242"},
843      {{cc, r4, r4, 150}, true, cc, "cc r4 r4 150", "cc_r4_r4_150"},
844      {{ne, r4, r4, 126}, true, ne, "ne r4 r4 126", "ne_r4_r4_126"},
845      {{le, r4, r4, 21}, true, le, "le r4 r4 21", "le_r4_r4_21"},
846      {{gt, r2, r2, 159}, true, gt, "gt r2 r2 159", "gt_r2_r2_159"},
847      {{vs, r5, r5, 139}, true, vs, "vs r5 r5 139", "vs_r5_r5_139"},
848      {{eq, r2, r2, 46}, true, eq, "eq r2 r2 46", "eq_r2_r2_46"},
849      {{mi, r4, r4, 68}, true, mi, "mi r4 r4 68", "mi_r4_r4_68"},
850      {{mi, r4, r4, 112}, true, mi, "mi r4 r4 112", "mi_r4_r4_112"},
851      {{vs, r5, r5, 186}, true, vs, "vs r5 r5 186", "vs_r5_r5_186"},
852      {{cc, r5, r5, 216}, true, cc, "cc r5 r5 216", "cc_r5_r5_216"},
853      {{lt, r4, r4, 12}, true, lt, "lt r4 r4 12", "lt_r4_r4_12"},
854      {{ne, r1, r1, 8}, true, ne, "ne r1 r1 8", "ne_r1_r1_8"},
855      {{cc, r1, r1, 83}, true, cc, "cc r1 r1 83", "cc_r1_r1_83"},
856      {{eq, r7, r7, 109}, true, eq, "eq r7 r7 109", "eq_r7_r7_109"},
857      {{ne, r4, r4, 3}, true, ne, "ne r4 r4 3", "ne_r4_r4_3"},
858      {{pl, r5, r5, 62}, true, pl, "pl r5 r5 62", "pl_r5_r5_62"},
859      {{gt, r1, r1, 205}, true, gt, "gt r1 r1 205", "gt_r1_r1_205"},
860      {{ls, r2, r2, 209}, true, ls, "ls r2 r2 209", "ls_r2_r2_209"},
861      {{vc, r6, r6, 252}, true, vc, "vc r6 r6 252", "vc_r6_r6_252"},
862      {{cs, r1, r1, 218}, true, cs, "cs r1 r1 218", "cs_r1_r1_218"},
863      {{vs, r1, r1, 71}, true, vs, "vs r1 r1 71", "vs_r1_r1_71"},
864      {{vs, r2, r2, 247}, true, vs, "vs r2 r2 247", "vs_r2_r2_247"},
865      {{pl, r0, r0, 42}, true, pl, "pl r0 r0 42", "pl_r0_r0_42"},
866      {{mi, r7, r7, 226}, true, mi, "mi r7 r7 226", "mi_r7_r7_226"},
867      {{hi, r4, r4, 14}, true, hi, "hi r4 r4 14", "hi_r4_r4_14"},
868      {{ls, r7, r7, 246}, true, ls, "ls r7 r7 246", "ls_r7_r7_246"},
869      {{ge, r4, r4, 239}, true, ge, "ge r4 r4 239", "ge_r4_r4_239"},
870      {{eq, r1, r1, 187}, true, eq, "eq r1 r1 187", "eq_r1_r1_187"},
871      {{gt, r4, r4, 105}, true, gt, "gt r4 r4 105", "gt_r4_r4_105"},
872      {{cs, r5, r5, 85}, true, cs, "cs r5 r5 85", "cs_r5_r5_85"},
873      {{le, r4, r4, 47}, true, le, "le r4 r4 47", "le_r4_r4_47"},
874      {{mi, r4, r4, 98}, true, mi, "mi r4 r4 98", "mi_r4_r4_98"},
875      {{gt, r0, r0, 180}, true, gt, "gt r0 r0 180", "gt_r0_r0_180"},
876      {{ge, r5, r5, 38}, true, ge, "ge r5 r5 38", "ge_r5_r5_38"},
877      {{cc, r2, r2, 61}, true, cc, "cc r2 r2 61", "cc_r2_r2_61"},
878      {{lt, r7, r7, 180}, true, lt, "lt r7 r7 180", "lt_r7_r7_180"},
879      {{gt, r7, r7, 149}, true, gt, "gt r7 r7 149", "gt_r7_r7_149"},
880      {{pl, r6, r6, 146}, true, pl, "pl r6 r6 146", "pl_r6_r6_146"},
881      {{pl, r4, r4, 202}, true, pl, "pl r4 r4 202", "pl_r4_r4_202"},
882      {{hi, r0, r0, 225}, true, hi, "hi r0 r0 225", "hi_r0_r0_225"},
883      {{cs, r5, r5, 142}, true, cs, "cs r5 r5 142", "cs_r5_r5_142"},
884      {{lt, r0, r0, 224}, true, lt, "lt r0 r0 224", "lt_r0_r0_224"},
885      {{vc, r5, r5, 170}, true, vc, "vc r5 r5 170", "vc_r5_r5_170"},
886      {{le, r7, r7, 205}, true, le, "le r7 r7 205", "le_r7_r7_205"},
887      {{cs, r2, r2, 228}, true, cs, "cs r2 r2 228", "cs_r2_r2_228"},
888      {{cc, r0, r0, 96}, true, cc, "cc r0 r0 96", "cc_r0_r0_96"},
889      {{vc, r0, r0, 134}, true, vc, "vc r0 r0 134", "vc_r0_r0_134"},
890      {{le, r7, r7, 5}, true, le, "le r7 r7 5", "le_r7_r7_5"},
891      {{ne, r0, r0, 33}, true, ne, "ne r0 r0 33", "ne_r0_r0_33"},
892      {{vc, r3, r3, 162}, true, vc, "vc r3 r3 162", "vc_r3_r3_162"},
893      {{mi, r2, r2, 111}, true, mi, "mi r2 r2 111", "mi_r2_r2_111"},
894      {{vs, r1, r1, 210}, true, vs, "vs r1 r1 210", "vs_r1_r1_210"},
895      {{mi, r2, r2, 244}, true, mi, "mi r2 r2 244", "mi_r2_r2_244"},
896      {{cs, r6, r6, 208}, true, cs, "cs r6 r6 208", "cs_r6_r6_208"},
897      {{gt, r1, r1, 213}, true, gt, "gt r1 r1 213", "gt_r1_r1_213"},
898      {{ge, r7, r7, 63}, true, ge, "ge r7 r7 63", "ge_r7_r7_63"},
899      {{mi, r2, r2, 214}, true, mi, "mi r2 r2 214", "mi_r2_r2_214"},
900      {{ne, r6, r6, 224}, true, ne, "ne r6 r6 224", "ne_r6_r6_224"},
901      {{vc, r1, r1, 169}, true, vc, "vc r1 r1 169", "vc_r1_r1_169"},
902      {{vc, r2, r2, 228}, true, vc, "vc r2 r2 228", "vc_r2_r2_228"},
903      {{ge, r1, r1, 161}, true, ge, "ge r1 r1 161", "ge_r1_r1_161"},
904      {{vc, r1, r1, 250}, true, vc, "vc r1 r1 250", "vc_r1_r1_250"},
905      {{cs, r0, r0, 214}, true, cs, "cs r0 r0 214", "cs_r0_r0_214"},
906      {{lt, r0, r0, 104}, true, lt, "lt r0 r0 104", "lt_r0_r0_104"},
907      {{cs, r2, r2, 210}, true, cs, "cs r2 r2 210", "cs_r2_r2_210"},
908      {{mi, r2, r2, 229}, true, mi, "mi r2 r2 229", "mi_r2_r2_229"},
909      {{cs, r5, r5, 55}, true, cs, "cs r5 r5 55", "cs_r5_r5_55"},
910      {{lt, r2, r2, 17}, true, lt, "lt r2 r2 17", "lt_r2_r2_17"},
911      {{ls, r2, r2, 169}, true, ls, "ls r2 r2 169", "ls_r2_r2_169"},
912      {{vc, r6, r6, 74}, true, vc, "vc r6 r6 74", "vc_r6_r6_74"},
913      {{ge, r1, r1, 242}, true, ge, "ge r1 r1 242", "ge_r1_r1_242"},
914      {{vc, r4, r4, 234}, true, vc, "vc r4 r4 234", "vc_r4_r4_234"},
915      {{eq, r2, r2, 147}, true, eq, "eq r2 r2 147", "eq_r2_r2_147"},
916      {{vc, r1, r1, 101}, true, vc, "vc r1 r1 101", "vc_r1_r1_101"},
917      {{pl, r6, r6, 226}, true, pl, "pl r6 r6 226", "pl_r6_r6_226"},
918      {{gt, r6, r6, 184}, true, gt, "gt r6 r6 184", "gt_r6_r6_184"},
919      {{gt, r3, r3, 177}, true, gt, "gt r3 r3 177", "gt_r3_r3_177"},
920      {{ne, r1, r1, 126}, true, ne, "ne r1 r1 126", "ne_r1_r1_126"},
921      {{ls, r5, r5, 222}, true, ls, "ls r5 r5 222", "ls_r5_r5_222"},
922      {{hi, r4, r4, 2}, true, hi, "hi r4 r4 2", "hi_r4_r4_2"},
923      {{ls, r2, r2, 190}, true, ls, "ls r2 r2 190", "ls_r2_r2_190"},
924      {{mi, r4, r4, 254}, true, mi, "mi r4 r4 254", "mi_r4_r4_254"},
925      {{pl, r4, r4, 19}, true, pl, "pl r4 r4 19", "pl_r4_r4_19"},
926      {{ls, r0, r0, 241}, true, ls, "ls r0 r0 241", "ls_r0_r0_241"},
927      {{cc, r3, r3, 148}, true, cc, "cc r3 r3 148", "cc_r3_r3_148"},
928      {{gt, r1, r1, 195}, true, gt, "gt r1 r1 195", "gt_r1_r1_195"},
929      {{vc, r4, r4, 91}, true, vc, "vc r4 r4 91", "vc_r4_r4_91"},
930      {{gt, r0, r0, 227}, true, gt, "gt r0 r0 227", "gt_r0_r0_227"},
931      {{vs, r6, r6, 86}, true, vs, "vs r6 r6 86", "vs_r6_r6_86"},
932      {{ls, r1, r1, 241}, true, ls, "ls r1 r1 241", "ls_r1_r1_241"},
933      {{le, r3, r3, 241}, true, le, "le r3 r3 241", "le_r3_r3_241"},
934      {{vs, r2, r2, 217}, true, vs, "vs r2 r2 217", "vs_r2_r2_217"},
935      {{ls, r7, r7, 33}, true, ls, "ls r7 r7 33", "ls_r7_r7_33"},
936      {{ge, r1, r1, 76}, true, ge, "ge r1 r1 76", "ge_r1_r1_76"},
937      {{lt, r2, r2, 34}, true, lt, "lt r2 r2 34", "lt_r2_r2_34"},
938      {{gt, r7, r7, 91}, true, gt, "gt r7 r7 91", "gt_r7_r7_91"},
939      {{le, r3, r3, 121}, true, le, "le r3 r3 121", "le_r3_r3_121"},
940      {{ge, r0, r0, 128}, true, ge, "ge r0 r0 128", "ge_r0_r0_128"},
941      {{vc, r6, r6, 199}, true, vc, "vc r6 r6 199", "vc_r6_r6_199"},
942      {{hi, r6, r6, 138}, true, hi, "hi r6 r6 138", "hi_r6_r6_138"},
943      {{pl, r4, r4, 241}, true, pl, "pl r4 r4 241", "pl_r4_r4_241"},
944      {{vc, r5, r5, 246}, true, vc, "vc r5 r5 246", "vc_r5_r5_246"},
945      {{cc, r5, r5, 133}, true, cc, "cc r5 r5 133", "cc_r5_r5_133"},
946      {{cs, r5, r5, 1}, true, cs, "cs r5 r5 1", "cs_r5_r5_1"},
947      {{mi, r1, r1, 233}, true, mi, "mi r1 r1 233", "mi_r1_r1_233"},
948      {{cs, r3, r3, 195}, true, cs, "cs r3 r3 195", "cs_r3_r3_195"},
949      {{pl, r0, r0, 13}, true, pl, "pl r0 r0 13", "pl_r0_r0_13"},
950      {{eq, r5, r5, 187}, true, eq, "eq r5 r5 187", "eq_r5_r5_187"},
951      {{ls, r2, r2, 74}, true, ls, "ls r2 r2 74", "ls_r2_r2_74"},
952      {{ge, r4, r4, 33}, true, ge, "ge r4 r4 33", "ge_r4_r4_33"},
953      {{hi, r3, r3, 253}, true, hi, "hi r3 r3 253", "hi_r3_r3_253"},
954      {{pl, r1, r1, 185}, true, pl, "pl r1 r1 185", "pl_r1_r1_185"},
955      {{gt, r2, r2, 103}, true, gt, "gt r2 r2 103", "gt_r2_r2_103"},
956      {{ls, r3, r3, 255}, true, ls, "ls r3 r3 255", "ls_r3_r3_255"},
957      {{vs, r6, r6, 207}, true, vs, "vs r6 r6 207", "vs_r6_r6_207"},
958      {{cs, r5, r5, 255}, true, cs, "cs r5 r5 255", "cs_r5_r5_255"},
959      {{lt, r1, r1, 107}, true, lt, "lt r1 r1 107", "lt_r1_r1_107"},
960      {{le, r3, r3, 122}, true, le, "le r3 r3 122", "le_r3_r3_122"},
961      {{vc, r0, r0, 223}, true, vc, "vc r0 r0 223", "vc_r0_r0_223"},
962      {{cc, r7, r7, 38}, true, cc, "cc r7 r7 38", "cc_r7_r7_38"},
963      {{cc, r4, r4, 207}, true, cc, "cc r4 r4 207", "cc_r4_r4_207"},
964      {{hi, r3, r3, 101}, true, hi, "hi r3 r3 101", "hi_r3_r3_101"},
965      {{gt, r0, r0, 237}, true, gt, "gt r0 r0 237", "gt_r0_r0_237"},
966      {{mi, r6, r6, 13}, true, mi, "mi r6 r6 13", "mi_r6_r6_13"},
967      {{cs, r1, r1, 109}, true, cs, "cs r1 r1 109", "cs_r1_r1_109"},
968      {{le, r4, r4, 132}, true, le, "le r4 r4 132", "le_r4_r4_132"},
969      {{le, r2, r2, 185}, true, le, "le r2 r2 185", "le_r2_r2_185"},
970      {{lt, r3, r3, 220}, true, lt, "lt r3 r3 220", "lt_r3_r3_220"},
971      {{eq, r7, r7, 248}, true, eq, "eq r7 r7 248", "eq_r7_r7_248"},
972      {{le, r7, r7, 146}, true, le, "le r7 r7 146", "le_r7_r7_146"},
973      {{hi, r1, r1, 34}, true, hi, "hi r1 r1 34", "hi_r1_r1_34"},
974      {{pl, r3, r3, 146}, true, pl, "pl r3 r3 146", "pl_r3_r3_146"},
975      {{cs, r6, r6, 22}, true, cs, "cs r6 r6 22", "cs_r6_r6_22"},
976      {{lt, r2, r2, 187}, true, lt, "lt r2 r2 187", "lt_r2_r2_187"},
977      {{cc, r4, r4, 176}, true, cc, "cc r4 r4 176", "cc_r4_r4_176"},
978      {{ge, r3, r3, 233}, true, ge, "ge r3 r3 233", "ge_r3_r3_233"},
979      {{ge, r2, r2, 41}, true, ge, "ge r2 r2 41", "ge_r2_r2_41"},
980      {{lt, r0, r0, 207}, true, lt, "lt r0 r0 207", "lt_r0_r0_207"},
981      {{vc, r0, r0, 147}, true, vc, "vc r0 r0 147", "vc_r0_r0_147"},
982      {{pl, r4, r4, 89}, true, pl, "pl r4 r4 89", "pl_r4_r4_89"},
983      {{cs, r2, r2, 57}, true, cs, "cs r2 r2 57", "cs_r2_r2_57"},
984      {{vc, r0, r0, 24}, true, vc, "vc r0 r0 24", "vc_r0_r0_24"},
985      {{mi, r6, r6, 114}, true, mi, "mi r6 r6 114", "mi_r6_r6_114"},
986      {{pl, r4, r4, 109}, true, pl, "pl r4 r4 109", "pl_r4_r4_109"},
987      {{mi, r7, r7, 98}, true, mi, "mi r7 r7 98", "mi_r7_r7_98"},
988      {{eq, r5, r5, 124}, true, eq, "eq r5 r5 124", "eq_r5_r5_124"},
989      {{le, r3, r3, 253}, true, le, "le r3 r3 253", "le_r3_r3_253"},
990      {{hi, r5, r5, 149}, true, hi, "hi r5 r5 149", "hi_r5_r5_149"},
991      {{cc, r5, r5, 5}, true, cc, "cc r5 r5 5", "cc_r5_r5_5"},
992      {{cs, r1, r1, 149}, true, cs, "cs r1 r1 149", "cs_r1_r1_149"},
993      {{gt, r3, r3, 149}, true, gt, "gt r3 r3 149", "gt_r3_r3_149"},
994      {{vs, r3, r3, 20}, true, vs, "vs r3 r3 20", "vs_r3_r3_20"},
995      {{lt, r7, r7, 241}, true, lt, "lt r7 r7 241", "lt_r7_r7_241"},
996      {{cs, r2, r2, 42}, true, cs, "cs r2 r2 42", "cs_r2_r2_42"},
997      {{vs, r2, r2, 122}, true, vs, "vs r2 r2 122", "vs_r2_r2_122"},
998      {{ne, r0, r0, 203}, true, ne, "ne r0 r0 203", "ne_r0_r0_203"},
999      {{cc, r4, r4, 80}, true, cc, "cc r4 r4 80", "cc_r4_r4_80"},
1000      {{gt, r0, r0, 162}, true, gt, "gt r0 r0 162", "gt_r0_r0_162"},
1001      {{gt, r4, r4, 155}, true, gt, "gt r4 r4 155", "gt_r4_r4_155"},
1002      {{mi, r1, r1, 93}, true, mi, "mi r1 r1 93", "mi_r1_r1_93"},
1003      {{gt, r2, r2, 94}, true, gt, "gt r2 r2 94", "gt_r2_r2_94"},
1004      {{eq, r0, r0, 87}, true, eq, "eq r0 r0 87", "eq_r0_r0_87"},
1005      {{pl, r1, r1, 141}, true, pl, "pl r1 r1 141", "pl_r1_r1_141"},
1006      {{cc, r6, r6, 42}, true, cc, "cc r6 r6 42", "cc_r6_r6_42"},
1007      {{vc, r0, r0, 178}, true, vc, "vc r0 r0 178", "vc_r0_r0_178"},
1008      {{pl, r6, r6, 109}, true, pl, "pl r6 r6 109", "pl_r6_r6_109"},
1009      {{mi, r0, r0, 186}, true, mi, "mi r0 r0 186", "mi_r0_r0_186"},
1010      {{gt, r6, r6, 116}, true, gt, "gt r6 r6 116", "gt_r6_r6_116"},
1011      {{vc, r3, r3, 249}, true, vc, "vc r3 r3 249", "vc_r3_r3_249"},
1012      {{vs, r6, r6, 197}, true, vs, "vs r6 r6 197", "vs_r6_r6_197"},
1013      {{hi, r5, r5, 176}, true, hi, "hi r5 r5 176", "hi_r5_r5_176"},
1014      {{ls, r3, r3, 10}, true, ls, "ls r3 r3 10", "ls_r3_r3_10"},
1015      {{ge, r0, r0, 120}, true, ge, "ge r0 r0 120", "ge_r0_r0_120"},
1016      {{ge, r0, r0, 197}, true, ge, "ge r0 r0 197", "ge_r0_r0_197"},
1017      {{ls, r7, r7, 149}, true, ls, "ls r7 r7 149", "ls_r7_r7_149"},
1018      {{mi, r2, r2, 219}, true, mi, "mi r2 r2 219", "mi_r2_r2_219"},
1019      {{lt, r4, r4, 130}, true, lt, "lt r4 r4 130", "lt_r4_r4_130"},
1020      {{pl, r4, r4, 220}, true, pl, "pl r4 r4 220", "pl_r4_r4_220"},
1021      {{gt, r2, r2, 101}, true, gt, "gt r2 r2 101", "gt_r2_r2_101"},
1022      {{pl, r6, r6, 111}, true, pl, "pl r6 r6 111", "pl_r6_r6_111"},
1023      {{hi, r2, r2, 21}, true, hi, "hi r2 r2 21", "hi_r2_r2_21"},
1024      {{lt, r5, r5, 174}, true, lt, "lt r5 r5 174", "lt_r5_r5_174"},
1025      {{hi, r0, r0, 190}, true, hi, "hi r0 r0 190", "hi_r0_r0_190"},
1026      {{ge, r7, r7, 166}, true, ge, "ge r7 r7 166", "ge_r7_r7_166"},
1027      {{vc, r5, r5, 251}, true, vc, "vc r5 r5 251", "vc_r5_r5_251"},
1028      {{ne, r2, r2, 174}, true, ne, "ne r2 r2 174", "ne_r2_r2_174"},
1029      {{eq, r6, r6, 255}, true, eq, "eq r6 r6 255", "eq_r6_r6_255"},
1030      {{ls, r5, r5, 186}, true, ls, "ls r5 r5 186", "ls_r5_r5_186"},
1031      {{vs, r3, r3, 75}, true, vs, "vs r3 r3 75", "vs_r3_r3_75"},
1032      {{cs, r2, r2, 15}, true, cs, "cs r2 r2 15", "cs_r2_r2_15"},
1033      {{hi, r6, r6, 133}, true, hi, "hi r6 r6 133", "hi_r6_r6_133"},
1034      {{vc, r0, r0, 188}, true, vc, "vc r0 r0 188", "vc_r0_r0_188"},
1035      {{ne, r2, r2, 85}, true, ne, "ne r2 r2 85", "ne_r2_r2_85"},
1036      {{hi, r2, r2, 116}, true, hi, "hi r2 r2 116", "hi_r2_r2_116"},
1037      {{le, r3, r3, 91}, true, le, "le r3 r3 91", "le_r3_r3_91"},
1038      {{pl, r1, r1, 222}, true, pl, "pl r1 r1 222", "pl_r1_r1_222"},
1039      {{mi, r0, r0, 33}, true, mi, "mi r0 r0 33", "mi_r0_r0_33"},
1040      {{vs, r3, r3, 26}, true, vs, "vs r3 r3 26", "vs_r3_r3_26"},
1041      {{cc, r5, r5, 182}, true, cc, "cc r5 r5 182", "cc_r5_r5_182"},
1042      {{gt, r0, r0, 62}, true, gt, "gt r0 r0 62", "gt_r0_r0_62"},
1043      {{vc, r1, r1, 189}, true, vc, "vc r1 r1 189", "vc_r1_r1_189"},
1044      {{pl, r2, r2, 180}, true, pl, "pl r2 r2 180", "pl_r2_r2_180"},
1045      {{mi, r5, r5, 15}, true, mi, "mi r5 r5 15", "mi_r5_r5_15"},
1046      {{lt, r4, r4, 24}, true, lt, "lt r4 r4 24", "lt_r4_r4_24"},
1047      {{cs, r6, r6, 190}, true, cs, "cs r6 r6 190", "cs_r6_r6_190"},
1048      {{ne, r6, r6, 168}, true, ne, "ne r6 r6 168", "ne_r6_r6_168"},
1049      {{ls, r2, r2, 48}, true, ls, "ls r2 r2 48", "ls_r2_r2_48"},
1050      {{vs, r7, r7, 6}, true, vs, "vs r7 r7 6", "vs_r7_r7_6"},
1051      {{cs, r4, r4, 80}, true, cs, "cs r4 r4 80", "cs_r4_r4_80"},
1052      {{ls, r3, r3, 75}, true, ls, "ls r3 r3 75", "ls_r3_r3_75"},
1053      {{ge, r2, r2, 236}, true, ge, "ge r2 r2 236", "ge_r2_r2_236"},
1054      {{hi, r1, r1, 9}, true, hi, "hi r1 r1 9", "hi_r1_r1_9"},
1055      {{cs, r1, r1, 51}, true, cs, "cs r1 r1 51", "cs_r1_r1_51"},
1056      {{cc, r1, r1, 139}, true, cc, "cc r1 r1 139", "cc_r1_r1_139"},
1057      {{cc, r2, r2, 204}, true, cc, "cc r2 r2 204", "cc_r2_r2_204"},
1058      {{gt, r2, r2, 216}, true, gt, "gt r2 r2 216", "gt_r2_r2_216"},
1059      {{vc, r7, r7, 60}, true, vc, "vc r7 r7 60", "vc_r7_r7_60"},
1060      {{pl, r6, r6, 249}, true, pl, "pl r6 r6 249", "pl_r6_r6_249"},
1061      {{cs, r1, r1, 169}, true, cs, "cs r1 r1 169", "cs_r1_r1_169"},
1062      {{eq, r6, r6, 33}, true, eq, "eq r6 r6 33", "eq_r6_r6_33"},
1063      {{ne, r0, r0, 91}, true, ne, "ne r0 r0 91", "ne_r0_r0_91"},
1064      {{vc, r4, r4, 56}, true, vc, "vc r4 r4 56", "vc_r4_r4_56"},
1065      {{ge, r5, r5, 26}, true, ge, "ge r5 r5 26", "ge_r5_r5_26"},
1066      {{lt, r6, r6, 210}, true, lt, "lt r6 r6 210", "lt_r6_r6_210"},
1067      {{le, r6, r6, 122}, true, le, "le r6 r6 122", "le_r6_r6_122"},
1068      {{ls, r4, r4, 118}, true, ls, "ls r4 r4 118", "ls_r4_r4_118"},
1069      {{lt, r3, r3, 59}, true, lt, "lt r3 r3 59", "lt_r3_r3_59"},
1070      {{cc, r3, r3, 144}, true, cc, "cc r3 r3 144", "cc_r3_r3_144"},
1071      {{le, r6, r6, 159}, true, le, "le r6 r6 159", "le_r6_r6_159"},
1072      {{lt, r0, r0, 25}, true, lt, "lt r0 r0 25", "lt_r0_r0_25"},
1073      {{vs, r0, r0, 150}, true, vs, "vs r0 r0 150", "vs_r0_r0_150"},
1074      {{ne, r1, r1, 91}, true, ne, "ne r1 r1 91", "ne_r1_r1_91"},
1075      {{ls, r2, r2, 65}, true, ls, "ls r2 r2 65", "ls_r2_r2_65"},
1076      {{lt, r3, r3, 80}, true, lt, "lt r3 r3 80", "lt_r3_r3_80"},
1077      {{eq, r0, r0, 37}, true, eq, "eq r0 r0 37", "eq_r0_r0_37"},
1078      {{ne, r4, r4, 71}, true, ne, "ne r4 r4 71", "ne_r4_r4_71"},
1079      {{ls, r7, r7, 169}, true, ls, "ls r7 r7 169", "ls_r7_r7_169"},
1080      {{cs, r0, r0, 141}, true, cs, "cs r0 r0 141", "cs_r0_r0_141"},
1081      {{pl, r3, r3, 190}, true, pl, "pl r3 r3 190", "pl_r3_r3_190"},
1082      {{pl, r7, r7, 53}, true, pl, "pl r7 r7 53", "pl_r7_r7_53"},
1083      {{vc, r3, r3, 60}, true, vc, "vc r3 r3 60", "vc_r3_r3_60"},
1084      {{ge, r3, r3, 104}, true, ge, "ge r3 r3 104", "ge_r3_r3_104"},
1085      {{pl, r1, r1, 93}, true, pl, "pl r1 r1 93", "pl_r1_r1_93"},
1086      {{pl, r7, r7, 234}, true, pl, "pl r7 r7 234", "pl_r7_r7_234"},
1087      {{lt, r0, r0, 226}, true, lt, "lt r0 r0 226", "lt_r0_r0_226"},
1088      {{mi, r1, r1, 207}, true, mi, "mi r1 r1 207", "mi_r1_r1_207"},
1089      {{le, r1, r1, 152}, true, le, "le r1 r1 152", "le_r1_r1_152"},
1090      {{gt, r6, r6, 151}, true, gt, "gt r6 r6 151", "gt_r6_r6_151"},
1091      {{ge, r4, r4, 127}, true, ge, "ge r4 r4 127", "ge_r4_r4_127"},
1092      {{lt, r1, r1, 167}, true, lt, "lt r1 r1 167", "lt_r1_r1_167"},
1093      {{pl, r2, r2, 206}, true, pl, "pl r2 r2 206", "pl_r2_r2_206"},
1094      {{ge, r1, r1, 241}, true, ge, "ge r1 r1 241", "ge_r1_r1_241"},
1095      {{vs, r3, r3, 156}, true, vs, "vs r3 r3 156", "vs_r3_r3_156"},
1096      {{gt, r0, r0, 125}, true, gt, "gt r0 r0 125", "gt_r0_r0_125"}};
1097 
1098 // These headers each contain an array of `TestResult` with the reference output
1099 // values. The reference arrays are names `kReference{mnemonic}`.
1100 #include "aarch32/traces/assembler-cond-rdlow-rnlow-operand-immediate-t32-imm8-in-it-block-add.h"
1101 #include "aarch32/traces/assembler-cond-rdlow-rnlow-operand-immediate-t32-imm8-in-it-block-sub.h"
1102 
1103 
1104 // The maximum number of errors to report in detail for each test.
1105 const unsigned kErrorReportLimit = 8;
1106 
1107 typedef void (MacroAssembler::*Fn)(Condition cond,
1108                                    Register rd,
1109                                    Register rn,
1110                                    const Operand& op);
1111 
TestHelper(Fn instruction,const char * mnemonic,const TestResult reference[])1112 void TestHelper(Fn instruction,
1113                 const char* mnemonic,
1114                 const TestResult reference[]) {
1115   unsigned total_error_count = 0;
1116   MacroAssembler masm(BUF_SIZE);
1117 
1118   masm.UseT32();
1119 
1120   for (unsigned i = 0; i < ARRAY_SIZE(kTests); i++) {
1121     // Values to pass to the macro-assembler.
1122     Condition cond = kTests[i].operands.cond;
1123     Register rd = kTests[i].operands.rd;
1124     Register rn = kTests[i].operands.rn;
1125     int32_t immediate = kTests[i].operands.immediate;
1126     Operand op(immediate);
1127 
1128     int32_t start = masm.GetCursorOffset();
1129     {
1130       // We never generate more that 4 bytes, as IT instructions are only
1131       // allowed for narrow encodings.
1132       ExactAssemblyScope scope(&masm, 4, ExactAssemblyScope::kMaximumSize);
1133       if (kTests[i].in_it_block) {
1134         masm.it(kTests[i].it_condition);
1135       }
1136       (masm.*instruction)(cond, rd, rn, op);
1137     }
1138     int32_t end = masm.GetCursorOffset();
1139 
1140     const byte* result_ptr =
1141         masm.GetBuffer()->GetOffsetAddress<const byte*>(start);
1142     VIXL_ASSERT(start < end);
1143     uint32_t result_size = end - start;
1144 
1145     if (Test::generate_test_trace()) {
1146       // Print the result bytes.
1147       printf("const byte kInstruction_%s_%s[] = {\n",
1148              mnemonic,
1149              kTests[i].identifier);
1150       for (uint32_t j = 0; j < result_size; j++) {
1151         if (j == 0) {
1152           printf("  0x%02" PRIx8, result_ptr[j]);
1153         } else {
1154           printf(", 0x%02" PRIx8, result_ptr[j]);
1155         }
1156       }
1157       // This comment is meant to be used by external tools to validate
1158       // the encoding. We can parse the comment to figure out what
1159       // instruction this corresponds to.
1160       if (kTests[i].in_it_block) {
1161         printf(" // It %s; %s %s\n};\n",
1162                kTests[i].it_condition.GetName(),
1163                mnemonic,
1164                kTests[i].operands_description);
1165       } else {
1166         printf(" // %s %s\n};\n", mnemonic, kTests[i].operands_description);
1167       }
1168     } else {
1169       // Check we've emitted the exact same encoding as present in the
1170       // trace file. Only print up to `kErrorReportLimit` errors.
1171       if (((result_size != reference[i].size) ||
1172            (memcmp(result_ptr, reference[i].encoding, reference[i].size) !=
1173             0)) &&
1174           (++total_error_count <= kErrorReportLimit)) {
1175         printf("Error when testing \"%s\" with operands \"%s\":\n",
1176                mnemonic,
1177                kTests[i].operands_description);
1178         printf("  Expected: ");
1179         for (uint32_t j = 0; j < reference[i].size; j++) {
1180           if (j == 0) {
1181             printf("0x%02" PRIx8, reference[i].encoding[j]);
1182           } else {
1183             printf(", 0x%02" PRIx8, reference[i].encoding[j]);
1184           }
1185         }
1186         printf("\n");
1187         printf("  Found:    ");
1188         for (uint32_t j = 0; j < result_size; j++) {
1189           if (j == 0) {
1190             printf("0x%02" PRIx8, result_ptr[j]);
1191           } else {
1192             printf(", 0x%02" PRIx8, result_ptr[j]);
1193           }
1194         }
1195         printf("\n");
1196       }
1197     }
1198   }
1199 
1200   masm.FinalizeCode();
1201 
1202   if (Test::generate_test_trace()) {
1203     // Finalize the trace file by writing the final `TestResult` array
1204     // which links all generated instruction encodings.
1205     printf("const TestResult kReference%s[] = {\n", mnemonic);
1206     for (unsigned i = 0; i < ARRAY_SIZE(kTests); i++) {
1207       printf("  {\n");
1208       printf("    ARRAY_SIZE(kInstruction_%s_%s),\n",
1209              mnemonic,
1210              kTests[i].identifier);
1211       printf("    kInstruction_%s_%s,\n", mnemonic, kTests[i].identifier);
1212       printf("  },\n");
1213     }
1214     printf("};\n");
1215   } else {
1216     if (total_error_count > kErrorReportLimit) {
1217       printf("%u other errors follow.\n",
1218              total_error_count - kErrorReportLimit);
1219     }
1220     // Crash if the test failed.
1221     VIXL_CHECK(total_error_count == 0);
1222   }
1223 }
1224 
1225 // Instantiate tests for each instruction in the list.
1226 #define TEST(mnemonic)                                                       \
1227   void Test_##mnemonic() {                                                   \
1228     TestHelper(&MacroAssembler::mnemonic, #mnemonic, kReference##mnemonic);  \
1229   }                                                                          \
1230   Test test_##mnemonic(                                                      \
1231       "AARCH32_ASSEMBLER_COND_RDLOW_RNLOW_OPERAND_IMMEDIATE_T32_IMM8_IN_IT_" \
1232       "BLOCK_" #mnemonic,                                                    \
1233       &Test_##mnemonic);
1234 FOREACH_INSTRUCTION(TEST)
1235 #undef TEST
1236 
1237 }  // namespace
1238 #endif
1239 
1240 }  // namespace aarch32
1241 }  // namespace vixl
1242