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(cmn) \
53 M(cmp) \
54 M(mov) \
55 M(movs) \
56 M(mvn) \
57 M(mvns) \
58 M(teq) \
59 M(tst)
60
61
62 // The following definitions are defined again in each generated test, therefore
63 // we need to place them in an anomymous namespace. It expresses that they are
64 // local to this file only, and the compiler is not allowed to share these types
65 // across test files during template instantiation. Specifically, `Operands` has
66 // various layouts across generated tests so it absolutely cannot be shared.
67
68 #ifdef VIXL_INCLUDE_TARGET_T32
69 namespace {
70
71 // Values to be passed to the assembler to produce the instruction under test.
72 struct Operands {
73 Condition cond;
74 Register rd;
75 uint32_t immediate;
76 };
77
78 // This structure contains all data needed to test one specific
79 // instruction.
80 struct TestData {
81 // The `operands` field represents what to pass to the assembler to
82 // produce the instruction.
83 Operands operands;
84 // True if we need to generate an IT instruction for this test to be valid.
85 bool in_it_block;
86 // The condition to give the IT instruction, this will be set to "al" by
87 // default.
88 Condition it_condition;
89 // Description of the operands, used for error reporting.
90 const char* operands_description;
91 // Unique identifier, used for generating traces.
92 const char* identifier;
93 };
94
95 struct TestResult {
96 size_t size;
97 const byte* encoding;
98 };
99
100 // Each element of this array produce one instruction encoding.
101 const TestData kTests[] =
102 {{{al, r0, 0x000001fe}, false, al, "al r0 0x000001fe", "al_r0_0x000001fe"},
103 {{al, r0, 0x000003fc}, false, al, "al r0 0x000003fc", "al_r0_0x000003fc"},
104 {{al, r0, 0x000007f8}, false, al, "al r0 0x000007f8", "al_r0_0x000007f8"},
105 {{al, r0, 0x00000ff0}, false, al, "al r0 0x00000ff0", "al_r0_0x00000ff0"},
106 {{al, r0, 0x00001fe0}, false, al, "al r0 0x00001fe0", "al_r0_0x00001fe0"},
107 {{al, r0, 0x00003fc0}, false, al, "al r0 0x00003fc0", "al_r0_0x00003fc0"},
108 {{al, r0, 0x00007f80}, false, al, "al r0 0x00007f80", "al_r0_0x00007f80"},
109 {{al, r0, 0x0000ff00}, false, al, "al r0 0x0000ff00", "al_r0_0x0000ff00"},
110 {{al, r0, 0x0001fe00}, false, al, "al r0 0x0001fe00", "al_r0_0x0001fe00"},
111 {{al, r0, 0x0003fc00}, false, al, "al r0 0x0003fc00", "al_r0_0x0003fc00"},
112 {{al, r0, 0x0007f800}, false, al, "al r0 0x0007f800", "al_r0_0x0007f800"},
113 {{al, r0, 0x000ff000}, false, al, "al r0 0x000ff000", "al_r0_0x000ff000"},
114 {{al, r0, 0x001fe000}, false, al, "al r0 0x001fe000", "al_r0_0x001fe000"},
115 {{al, r0, 0x003fc000}, false, al, "al r0 0x003fc000", "al_r0_0x003fc000"},
116 {{al, r0, 0x007f8000}, false, al, "al r0 0x007f8000", "al_r0_0x007f8000"},
117 {{al, r0, 0x00ff0000}, false, al, "al r0 0x00ff0000", "al_r0_0x00ff0000"},
118 {{al, r0, 0x01fe0000}, false, al, "al r0 0x01fe0000", "al_r0_0x01fe0000"},
119 {{al, r0, 0x03fc0000}, false, al, "al r0 0x03fc0000", "al_r0_0x03fc0000"},
120 {{al, r0, 0x07f80000}, false, al, "al r0 0x07f80000", "al_r0_0x07f80000"},
121 {{al, r0, 0x0ff00000}, false, al, "al r0 0x0ff00000", "al_r0_0x0ff00000"},
122 {{al, r0, 0x1fe00000}, false, al, "al r0 0x1fe00000", "al_r0_0x1fe00000"},
123 {{al, r0, 0x3fc00000}, false, al, "al r0 0x3fc00000", "al_r0_0x3fc00000"},
124 {{al, r0, 0x7f800000}, false, al, "al r0 0x7f800000", "al_r0_0x7f800000"},
125 {{al, r0, 0xff000000}, false, al, "al r0 0xff000000", "al_r0_0xff000000"},
126 {{al, r0, 0x000000ff}, false, al, "al r0 0x000000ff", "al_r0_0x000000ff"},
127 {{al, r0, 0x00ff00ff}, false, al, "al r0 0x00ff00ff", "al_r0_0x00ff00ff"},
128 {{al, r0, 0xff00ff00}, false, al, "al r0 0xff00ff00", "al_r0_0xff00ff00"},
129 {{al, r0, 0xffffffff}, false, al, "al r0 0xffffffff", "al_r0_0xffffffff"},
130 {{al, r0, 0x00000156}, false, al, "al r0 0x00000156", "al_r0_0x00000156"},
131 {{al, r0, 0x000002ac}, false, al, "al r0 0x000002ac", "al_r0_0x000002ac"},
132 {{al, r0, 0x00000558}, false, al, "al r0 0x00000558", "al_r0_0x00000558"},
133 {{al, r0, 0x00000ab0}, false, al, "al r0 0x00000ab0", "al_r0_0x00000ab0"},
134 {{al, r0, 0x00001560}, false, al, "al r0 0x00001560", "al_r0_0x00001560"},
135 {{al, r0, 0x00002ac0}, false, al, "al r0 0x00002ac0", "al_r0_0x00002ac0"},
136 {{al, r0, 0x00005580}, false, al, "al r0 0x00005580", "al_r0_0x00005580"},
137 {{al, r0, 0x0000ab00}, false, al, "al r0 0x0000ab00", "al_r0_0x0000ab00"},
138 {{al, r0, 0x00015600}, false, al, "al r0 0x00015600", "al_r0_0x00015600"},
139 {{al, r0, 0x0002ac00}, false, al, "al r0 0x0002ac00", "al_r0_0x0002ac00"},
140 {{al, r0, 0x00055800}, false, al, "al r0 0x00055800", "al_r0_0x00055800"},
141 {{al, r0, 0x000ab000}, false, al, "al r0 0x000ab000", "al_r0_0x000ab000"},
142 {{al, r0, 0x00156000}, false, al, "al r0 0x00156000", "al_r0_0x00156000"},
143 {{al, r0, 0x002ac000}, false, al, "al r0 0x002ac000", "al_r0_0x002ac000"},
144 {{al, r0, 0x00558000}, false, al, "al r0 0x00558000", "al_r0_0x00558000"},
145 {{al, r0, 0x00ab0000}, false, al, "al r0 0x00ab0000", "al_r0_0x00ab0000"},
146 {{al, r0, 0x01560000}, false, al, "al r0 0x01560000", "al_r0_0x01560000"},
147 {{al, r0, 0x02ac0000}, false, al, "al r0 0x02ac0000", "al_r0_0x02ac0000"},
148 {{al, r0, 0x05580000}, false, al, "al r0 0x05580000", "al_r0_0x05580000"},
149 {{al, r0, 0x0ab00000}, false, al, "al r0 0x0ab00000", "al_r0_0x0ab00000"},
150 {{al, r0, 0x15600000}, false, al, "al r0 0x15600000", "al_r0_0x15600000"},
151 {{al, r0, 0x2ac00000}, false, al, "al r0 0x2ac00000", "al_r0_0x2ac00000"},
152 {{al, r0, 0x55800000}, false, al, "al r0 0x55800000", "al_r0_0x55800000"},
153 {{al, r0, 0xab000000}, false, al, "al r0 0xab000000", "al_r0_0xab000000"},
154 {{al, r0, 0x000000ab}, false, al, "al r0 0x000000ab", "al_r0_0x000000ab"},
155 {{al, r0, 0x00ab00ab}, false, al, "al r0 0x00ab00ab", "al_r0_0x00ab00ab"},
156 {{al, r0, 0xab00ab00}, false, al, "al r0 0xab00ab00", "al_r0_0xab00ab00"},
157 {{al, r0, 0xabababab}, false, al, "al r0 0xabababab", "al_r0_0xabababab"},
158 {{al, r1, 0x000001fe}, false, al, "al r1 0x000001fe", "al_r1_0x000001fe"},
159 {{al, r1, 0x000003fc}, false, al, "al r1 0x000003fc", "al_r1_0x000003fc"},
160 {{al, r1, 0x000007f8}, false, al, "al r1 0x000007f8", "al_r1_0x000007f8"},
161 {{al, r1, 0x00000ff0}, false, al, "al r1 0x00000ff0", "al_r1_0x00000ff0"},
162 {{al, r1, 0x00001fe0}, false, al, "al r1 0x00001fe0", "al_r1_0x00001fe0"},
163 {{al, r1, 0x00003fc0}, false, al, "al r1 0x00003fc0", "al_r1_0x00003fc0"},
164 {{al, r1, 0x00007f80}, false, al, "al r1 0x00007f80", "al_r1_0x00007f80"},
165 {{al, r1, 0x0000ff00}, false, al, "al r1 0x0000ff00", "al_r1_0x0000ff00"},
166 {{al, r1, 0x0001fe00}, false, al, "al r1 0x0001fe00", "al_r1_0x0001fe00"},
167 {{al, r1, 0x0003fc00}, false, al, "al r1 0x0003fc00", "al_r1_0x0003fc00"},
168 {{al, r1, 0x0007f800}, false, al, "al r1 0x0007f800", "al_r1_0x0007f800"},
169 {{al, r1, 0x000ff000}, false, al, "al r1 0x000ff000", "al_r1_0x000ff000"},
170 {{al, r1, 0x001fe000}, false, al, "al r1 0x001fe000", "al_r1_0x001fe000"},
171 {{al, r1, 0x003fc000}, false, al, "al r1 0x003fc000", "al_r1_0x003fc000"},
172 {{al, r1, 0x007f8000}, false, al, "al r1 0x007f8000", "al_r1_0x007f8000"},
173 {{al, r1, 0x00ff0000}, false, al, "al r1 0x00ff0000", "al_r1_0x00ff0000"},
174 {{al, r1, 0x01fe0000}, false, al, "al r1 0x01fe0000", "al_r1_0x01fe0000"},
175 {{al, r1, 0x03fc0000}, false, al, "al r1 0x03fc0000", "al_r1_0x03fc0000"},
176 {{al, r1, 0x07f80000}, false, al, "al r1 0x07f80000", "al_r1_0x07f80000"},
177 {{al, r1, 0x0ff00000}, false, al, "al r1 0x0ff00000", "al_r1_0x0ff00000"},
178 {{al, r1, 0x1fe00000}, false, al, "al r1 0x1fe00000", "al_r1_0x1fe00000"},
179 {{al, r1, 0x3fc00000}, false, al, "al r1 0x3fc00000", "al_r1_0x3fc00000"},
180 {{al, r1, 0x7f800000}, false, al, "al r1 0x7f800000", "al_r1_0x7f800000"},
181 {{al, r1, 0xff000000}, false, al, "al r1 0xff000000", "al_r1_0xff000000"},
182 {{al, r1, 0x000000ff}, false, al, "al r1 0x000000ff", "al_r1_0x000000ff"},
183 {{al, r1, 0x00ff00ff}, false, al, "al r1 0x00ff00ff", "al_r1_0x00ff00ff"},
184 {{al, r1, 0xff00ff00}, false, al, "al r1 0xff00ff00", "al_r1_0xff00ff00"},
185 {{al, r1, 0xffffffff}, false, al, "al r1 0xffffffff", "al_r1_0xffffffff"},
186 {{al, r1, 0x00000156}, false, al, "al r1 0x00000156", "al_r1_0x00000156"},
187 {{al, r1, 0x000002ac}, false, al, "al r1 0x000002ac", "al_r1_0x000002ac"},
188 {{al, r1, 0x00000558}, false, al, "al r1 0x00000558", "al_r1_0x00000558"},
189 {{al, r1, 0x00000ab0}, false, al, "al r1 0x00000ab0", "al_r1_0x00000ab0"},
190 {{al, r1, 0x00001560}, false, al, "al r1 0x00001560", "al_r1_0x00001560"},
191 {{al, r1, 0x00002ac0}, false, al, "al r1 0x00002ac0", "al_r1_0x00002ac0"},
192 {{al, r1, 0x00005580}, false, al, "al r1 0x00005580", "al_r1_0x00005580"},
193 {{al, r1, 0x0000ab00}, false, al, "al r1 0x0000ab00", "al_r1_0x0000ab00"},
194 {{al, r1, 0x00015600}, false, al, "al r1 0x00015600", "al_r1_0x00015600"},
195 {{al, r1, 0x0002ac00}, false, al, "al r1 0x0002ac00", "al_r1_0x0002ac00"},
196 {{al, r1, 0x00055800}, false, al, "al r1 0x00055800", "al_r1_0x00055800"},
197 {{al, r1, 0x000ab000}, false, al, "al r1 0x000ab000", "al_r1_0x000ab000"},
198 {{al, r1, 0x00156000}, false, al, "al r1 0x00156000", "al_r1_0x00156000"},
199 {{al, r1, 0x002ac000}, false, al, "al r1 0x002ac000", "al_r1_0x002ac000"},
200 {{al, r1, 0x00558000}, false, al, "al r1 0x00558000", "al_r1_0x00558000"},
201 {{al, r1, 0x00ab0000}, false, al, "al r1 0x00ab0000", "al_r1_0x00ab0000"},
202 {{al, r1, 0x01560000}, false, al, "al r1 0x01560000", "al_r1_0x01560000"},
203 {{al, r1, 0x02ac0000}, false, al, "al r1 0x02ac0000", "al_r1_0x02ac0000"},
204 {{al, r1, 0x05580000}, false, al, "al r1 0x05580000", "al_r1_0x05580000"},
205 {{al, r1, 0x0ab00000}, false, al, "al r1 0x0ab00000", "al_r1_0x0ab00000"},
206 {{al, r1, 0x15600000}, false, al, "al r1 0x15600000", "al_r1_0x15600000"},
207 {{al, r1, 0x2ac00000}, false, al, "al r1 0x2ac00000", "al_r1_0x2ac00000"},
208 {{al, r1, 0x55800000}, false, al, "al r1 0x55800000", "al_r1_0x55800000"},
209 {{al, r1, 0xab000000}, false, al, "al r1 0xab000000", "al_r1_0xab000000"},
210 {{al, r1, 0x000000ab}, false, al, "al r1 0x000000ab", "al_r1_0x000000ab"},
211 {{al, r1, 0x00ab00ab}, false, al, "al r1 0x00ab00ab", "al_r1_0x00ab00ab"},
212 {{al, r1, 0xab00ab00}, false, al, "al r1 0xab00ab00", "al_r1_0xab00ab00"},
213 {{al, r1, 0xabababab}, false, al, "al r1 0xabababab", "al_r1_0xabababab"},
214 {{al, r2, 0x000001fe}, false, al, "al r2 0x000001fe", "al_r2_0x000001fe"},
215 {{al, r2, 0x000003fc}, false, al, "al r2 0x000003fc", "al_r2_0x000003fc"},
216 {{al, r2, 0x000007f8}, false, al, "al r2 0x000007f8", "al_r2_0x000007f8"},
217 {{al, r2, 0x00000ff0}, false, al, "al r2 0x00000ff0", "al_r2_0x00000ff0"},
218 {{al, r2, 0x00001fe0}, false, al, "al r2 0x00001fe0", "al_r2_0x00001fe0"},
219 {{al, r2, 0x00003fc0}, false, al, "al r2 0x00003fc0", "al_r2_0x00003fc0"},
220 {{al, r2, 0x00007f80}, false, al, "al r2 0x00007f80", "al_r2_0x00007f80"},
221 {{al, r2, 0x0000ff00}, false, al, "al r2 0x0000ff00", "al_r2_0x0000ff00"},
222 {{al, r2, 0x0001fe00}, false, al, "al r2 0x0001fe00", "al_r2_0x0001fe00"},
223 {{al, r2, 0x0003fc00}, false, al, "al r2 0x0003fc00", "al_r2_0x0003fc00"},
224 {{al, r2, 0x0007f800}, false, al, "al r2 0x0007f800", "al_r2_0x0007f800"},
225 {{al, r2, 0x000ff000}, false, al, "al r2 0x000ff000", "al_r2_0x000ff000"},
226 {{al, r2, 0x001fe000}, false, al, "al r2 0x001fe000", "al_r2_0x001fe000"},
227 {{al, r2, 0x003fc000}, false, al, "al r2 0x003fc000", "al_r2_0x003fc000"},
228 {{al, r2, 0x007f8000}, false, al, "al r2 0x007f8000", "al_r2_0x007f8000"},
229 {{al, r2, 0x00ff0000}, false, al, "al r2 0x00ff0000", "al_r2_0x00ff0000"},
230 {{al, r2, 0x01fe0000}, false, al, "al r2 0x01fe0000", "al_r2_0x01fe0000"},
231 {{al, r2, 0x03fc0000}, false, al, "al r2 0x03fc0000", "al_r2_0x03fc0000"},
232 {{al, r2, 0x07f80000}, false, al, "al r2 0x07f80000", "al_r2_0x07f80000"},
233 {{al, r2, 0x0ff00000}, false, al, "al r2 0x0ff00000", "al_r2_0x0ff00000"},
234 {{al, r2, 0x1fe00000}, false, al, "al r2 0x1fe00000", "al_r2_0x1fe00000"},
235 {{al, r2, 0x3fc00000}, false, al, "al r2 0x3fc00000", "al_r2_0x3fc00000"},
236 {{al, r2, 0x7f800000}, false, al, "al r2 0x7f800000", "al_r2_0x7f800000"},
237 {{al, r2, 0xff000000}, false, al, "al r2 0xff000000", "al_r2_0xff000000"},
238 {{al, r2, 0x000000ff}, false, al, "al r2 0x000000ff", "al_r2_0x000000ff"},
239 {{al, r2, 0x00ff00ff}, false, al, "al r2 0x00ff00ff", "al_r2_0x00ff00ff"},
240 {{al, r2, 0xff00ff00}, false, al, "al r2 0xff00ff00", "al_r2_0xff00ff00"},
241 {{al, r2, 0xffffffff}, false, al, "al r2 0xffffffff", "al_r2_0xffffffff"},
242 {{al, r2, 0x00000156}, false, al, "al r2 0x00000156", "al_r2_0x00000156"},
243 {{al, r2, 0x000002ac}, false, al, "al r2 0x000002ac", "al_r2_0x000002ac"},
244 {{al, r2, 0x00000558}, false, al, "al r2 0x00000558", "al_r2_0x00000558"},
245 {{al, r2, 0x00000ab0}, false, al, "al r2 0x00000ab0", "al_r2_0x00000ab0"},
246 {{al, r2, 0x00001560}, false, al, "al r2 0x00001560", "al_r2_0x00001560"},
247 {{al, r2, 0x00002ac0}, false, al, "al r2 0x00002ac0", "al_r2_0x00002ac0"},
248 {{al, r2, 0x00005580}, false, al, "al r2 0x00005580", "al_r2_0x00005580"},
249 {{al, r2, 0x0000ab00}, false, al, "al r2 0x0000ab00", "al_r2_0x0000ab00"},
250 {{al, r2, 0x00015600}, false, al, "al r2 0x00015600", "al_r2_0x00015600"},
251 {{al, r2, 0x0002ac00}, false, al, "al r2 0x0002ac00", "al_r2_0x0002ac00"},
252 {{al, r2, 0x00055800}, false, al, "al r2 0x00055800", "al_r2_0x00055800"},
253 {{al, r2, 0x000ab000}, false, al, "al r2 0x000ab000", "al_r2_0x000ab000"},
254 {{al, r2, 0x00156000}, false, al, "al r2 0x00156000", "al_r2_0x00156000"},
255 {{al, r2, 0x002ac000}, false, al, "al r2 0x002ac000", "al_r2_0x002ac000"},
256 {{al, r2, 0x00558000}, false, al, "al r2 0x00558000", "al_r2_0x00558000"},
257 {{al, r2, 0x00ab0000}, false, al, "al r2 0x00ab0000", "al_r2_0x00ab0000"},
258 {{al, r2, 0x01560000}, false, al, "al r2 0x01560000", "al_r2_0x01560000"},
259 {{al, r2, 0x02ac0000}, false, al, "al r2 0x02ac0000", "al_r2_0x02ac0000"},
260 {{al, r2, 0x05580000}, false, al, "al r2 0x05580000", "al_r2_0x05580000"},
261 {{al, r2, 0x0ab00000}, false, al, "al r2 0x0ab00000", "al_r2_0x0ab00000"},
262 {{al, r2, 0x15600000}, false, al, "al r2 0x15600000", "al_r2_0x15600000"},
263 {{al, r2, 0x2ac00000}, false, al, "al r2 0x2ac00000", "al_r2_0x2ac00000"},
264 {{al, r2, 0x55800000}, false, al, "al r2 0x55800000", "al_r2_0x55800000"},
265 {{al, r2, 0xab000000}, false, al, "al r2 0xab000000", "al_r2_0xab000000"},
266 {{al, r2, 0x000000ab}, false, al, "al r2 0x000000ab", "al_r2_0x000000ab"},
267 {{al, r2, 0x00ab00ab}, false, al, "al r2 0x00ab00ab", "al_r2_0x00ab00ab"},
268 {{al, r2, 0xab00ab00}, false, al, "al r2 0xab00ab00", "al_r2_0xab00ab00"},
269 {{al, r2, 0xabababab}, false, al, "al r2 0xabababab", "al_r2_0xabababab"},
270 {{al, r3, 0x000001fe}, false, al, "al r3 0x000001fe", "al_r3_0x000001fe"},
271 {{al, r3, 0x000003fc}, false, al, "al r3 0x000003fc", "al_r3_0x000003fc"},
272 {{al, r3, 0x000007f8}, false, al, "al r3 0x000007f8", "al_r3_0x000007f8"},
273 {{al, r3, 0x00000ff0}, false, al, "al r3 0x00000ff0", "al_r3_0x00000ff0"},
274 {{al, r3, 0x00001fe0}, false, al, "al r3 0x00001fe0", "al_r3_0x00001fe0"},
275 {{al, r3, 0x00003fc0}, false, al, "al r3 0x00003fc0", "al_r3_0x00003fc0"},
276 {{al, r3, 0x00007f80}, false, al, "al r3 0x00007f80", "al_r3_0x00007f80"},
277 {{al, r3, 0x0000ff00}, false, al, "al r3 0x0000ff00", "al_r3_0x0000ff00"},
278 {{al, r3, 0x0001fe00}, false, al, "al r3 0x0001fe00", "al_r3_0x0001fe00"},
279 {{al, r3, 0x0003fc00}, false, al, "al r3 0x0003fc00", "al_r3_0x0003fc00"},
280 {{al, r3, 0x0007f800}, false, al, "al r3 0x0007f800", "al_r3_0x0007f800"},
281 {{al, r3, 0x000ff000}, false, al, "al r3 0x000ff000", "al_r3_0x000ff000"},
282 {{al, r3, 0x001fe000}, false, al, "al r3 0x001fe000", "al_r3_0x001fe000"},
283 {{al, r3, 0x003fc000}, false, al, "al r3 0x003fc000", "al_r3_0x003fc000"},
284 {{al, r3, 0x007f8000}, false, al, "al r3 0x007f8000", "al_r3_0x007f8000"},
285 {{al, r3, 0x00ff0000}, false, al, "al r3 0x00ff0000", "al_r3_0x00ff0000"},
286 {{al, r3, 0x01fe0000}, false, al, "al r3 0x01fe0000", "al_r3_0x01fe0000"},
287 {{al, r3, 0x03fc0000}, false, al, "al r3 0x03fc0000", "al_r3_0x03fc0000"},
288 {{al, r3, 0x07f80000}, false, al, "al r3 0x07f80000", "al_r3_0x07f80000"},
289 {{al, r3, 0x0ff00000}, false, al, "al r3 0x0ff00000", "al_r3_0x0ff00000"},
290 {{al, r3, 0x1fe00000}, false, al, "al r3 0x1fe00000", "al_r3_0x1fe00000"},
291 {{al, r3, 0x3fc00000}, false, al, "al r3 0x3fc00000", "al_r3_0x3fc00000"},
292 {{al, r3, 0x7f800000}, false, al, "al r3 0x7f800000", "al_r3_0x7f800000"},
293 {{al, r3, 0xff000000}, false, al, "al r3 0xff000000", "al_r3_0xff000000"},
294 {{al, r3, 0x000000ff}, false, al, "al r3 0x000000ff", "al_r3_0x000000ff"},
295 {{al, r3, 0x00ff00ff}, false, al, "al r3 0x00ff00ff", "al_r3_0x00ff00ff"},
296 {{al, r3, 0xff00ff00}, false, al, "al r3 0xff00ff00", "al_r3_0xff00ff00"},
297 {{al, r3, 0xffffffff}, false, al, "al r3 0xffffffff", "al_r3_0xffffffff"},
298 {{al, r3, 0x00000156}, false, al, "al r3 0x00000156", "al_r3_0x00000156"},
299 {{al, r3, 0x000002ac}, false, al, "al r3 0x000002ac", "al_r3_0x000002ac"},
300 {{al, r3, 0x00000558}, false, al, "al r3 0x00000558", "al_r3_0x00000558"},
301 {{al, r3, 0x00000ab0}, false, al, "al r3 0x00000ab0", "al_r3_0x00000ab0"},
302 {{al, r3, 0x00001560}, false, al, "al r3 0x00001560", "al_r3_0x00001560"},
303 {{al, r3, 0x00002ac0}, false, al, "al r3 0x00002ac0", "al_r3_0x00002ac0"},
304 {{al, r3, 0x00005580}, false, al, "al r3 0x00005580", "al_r3_0x00005580"},
305 {{al, r3, 0x0000ab00}, false, al, "al r3 0x0000ab00", "al_r3_0x0000ab00"},
306 {{al, r3, 0x00015600}, false, al, "al r3 0x00015600", "al_r3_0x00015600"},
307 {{al, r3, 0x0002ac00}, false, al, "al r3 0x0002ac00", "al_r3_0x0002ac00"},
308 {{al, r3, 0x00055800}, false, al, "al r3 0x00055800", "al_r3_0x00055800"},
309 {{al, r3, 0x000ab000}, false, al, "al r3 0x000ab000", "al_r3_0x000ab000"},
310 {{al, r3, 0x00156000}, false, al, "al r3 0x00156000", "al_r3_0x00156000"},
311 {{al, r3, 0x002ac000}, false, al, "al r3 0x002ac000", "al_r3_0x002ac000"},
312 {{al, r3, 0x00558000}, false, al, "al r3 0x00558000", "al_r3_0x00558000"},
313 {{al, r3, 0x00ab0000}, false, al, "al r3 0x00ab0000", "al_r3_0x00ab0000"},
314 {{al, r3, 0x01560000}, false, al, "al r3 0x01560000", "al_r3_0x01560000"},
315 {{al, r3, 0x02ac0000}, false, al, "al r3 0x02ac0000", "al_r3_0x02ac0000"},
316 {{al, r3, 0x05580000}, false, al, "al r3 0x05580000", "al_r3_0x05580000"},
317 {{al, r3, 0x0ab00000}, false, al, "al r3 0x0ab00000", "al_r3_0x0ab00000"},
318 {{al, r3, 0x15600000}, false, al, "al r3 0x15600000", "al_r3_0x15600000"},
319 {{al, r3, 0x2ac00000}, false, al, "al r3 0x2ac00000", "al_r3_0x2ac00000"},
320 {{al, r3, 0x55800000}, false, al, "al r3 0x55800000", "al_r3_0x55800000"},
321 {{al, r3, 0xab000000}, false, al, "al r3 0xab000000", "al_r3_0xab000000"},
322 {{al, r3, 0x000000ab}, false, al, "al r3 0x000000ab", "al_r3_0x000000ab"},
323 {{al, r3, 0x00ab00ab}, false, al, "al r3 0x00ab00ab", "al_r3_0x00ab00ab"},
324 {{al, r3, 0xab00ab00}, false, al, "al r3 0xab00ab00", "al_r3_0xab00ab00"},
325 {{al, r3, 0xabababab}, false, al, "al r3 0xabababab", "al_r3_0xabababab"},
326 {{al, r4, 0x000001fe}, false, al, "al r4 0x000001fe", "al_r4_0x000001fe"},
327 {{al, r4, 0x000003fc}, false, al, "al r4 0x000003fc", "al_r4_0x000003fc"},
328 {{al, r4, 0x000007f8}, false, al, "al r4 0x000007f8", "al_r4_0x000007f8"},
329 {{al, r4, 0x00000ff0}, false, al, "al r4 0x00000ff0", "al_r4_0x00000ff0"},
330 {{al, r4, 0x00001fe0}, false, al, "al r4 0x00001fe0", "al_r4_0x00001fe0"},
331 {{al, r4, 0x00003fc0}, false, al, "al r4 0x00003fc0", "al_r4_0x00003fc0"},
332 {{al, r4, 0x00007f80}, false, al, "al r4 0x00007f80", "al_r4_0x00007f80"},
333 {{al, r4, 0x0000ff00}, false, al, "al r4 0x0000ff00", "al_r4_0x0000ff00"},
334 {{al, r4, 0x0001fe00}, false, al, "al r4 0x0001fe00", "al_r4_0x0001fe00"},
335 {{al, r4, 0x0003fc00}, false, al, "al r4 0x0003fc00", "al_r4_0x0003fc00"},
336 {{al, r4, 0x0007f800}, false, al, "al r4 0x0007f800", "al_r4_0x0007f800"},
337 {{al, r4, 0x000ff000}, false, al, "al r4 0x000ff000", "al_r4_0x000ff000"},
338 {{al, r4, 0x001fe000}, false, al, "al r4 0x001fe000", "al_r4_0x001fe000"},
339 {{al, r4, 0x003fc000}, false, al, "al r4 0x003fc000", "al_r4_0x003fc000"},
340 {{al, r4, 0x007f8000}, false, al, "al r4 0x007f8000", "al_r4_0x007f8000"},
341 {{al, r4, 0x00ff0000}, false, al, "al r4 0x00ff0000", "al_r4_0x00ff0000"},
342 {{al, r4, 0x01fe0000}, false, al, "al r4 0x01fe0000", "al_r4_0x01fe0000"},
343 {{al, r4, 0x03fc0000}, false, al, "al r4 0x03fc0000", "al_r4_0x03fc0000"},
344 {{al, r4, 0x07f80000}, false, al, "al r4 0x07f80000", "al_r4_0x07f80000"},
345 {{al, r4, 0x0ff00000}, false, al, "al r4 0x0ff00000", "al_r4_0x0ff00000"},
346 {{al, r4, 0x1fe00000}, false, al, "al r4 0x1fe00000", "al_r4_0x1fe00000"},
347 {{al, r4, 0x3fc00000}, false, al, "al r4 0x3fc00000", "al_r4_0x3fc00000"},
348 {{al, r4, 0x7f800000}, false, al, "al r4 0x7f800000", "al_r4_0x7f800000"},
349 {{al, r4, 0xff000000}, false, al, "al r4 0xff000000", "al_r4_0xff000000"},
350 {{al, r4, 0x000000ff}, false, al, "al r4 0x000000ff", "al_r4_0x000000ff"},
351 {{al, r4, 0x00ff00ff}, false, al, "al r4 0x00ff00ff", "al_r4_0x00ff00ff"},
352 {{al, r4, 0xff00ff00}, false, al, "al r4 0xff00ff00", "al_r4_0xff00ff00"},
353 {{al, r4, 0xffffffff}, false, al, "al r4 0xffffffff", "al_r4_0xffffffff"},
354 {{al, r4, 0x00000156}, false, al, "al r4 0x00000156", "al_r4_0x00000156"},
355 {{al, r4, 0x000002ac}, false, al, "al r4 0x000002ac", "al_r4_0x000002ac"},
356 {{al, r4, 0x00000558}, false, al, "al r4 0x00000558", "al_r4_0x00000558"},
357 {{al, r4, 0x00000ab0}, false, al, "al r4 0x00000ab0", "al_r4_0x00000ab0"},
358 {{al, r4, 0x00001560}, false, al, "al r4 0x00001560", "al_r4_0x00001560"},
359 {{al, r4, 0x00002ac0}, false, al, "al r4 0x00002ac0", "al_r4_0x00002ac0"},
360 {{al, r4, 0x00005580}, false, al, "al r4 0x00005580", "al_r4_0x00005580"},
361 {{al, r4, 0x0000ab00}, false, al, "al r4 0x0000ab00", "al_r4_0x0000ab00"},
362 {{al, r4, 0x00015600}, false, al, "al r4 0x00015600", "al_r4_0x00015600"},
363 {{al, r4, 0x0002ac00}, false, al, "al r4 0x0002ac00", "al_r4_0x0002ac00"},
364 {{al, r4, 0x00055800}, false, al, "al r4 0x00055800", "al_r4_0x00055800"},
365 {{al, r4, 0x000ab000}, false, al, "al r4 0x000ab000", "al_r4_0x000ab000"},
366 {{al, r4, 0x00156000}, false, al, "al r4 0x00156000", "al_r4_0x00156000"},
367 {{al, r4, 0x002ac000}, false, al, "al r4 0x002ac000", "al_r4_0x002ac000"},
368 {{al, r4, 0x00558000}, false, al, "al r4 0x00558000", "al_r4_0x00558000"},
369 {{al, r4, 0x00ab0000}, false, al, "al r4 0x00ab0000", "al_r4_0x00ab0000"},
370 {{al, r4, 0x01560000}, false, al, "al r4 0x01560000", "al_r4_0x01560000"},
371 {{al, r4, 0x02ac0000}, false, al, "al r4 0x02ac0000", "al_r4_0x02ac0000"},
372 {{al, r4, 0x05580000}, false, al, "al r4 0x05580000", "al_r4_0x05580000"},
373 {{al, r4, 0x0ab00000}, false, al, "al r4 0x0ab00000", "al_r4_0x0ab00000"},
374 {{al, r4, 0x15600000}, false, al, "al r4 0x15600000", "al_r4_0x15600000"},
375 {{al, r4, 0x2ac00000}, false, al, "al r4 0x2ac00000", "al_r4_0x2ac00000"},
376 {{al, r4, 0x55800000}, false, al, "al r4 0x55800000", "al_r4_0x55800000"},
377 {{al, r4, 0xab000000}, false, al, "al r4 0xab000000", "al_r4_0xab000000"},
378 {{al, r4, 0x000000ab}, false, al, "al r4 0x000000ab", "al_r4_0x000000ab"},
379 {{al, r4, 0x00ab00ab}, false, al, "al r4 0x00ab00ab", "al_r4_0x00ab00ab"},
380 {{al, r4, 0xab00ab00}, false, al, "al r4 0xab00ab00", "al_r4_0xab00ab00"},
381 {{al, r4, 0xabababab}, false, al, "al r4 0xabababab", "al_r4_0xabababab"},
382 {{al, r5, 0x000001fe}, false, al, "al r5 0x000001fe", "al_r5_0x000001fe"},
383 {{al, r5, 0x000003fc}, false, al, "al r5 0x000003fc", "al_r5_0x000003fc"},
384 {{al, r5, 0x000007f8}, false, al, "al r5 0x000007f8", "al_r5_0x000007f8"},
385 {{al, r5, 0x00000ff0}, false, al, "al r5 0x00000ff0", "al_r5_0x00000ff0"},
386 {{al, r5, 0x00001fe0}, false, al, "al r5 0x00001fe0", "al_r5_0x00001fe0"},
387 {{al, r5, 0x00003fc0}, false, al, "al r5 0x00003fc0", "al_r5_0x00003fc0"},
388 {{al, r5, 0x00007f80}, false, al, "al r5 0x00007f80", "al_r5_0x00007f80"},
389 {{al, r5, 0x0000ff00}, false, al, "al r5 0x0000ff00", "al_r5_0x0000ff00"},
390 {{al, r5, 0x0001fe00}, false, al, "al r5 0x0001fe00", "al_r5_0x0001fe00"},
391 {{al, r5, 0x0003fc00}, false, al, "al r5 0x0003fc00", "al_r5_0x0003fc00"},
392 {{al, r5, 0x0007f800}, false, al, "al r5 0x0007f800", "al_r5_0x0007f800"},
393 {{al, r5, 0x000ff000}, false, al, "al r5 0x000ff000", "al_r5_0x000ff000"},
394 {{al, r5, 0x001fe000}, false, al, "al r5 0x001fe000", "al_r5_0x001fe000"},
395 {{al, r5, 0x003fc000}, false, al, "al r5 0x003fc000", "al_r5_0x003fc000"},
396 {{al, r5, 0x007f8000}, false, al, "al r5 0x007f8000", "al_r5_0x007f8000"},
397 {{al, r5, 0x00ff0000}, false, al, "al r5 0x00ff0000", "al_r5_0x00ff0000"},
398 {{al, r5, 0x01fe0000}, false, al, "al r5 0x01fe0000", "al_r5_0x01fe0000"},
399 {{al, r5, 0x03fc0000}, false, al, "al r5 0x03fc0000", "al_r5_0x03fc0000"},
400 {{al, r5, 0x07f80000}, false, al, "al r5 0x07f80000", "al_r5_0x07f80000"},
401 {{al, r5, 0x0ff00000}, false, al, "al r5 0x0ff00000", "al_r5_0x0ff00000"},
402 {{al, r5, 0x1fe00000}, false, al, "al r5 0x1fe00000", "al_r5_0x1fe00000"},
403 {{al, r5, 0x3fc00000}, false, al, "al r5 0x3fc00000", "al_r5_0x3fc00000"},
404 {{al, r5, 0x7f800000}, false, al, "al r5 0x7f800000", "al_r5_0x7f800000"},
405 {{al, r5, 0xff000000}, false, al, "al r5 0xff000000", "al_r5_0xff000000"},
406 {{al, r5, 0x000000ff}, false, al, "al r5 0x000000ff", "al_r5_0x000000ff"},
407 {{al, r5, 0x00ff00ff}, false, al, "al r5 0x00ff00ff", "al_r5_0x00ff00ff"},
408 {{al, r5, 0xff00ff00}, false, al, "al r5 0xff00ff00", "al_r5_0xff00ff00"},
409 {{al, r5, 0xffffffff}, false, al, "al r5 0xffffffff", "al_r5_0xffffffff"},
410 {{al, r5, 0x00000156}, false, al, "al r5 0x00000156", "al_r5_0x00000156"},
411 {{al, r5, 0x000002ac}, false, al, "al r5 0x000002ac", "al_r5_0x000002ac"},
412 {{al, r5, 0x00000558}, false, al, "al r5 0x00000558", "al_r5_0x00000558"},
413 {{al, r5, 0x00000ab0}, false, al, "al r5 0x00000ab0", "al_r5_0x00000ab0"},
414 {{al, r5, 0x00001560}, false, al, "al r5 0x00001560", "al_r5_0x00001560"},
415 {{al, r5, 0x00002ac0}, false, al, "al r5 0x00002ac0", "al_r5_0x00002ac0"},
416 {{al, r5, 0x00005580}, false, al, "al r5 0x00005580", "al_r5_0x00005580"},
417 {{al, r5, 0x0000ab00}, false, al, "al r5 0x0000ab00", "al_r5_0x0000ab00"},
418 {{al, r5, 0x00015600}, false, al, "al r5 0x00015600", "al_r5_0x00015600"},
419 {{al, r5, 0x0002ac00}, false, al, "al r5 0x0002ac00", "al_r5_0x0002ac00"},
420 {{al, r5, 0x00055800}, false, al, "al r5 0x00055800", "al_r5_0x00055800"},
421 {{al, r5, 0x000ab000}, false, al, "al r5 0x000ab000", "al_r5_0x000ab000"},
422 {{al, r5, 0x00156000}, false, al, "al r5 0x00156000", "al_r5_0x00156000"},
423 {{al, r5, 0x002ac000}, false, al, "al r5 0x002ac000", "al_r5_0x002ac000"},
424 {{al, r5, 0x00558000}, false, al, "al r5 0x00558000", "al_r5_0x00558000"},
425 {{al, r5, 0x00ab0000}, false, al, "al r5 0x00ab0000", "al_r5_0x00ab0000"},
426 {{al, r5, 0x01560000}, false, al, "al r5 0x01560000", "al_r5_0x01560000"},
427 {{al, r5, 0x02ac0000}, false, al, "al r5 0x02ac0000", "al_r5_0x02ac0000"},
428 {{al, r5, 0x05580000}, false, al, "al r5 0x05580000", "al_r5_0x05580000"},
429 {{al, r5, 0x0ab00000}, false, al, "al r5 0x0ab00000", "al_r5_0x0ab00000"},
430 {{al, r5, 0x15600000}, false, al, "al r5 0x15600000", "al_r5_0x15600000"},
431 {{al, r5, 0x2ac00000}, false, al, "al r5 0x2ac00000", "al_r5_0x2ac00000"},
432 {{al, r5, 0x55800000}, false, al, "al r5 0x55800000", "al_r5_0x55800000"},
433 {{al, r5, 0xab000000}, false, al, "al r5 0xab000000", "al_r5_0xab000000"},
434 {{al, r5, 0x000000ab}, false, al, "al r5 0x000000ab", "al_r5_0x000000ab"},
435 {{al, r5, 0x00ab00ab}, false, al, "al r5 0x00ab00ab", "al_r5_0x00ab00ab"},
436 {{al, r5, 0xab00ab00}, false, al, "al r5 0xab00ab00", "al_r5_0xab00ab00"},
437 {{al, r5, 0xabababab}, false, al, "al r5 0xabababab", "al_r5_0xabababab"},
438 {{al, r6, 0x000001fe}, false, al, "al r6 0x000001fe", "al_r6_0x000001fe"},
439 {{al, r6, 0x000003fc}, false, al, "al r6 0x000003fc", "al_r6_0x000003fc"},
440 {{al, r6, 0x000007f8}, false, al, "al r6 0x000007f8", "al_r6_0x000007f8"},
441 {{al, r6, 0x00000ff0}, false, al, "al r6 0x00000ff0", "al_r6_0x00000ff0"},
442 {{al, r6, 0x00001fe0}, false, al, "al r6 0x00001fe0", "al_r6_0x00001fe0"},
443 {{al, r6, 0x00003fc0}, false, al, "al r6 0x00003fc0", "al_r6_0x00003fc0"},
444 {{al, r6, 0x00007f80}, false, al, "al r6 0x00007f80", "al_r6_0x00007f80"},
445 {{al, r6, 0x0000ff00}, false, al, "al r6 0x0000ff00", "al_r6_0x0000ff00"},
446 {{al, r6, 0x0001fe00}, false, al, "al r6 0x0001fe00", "al_r6_0x0001fe00"},
447 {{al, r6, 0x0003fc00}, false, al, "al r6 0x0003fc00", "al_r6_0x0003fc00"},
448 {{al, r6, 0x0007f800}, false, al, "al r6 0x0007f800", "al_r6_0x0007f800"},
449 {{al, r6, 0x000ff000}, false, al, "al r6 0x000ff000", "al_r6_0x000ff000"},
450 {{al, r6, 0x001fe000}, false, al, "al r6 0x001fe000", "al_r6_0x001fe000"},
451 {{al, r6, 0x003fc000}, false, al, "al r6 0x003fc000", "al_r6_0x003fc000"},
452 {{al, r6, 0x007f8000}, false, al, "al r6 0x007f8000", "al_r6_0x007f8000"},
453 {{al, r6, 0x00ff0000}, false, al, "al r6 0x00ff0000", "al_r6_0x00ff0000"},
454 {{al, r6, 0x01fe0000}, false, al, "al r6 0x01fe0000", "al_r6_0x01fe0000"},
455 {{al, r6, 0x03fc0000}, false, al, "al r6 0x03fc0000", "al_r6_0x03fc0000"},
456 {{al, r6, 0x07f80000}, false, al, "al r6 0x07f80000", "al_r6_0x07f80000"},
457 {{al, r6, 0x0ff00000}, false, al, "al r6 0x0ff00000", "al_r6_0x0ff00000"},
458 {{al, r6, 0x1fe00000}, false, al, "al r6 0x1fe00000", "al_r6_0x1fe00000"},
459 {{al, r6, 0x3fc00000}, false, al, "al r6 0x3fc00000", "al_r6_0x3fc00000"},
460 {{al, r6, 0x7f800000}, false, al, "al r6 0x7f800000", "al_r6_0x7f800000"},
461 {{al, r6, 0xff000000}, false, al, "al r6 0xff000000", "al_r6_0xff000000"},
462 {{al, r6, 0x000000ff}, false, al, "al r6 0x000000ff", "al_r6_0x000000ff"},
463 {{al, r6, 0x00ff00ff}, false, al, "al r6 0x00ff00ff", "al_r6_0x00ff00ff"},
464 {{al, r6, 0xff00ff00}, false, al, "al r6 0xff00ff00", "al_r6_0xff00ff00"},
465 {{al, r6, 0xffffffff}, false, al, "al r6 0xffffffff", "al_r6_0xffffffff"},
466 {{al, r6, 0x00000156}, false, al, "al r6 0x00000156", "al_r6_0x00000156"},
467 {{al, r6, 0x000002ac}, false, al, "al r6 0x000002ac", "al_r6_0x000002ac"},
468 {{al, r6, 0x00000558}, false, al, "al r6 0x00000558", "al_r6_0x00000558"},
469 {{al, r6, 0x00000ab0}, false, al, "al r6 0x00000ab0", "al_r6_0x00000ab0"},
470 {{al, r6, 0x00001560}, false, al, "al r6 0x00001560", "al_r6_0x00001560"},
471 {{al, r6, 0x00002ac0}, false, al, "al r6 0x00002ac0", "al_r6_0x00002ac0"},
472 {{al, r6, 0x00005580}, false, al, "al r6 0x00005580", "al_r6_0x00005580"},
473 {{al, r6, 0x0000ab00}, false, al, "al r6 0x0000ab00", "al_r6_0x0000ab00"},
474 {{al, r6, 0x00015600}, false, al, "al r6 0x00015600", "al_r6_0x00015600"},
475 {{al, r6, 0x0002ac00}, false, al, "al r6 0x0002ac00", "al_r6_0x0002ac00"},
476 {{al, r6, 0x00055800}, false, al, "al r6 0x00055800", "al_r6_0x00055800"},
477 {{al, r6, 0x000ab000}, false, al, "al r6 0x000ab000", "al_r6_0x000ab000"},
478 {{al, r6, 0x00156000}, false, al, "al r6 0x00156000", "al_r6_0x00156000"},
479 {{al, r6, 0x002ac000}, false, al, "al r6 0x002ac000", "al_r6_0x002ac000"},
480 {{al, r6, 0x00558000}, false, al, "al r6 0x00558000", "al_r6_0x00558000"},
481 {{al, r6, 0x00ab0000}, false, al, "al r6 0x00ab0000", "al_r6_0x00ab0000"},
482 {{al, r6, 0x01560000}, false, al, "al r6 0x01560000", "al_r6_0x01560000"},
483 {{al, r6, 0x02ac0000}, false, al, "al r6 0x02ac0000", "al_r6_0x02ac0000"},
484 {{al, r6, 0x05580000}, false, al, "al r6 0x05580000", "al_r6_0x05580000"},
485 {{al, r6, 0x0ab00000}, false, al, "al r6 0x0ab00000", "al_r6_0x0ab00000"},
486 {{al, r6, 0x15600000}, false, al, "al r6 0x15600000", "al_r6_0x15600000"},
487 {{al, r6, 0x2ac00000}, false, al, "al r6 0x2ac00000", "al_r6_0x2ac00000"},
488 {{al, r6, 0x55800000}, false, al, "al r6 0x55800000", "al_r6_0x55800000"},
489 {{al, r6, 0xab000000}, false, al, "al r6 0xab000000", "al_r6_0xab000000"},
490 {{al, r6, 0x000000ab}, false, al, "al r6 0x000000ab", "al_r6_0x000000ab"},
491 {{al, r6, 0x00ab00ab}, false, al, "al r6 0x00ab00ab", "al_r6_0x00ab00ab"},
492 {{al, r6, 0xab00ab00}, false, al, "al r6 0xab00ab00", "al_r6_0xab00ab00"},
493 {{al, r6, 0xabababab}, false, al, "al r6 0xabababab", "al_r6_0xabababab"},
494 {{al, r7, 0x000001fe}, false, al, "al r7 0x000001fe", "al_r7_0x000001fe"},
495 {{al, r7, 0x000003fc}, false, al, "al r7 0x000003fc", "al_r7_0x000003fc"},
496 {{al, r7, 0x000007f8}, false, al, "al r7 0x000007f8", "al_r7_0x000007f8"},
497 {{al, r7, 0x00000ff0}, false, al, "al r7 0x00000ff0", "al_r7_0x00000ff0"},
498 {{al, r7, 0x00001fe0}, false, al, "al r7 0x00001fe0", "al_r7_0x00001fe0"},
499 {{al, r7, 0x00003fc0}, false, al, "al r7 0x00003fc0", "al_r7_0x00003fc0"},
500 {{al, r7, 0x00007f80}, false, al, "al r7 0x00007f80", "al_r7_0x00007f80"},
501 {{al, r7, 0x0000ff00}, false, al, "al r7 0x0000ff00", "al_r7_0x0000ff00"},
502 {{al, r7, 0x0001fe00}, false, al, "al r7 0x0001fe00", "al_r7_0x0001fe00"},
503 {{al, r7, 0x0003fc00}, false, al, "al r7 0x0003fc00", "al_r7_0x0003fc00"},
504 {{al, r7, 0x0007f800}, false, al, "al r7 0x0007f800", "al_r7_0x0007f800"},
505 {{al, r7, 0x000ff000}, false, al, "al r7 0x000ff000", "al_r7_0x000ff000"},
506 {{al, r7, 0x001fe000}, false, al, "al r7 0x001fe000", "al_r7_0x001fe000"},
507 {{al, r7, 0x003fc000}, false, al, "al r7 0x003fc000", "al_r7_0x003fc000"},
508 {{al, r7, 0x007f8000}, false, al, "al r7 0x007f8000", "al_r7_0x007f8000"},
509 {{al, r7, 0x00ff0000}, false, al, "al r7 0x00ff0000", "al_r7_0x00ff0000"},
510 {{al, r7, 0x01fe0000}, false, al, "al r7 0x01fe0000", "al_r7_0x01fe0000"},
511 {{al, r7, 0x03fc0000}, false, al, "al r7 0x03fc0000", "al_r7_0x03fc0000"},
512 {{al, r7, 0x07f80000}, false, al, "al r7 0x07f80000", "al_r7_0x07f80000"},
513 {{al, r7, 0x0ff00000}, false, al, "al r7 0x0ff00000", "al_r7_0x0ff00000"},
514 {{al, r7, 0x1fe00000}, false, al, "al r7 0x1fe00000", "al_r7_0x1fe00000"},
515 {{al, r7, 0x3fc00000}, false, al, "al r7 0x3fc00000", "al_r7_0x3fc00000"},
516 {{al, r7, 0x7f800000}, false, al, "al r7 0x7f800000", "al_r7_0x7f800000"},
517 {{al, r7, 0xff000000}, false, al, "al r7 0xff000000", "al_r7_0xff000000"},
518 {{al, r7, 0x000000ff}, false, al, "al r7 0x000000ff", "al_r7_0x000000ff"},
519 {{al, r7, 0x00ff00ff}, false, al, "al r7 0x00ff00ff", "al_r7_0x00ff00ff"},
520 {{al, r7, 0xff00ff00}, false, al, "al r7 0xff00ff00", "al_r7_0xff00ff00"},
521 {{al, r7, 0xffffffff}, false, al, "al r7 0xffffffff", "al_r7_0xffffffff"},
522 {{al, r7, 0x00000156}, false, al, "al r7 0x00000156", "al_r7_0x00000156"},
523 {{al, r7, 0x000002ac}, false, al, "al r7 0x000002ac", "al_r7_0x000002ac"},
524 {{al, r7, 0x00000558}, false, al, "al r7 0x00000558", "al_r7_0x00000558"},
525 {{al, r7, 0x00000ab0}, false, al, "al r7 0x00000ab0", "al_r7_0x00000ab0"},
526 {{al, r7, 0x00001560}, false, al, "al r7 0x00001560", "al_r7_0x00001560"},
527 {{al, r7, 0x00002ac0}, false, al, "al r7 0x00002ac0", "al_r7_0x00002ac0"},
528 {{al, r7, 0x00005580}, false, al, "al r7 0x00005580", "al_r7_0x00005580"},
529 {{al, r7, 0x0000ab00}, false, al, "al r7 0x0000ab00", "al_r7_0x0000ab00"},
530 {{al, r7, 0x00015600}, false, al, "al r7 0x00015600", "al_r7_0x00015600"},
531 {{al, r7, 0x0002ac00}, false, al, "al r7 0x0002ac00", "al_r7_0x0002ac00"},
532 {{al, r7, 0x00055800}, false, al, "al r7 0x00055800", "al_r7_0x00055800"},
533 {{al, r7, 0x000ab000}, false, al, "al r7 0x000ab000", "al_r7_0x000ab000"},
534 {{al, r7, 0x00156000}, false, al, "al r7 0x00156000", "al_r7_0x00156000"},
535 {{al, r7, 0x002ac000}, false, al, "al r7 0x002ac000", "al_r7_0x002ac000"},
536 {{al, r7, 0x00558000}, false, al, "al r7 0x00558000", "al_r7_0x00558000"},
537 {{al, r7, 0x00ab0000}, false, al, "al r7 0x00ab0000", "al_r7_0x00ab0000"},
538 {{al, r7, 0x01560000}, false, al, "al r7 0x01560000", "al_r7_0x01560000"},
539 {{al, r7, 0x02ac0000}, false, al, "al r7 0x02ac0000", "al_r7_0x02ac0000"},
540 {{al, r7, 0x05580000}, false, al, "al r7 0x05580000", "al_r7_0x05580000"},
541 {{al, r7, 0x0ab00000}, false, al, "al r7 0x0ab00000", "al_r7_0x0ab00000"},
542 {{al, r7, 0x15600000}, false, al, "al r7 0x15600000", "al_r7_0x15600000"},
543 {{al, r7, 0x2ac00000}, false, al, "al r7 0x2ac00000", "al_r7_0x2ac00000"},
544 {{al, r7, 0x55800000}, false, al, "al r7 0x55800000", "al_r7_0x55800000"},
545 {{al, r7, 0xab000000}, false, al, "al r7 0xab000000", "al_r7_0xab000000"},
546 {{al, r7, 0x000000ab}, false, al, "al r7 0x000000ab", "al_r7_0x000000ab"},
547 {{al, r7, 0x00ab00ab}, false, al, "al r7 0x00ab00ab", "al_r7_0x00ab00ab"},
548 {{al, r7, 0xab00ab00}, false, al, "al r7 0xab00ab00", "al_r7_0xab00ab00"},
549 {{al, r7, 0xabababab}, false, al, "al r7 0xabababab", "al_r7_0xabababab"},
550 {{al, r8, 0x000001fe}, false, al, "al r8 0x000001fe", "al_r8_0x000001fe"},
551 {{al, r8, 0x000003fc}, false, al, "al r8 0x000003fc", "al_r8_0x000003fc"},
552 {{al, r8, 0x000007f8}, false, al, "al r8 0x000007f8", "al_r8_0x000007f8"},
553 {{al, r8, 0x00000ff0}, false, al, "al r8 0x00000ff0", "al_r8_0x00000ff0"},
554 {{al, r8, 0x00001fe0}, false, al, "al r8 0x00001fe0", "al_r8_0x00001fe0"},
555 {{al, r8, 0x00003fc0}, false, al, "al r8 0x00003fc0", "al_r8_0x00003fc0"},
556 {{al, r8, 0x00007f80}, false, al, "al r8 0x00007f80", "al_r8_0x00007f80"},
557 {{al, r8, 0x0000ff00}, false, al, "al r8 0x0000ff00", "al_r8_0x0000ff00"},
558 {{al, r8, 0x0001fe00}, false, al, "al r8 0x0001fe00", "al_r8_0x0001fe00"},
559 {{al, r8, 0x0003fc00}, false, al, "al r8 0x0003fc00", "al_r8_0x0003fc00"},
560 {{al, r8, 0x0007f800}, false, al, "al r8 0x0007f800", "al_r8_0x0007f800"},
561 {{al, r8, 0x000ff000}, false, al, "al r8 0x000ff000", "al_r8_0x000ff000"},
562 {{al, r8, 0x001fe000}, false, al, "al r8 0x001fe000", "al_r8_0x001fe000"},
563 {{al, r8, 0x003fc000}, false, al, "al r8 0x003fc000", "al_r8_0x003fc000"},
564 {{al, r8, 0x007f8000}, false, al, "al r8 0x007f8000", "al_r8_0x007f8000"},
565 {{al, r8, 0x00ff0000}, false, al, "al r8 0x00ff0000", "al_r8_0x00ff0000"},
566 {{al, r8, 0x01fe0000}, false, al, "al r8 0x01fe0000", "al_r8_0x01fe0000"},
567 {{al, r8, 0x03fc0000}, false, al, "al r8 0x03fc0000", "al_r8_0x03fc0000"},
568 {{al, r8, 0x07f80000}, false, al, "al r8 0x07f80000", "al_r8_0x07f80000"},
569 {{al, r8, 0x0ff00000}, false, al, "al r8 0x0ff00000", "al_r8_0x0ff00000"},
570 {{al, r8, 0x1fe00000}, false, al, "al r8 0x1fe00000", "al_r8_0x1fe00000"},
571 {{al, r8, 0x3fc00000}, false, al, "al r8 0x3fc00000", "al_r8_0x3fc00000"},
572 {{al, r8, 0x7f800000}, false, al, "al r8 0x7f800000", "al_r8_0x7f800000"},
573 {{al, r8, 0xff000000}, false, al, "al r8 0xff000000", "al_r8_0xff000000"},
574 {{al, r8, 0x000000ff}, false, al, "al r8 0x000000ff", "al_r8_0x000000ff"},
575 {{al, r8, 0x00ff00ff}, false, al, "al r8 0x00ff00ff", "al_r8_0x00ff00ff"},
576 {{al, r8, 0xff00ff00}, false, al, "al r8 0xff00ff00", "al_r8_0xff00ff00"},
577 {{al, r8, 0xffffffff}, false, al, "al r8 0xffffffff", "al_r8_0xffffffff"},
578 {{al, r8, 0x00000156}, false, al, "al r8 0x00000156", "al_r8_0x00000156"},
579 {{al, r8, 0x000002ac}, false, al, "al r8 0x000002ac", "al_r8_0x000002ac"},
580 {{al, r8, 0x00000558}, false, al, "al r8 0x00000558", "al_r8_0x00000558"},
581 {{al, r8, 0x00000ab0}, false, al, "al r8 0x00000ab0", "al_r8_0x00000ab0"},
582 {{al, r8, 0x00001560}, false, al, "al r8 0x00001560", "al_r8_0x00001560"},
583 {{al, r8, 0x00002ac0}, false, al, "al r8 0x00002ac0", "al_r8_0x00002ac0"},
584 {{al, r8, 0x00005580}, false, al, "al r8 0x00005580", "al_r8_0x00005580"},
585 {{al, r8, 0x0000ab00}, false, al, "al r8 0x0000ab00", "al_r8_0x0000ab00"},
586 {{al, r8, 0x00015600}, false, al, "al r8 0x00015600", "al_r8_0x00015600"},
587 {{al, r8, 0x0002ac00}, false, al, "al r8 0x0002ac00", "al_r8_0x0002ac00"},
588 {{al, r8, 0x00055800}, false, al, "al r8 0x00055800", "al_r8_0x00055800"},
589 {{al, r8, 0x000ab000}, false, al, "al r8 0x000ab000", "al_r8_0x000ab000"},
590 {{al, r8, 0x00156000}, false, al, "al r8 0x00156000", "al_r8_0x00156000"},
591 {{al, r8, 0x002ac000}, false, al, "al r8 0x002ac000", "al_r8_0x002ac000"},
592 {{al, r8, 0x00558000}, false, al, "al r8 0x00558000", "al_r8_0x00558000"},
593 {{al, r8, 0x00ab0000}, false, al, "al r8 0x00ab0000", "al_r8_0x00ab0000"},
594 {{al, r8, 0x01560000}, false, al, "al r8 0x01560000", "al_r8_0x01560000"},
595 {{al, r8, 0x02ac0000}, false, al, "al r8 0x02ac0000", "al_r8_0x02ac0000"},
596 {{al, r8, 0x05580000}, false, al, "al r8 0x05580000", "al_r8_0x05580000"},
597 {{al, r8, 0x0ab00000}, false, al, "al r8 0x0ab00000", "al_r8_0x0ab00000"},
598 {{al, r8, 0x15600000}, false, al, "al r8 0x15600000", "al_r8_0x15600000"},
599 {{al, r8, 0x2ac00000}, false, al, "al r8 0x2ac00000", "al_r8_0x2ac00000"},
600 {{al, r8, 0x55800000}, false, al, "al r8 0x55800000", "al_r8_0x55800000"},
601 {{al, r8, 0xab000000}, false, al, "al r8 0xab000000", "al_r8_0xab000000"},
602 {{al, r8, 0x000000ab}, false, al, "al r8 0x000000ab", "al_r8_0x000000ab"},
603 {{al, r8, 0x00ab00ab}, false, al, "al r8 0x00ab00ab", "al_r8_0x00ab00ab"},
604 {{al, r8, 0xab00ab00}, false, al, "al r8 0xab00ab00", "al_r8_0xab00ab00"},
605 {{al, r8, 0xabababab}, false, al, "al r8 0xabababab", "al_r8_0xabababab"},
606 {{al, r9, 0x000001fe}, false, al, "al r9 0x000001fe", "al_r9_0x000001fe"},
607 {{al, r9, 0x000003fc}, false, al, "al r9 0x000003fc", "al_r9_0x000003fc"},
608 {{al, r9, 0x000007f8}, false, al, "al r9 0x000007f8", "al_r9_0x000007f8"},
609 {{al, r9, 0x00000ff0}, false, al, "al r9 0x00000ff0", "al_r9_0x00000ff0"},
610 {{al, r9, 0x00001fe0}, false, al, "al r9 0x00001fe0", "al_r9_0x00001fe0"},
611 {{al, r9, 0x00003fc0}, false, al, "al r9 0x00003fc0", "al_r9_0x00003fc0"},
612 {{al, r9, 0x00007f80}, false, al, "al r9 0x00007f80", "al_r9_0x00007f80"},
613 {{al, r9, 0x0000ff00}, false, al, "al r9 0x0000ff00", "al_r9_0x0000ff00"},
614 {{al, r9, 0x0001fe00}, false, al, "al r9 0x0001fe00", "al_r9_0x0001fe00"},
615 {{al, r9, 0x0003fc00}, false, al, "al r9 0x0003fc00", "al_r9_0x0003fc00"},
616 {{al, r9, 0x0007f800}, false, al, "al r9 0x0007f800", "al_r9_0x0007f800"},
617 {{al, r9, 0x000ff000}, false, al, "al r9 0x000ff000", "al_r9_0x000ff000"},
618 {{al, r9, 0x001fe000}, false, al, "al r9 0x001fe000", "al_r9_0x001fe000"},
619 {{al, r9, 0x003fc000}, false, al, "al r9 0x003fc000", "al_r9_0x003fc000"},
620 {{al, r9, 0x007f8000}, false, al, "al r9 0x007f8000", "al_r9_0x007f8000"},
621 {{al, r9, 0x00ff0000}, false, al, "al r9 0x00ff0000", "al_r9_0x00ff0000"},
622 {{al, r9, 0x01fe0000}, false, al, "al r9 0x01fe0000", "al_r9_0x01fe0000"},
623 {{al, r9, 0x03fc0000}, false, al, "al r9 0x03fc0000", "al_r9_0x03fc0000"},
624 {{al, r9, 0x07f80000}, false, al, "al r9 0x07f80000", "al_r9_0x07f80000"},
625 {{al, r9, 0x0ff00000}, false, al, "al r9 0x0ff00000", "al_r9_0x0ff00000"},
626 {{al, r9, 0x1fe00000}, false, al, "al r9 0x1fe00000", "al_r9_0x1fe00000"},
627 {{al, r9, 0x3fc00000}, false, al, "al r9 0x3fc00000", "al_r9_0x3fc00000"},
628 {{al, r9, 0x7f800000}, false, al, "al r9 0x7f800000", "al_r9_0x7f800000"},
629 {{al, r9, 0xff000000}, false, al, "al r9 0xff000000", "al_r9_0xff000000"},
630 {{al, r9, 0x000000ff}, false, al, "al r9 0x000000ff", "al_r9_0x000000ff"},
631 {{al, r9, 0x00ff00ff}, false, al, "al r9 0x00ff00ff", "al_r9_0x00ff00ff"},
632 {{al, r9, 0xff00ff00}, false, al, "al r9 0xff00ff00", "al_r9_0xff00ff00"},
633 {{al, r9, 0xffffffff}, false, al, "al r9 0xffffffff", "al_r9_0xffffffff"},
634 {{al, r9, 0x00000156}, false, al, "al r9 0x00000156", "al_r9_0x00000156"},
635 {{al, r9, 0x000002ac}, false, al, "al r9 0x000002ac", "al_r9_0x000002ac"},
636 {{al, r9, 0x00000558}, false, al, "al r9 0x00000558", "al_r9_0x00000558"},
637 {{al, r9, 0x00000ab0}, false, al, "al r9 0x00000ab0", "al_r9_0x00000ab0"},
638 {{al, r9, 0x00001560}, false, al, "al r9 0x00001560", "al_r9_0x00001560"},
639 {{al, r9, 0x00002ac0}, false, al, "al r9 0x00002ac0", "al_r9_0x00002ac0"},
640 {{al, r9, 0x00005580}, false, al, "al r9 0x00005580", "al_r9_0x00005580"},
641 {{al, r9, 0x0000ab00}, false, al, "al r9 0x0000ab00", "al_r9_0x0000ab00"},
642 {{al, r9, 0x00015600}, false, al, "al r9 0x00015600", "al_r9_0x00015600"},
643 {{al, r9, 0x0002ac00}, false, al, "al r9 0x0002ac00", "al_r9_0x0002ac00"},
644 {{al, r9, 0x00055800}, false, al, "al r9 0x00055800", "al_r9_0x00055800"},
645 {{al, r9, 0x000ab000}, false, al, "al r9 0x000ab000", "al_r9_0x000ab000"},
646 {{al, r9, 0x00156000}, false, al, "al r9 0x00156000", "al_r9_0x00156000"},
647 {{al, r9, 0x002ac000}, false, al, "al r9 0x002ac000", "al_r9_0x002ac000"},
648 {{al, r9, 0x00558000}, false, al, "al r9 0x00558000", "al_r9_0x00558000"},
649 {{al, r9, 0x00ab0000}, false, al, "al r9 0x00ab0000", "al_r9_0x00ab0000"},
650 {{al, r9, 0x01560000}, false, al, "al r9 0x01560000", "al_r9_0x01560000"},
651 {{al, r9, 0x02ac0000}, false, al, "al r9 0x02ac0000", "al_r9_0x02ac0000"},
652 {{al, r9, 0x05580000}, false, al, "al r9 0x05580000", "al_r9_0x05580000"},
653 {{al, r9, 0x0ab00000}, false, al, "al r9 0x0ab00000", "al_r9_0x0ab00000"},
654 {{al, r9, 0x15600000}, false, al, "al r9 0x15600000", "al_r9_0x15600000"},
655 {{al, r9, 0x2ac00000}, false, al, "al r9 0x2ac00000", "al_r9_0x2ac00000"},
656 {{al, r9, 0x55800000}, false, al, "al r9 0x55800000", "al_r9_0x55800000"},
657 {{al, r9, 0xab000000}, false, al, "al r9 0xab000000", "al_r9_0xab000000"},
658 {{al, r9, 0x000000ab}, false, al, "al r9 0x000000ab", "al_r9_0x000000ab"},
659 {{al, r9, 0x00ab00ab}, false, al, "al r9 0x00ab00ab", "al_r9_0x00ab00ab"},
660 {{al, r9, 0xab00ab00}, false, al, "al r9 0xab00ab00", "al_r9_0xab00ab00"},
661 {{al, r9, 0xabababab}, false, al, "al r9 0xabababab", "al_r9_0xabababab"},
662 {{al, r10, 0x000001fe},
663 false,
664 al,
665 "al r10 0x000001fe",
666 "al_r10_"
667 "0x000001fe"},
668 {{al, r10, 0x000003fc},
669 false,
670 al,
671 "al r10 0x000003fc",
672 "al_r10_"
673 "0x000003fc"},
674 {{al, r10, 0x000007f8},
675 false,
676 al,
677 "al r10 0x000007f8",
678 "al_r10_"
679 "0x000007f8"},
680 {{al, r10, 0x00000ff0},
681 false,
682 al,
683 "al r10 0x00000ff0",
684 "al_r10_"
685 "0x00000ff0"},
686 {{al, r10, 0x00001fe0},
687 false,
688 al,
689 "al r10 0x00001fe0",
690 "al_r10_"
691 "0x00001fe0"},
692 {{al, r10, 0x00003fc0},
693 false,
694 al,
695 "al r10 0x00003fc0",
696 "al_r10_"
697 "0x00003fc0"},
698 {{al, r10, 0x00007f80},
699 false,
700 al,
701 "al r10 0x00007f80",
702 "al_r10_"
703 "0x00007f80"},
704 {{al, r10, 0x0000ff00},
705 false,
706 al,
707 "al r10 0x0000ff00",
708 "al_r10_"
709 "0x0000ff00"},
710 {{al, r10, 0x0001fe00},
711 false,
712 al,
713 "al r10 0x0001fe00",
714 "al_r10_"
715 "0x0001fe00"},
716 {{al, r10, 0x0003fc00},
717 false,
718 al,
719 "al r10 0x0003fc00",
720 "al_r10_"
721 "0x0003fc00"},
722 {{al, r10, 0x0007f800},
723 false,
724 al,
725 "al r10 0x0007f800",
726 "al_r10_"
727 "0x0007f800"},
728 {{al, r10, 0x000ff000},
729 false,
730 al,
731 "al r10 0x000ff000",
732 "al_r10_"
733 "0x000ff000"},
734 {{al, r10, 0x001fe000},
735 false,
736 al,
737 "al r10 0x001fe000",
738 "al_r10_"
739 "0x001fe000"},
740 {{al, r10, 0x003fc000},
741 false,
742 al,
743 "al r10 0x003fc000",
744 "al_r10_"
745 "0x003fc000"},
746 {{al, r10, 0x007f8000},
747 false,
748 al,
749 "al r10 0x007f8000",
750 "al_r10_"
751 "0x007f8000"},
752 {{al, r10, 0x00ff0000},
753 false,
754 al,
755 "al r10 0x00ff0000",
756 "al_r10_"
757 "0x00ff0000"},
758 {{al, r10, 0x01fe0000},
759 false,
760 al,
761 "al r10 0x01fe0000",
762 "al_r10_"
763 "0x01fe0000"},
764 {{al, r10, 0x03fc0000},
765 false,
766 al,
767 "al r10 0x03fc0000",
768 "al_r10_"
769 "0x03fc0000"},
770 {{al, r10, 0x07f80000},
771 false,
772 al,
773 "al r10 0x07f80000",
774 "al_r10_"
775 "0x07f80000"},
776 {{al, r10, 0x0ff00000},
777 false,
778 al,
779 "al r10 0x0ff00000",
780 "al_r10_"
781 "0x0ff00000"},
782 {{al, r10, 0x1fe00000},
783 false,
784 al,
785 "al r10 0x1fe00000",
786 "al_r10_"
787 "0x1fe00000"},
788 {{al, r10, 0x3fc00000},
789 false,
790 al,
791 "al r10 0x3fc00000",
792 "al_r10_"
793 "0x3fc00000"},
794 {{al, r10, 0x7f800000},
795 false,
796 al,
797 "al r10 0x7f800000",
798 "al_r10_"
799 "0x7f800000"},
800 {{al, r10, 0xff000000},
801 false,
802 al,
803 "al r10 0xff000000",
804 "al_r10_"
805 "0xff000000"},
806 {{al, r10, 0x000000ff},
807 false,
808 al,
809 "al r10 0x000000ff",
810 "al_r10_"
811 "0x000000ff"},
812 {{al, r10, 0x00ff00ff},
813 false,
814 al,
815 "al r10 0x00ff00ff",
816 "al_r10_"
817 "0x00ff00ff"},
818 {{al, r10, 0xff00ff00},
819 false,
820 al,
821 "al r10 0xff00ff00",
822 "al_r10_"
823 "0xff00ff00"},
824 {{al, r10, 0xffffffff},
825 false,
826 al,
827 "al r10 0xffffffff",
828 "al_r10_"
829 "0xffffffff"},
830 {{al, r10, 0x00000156},
831 false,
832 al,
833 "al r10 0x00000156",
834 "al_r10_"
835 "0x00000156"},
836 {{al, r10, 0x000002ac},
837 false,
838 al,
839 "al r10 0x000002ac",
840 "al_r10_"
841 "0x000002ac"},
842 {{al, r10, 0x00000558},
843 false,
844 al,
845 "al r10 0x00000558",
846 "al_r10_"
847 "0x00000558"},
848 {{al, r10, 0x00000ab0},
849 false,
850 al,
851 "al r10 0x00000ab0",
852 "al_r10_"
853 "0x00000ab0"},
854 {{al, r10, 0x00001560},
855 false,
856 al,
857 "al r10 0x00001560",
858 "al_r10_"
859 "0x00001560"},
860 {{al, r10, 0x00002ac0},
861 false,
862 al,
863 "al r10 0x00002ac0",
864 "al_r10_"
865 "0x00002ac0"},
866 {{al, r10, 0x00005580},
867 false,
868 al,
869 "al r10 0x00005580",
870 "al_r10_"
871 "0x00005580"},
872 {{al, r10, 0x0000ab00},
873 false,
874 al,
875 "al r10 0x0000ab00",
876 "al_r10_"
877 "0x0000ab00"},
878 {{al, r10, 0x00015600},
879 false,
880 al,
881 "al r10 0x00015600",
882 "al_r10_"
883 "0x00015600"},
884 {{al, r10, 0x0002ac00},
885 false,
886 al,
887 "al r10 0x0002ac00",
888 "al_r10_"
889 "0x0002ac00"},
890 {{al, r10, 0x00055800},
891 false,
892 al,
893 "al r10 0x00055800",
894 "al_r10_"
895 "0x00055800"},
896 {{al, r10, 0x000ab000},
897 false,
898 al,
899 "al r10 0x000ab000",
900 "al_r10_"
901 "0x000ab000"},
902 {{al, r10, 0x00156000},
903 false,
904 al,
905 "al r10 0x00156000",
906 "al_r10_"
907 "0x00156000"},
908 {{al, r10, 0x002ac000},
909 false,
910 al,
911 "al r10 0x002ac000",
912 "al_r10_"
913 "0x002ac000"},
914 {{al, r10, 0x00558000},
915 false,
916 al,
917 "al r10 0x00558000",
918 "al_r10_"
919 "0x00558000"},
920 {{al, r10, 0x00ab0000},
921 false,
922 al,
923 "al r10 0x00ab0000",
924 "al_r10_"
925 "0x00ab0000"},
926 {{al, r10, 0x01560000},
927 false,
928 al,
929 "al r10 0x01560000",
930 "al_r10_"
931 "0x01560000"},
932 {{al, r10, 0x02ac0000},
933 false,
934 al,
935 "al r10 0x02ac0000",
936 "al_r10_"
937 "0x02ac0000"},
938 {{al, r10, 0x05580000},
939 false,
940 al,
941 "al r10 0x05580000",
942 "al_r10_"
943 "0x05580000"},
944 {{al, r10, 0x0ab00000},
945 false,
946 al,
947 "al r10 0x0ab00000",
948 "al_r10_"
949 "0x0ab00000"},
950 {{al, r10, 0x15600000},
951 false,
952 al,
953 "al r10 0x15600000",
954 "al_r10_"
955 "0x15600000"},
956 {{al, r10, 0x2ac00000},
957 false,
958 al,
959 "al r10 0x2ac00000",
960 "al_r10_"
961 "0x2ac00000"},
962 {{al, r10, 0x55800000},
963 false,
964 al,
965 "al r10 0x55800000",
966 "al_r10_"
967 "0x55800000"},
968 {{al, r10, 0xab000000},
969 false,
970 al,
971 "al r10 0xab000000",
972 "al_r10_"
973 "0xab000000"},
974 {{al, r10, 0x000000ab},
975 false,
976 al,
977 "al r10 0x000000ab",
978 "al_r10_"
979 "0x000000ab"},
980 {{al, r10, 0x00ab00ab},
981 false,
982 al,
983 "al r10 0x00ab00ab",
984 "al_r10_"
985 "0x00ab00ab"},
986 {{al, r10, 0xab00ab00},
987 false,
988 al,
989 "al r10 0xab00ab00",
990 "al_r10_"
991 "0xab00ab00"},
992 {{al, r10, 0xabababab},
993 false,
994 al,
995 "al r10 0xabababab",
996 "al_r10_"
997 "0xabababab"},
998 {{al, r11, 0x000001fe},
999 false,
1000 al,
1001 "al r11 0x000001fe",
1002 "al_r11_"
1003 "0x000001fe"},
1004 {{al, r11, 0x000003fc},
1005 false,
1006 al,
1007 "al r11 0x000003fc",
1008 "al_r11_"
1009 "0x000003fc"},
1010 {{al, r11, 0x000007f8},
1011 false,
1012 al,
1013 "al r11 0x000007f8",
1014 "al_r11_"
1015 "0x000007f8"},
1016 {{al, r11, 0x00000ff0},
1017 false,
1018 al,
1019 "al r11 0x00000ff0",
1020 "al_r11_"
1021 "0x00000ff0"},
1022 {{al, r11, 0x00001fe0},
1023 false,
1024 al,
1025 "al r11 0x00001fe0",
1026 "al_r11_"
1027 "0x00001fe0"},
1028 {{al, r11, 0x00003fc0},
1029 false,
1030 al,
1031 "al r11 0x00003fc0",
1032 "al_r11_"
1033 "0x00003fc0"},
1034 {{al, r11, 0x00007f80},
1035 false,
1036 al,
1037 "al r11 0x00007f80",
1038 "al_r11_"
1039 "0x00007f80"},
1040 {{al, r11, 0x0000ff00},
1041 false,
1042 al,
1043 "al r11 0x0000ff00",
1044 "al_r11_"
1045 "0x0000ff00"},
1046 {{al, r11, 0x0001fe00},
1047 false,
1048 al,
1049 "al r11 0x0001fe00",
1050 "al_r11_"
1051 "0x0001fe00"},
1052 {{al, r11, 0x0003fc00},
1053 false,
1054 al,
1055 "al r11 0x0003fc00",
1056 "al_r11_"
1057 "0x0003fc00"},
1058 {{al, r11, 0x0007f800},
1059 false,
1060 al,
1061 "al r11 0x0007f800",
1062 "al_r11_"
1063 "0x0007f800"},
1064 {{al, r11, 0x000ff000},
1065 false,
1066 al,
1067 "al r11 0x000ff000",
1068 "al_r11_"
1069 "0x000ff000"},
1070 {{al, r11, 0x001fe000},
1071 false,
1072 al,
1073 "al r11 0x001fe000",
1074 "al_r11_"
1075 "0x001fe000"},
1076 {{al, r11, 0x003fc000},
1077 false,
1078 al,
1079 "al r11 0x003fc000",
1080 "al_r11_"
1081 "0x003fc000"},
1082 {{al, r11, 0x007f8000},
1083 false,
1084 al,
1085 "al r11 0x007f8000",
1086 "al_r11_"
1087 "0x007f8000"},
1088 {{al, r11, 0x00ff0000},
1089 false,
1090 al,
1091 "al r11 0x00ff0000",
1092 "al_r11_"
1093 "0x00ff0000"},
1094 {{al, r11, 0x01fe0000},
1095 false,
1096 al,
1097 "al r11 0x01fe0000",
1098 "al_r11_"
1099 "0x01fe0000"},
1100 {{al, r11, 0x03fc0000},
1101 false,
1102 al,
1103 "al r11 0x03fc0000",
1104 "al_r11_"
1105 "0x03fc0000"},
1106 {{al, r11, 0x07f80000},
1107 false,
1108 al,
1109 "al r11 0x07f80000",
1110 "al_r11_"
1111 "0x07f80000"},
1112 {{al, r11, 0x0ff00000},
1113 false,
1114 al,
1115 "al r11 0x0ff00000",
1116 "al_r11_"
1117 "0x0ff00000"},
1118 {{al, r11, 0x1fe00000},
1119 false,
1120 al,
1121 "al r11 0x1fe00000",
1122 "al_r11_"
1123 "0x1fe00000"},
1124 {{al, r11, 0x3fc00000},
1125 false,
1126 al,
1127 "al r11 0x3fc00000",
1128 "al_r11_"
1129 "0x3fc00000"},
1130 {{al, r11, 0x7f800000},
1131 false,
1132 al,
1133 "al r11 0x7f800000",
1134 "al_r11_"
1135 "0x7f800000"},
1136 {{al, r11, 0xff000000},
1137 false,
1138 al,
1139 "al r11 0xff000000",
1140 "al_r11_"
1141 "0xff000000"},
1142 {{al, r11, 0x000000ff},
1143 false,
1144 al,
1145 "al r11 0x000000ff",
1146 "al_r11_"
1147 "0x000000ff"},
1148 {{al, r11, 0x00ff00ff},
1149 false,
1150 al,
1151 "al r11 0x00ff00ff",
1152 "al_r11_"
1153 "0x00ff00ff"},
1154 {{al, r11, 0xff00ff00},
1155 false,
1156 al,
1157 "al r11 0xff00ff00",
1158 "al_r11_"
1159 "0xff00ff00"},
1160 {{al, r11, 0xffffffff},
1161 false,
1162 al,
1163 "al r11 0xffffffff",
1164 "al_r11_"
1165 "0xffffffff"},
1166 {{al, r11, 0x00000156},
1167 false,
1168 al,
1169 "al r11 0x00000156",
1170 "al_r11_"
1171 "0x00000156"},
1172 {{al, r11, 0x000002ac},
1173 false,
1174 al,
1175 "al r11 0x000002ac",
1176 "al_r11_"
1177 "0x000002ac"},
1178 {{al, r11, 0x00000558},
1179 false,
1180 al,
1181 "al r11 0x00000558",
1182 "al_r11_"
1183 "0x00000558"},
1184 {{al, r11, 0x00000ab0},
1185 false,
1186 al,
1187 "al r11 0x00000ab0",
1188 "al_r11_"
1189 "0x00000ab0"},
1190 {{al, r11, 0x00001560},
1191 false,
1192 al,
1193 "al r11 0x00001560",
1194 "al_r11_"
1195 "0x00001560"},
1196 {{al, r11, 0x00002ac0},
1197 false,
1198 al,
1199 "al r11 0x00002ac0",
1200 "al_r11_"
1201 "0x00002ac0"},
1202 {{al, r11, 0x00005580},
1203 false,
1204 al,
1205 "al r11 0x00005580",
1206 "al_r11_"
1207 "0x00005580"},
1208 {{al, r11, 0x0000ab00},
1209 false,
1210 al,
1211 "al r11 0x0000ab00",
1212 "al_r11_"
1213 "0x0000ab00"},
1214 {{al, r11, 0x00015600},
1215 false,
1216 al,
1217 "al r11 0x00015600",
1218 "al_r11_"
1219 "0x00015600"},
1220 {{al, r11, 0x0002ac00},
1221 false,
1222 al,
1223 "al r11 0x0002ac00",
1224 "al_r11_"
1225 "0x0002ac00"},
1226 {{al, r11, 0x00055800},
1227 false,
1228 al,
1229 "al r11 0x00055800",
1230 "al_r11_"
1231 "0x00055800"},
1232 {{al, r11, 0x000ab000},
1233 false,
1234 al,
1235 "al r11 0x000ab000",
1236 "al_r11_"
1237 "0x000ab000"},
1238 {{al, r11, 0x00156000},
1239 false,
1240 al,
1241 "al r11 0x00156000",
1242 "al_r11_"
1243 "0x00156000"},
1244 {{al, r11, 0x002ac000},
1245 false,
1246 al,
1247 "al r11 0x002ac000",
1248 "al_r11_"
1249 "0x002ac000"},
1250 {{al, r11, 0x00558000},
1251 false,
1252 al,
1253 "al r11 0x00558000",
1254 "al_r11_"
1255 "0x00558000"},
1256 {{al, r11, 0x00ab0000},
1257 false,
1258 al,
1259 "al r11 0x00ab0000",
1260 "al_r11_"
1261 "0x00ab0000"},
1262 {{al, r11, 0x01560000},
1263 false,
1264 al,
1265 "al r11 0x01560000",
1266 "al_r11_"
1267 "0x01560000"},
1268 {{al, r11, 0x02ac0000},
1269 false,
1270 al,
1271 "al r11 0x02ac0000",
1272 "al_r11_"
1273 "0x02ac0000"},
1274 {{al, r11, 0x05580000},
1275 false,
1276 al,
1277 "al r11 0x05580000",
1278 "al_r11_"
1279 "0x05580000"},
1280 {{al, r11, 0x0ab00000},
1281 false,
1282 al,
1283 "al r11 0x0ab00000",
1284 "al_r11_"
1285 "0x0ab00000"},
1286 {{al, r11, 0x15600000},
1287 false,
1288 al,
1289 "al r11 0x15600000",
1290 "al_r11_"
1291 "0x15600000"},
1292 {{al, r11, 0x2ac00000},
1293 false,
1294 al,
1295 "al r11 0x2ac00000",
1296 "al_r11_"
1297 "0x2ac00000"},
1298 {{al, r11, 0x55800000},
1299 false,
1300 al,
1301 "al r11 0x55800000",
1302 "al_r11_"
1303 "0x55800000"},
1304 {{al, r11, 0xab000000},
1305 false,
1306 al,
1307 "al r11 0xab000000",
1308 "al_r11_"
1309 "0xab000000"},
1310 {{al, r11, 0x000000ab},
1311 false,
1312 al,
1313 "al r11 0x000000ab",
1314 "al_r11_"
1315 "0x000000ab"},
1316 {{al, r11, 0x00ab00ab},
1317 false,
1318 al,
1319 "al r11 0x00ab00ab",
1320 "al_r11_"
1321 "0x00ab00ab"},
1322 {{al, r11, 0xab00ab00},
1323 false,
1324 al,
1325 "al r11 0xab00ab00",
1326 "al_r11_"
1327 "0xab00ab00"},
1328 {{al, r11, 0xabababab},
1329 false,
1330 al,
1331 "al r11 0xabababab",
1332 "al_r11_"
1333 "0xabababab"},
1334 {{al, r12, 0x000001fe},
1335 false,
1336 al,
1337 "al r12 0x000001fe",
1338 "al_r12_"
1339 "0x000001fe"},
1340 {{al, r12, 0x000003fc},
1341 false,
1342 al,
1343 "al r12 0x000003fc",
1344 "al_r12_"
1345 "0x000003fc"},
1346 {{al, r12, 0x000007f8},
1347 false,
1348 al,
1349 "al r12 0x000007f8",
1350 "al_r12_"
1351 "0x000007f8"},
1352 {{al, r12, 0x00000ff0},
1353 false,
1354 al,
1355 "al r12 0x00000ff0",
1356 "al_r12_"
1357 "0x00000ff0"},
1358 {{al, r12, 0x00001fe0},
1359 false,
1360 al,
1361 "al r12 0x00001fe0",
1362 "al_r12_"
1363 "0x00001fe0"},
1364 {{al, r12, 0x00003fc0},
1365 false,
1366 al,
1367 "al r12 0x00003fc0",
1368 "al_r12_"
1369 "0x00003fc0"},
1370 {{al, r12, 0x00007f80},
1371 false,
1372 al,
1373 "al r12 0x00007f80",
1374 "al_r12_"
1375 "0x00007f80"},
1376 {{al, r12, 0x0000ff00},
1377 false,
1378 al,
1379 "al r12 0x0000ff00",
1380 "al_r12_"
1381 "0x0000ff00"},
1382 {{al, r12, 0x0001fe00},
1383 false,
1384 al,
1385 "al r12 0x0001fe00",
1386 "al_r12_"
1387 "0x0001fe00"},
1388 {{al, r12, 0x0003fc00},
1389 false,
1390 al,
1391 "al r12 0x0003fc00",
1392 "al_r12_"
1393 "0x0003fc00"},
1394 {{al, r12, 0x0007f800},
1395 false,
1396 al,
1397 "al r12 0x0007f800",
1398 "al_r12_"
1399 "0x0007f800"},
1400 {{al, r12, 0x000ff000},
1401 false,
1402 al,
1403 "al r12 0x000ff000",
1404 "al_r12_"
1405 "0x000ff000"},
1406 {{al, r12, 0x001fe000},
1407 false,
1408 al,
1409 "al r12 0x001fe000",
1410 "al_r12_"
1411 "0x001fe000"},
1412 {{al, r12, 0x003fc000},
1413 false,
1414 al,
1415 "al r12 0x003fc000",
1416 "al_r12_"
1417 "0x003fc000"},
1418 {{al, r12, 0x007f8000},
1419 false,
1420 al,
1421 "al r12 0x007f8000",
1422 "al_r12_"
1423 "0x007f8000"},
1424 {{al, r12, 0x00ff0000},
1425 false,
1426 al,
1427 "al r12 0x00ff0000",
1428 "al_r12_"
1429 "0x00ff0000"},
1430 {{al, r12, 0x01fe0000},
1431 false,
1432 al,
1433 "al r12 0x01fe0000",
1434 "al_r12_"
1435 "0x01fe0000"},
1436 {{al, r12, 0x03fc0000},
1437 false,
1438 al,
1439 "al r12 0x03fc0000",
1440 "al_r12_"
1441 "0x03fc0000"},
1442 {{al, r12, 0x07f80000},
1443 false,
1444 al,
1445 "al r12 0x07f80000",
1446 "al_r12_"
1447 "0x07f80000"},
1448 {{al, r12, 0x0ff00000},
1449 false,
1450 al,
1451 "al r12 0x0ff00000",
1452 "al_r12_"
1453 "0x0ff00000"},
1454 {{al, r12, 0x1fe00000},
1455 false,
1456 al,
1457 "al r12 0x1fe00000",
1458 "al_r12_"
1459 "0x1fe00000"},
1460 {{al, r12, 0x3fc00000},
1461 false,
1462 al,
1463 "al r12 0x3fc00000",
1464 "al_r12_"
1465 "0x3fc00000"},
1466 {{al, r12, 0x7f800000},
1467 false,
1468 al,
1469 "al r12 0x7f800000",
1470 "al_r12_"
1471 "0x7f800000"},
1472 {{al, r12, 0xff000000},
1473 false,
1474 al,
1475 "al r12 0xff000000",
1476 "al_r12_"
1477 "0xff000000"},
1478 {{al, r12, 0x000000ff},
1479 false,
1480 al,
1481 "al r12 0x000000ff",
1482 "al_r12_"
1483 "0x000000ff"},
1484 {{al, r12, 0x00ff00ff},
1485 false,
1486 al,
1487 "al r12 0x00ff00ff",
1488 "al_r12_"
1489 "0x00ff00ff"},
1490 {{al, r12, 0xff00ff00},
1491 false,
1492 al,
1493 "al r12 0xff00ff00",
1494 "al_r12_"
1495 "0xff00ff00"},
1496 {{al, r12, 0xffffffff},
1497 false,
1498 al,
1499 "al r12 0xffffffff",
1500 "al_r12_"
1501 "0xffffffff"},
1502 {{al, r12, 0x00000156},
1503 false,
1504 al,
1505 "al r12 0x00000156",
1506 "al_r12_"
1507 "0x00000156"},
1508 {{al, r12, 0x000002ac},
1509 false,
1510 al,
1511 "al r12 0x000002ac",
1512 "al_r12_"
1513 "0x000002ac"},
1514 {{al, r12, 0x00000558},
1515 false,
1516 al,
1517 "al r12 0x00000558",
1518 "al_r12_"
1519 "0x00000558"},
1520 {{al, r12, 0x00000ab0},
1521 false,
1522 al,
1523 "al r12 0x00000ab0",
1524 "al_r12_"
1525 "0x00000ab0"},
1526 {{al, r12, 0x00001560},
1527 false,
1528 al,
1529 "al r12 0x00001560",
1530 "al_r12_"
1531 "0x00001560"},
1532 {{al, r12, 0x00002ac0},
1533 false,
1534 al,
1535 "al r12 0x00002ac0",
1536 "al_r12_"
1537 "0x00002ac0"},
1538 {{al, r12, 0x00005580},
1539 false,
1540 al,
1541 "al r12 0x00005580",
1542 "al_r12_"
1543 "0x00005580"},
1544 {{al, r12, 0x0000ab00},
1545 false,
1546 al,
1547 "al r12 0x0000ab00",
1548 "al_r12_"
1549 "0x0000ab00"},
1550 {{al, r12, 0x00015600},
1551 false,
1552 al,
1553 "al r12 0x00015600",
1554 "al_r12_"
1555 "0x00015600"},
1556 {{al, r12, 0x0002ac00},
1557 false,
1558 al,
1559 "al r12 0x0002ac00",
1560 "al_r12_"
1561 "0x0002ac00"},
1562 {{al, r12, 0x00055800},
1563 false,
1564 al,
1565 "al r12 0x00055800",
1566 "al_r12_"
1567 "0x00055800"},
1568 {{al, r12, 0x000ab000},
1569 false,
1570 al,
1571 "al r12 0x000ab000",
1572 "al_r12_"
1573 "0x000ab000"},
1574 {{al, r12, 0x00156000},
1575 false,
1576 al,
1577 "al r12 0x00156000",
1578 "al_r12_"
1579 "0x00156000"},
1580 {{al, r12, 0x002ac000},
1581 false,
1582 al,
1583 "al r12 0x002ac000",
1584 "al_r12_"
1585 "0x002ac000"},
1586 {{al, r12, 0x00558000},
1587 false,
1588 al,
1589 "al r12 0x00558000",
1590 "al_r12_"
1591 "0x00558000"},
1592 {{al, r12, 0x00ab0000},
1593 false,
1594 al,
1595 "al r12 0x00ab0000",
1596 "al_r12_"
1597 "0x00ab0000"},
1598 {{al, r12, 0x01560000},
1599 false,
1600 al,
1601 "al r12 0x01560000",
1602 "al_r12_"
1603 "0x01560000"},
1604 {{al, r12, 0x02ac0000},
1605 false,
1606 al,
1607 "al r12 0x02ac0000",
1608 "al_r12_"
1609 "0x02ac0000"},
1610 {{al, r12, 0x05580000},
1611 false,
1612 al,
1613 "al r12 0x05580000",
1614 "al_r12_"
1615 "0x05580000"},
1616 {{al, r12, 0x0ab00000},
1617 false,
1618 al,
1619 "al r12 0x0ab00000",
1620 "al_r12_"
1621 "0x0ab00000"},
1622 {{al, r12, 0x15600000},
1623 false,
1624 al,
1625 "al r12 0x15600000",
1626 "al_r12_"
1627 "0x15600000"},
1628 {{al, r12, 0x2ac00000},
1629 false,
1630 al,
1631 "al r12 0x2ac00000",
1632 "al_r12_"
1633 "0x2ac00000"},
1634 {{al, r12, 0x55800000},
1635 false,
1636 al,
1637 "al r12 0x55800000",
1638 "al_r12_"
1639 "0x55800000"},
1640 {{al, r12, 0xab000000},
1641 false,
1642 al,
1643 "al r12 0xab000000",
1644 "al_r12_"
1645 "0xab000000"},
1646 {{al, r12, 0x000000ab},
1647 false,
1648 al,
1649 "al r12 0x000000ab",
1650 "al_r12_"
1651 "0x000000ab"},
1652 {{al, r12, 0x00ab00ab},
1653 false,
1654 al,
1655 "al r12 0x00ab00ab",
1656 "al_r12_"
1657 "0x00ab00ab"},
1658 {{al, r12, 0xab00ab00},
1659 false,
1660 al,
1661 "al r12 0xab00ab00",
1662 "al_r12_"
1663 "0xab00ab00"},
1664 {{al, r12, 0xabababab},
1665 false,
1666 al,
1667 "al r12 0xabababab",
1668 "al_r12_"
1669 "0xabababab"},
1670 {{al, r13, 0x000001fe},
1671 false,
1672 al,
1673 "al r13 0x000001fe",
1674 "al_r13_"
1675 "0x000001fe"},
1676 {{al, r13, 0x000003fc},
1677 false,
1678 al,
1679 "al r13 0x000003fc",
1680 "al_r13_"
1681 "0x000003fc"},
1682 {{al, r13, 0x000007f8},
1683 false,
1684 al,
1685 "al r13 0x000007f8",
1686 "al_r13_"
1687 "0x000007f8"},
1688 {{al, r13, 0x00000ff0},
1689 false,
1690 al,
1691 "al r13 0x00000ff0",
1692 "al_r13_"
1693 "0x00000ff0"},
1694 {{al, r13, 0x00001fe0},
1695 false,
1696 al,
1697 "al r13 0x00001fe0",
1698 "al_r13_"
1699 "0x00001fe0"},
1700 {{al, r13, 0x00003fc0},
1701 false,
1702 al,
1703 "al r13 0x00003fc0",
1704 "al_r13_"
1705 "0x00003fc0"},
1706 {{al, r13, 0x00007f80},
1707 false,
1708 al,
1709 "al r13 0x00007f80",
1710 "al_r13_"
1711 "0x00007f80"},
1712 {{al, r13, 0x0000ff00},
1713 false,
1714 al,
1715 "al r13 0x0000ff00",
1716 "al_r13_"
1717 "0x0000ff00"},
1718 {{al, r13, 0x0001fe00},
1719 false,
1720 al,
1721 "al r13 0x0001fe00",
1722 "al_r13_"
1723 "0x0001fe00"},
1724 {{al, r13, 0x0003fc00},
1725 false,
1726 al,
1727 "al r13 0x0003fc00",
1728 "al_r13_"
1729 "0x0003fc00"},
1730 {{al, r13, 0x0007f800},
1731 false,
1732 al,
1733 "al r13 0x0007f800",
1734 "al_r13_"
1735 "0x0007f800"},
1736 {{al, r13, 0x000ff000},
1737 false,
1738 al,
1739 "al r13 0x000ff000",
1740 "al_r13_"
1741 "0x000ff000"},
1742 {{al, r13, 0x001fe000},
1743 false,
1744 al,
1745 "al r13 0x001fe000",
1746 "al_r13_"
1747 "0x001fe000"},
1748 {{al, r13, 0x003fc000},
1749 false,
1750 al,
1751 "al r13 0x003fc000",
1752 "al_r13_"
1753 "0x003fc000"},
1754 {{al, r13, 0x007f8000},
1755 false,
1756 al,
1757 "al r13 0x007f8000",
1758 "al_r13_"
1759 "0x007f8000"},
1760 {{al, r13, 0x00ff0000},
1761 false,
1762 al,
1763 "al r13 0x00ff0000",
1764 "al_r13_"
1765 "0x00ff0000"},
1766 {{al, r13, 0x01fe0000},
1767 false,
1768 al,
1769 "al r13 0x01fe0000",
1770 "al_r13_"
1771 "0x01fe0000"},
1772 {{al, r13, 0x03fc0000},
1773 false,
1774 al,
1775 "al r13 0x03fc0000",
1776 "al_r13_"
1777 "0x03fc0000"},
1778 {{al, r13, 0x07f80000},
1779 false,
1780 al,
1781 "al r13 0x07f80000",
1782 "al_r13_"
1783 "0x07f80000"},
1784 {{al, r13, 0x0ff00000},
1785 false,
1786 al,
1787 "al r13 0x0ff00000",
1788 "al_r13_"
1789 "0x0ff00000"},
1790 {{al, r13, 0x1fe00000},
1791 false,
1792 al,
1793 "al r13 0x1fe00000",
1794 "al_r13_"
1795 "0x1fe00000"},
1796 {{al, r13, 0x3fc00000},
1797 false,
1798 al,
1799 "al r13 0x3fc00000",
1800 "al_r13_"
1801 "0x3fc00000"},
1802 {{al, r13, 0x7f800000},
1803 false,
1804 al,
1805 "al r13 0x7f800000",
1806 "al_r13_"
1807 "0x7f800000"},
1808 {{al, r13, 0xff000000},
1809 false,
1810 al,
1811 "al r13 0xff000000",
1812 "al_r13_"
1813 "0xff000000"},
1814 {{al, r13, 0x000000ff},
1815 false,
1816 al,
1817 "al r13 0x000000ff",
1818 "al_r13_"
1819 "0x000000ff"},
1820 {{al, r13, 0x00ff00ff},
1821 false,
1822 al,
1823 "al r13 0x00ff00ff",
1824 "al_r13_"
1825 "0x00ff00ff"},
1826 {{al, r13, 0xff00ff00},
1827 false,
1828 al,
1829 "al r13 0xff00ff00",
1830 "al_r13_"
1831 "0xff00ff00"},
1832 {{al, r13, 0xffffffff},
1833 false,
1834 al,
1835 "al r13 0xffffffff",
1836 "al_r13_"
1837 "0xffffffff"},
1838 {{al, r13, 0x00000156},
1839 false,
1840 al,
1841 "al r13 0x00000156",
1842 "al_r13_"
1843 "0x00000156"},
1844 {{al, r13, 0x000002ac},
1845 false,
1846 al,
1847 "al r13 0x000002ac",
1848 "al_r13_"
1849 "0x000002ac"},
1850 {{al, r13, 0x00000558},
1851 false,
1852 al,
1853 "al r13 0x00000558",
1854 "al_r13_"
1855 "0x00000558"},
1856 {{al, r13, 0x00000ab0},
1857 false,
1858 al,
1859 "al r13 0x00000ab0",
1860 "al_r13_"
1861 "0x00000ab0"},
1862 {{al, r13, 0x00001560},
1863 false,
1864 al,
1865 "al r13 0x00001560",
1866 "al_r13_"
1867 "0x00001560"},
1868 {{al, r13, 0x00002ac0},
1869 false,
1870 al,
1871 "al r13 0x00002ac0",
1872 "al_r13_"
1873 "0x00002ac0"},
1874 {{al, r13, 0x00005580},
1875 false,
1876 al,
1877 "al r13 0x00005580",
1878 "al_r13_"
1879 "0x00005580"},
1880 {{al, r13, 0x0000ab00},
1881 false,
1882 al,
1883 "al r13 0x0000ab00",
1884 "al_r13_"
1885 "0x0000ab00"},
1886 {{al, r13, 0x00015600},
1887 false,
1888 al,
1889 "al r13 0x00015600",
1890 "al_r13_"
1891 "0x00015600"},
1892 {{al, r13, 0x0002ac00},
1893 false,
1894 al,
1895 "al r13 0x0002ac00",
1896 "al_r13_"
1897 "0x0002ac00"},
1898 {{al, r13, 0x00055800},
1899 false,
1900 al,
1901 "al r13 0x00055800",
1902 "al_r13_"
1903 "0x00055800"},
1904 {{al, r13, 0x000ab000},
1905 false,
1906 al,
1907 "al r13 0x000ab000",
1908 "al_r13_"
1909 "0x000ab000"},
1910 {{al, r13, 0x00156000},
1911 false,
1912 al,
1913 "al r13 0x00156000",
1914 "al_r13_"
1915 "0x00156000"},
1916 {{al, r13, 0x002ac000},
1917 false,
1918 al,
1919 "al r13 0x002ac000",
1920 "al_r13_"
1921 "0x002ac000"},
1922 {{al, r13, 0x00558000},
1923 false,
1924 al,
1925 "al r13 0x00558000",
1926 "al_r13_"
1927 "0x00558000"},
1928 {{al, r13, 0x00ab0000},
1929 false,
1930 al,
1931 "al r13 0x00ab0000",
1932 "al_r13_"
1933 "0x00ab0000"},
1934 {{al, r13, 0x01560000},
1935 false,
1936 al,
1937 "al r13 0x01560000",
1938 "al_r13_"
1939 "0x01560000"},
1940 {{al, r13, 0x02ac0000},
1941 false,
1942 al,
1943 "al r13 0x02ac0000",
1944 "al_r13_"
1945 "0x02ac0000"},
1946 {{al, r13, 0x05580000},
1947 false,
1948 al,
1949 "al r13 0x05580000",
1950 "al_r13_"
1951 "0x05580000"},
1952 {{al, r13, 0x0ab00000},
1953 false,
1954 al,
1955 "al r13 0x0ab00000",
1956 "al_r13_"
1957 "0x0ab00000"},
1958 {{al, r13, 0x15600000},
1959 false,
1960 al,
1961 "al r13 0x15600000",
1962 "al_r13_"
1963 "0x15600000"},
1964 {{al, r13, 0x2ac00000},
1965 false,
1966 al,
1967 "al r13 0x2ac00000",
1968 "al_r13_"
1969 "0x2ac00000"},
1970 {{al, r13, 0x55800000},
1971 false,
1972 al,
1973 "al r13 0x55800000",
1974 "al_r13_"
1975 "0x55800000"},
1976 {{al, r13, 0xab000000},
1977 false,
1978 al,
1979 "al r13 0xab000000",
1980 "al_r13_"
1981 "0xab000000"},
1982 {{al, r13, 0x000000ab},
1983 false,
1984 al,
1985 "al r13 0x000000ab",
1986 "al_r13_"
1987 "0x000000ab"},
1988 {{al, r13, 0x00ab00ab},
1989 false,
1990 al,
1991 "al r13 0x00ab00ab",
1992 "al_r13_"
1993 "0x00ab00ab"},
1994 {{al, r13, 0xab00ab00},
1995 false,
1996 al,
1997 "al r13 0xab00ab00",
1998 "al_r13_"
1999 "0xab00ab00"},
2000 {{al, r13, 0xabababab},
2001 false,
2002 al,
2003 "al r13 0xabababab",
2004 "al_r13_"
2005 "0xabababab"},
2006 {{al, r14, 0x000001fe},
2007 false,
2008 al,
2009 "al r14 0x000001fe",
2010 "al_r14_"
2011 "0x000001fe"},
2012 {{al, r14, 0x000003fc},
2013 false,
2014 al,
2015 "al r14 0x000003fc",
2016 "al_r14_"
2017 "0x000003fc"},
2018 {{al, r14, 0x000007f8},
2019 false,
2020 al,
2021 "al r14 0x000007f8",
2022 "al_r14_"
2023 "0x000007f8"},
2024 {{al, r14, 0x00000ff0},
2025 false,
2026 al,
2027 "al r14 0x00000ff0",
2028 "al_r14_"
2029 "0x00000ff0"},
2030 {{al, r14, 0x00001fe0},
2031 false,
2032 al,
2033 "al r14 0x00001fe0",
2034 "al_r14_"
2035 "0x00001fe0"},
2036 {{al, r14, 0x00003fc0},
2037 false,
2038 al,
2039 "al r14 0x00003fc0",
2040 "al_r14_"
2041 "0x00003fc0"},
2042 {{al, r14, 0x00007f80},
2043 false,
2044 al,
2045 "al r14 0x00007f80",
2046 "al_r14_"
2047 "0x00007f80"},
2048 {{al, r14, 0x0000ff00},
2049 false,
2050 al,
2051 "al r14 0x0000ff00",
2052 "al_r14_"
2053 "0x0000ff00"},
2054 {{al, r14, 0x0001fe00},
2055 false,
2056 al,
2057 "al r14 0x0001fe00",
2058 "al_r14_"
2059 "0x0001fe00"},
2060 {{al, r14, 0x0003fc00},
2061 false,
2062 al,
2063 "al r14 0x0003fc00",
2064 "al_r14_"
2065 "0x0003fc00"},
2066 {{al, r14, 0x0007f800},
2067 false,
2068 al,
2069 "al r14 0x0007f800",
2070 "al_r14_"
2071 "0x0007f800"},
2072 {{al, r14, 0x000ff000},
2073 false,
2074 al,
2075 "al r14 0x000ff000",
2076 "al_r14_"
2077 "0x000ff000"},
2078 {{al, r14, 0x001fe000},
2079 false,
2080 al,
2081 "al r14 0x001fe000",
2082 "al_r14_"
2083 "0x001fe000"},
2084 {{al, r14, 0x003fc000},
2085 false,
2086 al,
2087 "al r14 0x003fc000",
2088 "al_r14_"
2089 "0x003fc000"},
2090 {{al, r14, 0x007f8000},
2091 false,
2092 al,
2093 "al r14 0x007f8000",
2094 "al_r14_"
2095 "0x007f8000"},
2096 {{al, r14, 0x00ff0000},
2097 false,
2098 al,
2099 "al r14 0x00ff0000",
2100 "al_r14_"
2101 "0x00ff0000"},
2102 {{al, r14, 0x01fe0000},
2103 false,
2104 al,
2105 "al r14 0x01fe0000",
2106 "al_r14_"
2107 "0x01fe0000"},
2108 {{al, r14, 0x03fc0000},
2109 false,
2110 al,
2111 "al r14 0x03fc0000",
2112 "al_r14_"
2113 "0x03fc0000"},
2114 {{al, r14, 0x07f80000},
2115 false,
2116 al,
2117 "al r14 0x07f80000",
2118 "al_r14_"
2119 "0x07f80000"},
2120 {{al, r14, 0x0ff00000},
2121 false,
2122 al,
2123 "al r14 0x0ff00000",
2124 "al_r14_"
2125 "0x0ff00000"},
2126 {{al, r14, 0x1fe00000},
2127 false,
2128 al,
2129 "al r14 0x1fe00000",
2130 "al_r14_"
2131 "0x1fe00000"},
2132 {{al, r14, 0x3fc00000},
2133 false,
2134 al,
2135 "al r14 0x3fc00000",
2136 "al_r14_"
2137 "0x3fc00000"},
2138 {{al, r14, 0x7f800000},
2139 false,
2140 al,
2141 "al r14 0x7f800000",
2142 "al_r14_"
2143 "0x7f800000"},
2144 {{al, r14, 0xff000000},
2145 false,
2146 al,
2147 "al r14 0xff000000",
2148 "al_r14_"
2149 "0xff000000"},
2150 {{al, r14, 0x000000ff},
2151 false,
2152 al,
2153 "al r14 0x000000ff",
2154 "al_r14_"
2155 "0x000000ff"},
2156 {{al, r14, 0x00ff00ff},
2157 false,
2158 al,
2159 "al r14 0x00ff00ff",
2160 "al_r14_"
2161 "0x00ff00ff"},
2162 {{al, r14, 0xff00ff00},
2163 false,
2164 al,
2165 "al r14 0xff00ff00",
2166 "al_r14_"
2167 "0xff00ff00"},
2168 {{al, r14, 0xffffffff},
2169 false,
2170 al,
2171 "al r14 0xffffffff",
2172 "al_r14_"
2173 "0xffffffff"},
2174 {{al, r14, 0x00000156},
2175 false,
2176 al,
2177 "al r14 0x00000156",
2178 "al_r14_"
2179 "0x00000156"},
2180 {{al, r14, 0x000002ac},
2181 false,
2182 al,
2183 "al r14 0x000002ac",
2184 "al_r14_"
2185 "0x000002ac"},
2186 {{al, r14, 0x00000558},
2187 false,
2188 al,
2189 "al r14 0x00000558",
2190 "al_r14_"
2191 "0x00000558"},
2192 {{al, r14, 0x00000ab0},
2193 false,
2194 al,
2195 "al r14 0x00000ab0",
2196 "al_r14_"
2197 "0x00000ab0"},
2198 {{al, r14, 0x00001560},
2199 false,
2200 al,
2201 "al r14 0x00001560",
2202 "al_r14_"
2203 "0x00001560"},
2204 {{al, r14, 0x00002ac0},
2205 false,
2206 al,
2207 "al r14 0x00002ac0",
2208 "al_r14_"
2209 "0x00002ac0"},
2210 {{al, r14, 0x00005580},
2211 false,
2212 al,
2213 "al r14 0x00005580",
2214 "al_r14_"
2215 "0x00005580"},
2216 {{al, r14, 0x0000ab00},
2217 false,
2218 al,
2219 "al r14 0x0000ab00",
2220 "al_r14_"
2221 "0x0000ab00"},
2222 {{al, r14, 0x00015600},
2223 false,
2224 al,
2225 "al r14 0x00015600",
2226 "al_r14_"
2227 "0x00015600"},
2228 {{al, r14, 0x0002ac00},
2229 false,
2230 al,
2231 "al r14 0x0002ac00",
2232 "al_r14_"
2233 "0x0002ac00"},
2234 {{al, r14, 0x00055800},
2235 false,
2236 al,
2237 "al r14 0x00055800",
2238 "al_r14_"
2239 "0x00055800"},
2240 {{al, r14, 0x000ab000},
2241 false,
2242 al,
2243 "al r14 0x000ab000",
2244 "al_r14_"
2245 "0x000ab000"},
2246 {{al, r14, 0x00156000},
2247 false,
2248 al,
2249 "al r14 0x00156000",
2250 "al_r14_"
2251 "0x00156000"},
2252 {{al, r14, 0x002ac000},
2253 false,
2254 al,
2255 "al r14 0x002ac000",
2256 "al_r14_"
2257 "0x002ac000"},
2258 {{al, r14, 0x00558000},
2259 false,
2260 al,
2261 "al r14 0x00558000",
2262 "al_r14_"
2263 "0x00558000"},
2264 {{al, r14, 0x00ab0000},
2265 false,
2266 al,
2267 "al r14 0x00ab0000",
2268 "al_r14_"
2269 "0x00ab0000"},
2270 {{al, r14, 0x01560000},
2271 false,
2272 al,
2273 "al r14 0x01560000",
2274 "al_r14_"
2275 "0x01560000"},
2276 {{al, r14, 0x02ac0000},
2277 false,
2278 al,
2279 "al r14 0x02ac0000",
2280 "al_r14_"
2281 "0x02ac0000"},
2282 {{al, r14, 0x05580000},
2283 false,
2284 al,
2285 "al r14 0x05580000",
2286 "al_r14_"
2287 "0x05580000"},
2288 {{al, r14, 0x0ab00000},
2289 false,
2290 al,
2291 "al r14 0x0ab00000",
2292 "al_r14_"
2293 "0x0ab00000"},
2294 {{al, r14, 0x15600000},
2295 false,
2296 al,
2297 "al r14 0x15600000",
2298 "al_r14_"
2299 "0x15600000"},
2300 {{al, r14, 0x2ac00000},
2301 false,
2302 al,
2303 "al r14 0x2ac00000",
2304 "al_r14_"
2305 "0x2ac00000"},
2306 {{al, r14, 0x55800000},
2307 false,
2308 al,
2309 "al r14 0x55800000",
2310 "al_r14_"
2311 "0x55800000"},
2312 {{al, r14, 0xab000000},
2313 false,
2314 al,
2315 "al r14 0xab000000",
2316 "al_r14_"
2317 "0xab000000"},
2318 {{al, r14, 0x000000ab},
2319 false,
2320 al,
2321 "al r14 0x000000ab",
2322 "al_r14_"
2323 "0x000000ab"},
2324 {{al, r14, 0x00ab00ab},
2325 false,
2326 al,
2327 "al r14 0x00ab00ab",
2328 "al_r14_"
2329 "0x00ab00ab"},
2330 {{al, r14, 0xab00ab00},
2331 false,
2332 al,
2333 "al r14 0xab00ab00",
2334 "al_r14_"
2335 "0xab00ab00"},
2336 {{al, r14, 0xabababab},
2337 false,
2338 al,
2339 "al r14 0xabababab",
2340 "al_r14_0xabababab"}};
2341
2342 // These headers each contain an array of `TestResult` with the reference output
2343 // values. The reference arrays are names `kReference{mnemonic}`.
2344 #include "aarch32/traces/assembler-cond-rd-operand-const-t32-cmn.h"
2345 #include "aarch32/traces/assembler-cond-rd-operand-const-t32-cmp.h"
2346 #include "aarch32/traces/assembler-cond-rd-operand-const-t32-mov.h"
2347 #include "aarch32/traces/assembler-cond-rd-operand-const-t32-movs.h"
2348 #include "aarch32/traces/assembler-cond-rd-operand-const-t32-mvn.h"
2349 #include "aarch32/traces/assembler-cond-rd-operand-const-t32-mvns.h"
2350 #include "aarch32/traces/assembler-cond-rd-operand-const-t32-teq.h"
2351 #include "aarch32/traces/assembler-cond-rd-operand-const-t32-tst.h"
2352
2353
2354 // The maximum number of errors to report in detail for each test.
2355 const unsigned kErrorReportLimit = 8;
2356
2357 typedef void (MacroAssembler::*Fn)(Condition cond,
2358 Register rd,
2359 const Operand& op);
2360
TestHelper(Fn instruction,const char * mnemonic,const TestResult reference[])2361 void TestHelper(Fn instruction,
2362 const char* mnemonic,
2363 const TestResult reference[]) {
2364 unsigned total_error_count = 0;
2365 MacroAssembler masm(BUF_SIZE);
2366
2367 masm.UseT32();
2368
2369 for (unsigned i = 0; i < ARRAY_SIZE(kTests); i++) {
2370 // Values to pass to the macro-assembler.
2371 Condition cond = kTests[i].operands.cond;
2372 Register rd = kTests[i].operands.rd;
2373 uint32_t immediate = kTests[i].operands.immediate;
2374 Operand op(immediate);
2375
2376 int32_t start = masm.GetCursorOffset();
2377 {
2378 // We never generate more that 4 bytes, as IT instructions are only
2379 // allowed for narrow encodings.
2380 ExactAssemblyScope scope(&masm, 4, ExactAssemblyScope::kMaximumSize);
2381 if (kTests[i].in_it_block) {
2382 masm.it(kTests[i].it_condition);
2383 }
2384 (masm.*instruction)(cond, rd, op);
2385 }
2386 int32_t end = masm.GetCursorOffset();
2387
2388 const byte* result_ptr =
2389 masm.GetBuffer()->GetOffsetAddress<const byte*>(start);
2390 VIXL_ASSERT(start < end);
2391 uint32_t result_size = end - start;
2392
2393 if (Test::generate_test_trace()) {
2394 // Print the result bytes.
2395 printf("const byte kInstruction_%s_%s[] = {\n",
2396 mnemonic,
2397 kTests[i].identifier);
2398 for (uint32_t j = 0; j < result_size; j++) {
2399 if (j == 0) {
2400 printf(" 0x%02" PRIx8, result_ptr[j]);
2401 } else {
2402 printf(", 0x%02" PRIx8, result_ptr[j]);
2403 }
2404 }
2405 // This comment is meant to be used by external tools to validate
2406 // the encoding. We can parse the comment to figure out what
2407 // instruction this corresponds to.
2408 if (kTests[i].in_it_block) {
2409 printf(" // It %s; %s %s\n};\n",
2410 kTests[i].it_condition.GetName(),
2411 mnemonic,
2412 kTests[i].operands_description);
2413 } else {
2414 printf(" // %s %s\n};\n", mnemonic, kTests[i].operands_description);
2415 }
2416 } else {
2417 // Check we've emitted the exact same encoding as present in the
2418 // trace file. Only print up to `kErrorReportLimit` errors.
2419 if (((result_size != reference[i].size) ||
2420 (memcmp(result_ptr, reference[i].encoding, reference[i].size) !=
2421 0)) &&
2422 (++total_error_count <= kErrorReportLimit)) {
2423 printf("Error when testing \"%s\" with operands \"%s\":\n",
2424 mnemonic,
2425 kTests[i].operands_description);
2426 printf(" Expected: ");
2427 for (uint32_t j = 0; j < reference[i].size; j++) {
2428 if (j == 0) {
2429 printf("0x%02" PRIx8, reference[i].encoding[j]);
2430 } else {
2431 printf(", 0x%02" PRIx8, reference[i].encoding[j]);
2432 }
2433 }
2434 printf("\n");
2435 printf(" Found: ");
2436 for (uint32_t j = 0; j < result_size; j++) {
2437 if (j == 0) {
2438 printf("0x%02" PRIx8, result_ptr[j]);
2439 } else {
2440 printf(", 0x%02" PRIx8, result_ptr[j]);
2441 }
2442 }
2443 printf("\n");
2444 }
2445 }
2446 }
2447
2448 masm.FinalizeCode();
2449
2450 if (Test::generate_test_trace()) {
2451 // Finalize the trace file by writing the final `TestResult` array
2452 // which links all generated instruction encodings.
2453 printf("const TestResult kReference%s[] = {\n", mnemonic);
2454 for (unsigned i = 0; i < ARRAY_SIZE(kTests); i++) {
2455 printf(" {\n");
2456 printf(" ARRAY_SIZE(kInstruction_%s_%s),\n",
2457 mnemonic,
2458 kTests[i].identifier);
2459 printf(" kInstruction_%s_%s,\n", mnemonic, kTests[i].identifier);
2460 printf(" },\n");
2461 }
2462 printf("};\n");
2463 } else {
2464 if (total_error_count > kErrorReportLimit) {
2465 printf("%u other errors follow.\n",
2466 total_error_count - kErrorReportLimit);
2467 }
2468 // Crash if the test failed.
2469 VIXL_CHECK(total_error_count == 0);
2470 }
2471 }
2472
2473 // Instantiate tests for each instruction in the list.
2474 #define TEST(mnemonic) \
2475 void Test_##mnemonic() { \
2476 TestHelper(&MacroAssembler::mnemonic, #mnemonic, kReference##mnemonic); \
2477 } \
2478 Test test_##mnemonic( \
2479 "AARCH32_ASSEMBLER_COND_RD_OPERAND_CONST_T32_" #mnemonic, \
2480 &Test_##mnemonic);
2481 FOREACH_INSTRUCTION(TEST)
2482 #undef TEST
2483
2484 } // namespace
2485 #endif
2486
2487 } // namespace aarch32
2488 } // namespace vixl
2489