1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* MC Register Information *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9namespace llvm {
10
11extern const int16_t SparcRegDiffLists[] = {
12 /* 0 */ -148, 1, 0,
13 /* 3 */ -147, 1, 0,
14 /* 6 */ -146, 1, 0,
15 /* 9 */ -145, 1, 0,
16 /* 12 */ -144, 1, 0,
17 /* 15 */ -143, 1, 0,
18 /* 18 */ -142, 1, 0,
19 /* 21 */ -141, 1, 0,
20 /* 24 */ -140, 1, 0,
21 /* 27 */ -139, 1, 0,
22 /* 30 */ -138, 1, 0,
23 /* 33 */ -137, 1, 0,
24 /* 36 */ -136, 1, 0,
25 /* 39 */ -135, 1, 0,
26 /* 42 */ -134, 1, 0,
27 /* 45 */ -133, 1, 0,
28 /* 48 */ -92, 1, 0,
29 /* 51 */ -91, 1, 0,
30 /* 54 */ -90, 1, 0,
31 /* 57 */ -89, 1, 0,
32 /* 60 */ -88, 1, 0,
33 /* 63 */ -87, 1, 0,
34 /* 66 */ -86, 1, 0,
35 /* 69 */ -85, 1, 0,
36 /* 72 */ -64, 1, 0,
37 /* 75 */ -63, 1, 0,
38 /* 78 */ -62, 1, 0,
39 /* 81 */ -61, 1, 0,
40 /* 84 */ -60, 1, 0,
41 /* 87 */ -59, 1, 0,
42 /* 90 */ -58, 1, 0,
43 /* 93 */ -57, 1, 0,
44 /* 96 */ -56, 1, 0,
45 /* 99 */ -55, 1, 0,
46 /* 102 */ -54, 1, 0,
47 /* 105 */ -53, 1, 0,
48 /* 108 */ -52, 1, 0,
49 /* 111 */ -51, 1, 0,
50 /* 114 */ -50, 1, 0,
51 /* 117 */ -49, 1, 0,
52 /* 120 */ 1, 1, 1, 0,
53 /* 124 */ 32, 1, 0,
54 /* 127 */ -100, 32, 1, -32, 33, 1, 0,
55 /* 134 */ 34, 1, 0,
56 /* 137 */ -99, 34, 1, -34, 35, 1, 0,
57 /* 144 */ 36, 1, 0,
58 /* 147 */ -98, 36, 1, -36, 37, 1, 0,
59 /* 154 */ 38, 1, 0,
60 /* 157 */ -97, 38, 1, -38, 39, 1, 0,
61 /* 164 */ 40, 1, 0,
62 /* 167 */ -96, 40, 1, -40, 41, 1, 0,
63 /* 174 */ 42, 1, 0,
64 /* 177 */ -95, 42, 1, -42, 43, 1, 0,
65 /* 184 */ 44, 1, 0,
66 /* 187 */ -94, 44, 1, -44, 45, 1, 0,
67 /* 194 */ 46, 1, 0,
68 /* 197 */ -93, 46, 1, -46, 47, 1, 0,
69 /* 204 */ 48, 0,
70 /* 206 */ 49, 0,
71 /* 208 */ 50, 0,
72 /* 210 */ 51, 0,
73 /* 212 */ 52, 0,
74 /* 214 */ 53, 0,
75 /* 216 */ 54, 0,
76 /* 218 */ 55, 0,
77 /* 220 */ 56, 0,
78 /* 222 */ 57, 0,
79 /* 224 */ 58, 0,
80 /* 226 */ 59, 0,
81 /* 228 */ 60, 0,
82 /* 230 */ 61, 0,
83 /* 232 */ 62, 0,
84 /* 234 */ 63, 0,
85 /* 236 */ 64, 0,
86 /* 238 */ 84, 0,
87 /* 240 */ 85, 0,
88 /* 242 */ 86, 0,
89 /* 244 */ 87, 0,
90 /* 246 */ 88, 0,
91 /* 248 */ 89, 0,
92 /* 250 */ 90, 0,
93 /* 252 */ 91, 0,
94 /* 254 */ -48, 92, 0,
95 /* 257 */ -47, 92, 0,
96 /* 260 */ -47, 93, 0,
97 /* 263 */ -46, 93, 0,
98 /* 266 */ -45, 93, 0,
99 /* 269 */ -45, 94, 0,
100 /* 272 */ -44, 94, 0,
101 /* 275 */ -43, 94, 0,
102 /* 278 */ -43, 95, 0,
103 /* 281 */ -42, 95, 0,
104 /* 284 */ -41, 95, 0,
105 /* 287 */ -41, 96, 0,
106 /* 290 */ -40, 96, 0,
107 /* 293 */ -39, 96, 0,
108 /* 296 */ -39, 97, 0,
109 /* 299 */ -38, 97, 0,
110 /* 302 */ -37, 97, 0,
111 /* 305 */ -37, 98, 0,
112 /* 308 */ -36, 98, 0,
113 /* 311 */ -35, 98, 0,
114 /* 314 */ -35, 99, 0,
115 /* 317 */ -34, 99, 0,
116 /* 320 */ -33, 99, 0,
117 /* 323 */ -33, 100, 0,
118 /* 326 */ -32, 100, 0,
119 /* 329 */ 132, 0,
120 /* 331 */ 133, 0,
121 /* 333 */ 134, 0,
122 /* 335 */ 135, 0,
123 /* 337 */ 136, 0,
124 /* 339 */ 137, 0,
125 /* 341 */ 138, 0,
126 /* 343 */ 139, 0,
127 /* 345 */ 140, 0,
128 /* 347 */ 141, 0,
129 /* 349 */ 142, 0,
130 /* 351 */ 143, 0,
131 /* 353 */ 144, 0,
132 /* 355 */ 145, 0,
133 /* 357 */ 146, 0,
134 /* 359 */ 147, 0,
135 /* 361 */ 148, 0,
136};
137
138extern const LaneBitmask SparcLaneMaskLists[] = {
139 /* 0 */ LaneBitmask(0x0000000000000001), LaneBitmask(0x0000000000000002),
140 /* 2 */ LaneBitmask(0x0000000000000001), LaneBitmask(0x0000000000000002), LaneBitmask(0x0000000000000004), LaneBitmask(0x0000000000000008),
141 /* 6 */ LaneBitmask(0x0000000000000003), LaneBitmask(0x000000000000000C),
142 /* 8 */ LaneBitmask(0xFFFFFFFFFFFFFFFF),
143};
144
145extern const uint16_t SparcSubRegIdxLists[] = {
146 /* 0 */ 1, 3,
147 /* 2 */ 2, 4,
148 /* 4 */ 2, 1, 3, 4, 5, 6,
149};
150
151
152#ifdef __GNUC__
153#pragma GCC diagnostic push
154#pragma GCC diagnostic ignored "-Woverlength-strings"
155#endif
156extern const char SparcRegStrings[] = {
157 /* 0 */ "C10\000"
158 /* 4 */ "D10\000"
159 /* 8 */ "F10\000"
160 /* 12 */ "Q10\000"
161 /* 16 */ "ASR10\000"
162 /* 22 */ "C20\000"
163 /* 26 */ "D20\000"
164 /* 30 */ "F20\000"
165 /* 34 */ "ASR20\000"
166 /* 40 */ "C30\000"
167 /* 44 */ "D30\000"
168 /* 48 */ "F30\000"
169 /* 52 */ "ASR30\000"
170 /* 58 */ "FCC0\000"
171 /* 63 */ "D0\000"
172 /* 66 */ "F0\000"
173 /* 69 */ "G0\000"
174 /* 72 */ "I0\000"
175 /* 75 */ "L0\000"
176 /* 78 */ "O0\000"
177 /* 81 */ "Q0\000"
178 /* 84 */ "C10_C11\000"
179 /* 92 */ "D11\000"
180 /* 96 */ "F11\000"
181 /* 100 */ "Q11\000"
182 /* 104 */ "ASR11\000"
183 /* 110 */ "C20_C21\000"
184 /* 118 */ "D21\000"
185 /* 122 */ "F21\000"
186 /* 126 */ "ASR21\000"
187 /* 132 */ "C30_C31\000"
188 /* 140 */ "D31\000"
189 /* 144 */ "F31\000"
190 /* 148 */ "ASR31\000"
191 /* 154 */ "FCC1\000"
192 /* 159 */ "C0_C1\000"
193 /* 165 */ "D1\000"
194 /* 168 */ "F1\000"
195 /* 171 */ "G0_G1\000"
196 /* 177 */ "I0_I1\000"
197 /* 183 */ "L0_L1\000"
198 /* 189 */ "O0_O1\000"
199 /* 195 */ "Q1\000"
200 /* 198 */ "ASR1\000"
201 /* 203 */ "C12\000"
202 /* 207 */ "D12\000"
203 /* 211 */ "F12\000"
204 /* 215 */ "Q12\000"
205 /* 219 */ "ASR12\000"
206 /* 225 */ "C22\000"
207 /* 229 */ "D22\000"
208 /* 233 */ "F22\000"
209 /* 237 */ "ASR22\000"
210 /* 243 */ "FCC2\000"
211 /* 248 */ "D2\000"
212 /* 251 */ "F2\000"
213 /* 254 */ "G2\000"
214 /* 257 */ "I2\000"
215 /* 260 */ "L2\000"
216 /* 263 */ "O2\000"
217 /* 266 */ "Q2\000"
218 /* 269 */ "ASR2\000"
219 /* 274 */ "C12_C13\000"
220 /* 282 */ "D13\000"
221 /* 286 */ "F13\000"
222 /* 290 */ "Q13\000"
223 /* 294 */ "ASR13\000"
224 /* 300 */ "C22_C23\000"
225 /* 308 */ "D23\000"
226 /* 312 */ "F23\000"
227 /* 316 */ "ASR23\000"
228 /* 322 */ "FCC3\000"
229 /* 327 */ "C2_C3\000"
230 /* 333 */ "D3\000"
231 /* 336 */ "F3\000"
232 /* 339 */ "G2_G3\000"
233 /* 345 */ "I2_I3\000"
234 /* 351 */ "L2_L3\000"
235 /* 357 */ "O2_O3\000"
236 /* 363 */ "Q3\000"
237 /* 366 */ "ASR3\000"
238 /* 371 */ "C14\000"
239 /* 375 */ "D14\000"
240 /* 379 */ "F14\000"
241 /* 383 */ "Q14\000"
242 /* 387 */ "ASR14\000"
243 /* 393 */ "C24\000"
244 /* 397 */ "D24\000"
245 /* 401 */ "F24\000"
246 /* 405 */ "ASR24\000"
247 /* 411 */ "C4\000"
248 /* 414 */ "D4\000"
249 /* 417 */ "F4\000"
250 /* 420 */ "G4\000"
251 /* 423 */ "I4\000"
252 /* 426 */ "L4\000"
253 /* 429 */ "O4\000"
254 /* 432 */ "Q4\000"
255 /* 435 */ "ASR4\000"
256 /* 440 */ "C14_C15\000"
257 /* 448 */ "D15\000"
258 /* 452 */ "F15\000"
259 /* 456 */ "Q15\000"
260 /* 460 */ "ASR15\000"
261 /* 466 */ "C24_C25\000"
262 /* 474 */ "D25\000"
263 /* 478 */ "F25\000"
264 /* 482 */ "ASR25\000"
265 /* 488 */ "C4_C5\000"
266 /* 494 */ "D5\000"
267 /* 497 */ "F5\000"
268 /* 500 */ "G4_G5\000"
269 /* 506 */ "I4_I5\000"
270 /* 512 */ "L4_L5\000"
271 /* 518 */ "O4_O5\000"
272 /* 524 */ "Q5\000"
273 /* 527 */ "ASR5\000"
274 /* 532 */ "C16\000"
275 /* 536 */ "D16\000"
276 /* 540 */ "F16\000"
277 /* 544 */ "ASR16\000"
278 /* 550 */ "C26\000"
279 /* 554 */ "D26\000"
280 /* 558 */ "F26\000"
281 /* 562 */ "ASR26\000"
282 /* 568 */ "C6\000"
283 /* 571 */ "D6\000"
284 /* 574 */ "F6\000"
285 /* 577 */ "G6\000"
286 /* 580 */ "I6\000"
287 /* 583 */ "L6\000"
288 /* 586 */ "O6\000"
289 /* 589 */ "Q6\000"
290 /* 592 */ "ASR6\000"
291 /* 597 */ "C16_C17\000"
292 /* 605 */ "D17\000"
293 /* 609 */ "F17\000"
294 /* 613 */ "ASR17\000"
295 /* 619 */ "C26_C27\000"
296 /* 627 */ "D27\000"
297 /* 631 */ "F27\000"
298 /* 635 */ "ASR27\000"
299 /* 641 */ "C6_C7\000"
300 /* 647 */ "D7\000"
301 /* 650 */ "F7\000"
302 /* 653 */ "G6_G7\000"
303 /* 659 */ "I6_I7\000"
304 /* 665 */ "L6_L7\000"
305 /* 671 */ "O6_O7\000"
306 /* 677 */ "Q7\000"
307 /* 680 */ "ASR7\000"
308 /* 685 */ "C18\000"
309 /* 689 */ "D18\000"
310 /* 693 */ "F18\000"
311 /* 697 */ "ASR18\000"
312 /* 703 */ "C28\000"
313 /* 707 */ "D28\000"
314 /* 711 */ "F28\000"
315 /* 715 */ "ASR28\000"
316 /* 721 */ "C8\000"
317 /* 724 */ "D8\000"
318 /* 727 */ "F8\000"
319 /* 730 */ "Q8\000"
320 /* 733 */ "ASR8\000"
321 /* 738 */ "C18_C19\000"
322 /* 746 */ "D19\000"
323 /* 750 */ "F19\000"
324 /* 754 */ "ASR19\000"
325 /* 760 */ "C28_C29\000"
326 /* 768 */ "D29\000"
327 /* 772 */ "F29\000"
328 /* 776 */ "ASR29\000"
329 /* 782 */ "C8_C9\000"
330 /* 788 */ "D9\000"
331 /* 791 */ "F9\000"
332 /* 794 */ "Q9\000"
333 /* 797 */ "ASR9\000"
334 /* 802 */ "TBA\000"
335 /* 806 */ "ICC\000"
336 /* 810 */ "TNPC\000"
337 /* 815 */ "TPC\000"
338 /* 819 */ "CANRESTORE\000"
339 /* 830 */ "PSTATE\000"
340 /* 837 */ "TSTATE\000"
341 /* 844 */ "WSTATE\000"
342 /* 851 */ "CANSAVE\000"
343 /* 859 */ "TICK\000"
344 /* 864 */ "GL\000"
345 /* 867 */ "PIL\000"
346 /* 871 */ "TL\000"
347 /* 874 */ "WIM\000"
348 /* 878 */ "CLEANWIN\000"
349 /* 887 */ "OTHERWIN\000"
350 /* 896 */ "CWP\000"
351 /* 900 */ "FQ\000"
352 /* 903 */ "CPQ\000"
353 /* 907 */ "TBR\000"
354 /* 911 */ "VER\000"
355 /* 915 */ "FSR\000"
356 /* 919 */ "CPSR\000"
357 /* 924 */ "TT\000"
358 /* 927 */ "Y\000"
359};
360#ifdef __GNUC__
361#pragma GCC diagnostic pop
362#endif
363
364extern const MCRegisterDesc SparcRegDesc[] = { // Descriptors
365 { .Name: 3, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 0, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
366 { .Name: 819, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8192, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
367 { .Name: 851, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8193, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
368 { .Name: 878, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8194, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
369 { .Name: 903, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8195, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
370 { .Name: 919, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8196, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
371 { .Name: 896, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8197, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
372 { .Name: 900, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8198, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
373 { .Name: 915, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8199, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
374 { .Name: 864, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8200, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
375 { .Name: 806, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8201, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
376 { .Name: 887, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8202, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
377 { .Name: 867, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8203, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
378 { .Name: 920, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8204, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
379 { .Name: 830, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8205, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
380 { .Name: 802, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8206, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
381 { .Name: 907, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8207, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
382 { .Name: 859, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8208, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
383 { .Name: 871, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8209, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
384 { .Name: 810, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8210, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
385 { .Name: 815, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8211, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
386 { .Name: 837, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8212, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
387 { .Name: 924, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8213, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
388 { .Name: 911, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8214, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
389 { .Name: 874, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8215, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
390 { .Name: 844, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8216, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
391 { .Name: 927, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8217, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
392 { .Name: 198, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8218, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
393 { .Name: 269, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8219, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
394 { .Name: 366, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8220, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
395 { .Name: 435, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8221, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
396 { .Name: 527, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8222, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
397 { .Name: 592, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8223, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
398 { .Name: 680, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8224, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
399 { .Name: 733, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8225, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
400 { .Name: 797, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8226, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
401 { .Name: 16, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8227, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
402 { .Name: 104, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8228, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
403 { .Name: 219, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8229, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
404 { .Name: 294, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8230, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
405 { .Name: 387, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8231, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
406 { .Name: 460, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8232, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
407 { .Name: 544, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8233, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
408 { .Name: 613, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8234, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
409 { .Name: 697, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8235, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
410 { .Name: 754, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8236, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
411 { .Name: 34, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8237, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
412 { .Name: 126, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8238, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
413 { .Name: 237, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8239, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
414 { .Name: 316, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8240, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
415 { .Name: 405, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8241, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
416 { .Name: 482, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8242, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
417 { .Name: 562, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8243, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
418 { .Name: 635, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8244, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
419 { .Name: 715, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8245, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
420 { .Name: 776, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8246, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
421 { .Name: 52, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8247, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
422 { .Name: 148, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8248, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
423 { .Name: 60, .SubRegs: 2, .SuperRegs: 361, .SubRegIndices: 2, .RegUnits: 8249, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
424 { .Name: 156, .SubRegs: 2, .SuperRegs: 359, .SubRegIndices: 2, .RegUnits: 8250, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
425 { .Name: 245, .SubRegs: 2, .SuperRegs: 359, .SubRegIndices: 2, .RegUnits: 8251, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
426 { .Name: 324, .SubRegs: 2, .SuperRegs: 357, .SubRegIndices: 2, .RegUnits: 8252, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
427 { .Name: 411, .SubRegs: 2, .SuperRegs: 357, .SubRegIndices: 2, .RegUnits: 8253, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
428 { .Name: 491, .SubRegs: 2, .SuperRegs: 355, .SubRegIndices: 2, .RegUnits: 8254, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
429 { .Name: 568, .SubRegs: 2, .SuperRegs: 355, .SubRegIndices: 2, .RegUnits: 8255, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
430 { .Name: 644, .SubRegs: 2, .SuperRegs: 353, .SubRegIndices: 2, .RegUnits: 8256, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
431 { .Name: 721, .SubRegs: 2, .SuperRegs: 353, .SubRegIndices: 2, .RegUnits: 8257, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
432 { .Name: 785, .SubRegs: 2, .SuperRegs: 351, .SubRegIndices: 2, .RegUnits: 8258, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
433 { .Name: 0, .SubRegs: 2, .SuperRegs: 351, .SubRegIndices: 2, .RegUnits: 8259, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
434 { .Name: 88, .SubRegs: 2, .SuperRegs: 349, .SubRegIndices: 2, .RegUnits: 8260, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
435 { .Name: 203, .SubRegs: 2, .SuperRegs: 349, .SubRegIndices: 2, .RegUnits: 8261, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
436 { .Name: 278, .SubRegs: 2, .SuperRegs: 347, .SubRegIndices: 2, .RegUnits: 8262, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
437 { .Name: 371, .SubRegs: 2, .SuperRegs: 347, .SubRegIndices: 2, .RegUnits: 8263, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
438 { .Name: 444, .SubRegs: 2, .SuperRegs: 345, .SubRegIndices: 2, .RegUnits: 8264, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
439 { .Name: 532, .SubRegs: 2, .SuperRegs: 345, .SubRegIndices: 2, .RegUnits: 8265, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
440 { .Name: 601, .SubRegs: 2, .SuperRegs: 343, .SubRegIndices: 2, .RegUnits: 8266, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
441 { .Name: 685, .SubRegs: 2, .SuperRegs: 343, .SubRegIndices: 2, .RegUnits: 8267, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
442 { .Name: 742, .SubRegs: 2, .SuperRegs: 341, .SubRegIndices: 2, .RegUnits: 8268, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
443 { .Name: 22, .SubRegs: 2, .SuperRegs: 341, .SubRegIndices: 2, .RegUnits: 8269, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
444 { .Name: 114, .SubRegs: 2, .SuperRegs: 339, .SubRegIndices: 2, .RegUnits: 8270, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
445 { .Name: 225, .SubRegs: 2, .SuperRegs: 339, .SubRegIndices: 2, .RegUnits: 8271, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
446 { .Name: 304, .SubRegs: 2, .SuperRegs: 337, .SubRegIndices: 2, .RegUnits: 8272, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
447 { .Name: 393, .SubRegs: 2, .SuperRegs: 337, .SubRegIndices: 2, .RegUnits: 8273, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
448 { .Name: 470, .SubRegs: 2, .SuperRegs: 335, .SubRegIndices: 2, .RegUnits: 8274, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
449 { .Name: 550, .SubRegs: 2, .SuperRegs: 335, .SubRegIndices: 2, .RegUnits: 8275, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
450 { .Name: 623, .SubRegs: 2, .SuperRegs: 333, .SubRegIndices: 2, .RegUnits: 8276, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
451 { .Name: 703, .SubRegs: 2, .SuperRegs: 333, .SubRegIndices: 2, .RegUnits: 8277, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
452 { .Name: 764, .SubRegs: 2, .SuperRegs: 331, .SubRegIndices: 2, .RegUnits: 8278, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
453 { .Name: 40, .SubRegs: 2, .SuperRegs: 331, .SubRegIndices: 2, .RegUnits: 8279, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
454 { .Name: 136, .SubRegs: 2, .SuperRegs: 329, .SubRegIndices: 2, .RegUnits: 8280, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
455 { .Name: 63, .SubRegs: 124, .SuperRegs: 324, .SubRegIndices: 0, .RegUnits: 4185, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
456 { .Name: 165, .SubRegs: 131, .SuperRegs: 315, .SubRegIndices: 0, .RegUnits: 4187, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
457 { .Name: 248, .SubRegs: 134, .SuperRegs: 315, .SubRegIndices: 0, .RegUnits: 4189, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
458 { .Name: 333, .SubRegs: 141, .SuperRegs: 306, .SubRegIndices: 0, .RegUnits: 4191, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
459 { .Name: 414, .SubRegs: 144, .SuperRegs: 306, .SubRegIndices: 0, .RegUnits: 4193, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
460 { .Name: 494, .SubRegs: 151, .SuperRegs: 297, .SubRegIndices: 0, .RegUnits: 4195, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
461 { .Name: 571, .SubRegs: 154, .SuperRegs: 297, .SubRegIndices: 0, .RegUnits: 4197, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
462 { .Name: 647, .SubRegs: 161, .SuperRegs: 288, .SubRegIndices: 0, .RegUnits: 4199, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
463 { .Name: 724, .SubRegs: 164, .SuperRegs: 288, .SubRegIndices: 0, .RegUnits: 4201, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
464 { .Name: 788, .SubRegs: 171, .SuperRegs: 279, .SubRegIndices: 0, .RegUnits: 4203, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
465 { .Name: 4, .SubRegs: 174, .SuperRegs: 279, .SubRegIndices: 0, .RegUnits: 4205, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
466 { .Name: 92, .SubRegs: 181, .SuperRegs: 270, .SubRegIndices: 0, .RegUnits: 4207, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
467 { .Name: 207, .SubRegs: 184, .SuperRegs: 270, .SubRegIndices: 0, .RegUnits: 4209, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
468 { .Name: 282, .SubRegs: 191, .SuperRegs: 261, .SubRegIndices: 0, .RegUnits: 4211, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
469 { .Name: 375, .SubRegs: 194, .SuperRegs: 261, .SubRegIndices: 0, .RegUnits: 4213, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
470 { .Name: 448, .SubRegs: 201, .SuperRegs: 255, .SubRegIndices: 0, .RegUnits: 4215, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
471 { .Name: 536, .SubRegs: 2, .SuperRegs: 255, .SubRegIndices: 2, .RegUnits: 8313, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
472 { .Name: 605, .SubRegs: 2, .SuperRegs: 252, .SubRegIndices: 2, .RegUnits: 8314, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
473 { .Name: 689, .SubRegs: 2, .SuperRegs: 252, .SubRegIndices: 2, .RegUnits: 8315, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
474 { .Name: 746, .SubRegs: 2, .SuperRegs: 250, .SubRegIndices: 2, .RegUnits: 8316, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
475 { .Name: 26, .SubRegs: 2, .SuperRegs: 250, .SubRegIndices: 2, .RegUnits: 8317, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
476 { .Name: 118, .SubRegs: 2, .SuperRegs: 248, .SubRegIndices: 2, .RegUnits: 8318, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
477 { .Name: 229, .SubRegs: 2, .SuperRegs: 248, .SubRegIndices: 2, .RegUnits: 8319, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
478 { .Name: 308, .SubRegs: 2, .SuperRegs: 246, .SubRegIndices: 2, .RegUnits: 8320, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
479 { .Name: 397, .SubRegs: 2, .SuperRegs: 246, .SubRegIndices: 2, .RegUnits: 8321, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
480 { .Name: 474, .SubRegs: 2, .SuperRegs: 244, .SubRegIndices: 2, .RegUnits: 8322, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
481 { .Name: 554, .SubRegs: 2, .SuperRegs: 244, .SubRegIndices: 2, .RegUnits: 8323, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
482 { .Name: 627, .SubRegs: 2, .SuperRegs: 242, .SubRegIndices: 2, .RegUnits: 8324, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
483 { .Name: 707, .SubRegs: 2, .SuperRegs: 242, .SubRegIndices: 2, .RegUnits: 8325, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
484 { .Name: 768, .SubRegs: 2, .SuperRegs: 240, .SubRegIndices: 2, .RegUnits: 8326, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
485 { .Name: 44, .SubRegs: 2, .SuperRegs: 240, .SubRegIndices: 2, .RegUnits: 8327, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
486 { .Name: 140, .SubRegs: 2, .SuperRegs: 238, .SubRegIndices: 2, .RegUnits: 8328, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
487 { .Name: 66, .SubRegs: 2, .SuperRegs: 326, .SubRegIndices: 2, .RegUnits: 8281, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
488 { .Name: 168, .SubRegs: 2, .SuperRegs: 323, .SubRegIndices: 2, .RegUnits: 8282, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
489 { .Name: 251, .SubRegs: 2, .SuperRegs: 320, .SubRegIndices: 2, .RegUnits: 8283, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
490 { .Name: 336, .SubRegs: 2, .SuperRegs: 317, .SubRegIndices: 2, .RegUnits: 8284, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
491 { .Name: 417, .SubRegs: 2, .SuperRegs: 317, .SubRegIndices: 2, .RegUnits: 8285, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
492 { .Name: 497, .SubRegs: 2, .SuperRegs: 314, .SubRegIndices: 2, .RegUnits: 8286, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
493 { .Name: 574, .SubRegs: 2, .SuperRegs: 311, .SubRegIndices: 2, .RegUnits: 8287, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
494 { .Name: 650, .SubRegs: 2, .SuperRegs: 308, .SubRegIndices: 2, .RegUnits: 8288, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
495 { .Name: 727, .SubRegs: 2, .SuperRegs: 308, .SubRegIndices: 2, .RegUnits: 8289, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
496 { .Name: 791, .SubRegs: 2, .SuperRegs: 305, .SubRegIndices: 2, .RegUnits: 8290, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
497 { .Name: 8, .SubRegs: 2, .SuperRegs: 302, .SubRegIndices: 2, .RegUnits: 8291, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
498 { .Name: 96, .SubRegs: 2, .SuperRegs: 299, .SubRegIndices: 2, .RegUnits: 8292, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
499 { .Name: 211, .SubRegs: 2, .SuperRegs: 299, .SubRegIndices: 2, .RegUnits: 8293, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
500 { .Name: 286, .SubRegs: 2, .SuperRegs: 296, .SubRegIndices: 2, .RegUnits: 8294, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
501 { .Name: 379, .SubRegs: 2, .SuperRegs: 293, .SubRegIndices: 2, .RegUnits: 8295, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
502 { .Name: 452, .SubRegs: 2, .SuperRegs: 290, .SubRegIndices: 2, .RegUnits: 8296, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
503 { .Name: 540, .SubRegs: 2, .SuperRegs: 290, .SubRegIndices: 2, .RegUnits: 8297, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
504 { .Name: 609, .SubRegs: 2, .SuperRegs: 287, .SubRegIndices: 2, .RegUnits: 8298, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
505 { .Name: 693, .SubRegs: 2, .SuperRegs: 284, .SubRegIndices: 2, .RegUnits: 8299, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
506 { .Name: 750, .SubRegs: 2, .SuperRegs: 281, .SubRegIndices: 2, .RegUnits: 8300, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
507 { .Name: 30, .SubRegs: 2, .SuperRegs: 281, .SubRegIndices: 2, .RegUnits: 8301, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
508 { .Name: 122, .SubRegs: 2, .SuperRegs: 278, .SubRegIndices: 2, .RegUnits: 8302, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
509 { .Name: 233, .SubRegs: 2, .SuperRegs: 275, .SubRegIndices: 2, .RegUnits: 8303, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
510 { .Name: 312, .SubRegs: 2, .SuperRegs: 272, .SubRegIndices: 2, .RegUnits: 8304, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
511 { .Name: 401, .SubRegs: 2, .SuperRegs: 272, .SubRegIndices: 2, .RegUnits: 8305, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
512 { .Name: 478, .SubRegs: 2, .SuperRegs: 269, .SubRegIndices: 2, .RegUnits: 8306, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
513 { .Name: 558, .SubRegs: 2, .SuperRegs: 266, .SubRegIndices: 2, .RegUnits: 8307, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
514 { .Name: 631, .SubRegs: 2, .SuperRegs: 263, .SubRegIndices: 2, .RegUnits: 8308, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
515 { .Name: 711, .SubRegs: 2, .SuperRegs: 263, .SubRegIndices: 2, .RegUnits: 8309, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
516 { .Name: 772, .SubRegs: 2, .SuperRegs: 260, .SubRegIndices: 2, .RegUnits: 8310, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
517 { .Name: 48, .SubRegs: 2, .SuperRegs: 257, .SubRegIndices: 2, .RegUnits: 8311, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
518 { .Name: 144, .SubRegs: 2, .SuperRegs: 254, .SubRegIndices: 2, .RegUnits: 8312, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
519 { .Name: 58, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8329, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
520 { .Name: 154, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8330, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
521 { .Name: 243, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8331, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
522 { .Name: 322, .SubRegs: 2, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 8332, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
523 { .Name: 69, .SubRegs: 2, .SuperRegs: 236, .SubRegIndices: 2, .RegUnits: 8333, .RegUnitLaneMasks: 8, .IsConstant: 1, .IsArtificial: 0 },
524 { .Name: 174, .SubRegs: 2, .SuperRegs: 234, .SubRegIndices: 2, .RegUnits: 8334, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
525 { .Name: 254, .SubRegs: 2, .SuperRegs: 234, .SubRegIndices: 2, .RegUnits: 8335, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
526 { .Name: 342, .SubRegs: 2, .SuperRegs: 232, .SubRegIndices: 2, .RegUnits: 8336, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
527 { .Name: 420, .SubRegs: 2, .SuperRegs: 232, .SubRegIndices: 2, .RegUnits: 8337, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
528 { .Name: 503, .SubRegs: 2, .SuperRegs: 230, .SubRegIndices: 2, .RegUnits: 8338, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
529 { .Name: 577, .SubRegs: 2, .SuperRegs: 230, .SubRegIndices: 2, .RegUnits: 8339, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
530 { .Name: 656, .SubRegs: 2, .SuperRegs: 228, .SubRegIndices: 2, .RegUnits: 8340, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
531 { .Name: 72, .SubRegs: 2, .SuperRegs: 228, .SubRegIndices: 2, .RegUnits: 8341, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
532 { .Name: 180, .SubRegs: 2, .SuperRegs: 226, .SubRegIndices: 2, .RegUnits: 8342, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
533 { .Name: 257, .SubRegs: 2, .SuperRegs: 226, .SubRegIndices: 2, .RegUnits: 8343, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
534 { .Name: 348, .SubRegs: 2, .SuperRegs: 224, .SubRegIndices: 2, .RegUnits: 8344, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
535 { .Name: 423, .SubRegs: 2, .SuperRegs: 224, .SubRegIndices: 2, .RegUnits: 8345, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
536 { .Name: 509, .SubRegs: 2, .SuperRegs: 222, .SubRegIndices: 2, .RegUnits: 8346, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
537 { .Name: 580, .SubRegs: 2, .SuperRegs: 222, .SubRegIndices: 2, .RegUnits: 8347, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
538 { .Name: 662, .SubRegs: 2, .SuperRegs: 220, .SubRegIndices: 2, .RegUnits: 8348, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
539 { .Name: 75, .SubRegs: 2, .SuperRegs: 220, .SubRegIndices: 2, .RegUnits: 8349, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
540 { .Name: 186, .SubRegs: 2, .SuperRegs: 218, .SubRegIndices: 2, .RegUnits: 8350, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
541 { .Name: 260, .SubRegs: 2, .SuperRegs: 218, .SubRegIndices: 2, .RegUnits: 8351, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
542 { .Name: 354, .SubRegs: 2, .SuperRegs: 216, .SubRegIndices: 2, .RegUnits: 8352, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
543 { .Name: 426, .SubRegs: 2, .SuperRegs: 216, .SubRegIndices: 2, .RegUnits: 8353, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
544 { .Name: 515, .SubRegs: 2, .SuperRegs: 214, .SubRegIndices: 2, .RegUnits: 8354, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
545 { .Name: 583, .SubRegs: 2, .SuperRegs: 214, .SubRegIndices: 2, .RegUnits: 8355, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
546 { .Name: 668, .SubRegs: 2, .SuperRegs: 212, .SubRegIndices: 2, .RegUnits: 8356, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
547 { .Name: 78, .SubRegs: 2, .SuperRegs: 212, .SubRegIndices: 2, .RegUnits: 8357, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
548 { .Name: 192, .SubRegs: 2, .SuperRegs: 210, .SubRegIndices: 2, .RegUnits: 8358, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
549 { .Name: 263, .SubRegs: 2, .SuperRegs: 210, .SubRegIndices: 2, .RegUnits: 8359, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
550 { .Name: 360, .SubRegs: 2, .SuperRegs: 208, .SubRegIndices: 2, .RegUnits: 8360, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
551 { .Name: 429, .SubRegs: 2, .SuperRegs: 208, .SubRegIndices: 2, .RegUnits: 8361, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
552 { .Name: 521, .SubRegs: 2, .SuperRegs: 206, .SubRegIndices: 2, .RegUnits: 8362, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
553 { .Name: 586, .SubRegs: 2, .SuperRegs: 206, .SubRegIndices: 2, .RegUnits: 8363, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
554 { .Name: 674, .SubRegs: 2, .SuperRegs: 204, .SubRegIndices: 2, .RegUnits: 8364, .RegUnitLaneMasks: 8, .IsConstant: 0, .IsArtificial: 0 },
555 { .Name: 81, .SubRegs: 127, .SuperRegs: 2, .SubRegIndices: 4, .RegUnits: 491609, .RegUnitLaneMasks: 2, .IsConstant: 0, .IsArtificial: 0 },
556 { .Name: 195, .SubRegs: 137, .SuperRegs: 2, .SubRegIndices: 4, .RegUnits: 491613, .RegUnitLaneMasks: 2, .IsConstant: 0, .IsArtificial: 0 },
557 { .Name: 266, .SubRegs: 147, .SuperRegs: 2, .SubRegIndices: 4, .RegUnits: 491617, .RegUnitLaneMasks: 2, .IsConstant: 0, .IsArtificial: 0 },
558 { .Name: 363, .SubRegs: 157, .SuperRegs: 2, .SubRegIndices: 4, .RegUnits: 491621, .RegUnitLaneMasks: 2, .IsConstant: 0, .IsArtificial: 0 },
559 { .Name: 432, .SubRegs: 167, .SuperRegs: 2, .SubRegIndices: 4, .RegUnits: 491625, .RegUnitLaneMasks: 2, .IsConstant: 0, .IsArtificial: 0 },
560 { .Name: 524, .SubRegs: 177, .SuperRegs: 2, .SubRegIndices: 4, .RegUnits: 491629, .RegUnitLaneMasks: 2, .IsConstant: 0, .IsArtificial: 0 },
561 { .Name: 589, .SubRegs: 187, .SuperRegs: 2, .SubRegIndices: 4, .RegUnits: 491633, .RegUnitLaneMasks: 2, .IsConstant: 0, .IsArtificial: 0 },
562 { .Name: 677, .SubRegs: 197, .SuperRegs: 2, .SubRegIndices: 4, .RegUnits: 491637, .RegUnitLaneMasks: 2, .IsConstant: 0, .IsArtificial: 0 },
563 { .Name: 730, .SubRegs: 48, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 4217, .RegUnitLaneMasks: 6, .IsConstant: 0, .IsArtificial: 0 },
564 { .Name: 794, .SubRegs: 51, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 4219, .RegUnitLaneMasks: 6, .IsConstant: 0, .IsArtificial: 0 },
565 { .Name: 12, .SubRegs: 54, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 4221, .RegUnitLaneMasks: 6, .IsConstant: 0, .IsArtificial: 0 },
566 { .Name: 100, .SubRegs: 57, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 4223, .RegUnitLaneMasks: 6, .IsConstant: 0, .IsArtificial: 0 },
567 { .Name: 215, .SubRegs: 60, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 4225, .RegUnitLaneMasks: 6, .IsConstant: 0, .IsArtificial: 0 },
568 { .Name: 290, .SubRegs: 63, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 4227, .RegUnitLaneMasks: 6, .IsConstant: 0, .IsArtificial: 0 },
569 { .Name: 383, .SubRegs: 66, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 4229, .RegUnitLaneMasks: 6, .IsConstant: 0, .IsArtificial: 0 },
570 { .Name: 456, .SubRegs: 69, .SuperRegs: 2, .SubRegIndices: 2, .RegUnits: 4231, .RegUnitLaneMasks: 6, .IsConstant: 0, .IsArtificial: 0 },
571 { .Name: 159, .SubRegs: 0, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4153, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
572 { .Name: 327, .SubRegs: 3, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4155, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
573 { .Name: 488, .SubRegs: 6, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4157, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
574 { .Name: 641, .SubRegs: 9, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4159, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
575 { .Name: 782, .SubRegs: 12, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4161, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
576 { .Name: 84, .SubRegs: 15, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4163, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
577 { .Name: 274, .SubRegs: 18, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4165, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
578 { .Name: 440, .SubRegs: 21, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4167, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
579 { .Name: 597, .SubRegs: 24, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4169, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
580 { .Name: 738, .SubRegs: 27, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4171, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
581 { .Name: 110, .SubRegs: 30, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4173, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
582 { .Name: 300, .SubRegs: 33, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4175, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
583 { .Name: 466, .SubRegs: 36, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4177, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
584 { .Name: 619, .SubRegs: 39, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4179, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
585 { .Name: 760, .SubRegs: 42, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4181, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
586 { .Name: 132, .SubRegs: 45, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4183, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
587 { .Name: 171, .SubRegs: 72, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4237, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
588 { .Name: 339, .SubRegs: 75, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4239, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
589 { .Name: 500, .SubRegs: 78, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4241, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
590 { .Name: 653, .SubRegs: 81, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4243, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
591 { .Name: 177, .SubRegs: 84, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4245, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
592 { .Name: 345, .SubRegs: 87, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4247, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
593 { .Name: 506, .SubRegs: 90, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4249, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
594 { .Name: 659, .SubRegs: 93, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4251, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
595 { .Name: 183, .SubRegs: 96, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4253, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
596 { .Name: 351, .SubRegs: 99, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4255, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
597 { .Name: 512, .SubRegs: 102, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4257, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
598 { .Name: 665, .SubRegs: 105, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4259, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
599 { .Name: 189, .SubRegs: 108, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4261, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
600 { .Name: 357, .SubRegs: 111, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4263, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
601 { .Name: 518, .SubRegs: 114, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4265, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
602 { .Name: 671, .SubRegs: 117, .SuperRegs: 2, .SubRegIndices: 0, .RegUnits: 4267, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
603};
604
605extern const MCPhysReg SparcRegUnitRoots[][2] = {
606 { SP::CANRESTORE },
607 { SP::CANSAVE },
608 { SP::CLEANWIN },
609 { SP::CPQ },
610 { SP::CPSR },
611 { SP::CWP },
612 { SP::FQ },
613 { SP::FSR },
614 { SP::GL },
615 { SP::ICC },
616 { SP::OTHERWIN },
617 { SP::PIL },
618 { SP::PSR },
619 { SP::PSTATE },
620 { SP::TBA },
621 { SP::TBR },
622 { SP::TICK },
623 { SP::TL },
624 { SP::TNPC },
625 { SP::TPC },
626 { SP::TSTATE },
627 { SP::TT },
628 { SP::VER },
629 { SP::WIM },
630 { SP::WSTATE },
631 { SP::Y },
632 { SP::ASR1 },
633 { SP::ASR2 },
634 { SP::ASR3 },
635 { SP::ASR4 },
636 { SP::ASR5 },
637 { SP::ASR6 },
638 { SP::ASR7 },
639 { SP::ASR8 },
640 { SP::ASR9 },
641 { SP::ASR10 },
642 { SP::ASR11 },
643 { SP::ASR12 },
644 { SP::ASR13 },
645 { SP::ASR14 },
646 { SP::ASR15 },
647 { SP::ASR16 },
648 { SP::ASR17 },
649 { SP::ASR18 },
650 { SP::ASR19 },
651 { SP::ASR20 },
652 { SP::ASR21 },
653 { SP::ASR22 },
654 { SP::ASR23 },
655 { SP::ASR24 },
656 { SP::ASR25 },
657 { SP::ASR26 },
658 { SP::ASR27 },
659 { SP::ASR28 },
660 { SP::ASR29 },
661 { SP::ASR30 },
662 { SP::ASR31 },
663 { SP::C0 },
664 { SP::C1 },
665 { SP::C2 },
666 { SP::C3 },
667 { SP::C4 },
668 { SP::C5 },
669 { SP::C6 },
670 { SP::C7 },
671 { SP::C8 },
672 { SP::C9 },
673 { SP::C10 },
674 { SP::C11 },
675 { SP::C12 },
676 { SP::C13 },
677 { SP::C14 },
678 { SP::C15 },
679 { SP::C16 },
680 { SP::C17 },
681 { SP::C18 },
682 { SP::C19 },
683 { SP::C20 },
684 { SP::C21 },
685 { SP::C22 },
686 { SP::C23 },
687 { SP::C24 },
688 { SP::C25 },
689 { SP::C26 },
690 { SP::C27 },
691 { SP::C28 },
692 { SP::C29 },
693 { SP::C30 },
694 { SP::C31 },
695 { SP::F0 },
696 { SP::F1 },
697 { SP::F2 },
698 { SP::F3 },
699 { SP::F4 },
700 { SP::F5 },
701 { SP::F6 },
702 { SP::F7 },
703 { SP::F8 },
704 { SP::F9 },
705 { SP::F10 },
706 { SP::F11 },
707 { SP::F12 },
708 { SP::F13 },
709 { SP::F14 },
710 { SP::F15 },
711 { SP::F16 },
712 { SP::F17 },
713 { SP::F18 },
714 { SP::F19 },
715 { SP::F20 },
716 { SP::F21 },
717 { SP::F22 },
718 { SP::F23 },
719 { SP::F24 },
720 { SP::F25 },
721 { SP::F26 },
722 { SP::F27 },
723 { SP::F28 },
724 { SP::F29 },
725 { SP::F30 },
726 { SP::F31 },
727 { SP::D16 },
728 { SP::D17 },
729 { SP::D18 },
730 { SP::D19 },
731 { SP::D20 },
732 { SP::D21 },
733 { SP::D22 },
734 { SP::D23 },
735 { SP::D24 },
736 { SP::D25 },
737 { SP::D26 },
738 { SP::D27 },
739 { SP::D28 },
740 { SP::D29 },
741 { SP::D30 },
742 { SP::D31 },
743 { SP::FCC0 },
744 { SP::FCC1 },
745 { SP::FCC2 },
746 { SP::FCC3 },
747 { SP::G0 },
748 { SP::G1 },
749 { SP::G2 },
750 { SP::G3 },
751 { SP::G4 },
752 { SP::G5 },
753 { SP::G6 },
754 { SP::G7 },
755 { SP::I0 },
756 { SP::I1 },
757 { SP::I2 },
758 { SP::I3 },
759 { SP::I4 },
760 { SP::I5 },
761 { SP::I6 },
762 { SP::I7 },
763 { SP::L0 },
764 { SP::L1 },
765 { SP::L2 },
766 { SP::L3 },
767 { SP::L4 },
768 { SP::L5 },
769 { SP::L6 },
770 { SP::L7 },
771 { SP::O0 },
772 { SP::O1 },
773 { SP::O2 },
774 { SP::O3 },
775 { SP::O4 },
776 { SP::O5 },
777 { SP::O6 },
778 { SP::O7 },
779};
780
781namespace { // Register classes...
782 // FCCRegs Register Class...
783 const MCPhysReg FCCRegs[] = {
784 SP::FCC0, SP::FCC1, SP::FCC2, SP::FCC3,
785 };
786
787 // FCCRegs Bit set.
788 const uint8_t FCCRegsBits[] = {
789 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c,
790 };
791
792 // ASRRegs Register Class...
793 const MCPhysReg ASRRegs[] = {
794 SP::Y, SP::TICK, SP::ASR1, SP::ASR2, SP::ASR3, SP::ASR4, SP::ASR5, SP::ASR6, SP::ASR7, SP::ASR8, SP::ASR9, SP::ASR10, SP::ASR11, SP::ASR12, SP::ASR13, SP::ASR14, SP::ASR15, SP::ASR16, SP::ASR17, SP::ASR18, SP::ASR19, SP::ASR20, SP::ASR21, SP::ASR22, SP::ASR23, SP::ASR24, SP::ASR25, SP::ASR26, SP::ASR27, SP::ASR28, SP::ASR29, SP::ASR30, SP::ASR31,
795 };
796
797 // ASRRegs Bit set.
798 const uint8_t ASRRegsBits[] = {
799 0x00, 0x00, 0x02, 0xfc, 0xff, 0xff, 0xff, 0x03,
800 };
801
802 // CoprocRegs Register Class...
803 const MCPhysReg CoprocRegs[] = {
804 SP::C0, SP::C1, SP::C2, SP::C3, SP::C4, SP::C5, SP::C6, SP::C7, SP::C8, SP::C9, SP::C10, SP::C11, SP::C12, SP::C13, SP::C14, SP::C15, SP::C16, SP::C17, SP::C18, SP::C19, SP::C20, SP::C21, SP::C22, SP::C23, SP::C24, SP::C25, SP::C26, SP::C27, SP::C28, SP::C29, SP::C30, SP::C31,
805 };
806
807 // CoprocRegs Bit set.
808 const uint8_t CoprocRegsBits[] = {
809 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x03,
810 };
811
812 // FPRegs Register Class...
813 const MCPhysReg FPRegs[] = {
814 SP::F0, SP::F1, SP::F2, SP::F3, SP::F4, SP::F5, SP::F6, SP::F7, SP::F8, SP::F9, SP::F10, SP::F11, SP::F12, SP::F13, SP::F14, SP::F15, SP::F16, SP::F17, SP::F18, SP::F19, SP::F20, SP::F21, SP::F22, SP::F23, SP::F24, SP::F25, SP::F26, SP::F27, SP::F28, SP::F29, SP::F30, SP::F31,
815 };
816
817 // FPRegs Bit set.
818 const uint8_t FPRegsBits[] = {
819 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x03,
820 };
821
822 // IntRegs Register Class...
823 const MCPhysReg IntRegs[] = {
824 SP::I0, SP::I1, SP::I2, SP::I3, SP::I4, SP::I5, SP::I6, SP::I7, SP::G0, SP::G1, SP::G2, SP::G3, SP::G4, SP::G5, SP::G6, SP::G7, SP::L0, SP::L1, SP::L2, SP::L3, SP::L4, SP::L5, SP::L6, SP::L7, SP::O0, SP::O1, SP::O2, SP::O3, SP::O4, SP::O5, SP::O6, SP::O7,
825 };
826
827 // IntRegs Bit set.
828 const uint8_t IntRegsBits[] = {
829 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x3f,
830 };
831
832 // GPRIncomingArg Register Class...
833 const MCPhysReg GPRIncomingArg[] = {
834 SP::I0, SP::I1, SP::I2, SP::I3, SP::I4, SP::I5,
835 };
836
837 // GPRIncomingArg Bit set.
838 const uint8_t GPRIncomingArgBits[] = {
839 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0f,
840 };
841
842 // GPROutgoingArg Register Class...
843 const MCPhysReg GPROutgoingArg[] = {
844 SP::O0, SP::O1, SP::O2, SP::O3, SP::O4, SP::O5,
845 };
846
847 // GPROutgoingArg Bit set.
848 const uint8_t GPROutgoingArgBits[] = {
849 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0f,
850 };
851
852 // DFPRegs Register Class...
853 const MCPhysReg DFPRegs[] = {
854 SP::D0, SP::D1, SP::D2, SP::D3, SP::D4, SP::D5, SP::D6, SP::D7, SP::D8, SP::D9, SP::D10, SP::D11, SP::D12, SP::D13, SP::D14, SP::D15, SP::D16, SP::D17, SP::D18, SP::D19, SP::D20, SP::D21, SP::D22, SP::D23, SP::D24, SP::D25, SP::D26, SP::D27, SP::D28, SP::D29, SP::D30, SP::D31,
855 };
856
857 // DFPRegs Bit set.
858 const uint8_t DFPRegsBits[] = {
859 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x03,
860 };
861
862 // I64Regs Register Class...
863 const MCPhysReg I64Regs[] = {
864 SP::I0, SP::I1, SP::I2, SP::I3, SP::I4, SP::I5, SP::I6, SP::I7, SP::G0, SP::G1, SP::G2, SP::G3, SP::G4, SP::G5, SP::G6, SP::G7, SP::L0, SP::L1, SP::L2, SP::L3, SP::L4, SP::L5, SP::L6, SP::L7, SP::O0, SP::O1, SP::O2, SP::O3, SP::O4, SP::O5, SP::O6, SP::O7,
865 };
866
867 // I64Regs Bit set.
868 const uint8_t I64RegsBits[] = {
869 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x3f,
870 };
871
872 // PRRegs Register Class...
873 const MCPhysReg PRRegs[] = {
874 SP::TPC, SP::TNPC, SP::TSTATE, SP::TT, SP::TICK, SP::TBA, SP::PSTATE, SP::TL, SP::PIL, SP::CWP, SP::CANSAVE, SP::CANRESTORE, SP::CLEANWIN, SP::OTHERWIN, SP::WSTATE, SP::GL, SP::VER,
875 };
876
877 // PRRegs Bit set.
878 const uint8_t PRRegsBits[] = {
879 0x4e, 0xda, 0xfe, 0x02,
880 };
881
882 // CoprocPair Register Class...
883 const MCPhysReg CoprocPair[] = {
884 SP::C0_C1, SP::C2_C3, SP::C4_C5, SP::C6_C7, SP::C8_C9, SP::C10_C11, SP::C12_C13, SP::C14_C15, SP::C16_C17, SP::C18_C19, SP::C20_C21, SP::C22_C23, SP::C24_C25, SP::C26_C27, SP::C28_C29, SP::C30_C31,
885 };
886
887 // CoprocPair Bit set.
888 const uint8_t CoprocPairBits[] = {
889 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x3f,
890 };
891
892 // IntPair Register Class...
893 const MCPhysReg IntPair[] = {
894 SP::I0_I1, SP::I2_I3, SP::I4_I5, SP::I6_I7, SP::G0_G1, SP::G2_G3, SP::G4_G5, SP::G6_G7, SP::L0_L1, SP::L2_L3, SP::L4_L5, SP::L6_L7, SP::O0_O1, SP::O2_O3, SP::O4_O5, SP::O6_O7,
895 };
896
897 // IntPair Bit set.
898 const uint8_t IntPairBits[] = {
899 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x3f,
900 };
901
902 // LowDFPRegs Register Class...
903 const MCPhysReg LowDFPRegs[] = {
904 SP::D0, SP::D1, SP::D2, SP::D3, SP::D4, SP::D5, SP::D6, SP::D7, SP::D8, SP::D9, SP::D10, SP::D11, SP::D12, SP::D13, SP::D14, SP::D15,
905 };
906
907 // LowDFPRegs Bit set.
908 const uint8_t LowDFPRegsBits[] = {
909 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x03,
910 };
911
912 // I64Regs_and_GPRIncomingArg Register Class...
913 const MCPhysReg I64Regs_and_GPRIncomingArg[] = {
914 SP::I0, SP::I1, SP::I2, SP::I3, SP::I4, SP::I5,
915 };
916
917 // I64Regs_and_GPRIncomingArg Bit set.
918 const uint8_t I64Regs_and_GPRIncomingArgBits[] = {
919 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0f,
920 };
921
922 // I64Regs_and_GPROutgoingArg Register Class...
923 const MCPhysReg I64Regs_and_GPROutgoingArg[] = {
924 SP::O0, SP::O1, SP::O2, SP::O3, SP::O4, SP::O5,
925 };
926
927 // I64Regs_and_GPROutgoingArg Bit set.
928 const uint8_t I64Regs_and_GPROutgoingArgBits[] = {
929 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0f,
930 };
931
932 // IntPair_with_sub_even_in_GPRIncomingArg Register Class...
933 const MCPhysReg IntPair_with_sub_even_in_GPRIncomingArg[] = {
934 SP::I0_I1, SP::I2_I3, SP::I4_I5,
935 };
936
937 // IntPair_with_sub_even_in_GPRIncomingArg Bit set.
938 const uint8_t IntPair_with_sub_even_in_GPRIncomingArgBits[] = {
939 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c,
940 };
941
942 // IntPair_with_sub_even_in_GPROutgoingArg Register Class...
943 const MCPhysReg IntPair_with_sub_even_in_GPROutgoingArg[] = {
944 SP::O0_O1, SP::O2_O3, SP::O4_O5,
945 };
946
947 // IntPair_with_sub_even_in_GPROutgoingArg Bit set.
948 const uint8_t IntPair_with_sub_even_in_GPROutgoingArgBits[] = {
949 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c,
950 };
951
952 // PRRegs_and_ASRRegs Register Class...
953 const MCPhysReg PRRegs_and_ASRRegs[] = {
954 SP::TICK,
955 };
956
957 // PRRegs_and_ASRRegs Bit set.
958 const uint8_t PRRegs_and_ASRRegsBits[] = {
959 0x00, 0x00, 0x02,
960 };
961
962 // QFPRegs Register Class...
963 const MCPhysReg QFPRegs[] = {
964 SP::Q0, SP::Q1, SP::Q2, SP::Q3, SP::Q4, SP::Q5, SP::Q6, SP::Q7, SP::Q8, SP::Q9, SP::Q10, SP::Q11, SP::Q12, SP::Q13, SP::Q14, SP::Q15,
965 };
966
967 // QFPRegs Bit set.
968 const uint8_t QFPRegsBits[] = {
969 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x3f,
970 };
971
972 // LowQFPRegs Register Class...
973 const MCPhysReg LowQFPRegs[] = {
974 SP::Q0, SP::Q1, SP::Q2, SP::Q3, SP::Q4, SP::Q5, SP::Q6, SP::Q7,
975 };
976
977 // LowQFPRegs Bit set.
978 const uint8_t LowQFPRegsBits[] = {
979 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x3f,
980 };
981
982} // end anonymous namespace
983
984
985#ifdef __GNUC__
986#pragma GCC diagnostic push
987#pragma GCC diagnostic ignored "-Woverlength-strings"
988#endif
989extern const char SparcRegClassStrings[] = {
990 /* 0 */ "I64Regs_and_GPRIncomingArg\000"
991 /* 27 */ "IntPair_with_sub_even_in_GPRIncomingArg\000"
992 /* 67 */ "I64Regs_and_GPROutgoingArg\000"
993 /* 94 */ "IntPair_with_sub_even_in_GPROutgoingArg\000"
994 /* 134 */ "CoprocPair\000"
995 /* 145 */ "IntPair\000"
996 /* 153 */ "I64Regs\000"
997 /* 161 */ "FCCRegs\000"
998 /* 169 */ "LowDFPRegs\000"
999 /* 180 */ "LowQFPRegs\000"
1000 /* 191 */ "PRRegs\000"
1001 /* 198 */ "PRRegs_and_ASRRegs\000"
1002 /* 217 */ "CoprocRegs\000"
1003 /* 228 */ "IntRegs\000"
1004};
1005#ifdef __GNUC__
1006#pragma GCC diagnostic pop
1007#endif
1008
1009extern const MCRegisterClass SparcMCRegisterClasses[] = {
1010 { .RegsBegin: FCCRegs, .RegSet: FCCRegsBits, .NameIdx: 161, .RegsSize: 4, .RegSetSize: sizeof(FCCRegsBits), .ID: SP::FCCRegsRegClassID, .RegSizeInBits: 1, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1011 { .RegsBegin: ASRRegs, .RegSet: ASRRegsBits, .NameIdx: 209, .RegsSize: 33, .RegSetSize: sizeof(ASRRegsBits), .ID: SP::ASRRegsRegClassID, .RegSizeInBits: 32, .CopyCost: 1, .Allocatable: false, .BaseClass: false },
1012 { .RegsBegin: CoprocRegs, .RegSet: CoprocRegsBits, .NameIdx: 217, .RegsSize: 32, .RegSetSize: sizeof(CoprocRegsBits), .ID: SP::CoprocRegsRegClassID, .RegSizeInBits: 32, .CopyCost: 1, .Allocatable: false, .BaseClass: false },
1013 { .RegsBegin: FPRegs, .RegSet: FPRegsBits, .NameIdx: 173, .RegsSize: 32, .RegSetSize: sizeof(FPRegsBits), .ID: SP::FPRegsRegClassID, .RegSizeInBits: 32, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1014 { .RegsBegin: IntRegs, .RegSet: IntRegsBits, .NameIdx: 228, .RegsSize: 32, .RegSetSize: sizeof(IntRegsBits), .ID: SP::IntRegsRegClassID, .RegSizeInBits: 32, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1015 { .RegsBegin: GPRIncomingArg, .RegSet: GPRIncomingArgBits, .NameIdx: 12, .RegsSize: 6, .RegSetSize: sizeof(GPRIncomingArgBits), .ID: SP::GPRIncomingArgRegClassID, .RegSizeInBits: 32, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1016 { .RegsBegin: GPROutgoingArg, .RegSet: GPROutgoingArgBits, .NameIdx: 79, .RegsSize: 6, .RegSetSize: sizeof(GPROutgoingArgBits), .ID: SP::GPROutgoingArgRegClassID, .RegSizeInBits: 32, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1017 { .RegsBegin: DFPRegs, .RegSet: DFPRegsBits, .NameIdx: 172, .RegsSize: 32, .RegSetSize: sizeof(DFPRegsBits), .ID: SP::DFPRegsRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1018 { .RegsBegin: I64Regs, .RegSet: I64RegsBits, .NameIdx: 153, .RegsSize: 32, .RegSetSize: sizeof(I64RegsBits), .ID: SP::I64RegsRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1019 { .RegsBegin: PRRegs, .RegSet: PRRegsBits, .NameIdx: 191, .RegsSize: 17, .RegSetSize: sizeof(PRRegsBits), .ID: SP::PRRegsRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1020 { .RegsBegin: CoprocPair, .RegSet: CoprocPairBits, .NameIdx: 134, .RegsSize: 16, .RegSetSize: sizeof(CoprocPairBits), .ID: SP::CoprocPairRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: false, .BaseClass: false },
1021 { .RegsBegin: IntPair, .RegSet: IntPairBits, .NameIdx: 145, .RegsSize: 16, .RegSetSize: sizeof(IntPairBits), .ID: SP::IntPairRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1022 { .RegsBegin: LowDFPRegs, .RegSet: LowDFPRegsBits, .NameIdx: 169, .RegsSize: 16, .RegSetSize: sizeof(LowDFPRegsBits), .ID: SP::LowDFPRegsRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1023 { .RegsBegin: I64Regs_and_GPRIncomingArg, .RegSet: I64Regs_and_GPRIncomingArgBits, .NameIdx: 0, .RegsSize: 6, .RegSetSize: sizeof(I64Regs_and_GPRIncomingArgBits), .ID: SP::I64Regs_and_GPRIncomingArgRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1024 { .RegsBegin: I64Regs_and_GPROutgoingArg, .RegSet: I64Regs_and_GPROutgoingArgBits, .NameIdx: 67, .RegsSize: 6, .RegSetSize: sizeof(I64Regs_and_GPROutgoingArgBits), .ID: SP::I64Regs_and_GPROutgoingArgRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1025 { .RegsBegin: IntPair_with_sub_even_in_GPRIncomingArg, .RegSet: IntPair_with_sub_even_in_GPRIncomingArgBits, .NameIdx: 27, .RegsSize: 3, .RegSetSize: sizeof(IntPair_with_sub_even_in_GPRIncomingArgBits), .ID: SP::IntPair_with_sub_even_in_GPRIncomingArgRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1026 { .RegsBegin: IntPair_with_sub_even_in_GPROutgoingArg, .RegSet: IntPair_with_sub_even_in_GPROutgoingArgBits, .NameIdx: 94, .RegsSize: 3, .RegSetSize: sizeof(IntPair_with_sub_even_in_GPROutgoingArgBits), .ID: SP::IntPair_with_sub_even_in_GPROutgoingArgRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1027 { .RegsBegin: PRRegs_and_ASRRegs, .RegSet: PRRegs_and_ASRRegsBits, .NameIdx: 198, .RegsSize: 1, .RegSetSize: sizeof(PRRegs_and_ASRRegsBits), .ID: SP::PRRegs_and_ASRRegsRegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1028 { .RegsBegin: QFPRegs, .RegSet: QFPRegsBits, .NameIdx: 183, .RegsSize: 16, .RegSetSize: sizeof(QFPRegsBits), .ID: SP::QFPRegsRegClassID, .RegSizeInBits: 128, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1029 { .RegsBegin: LowQFPRegs, .RegSet: LowQFPRegsBits, .NameIdx: 180, .RegsSize: 8, .RegSetSize: sizeof(LowQFPRegsBits), .ID: SP::LowQFPRegsRegClassID, .RegSizeInBits: 128, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
1030};
1031
1032// SP Dwarf<->LLVM register mappings.
1033extern const MCRegisterInfo::DwarfLLVMRegPair SPDwarfFlavour0Dwarf2L[] = {
1034 { .FromReg: 0U, .ToReg: SP::G0 },
1035 { .FromReg: 1U, .ToReg: SP::G1 },
1036 { .FromReg: 2U, .ToReg: SP::G2 },
1037 { .FromReg: 3U, .ToReg: SP::G3 },
1038 { .FromReg: 4U, .ToReg: SP::G4 },
1039 { .FromReg: 5U, .ToReg: SP::G5 },
1040 { .FromReg: 6U, .ToReg: SP::G6 },
1041 { .FromReg: 7U, .ToReg: SP::G7 },
1042 { .FromReg: 8U, .ToReg: SP::O0 },
1043 { .FromReg: 9U, .ToReg: SP::O1 },
1044 { .FromReg: 10U, .ToReg: SP::O2 },
1045 { .FromReg: 11U, .ToReg: SP::O3 },
1046 { .FromReg: 12U, .ToReg: SP::O4 },
1047 { .FromReg: 13U, .ToReg: SP::O5 },
1048 { .FromReg: 14U, .ToReg: SP::O6 },
1049 { .FromReg: 15U, .ToReg: SP::O7 },
1050 { .FromReg: 16U, .ToReg: SP::L0 },
1051 { .FromReg: 17U, .ToReg: SP::L1 },
1052 { .FromReg: 18U, .ToReg: SP::L2 },
1053 { .FromReg: 19U, .ToReg: SP::L3 },
1054 { .FromReg: 20U, .ToReg: SP::L4 },
1055 { .FromReg: 21U, .ToReg: SP::L5 },
1056 { .FromReg: 22U, .ToReg: SP::L6 },
1057 { .FromReg: 23U, .ToReg: SP::L7 },
1058 { .FromReg: 24U, .ToReg: SP::I0 },
1059 { .FromReg: 25U, .ToReg: SP::I1 },
1060 { .FromReg: 26U, .ToReg: SP::I2 },
1061 { .FromReg: 27U, .ToReg: SP::I3 },
1062 { .FromReg: 28U, .ToReg: SP::I4 },
1063 { .FromReg: 29U, .ToReg: SP::I5 },
1064 { .FromReg: 30U, .ToReg: SP::I6 },
1065 { .FromReg: 31U, .ToReg: SP::I7 },
1066 { .FromReg: 32U, .ToReg: SP::F0 },
1067 { .FromReg: 33U, .ToReg: SP::F1 },
1068 { .FromReg: 34U, .ToReg: SP::F2 },
1069 { .FromReg: 35U, .ToReg: SP::F3 },
1070 { .FromReg: 36U, .ToReg: SP::F4 },
1071 { .FromReg: 37U, .ToReg: SP::F5 },
1072 { .FromReg: 38U, .ToReg: SP::F6 },
1073 { .FromReg: 39U, .ToReg: SP::F7 },
1074 { .FromReg: 40U, .ToReg: SP::F8 },
1075 { .FromReg: 41U, .ToReg: SP::F9 },
1076 { .FromReg: 42U, .ToReg: SP::F10 },
1077 { .FromReg: 43U, .ToReg: SP::F11 },
1078 { .FromReg: 44U, .ToReg: SP::F12 },
1079 { .FromReg: 45U, .ToReg: SP::F13 },
1080 { .FromReg: 46U, .ToReg: SP::F14 },
1081 { .FromReg: 47U, .ToReg: SP::F15 },
1082 { .FromReg: 48U, .ToReg: SP::F16 },
1083 { .FromReg: 49U, .ToReg: SP::F17 },
1084 { .FromReg: 50U, .ToReg: SP::F18 },
1085 { .FromReg: 51U, .ToReg: SP::F19 },
1086 { .FromReg: 52U, .ToReg: SP::F20 },
1087 { .FromReg: 53U, .ToReg: SP::F21 },
1088 { .FromReg: 54U, .ToReg: SP::F22 },
1089 { .FromReg: 55U, .ToReg: SP::F23 },
1090 { .FromReg: 56U, .ToReg: SP::F24 },
1091 { .FromReg: 57U, .ToReg: SP::F25 },
1092 { .FromReg: 58U, .ToReg: SP::F26 },
1093 { .FromReg: 59U, .ToReg: SP::F27 },
1094 { .FromReg: 60U, .ToReg: SP::F28 },
1095 { .FromReg: 61U, .ToReg: SP::F29 },
1096 { .FromReg: 62U, .ToReg: SP::F30 },
1097 { .FromReg: 63U, .ToReg: SP::F31 },
1098 { .FromReg: 64U, .ToReg: SP::Y },
1099 { .FromReg: 72U, .ToReg: SP::D0 },
1100 { .FromReg: 73U, .ToReg: SP::D1 },
1101 { .FromReg: 74U, .ToReg: SP::D2 },
1102 { .FromReg: 75U, .ToReg: SP::D3 },
1103 { .FromReg: 76U, .ToReg: SP::D4 },
1104 { .FromReg: 77U, .ToReg: SP::D5 },
1105 { .FromReg: 78U, .ToReg: SP::D6 },
1106 { .FromReg: 79U, .ToReg: SP::D7 },
1107 { .FromReg: 80U, .ToReg: SP::D8 },
1108 { .FromReg: 81U, .ToReg: SP::D9 },
1109 { .FromReg: 82U, .ToReg: SP::D10 },
1110 { .FromReg: 83U, .ToReg: SP::D11 },
1111 { .FromReg: 84U, .ToReg: SP::D12 },
1112 { .FromReg: 85U, .ToReg: SP::D13 },
1113 { .FromReg: 86U, .ToReg: SP::D14 },
1114 { .FromReg: 87U, .ToReg: SP::D15 },
1115};
1116extern const unsigned SPDwarfFlavour0Dwarf2LSize = std::size(SPDwarfFlavour0Dwarf2L);
1117
1118extern const MCRegisterInfo::DwarfLLVMRegPair SPEHFlavour0Dwarf2L[] = {
1119 { .FromReg: 0U, .ToReg: SP::G0 },
1120 { .FromReg: 1U, .ToReg: SP::G1 },
1121 { .FromReg: 2U, .ToReg: SP::G2 },
1122 { .FromReg: 3U, .ToReg: SP::G3 },
1123 { .FromReg: 4U, .ToReg: SP::G4 },
1124 { .FromReg: 5U, .ToReg: SP::G5 },
1125 { .FromReg: 6U, .ToReg: SP::G6 },
1126 { .FromReg: 7U, .ToReg: SP::G7 },
1127 { .FromReg: 8U, .ToReg: SP::O0 },
1128 { .FromReg: 9U, .ToReg: SP::O1 },
1129 { .FromReg: 10U, .ToReg: SP::O2 },
1130 { .FromReg: 11U, .ToReg: SP::O3 },
1131 { .FromReg: 12U, .ToReg: SP::O4 },
1132 { .FromReg: 13U, .ToReg: SP::O5 },
1133 { .FromReg: 14U, .ToReg: SP::O6 },
1134 { .FromReg: 15U, .ToReg: SP::O7 },
1135 { .FromReg: 16U, .ToReg: SP::L0 },
1136 { .FromReg: 17U, .ToReg: SP::L1 },
1137 { .FromReg: 18U, .ToReg: SP::L2 },
1138 { .FromReg: 19U, .ToReg: SP::L3 },
1139 { .FromReg: 20U, .ToReg: SP::L4 },
1140 { .FromReg: 21U, .ToReg: SP::L5 },
1141 { .FromReg: 22U, .ToReg: SP::L6 },
1142 { .FromReg: 23U, .ToReg: SP::L7 },
1143 { .FromReg: 24U, .ToReg: SP::I0 },
1144 { .FromReg: 25U, .ToReg: SP::I1 },
1145 { .FromReg: 26U, .ToReg: SP::I2 },
1146 { .FromReg: 27U, .ToReg: SP::I3 },
1147 { .FromReg: 28U, .ToReg: SP::I4 },
1148 { .FromReg: 29U, .ToReg: SP::I5 },
1149 { .FromReg: 30U, .ToReg: SP::I6 },
1150 { .FromReg: 31U, .ToReg: SP::I7 },
1151 { .FromReg: 32U, .ToReg: SP::F0 },
1152 { .FromReg: 33U, .ToReg: SP::F1 },
1153 { .FromReg: 34U, .ToReg: SP::F2 },
1154 { .FromReg: 35U, .ToReg: SP::F3 },
1155 { .FromReg: 36U, .ToReg: SP::F4 },
1156 { .FromReg: 37U, .ToReg: SP::F5 },
1157 { .FromReg: 38U, .ToReg: SP::F6 },
1158 { .FromReg: 39U, .ToReg: SP::F7 },
1159 { .FromReg: 40U, .ToReg: SP::F8 },
1160 { .FromReg: 41U, .ToReg: SP::F9 },
1161 { .FromReg: 42U, .ToReg: SP::F10 },
1162 { .FromReg: 43U, .ToReg: SP::F11 },
1163 { .FromReg: 44U, .ToReg: SP::F12 },
1164 { .FromReg: 45U, .ToReg: SP::F13 },
1165 { .FromReg: 46U, .ToReg: SP::F14 },
1166 { .FromReg: 47U, .ToReg: SP::F15 },
1167 { .FromReg: 48U, .ToReg: SP::F16 },
1168 { .FromReg: 49U, .ToReg: SP::F17 },
1169 { .FromReg: 50U, .ToReg: SP::F18 },
1170 { .FromReg: 51U, .ToReg: SP::F19 },
1171 { .FromReg: 52U, .ToReg: SP::F20 },
1172 { .FromReg: 53U, .ToReg: SP::F21 },
1173 { .FromReg: 54U, .ToReg: SP::F22 },
1174 { .FromReg: 55U, .ToReg: SP::F23 },
1175 { .FromReg: 56U, .ToReg: SP::F24 },
1176 { .FromReg: 57U, .ToReg: SP::F25 },
1177 { .FromReg: 58U, .ToReg: SP::F26 },
1178 { .FromReg: 59U, .ToReg: SP::F27 },
1179 { .FromReg: 60U, .ToReg: SP::F28 },
1180 { .FromReg: 61U, .ToReg: SP::F29 },
1181 { .FromReg: 62U, .ToReg: SP::F30 },
1182 { .FromReg: 63U, .ToReg: SP::F31 },
1183 { .FromReg: 64U, .ToReg: SP::Y },
1184 { .FromReg: 72U, .ToReg: SP::D0 },
1185 { .FromReg: 73U, .ToReg: SP::D1 },
1186 { .FromReg: 74U, .ToReg: SP::D2 },
1187 { .FromReg: 75U, .ToReg: SP::D3 },
1188 { .FromReg: 76U, .ToReg: SP::D4 },
1189 { .FromReg: 77U, .ToReg: SP::D5 },
1190 { .FromReg: 78U, .ToReg: SP::D6 },
1191 { .FromReg: 79U, .ToReg: SP::D7 },
1192 { .FromReg: 80U, .ToReg: SP::D8 },
1193 { .FromReg: 81U, .ToReg: SP::D9 },
1194 { .FromReg: 82U, .ToReg: SP::D10 },
1195 { .FromReg: 83U, .ToReg: SP::D11 },
1196 { .FromReg: 84U, .ToReg: SP::D12 },
1197 { .FromReg: 85U, .ToReg: SP::D13 },
1198 { .FromReg: 86U, .ToReg: SP::D14 },
1199 { .FromReg: 87U, .ToReg: SP::D15 },
1200};
1201extern const unsigned SPEHFlavour0Dwarf2LSize = std::size(SPEHFlavour0Dwarf2L);
1202
1203extern const MCRegisterInfo::DwarfLLVMRegPair SPDwarfFlavour0L2Dwarf[] = {
1204 { .FromReg: SP::Y, .ToReg: 64U },
1205 { .FromReg: SP::D0, .ToReg: 72U },
1206 { .FromReg: SP::D1, .ToReg: 73U },
1207 { .FromReg: SP::D2, .ToReg: 74U },
1208 { .FromReg: SP::D3, .ToReg: 75U },
1209 { .FromReg: SP::D4, .ToReg: 76U },
1210 { .FromReg: SP::D5, .ToReg: 77U },
1211 { .FromReg: SP::D6, .ToReg: 78U },
1212 { .FromReg: SP::D7, .ToReg: 79U },
1213 { .FromReg: SP::D8, .ToReg: 80U },
1214 { .FromReg: SP::D9, .ToReg: 81U },
1215 { .FromReg: SP::D10, .ToReg: 82U },
1216 { .FromReg: SP::D11, .ToReg: 83U },
1217 { .FromReg: SP::D12, .ToReg: 84U },
1218 { .FromReg: SP::D13, .ToReg: 85U },
1219 { .FromReg: SP::D14, .ToReg: 86U },
1220 { .FromReg: SP::D15, .ToReg: 87U },
1221 { .FromReg: SP::F0, .ToReg: 32U },
1222 { .FromReg: SP::F1, .ToReg: 33U },
1223 { .FromReg: SP::F2, .ToReg: 34U },
1224 { .FromReg: SP::F3, .ToReg: 35U },
1225 { .FromReg: SP::F4, .ToReg: 36U },
1226 { .FromReg: SP::F5, .ToReg: 37U },
1227 { .FromReg: SP::F6, .ToReg: 38U },
1228 { .FromReg: SP::F7, .ToReg: 39U },
1229 { .FromReg: SP::F8, .ToReg: 40U },
1230 { .FromReg: SP::F9, .ToReg: 41U },
1231 { .FromReg: SP::F10, .ToReg: 42U },
1232 { .FromReg: SP::F11, .ToReg: 43U },
1233 { .FromReg: SP::F12, .ToReg: 44U },
1234 { .FromReg: SP::F13, .ToReg: 45U },
1235 { .FromReg: SP::F14, .ToReg: 46U },
1236 { .FromReg: SP::F15, .ToReg: 47U },
1237 { .FromReg: SP::F16, .ToReg: 48U },
1238 { .FromReg: SP::F17, .ToReg: 49U },
1239 { .FromReg: SP::F18, .ToReg: 50U },
1240 { .FromReg: SP::F19, .ToReg: 51U },
1241 { .FromReg: SP::F20, .ToReg: 52U },
1242 { .FromReg: SP::F21, .ToReg: 53U },
1243 { .FromReg: SP::F22, .ToReg: 54U },
1244 { .FromReg: SP::F23, .ToReg: 55U },
1245 { .FromReg: SP::F24, .ToReg: 56U },
1246 { .FromReg: SP::F25, .ToReg: 57U },
1247 { .FromReg: SP::F26, .ToReg: 58U },
1248 { .FromReg: SP::F27, .ToReg: 59U },
1249 { .FromReg: SP::F28, .ToReg: 60U },
1250 { .FromReg: SP::F29, .ToReg: 61U },
1251 { .FromReg: SP::F30, .ToReg: 62U },
1252 { .FromReg: SP::F31, .ToReg: 63U },
1253 { .FromReg: SP::G0, .ToReg: 0U },
1254 { .FromReg: SP::G1, .ToReg: 1U },
1255 { .FromReg: SP::G2, .ToReg: 2U },
1256 { .FromReg: SP::G3, .ToReg: 3U },
1257 { .FromReg: SP::G4, .ToReg: 4U },
1258 { .FromReg: SP::G5, .ToReg: 5U },
1259 { .FromReg: SP::G6, .ToReg: 6U },
1260 { .FromReg: SP::G7, .ToReg: 7U },
1261 { .FromReg: SP::I0, .ToReg: 24U },
1262 { .FromReg: SP::I1, .ToReg: 25U },
1263 { .FromReg: SP::I2, .ToReg: 26U },
1264 { .FromReg: SP::I3, .ToReg: 27U },
1265 { .FromReg: SP::I4, .ToReg: 28U },
1266 { .FromReg: SP::I5, .ToReg: 29U },
1267 { .FromReg: SP::I6, .ToReg: 30U },
1268 { .FromReg: SP::I7, .ToReg: 31U },
1269 { .FromReg: SP::L0, .ToReg: 16U },
1270 { .FromReg: SP::L1, .ToReg: 17U },
1271 { .FromReg: SP::L2, .ToReg: 18U },
1272 { .FromReg: SP::L3, .ToReg: 19U },
1273 { .FromReg: SP::L4, .ToReg: 20U },
1274 { .FromReg: SP::L5, .ToReg: 21U },
1275 { .FromReg: SP::L6, .ToReg: 22U },
1276 { .FromReg: SP::L7, .ToReg: 23U },
1277 { .FromReg: SP::O0, .ToReg: 8U },
1278 { .FromReg: SP::O1, .ToReg: 9U },
1279 { .FromReg: SP::O2, .ToReg: 10U },
1280 { .FromReg: SP::O3, .ToReg: 11U },
1281 { .FromReg: SP::O4, .ToReg: 12U },
1282 { .FromReg: SP::O5, .ToReg: 13U },
1283 { .FromReg: SP::O6, .ToReg: 14U },
1284 { .FromReg: SP::O7, .ToReg: 15U },
1285};
1286extern const unsigned SPDwarfFlavour0L2DwarfSize = std::size(SPDwarfFlavour0L2Dwarf);
1287
1288extern const MCRegisterInfo::DwarfLLVMRegPair SPEHFlavour0L2Dwarf[] = {
1289 { .FromReg: SP::Y, .ToReg: 64U },
1290 { .FromReg: SP::D0, .ToReg: 72U },
1291 { .FromReg: SP::D1, .ToReg: 73U },
1292 { .FromReg: SP::D2, .ToReg: 74U },
1293 { .FromReg: SP::D3, .ToReg: 75U },
1294 { .FromReg: SP::D4, .ToReg: 76U },
1295 { .FromReg: SP::D5, .ToReg: 77U },
1296 { .FromReg: SP::D6, .ToReg: 78U },
1297 { .FromReg: SP::D7, .ToReg: 79U },
1298 { .FromReg: SP::D8, .ToReg: 80U },
1299 { .FromReg: SP::D9, .ToReg: 81U },
1300 { .FromReg: SP::D10, .ToReg: 82U },
1301 { .FromReg: SP::D11, .ToReg: 83U },
1302 { .FromReg: SP::D12, .ToReg: 84U },
1303 { .FromReg: SP::D13, .ToReg: 85U },
1304 { .FromReg: SP::D14, .ToReg: 86U },
1305 { .FromReg: SP::D15, .ToReg: 87U },
1306 { .FromReg: SP::F0, .ToReg: 32U },
1307 { .FromReg: SP::F1, .ToReg: 33U },
1308 { .FromReg: SP::F2, .ToReg: 34U },
1309 { .FromReg: SP::F3, .ToReg: 35U },
1310 { .FromReg: SP::F4, .ToReg: 36U },
1311 { .FromReg: SP::F5, .ToReg: 37U },
1312 { .FromReg: SP::F6, .ToReg: 38U },
1313 { .FromReg: SP::F7, .ToReg: 39U },
1314 { .FromReg: SP::F8, .ToReg: 40U },
1315 { .FromReg: SP::F9, .ToReg: 41U },
1316 { .FromReg: SP::F10, .ToReg: 42U },
1317 { .FromReg: SP::F11, .ToReg: 43U },
1318 { .FromReg: SP::F12, .ToReg: 44U },
1319 { .FromReg: SP::F13, .ToReg: 45U },
1320 { .FromReg: SP::F14, .ToReg: 46U },
1321 { .FromReg: SP::F15, .ToReg: 47U },
1322 { .FromReg: SP::F16, .ToReg: 48U },
1323 { .FromReg: SP::F17, .ToReg: 49U },
1324 { .FromReg: SP::F18, .ToReg: 50U },
1325 { .FromReg: SP::F19, .ToReg: 51U },
1326 { .FromReg: SP::F20, .ToReg: 52U },
1327 { .FromReg: SP::F21, .ToReg: 53U },
1328 { .FromReg: SP::F22, .ToReg: 54U },
1329 { .FromReg: SP::F23, .ToReg: 55U },
1330 { .FromReg: SP::F24, .ToReg: 56U },
1331 { .FromReg: SP::F25, .ToReg: 57U },
1332 { .FromReg: SP::F26, .ToReg: 58U },
1333 { .FromReg: SP::F27, .ToReg: 59U },
1334 { .FromReg: SP::F28, .ToReg: 60U },
1335 { .FromReg: SP::F29, .ToReg: 61U },
1336 { .FromReg: SP::F30, .ToReg: 62U },
1337 { .FromReg: SP::F31, .ToReg: 63U },
1338 { .FromReg: SP::G0, .ToReg: 0U },
1339 { .FromReg: SP::G1, .ToReg: 1U },
1340 { .FromReg: SP::G2, .ToReg: 2U },
1341 { .FromReg: SP::G3, .ToReg: 3U },
1342 { .FromReg: SP::G4, .ToReg: 4U },
1343 { .FromReg: SP::G5, .ToReg: 5U },
1344 { .FromReg: SP::G6, .ToReg: 6U },
1345 { .FromReg: SP::G7, .ToReg: 7U },
1346 { .FromReg: SP::I0, .ToReg: 24U },
1347 { .FromReg: SP::I1, .ToReg: 25U },
1348 { .FromReg: SP::I2, .ToReg: 26U },
1349 { .FromReg: SP::I3, .ToReg: 27U },
1350 { .FromReg: SP::I4, .ToReg: 28U },
1351 { .FromReg: SP::I5, .ToReg: 29U },
1352 { .FromReg: SP::I6, .ToReg: 30U },
1353 { .FromReg: SP::I7, .ToReg: 31U },
1354 { .FromReg: SP::L0, .ToReg: 16U },
1355 { .FromReg: SP::L1, .ToReg: 17U },
1356 { .FromReg: SP::L2, .ToReg: 18U },
1357 { .FromReg: SP::L3, .ToReg: 19U },
1358 { .FromReg: SP::L4, .ToReg: 20U },
1359 { .FromReg: SP::L5, .ToReg: 21U },
1360 { .FromReg: SP::L6, .ToReg: 22U },
1361 { .FromReg: SP::L7, .ToReg: 23U },
1362 { .FromReg: SP::O0, .ToReg: 8U },
1363 { .FromReg: SP::O1, .ToReg: 9U },
1364 { .FromReg: SP::O2, .ToReg: 10U },
1365 { .FromReg: SP::O3, .ToReg: 11U },
1366 { .FromReg: SP::O4, .ToReg: 12U },
1367 { .FromReg: SP::O5, .ToReg: 13U },
1368 { .FromReg: SP::O6, .ToReg: 14U },
1369 { .FromReg: SP::O7, .ToReg: 15U },
1370};
1371extern const unsigned SPEHFlavour0L2DwarfSize = std::size(SPEHFlavour0L2Dwarf);
1372
1373extern const uint16_t SparcRegEncodingTable[] = {
1374 0,
1375 11,
1376 10,
1377 12,
1378 0,
1379 0,
1380 9,
1381 0,
1382 0,
1383 16,
1384 0,
1385 13,
1386 8,
1387 0,
1388 6,
1389 5,
1390 0,
1391 4,
1392 7,
1393 1,
1394 0,
1395 2,
1396 3,
1397 31,
1398 0,
1399 14,
1400 0,
1401 1,
1402 2,
1403 3,
1404 4,
1405 5,
1406 6,
1407 7,
1408 8,
1409 9,
1410 10,
1411 11,
1412 12,
1413 13,
1414 14,
1415 15,
1416 16,
1417 17,
1418 18,
1419 19,
1420 20,
1421 21,
1422 22,
1423 23,
1424 24,
1425 25,
1426 26,
1427 27,
1428 28,
1429 29,
1430 30,
1431 31,
1432 0,
1433 1,
1434 2,
1435 3,
1436 4,
1437 5,
1438 6,
1439 7,
1440 8,
1441 9,
1442 10,
1443 11,
1444 12,
1445 13,
1446 14,
1447 15,
1448 16,
1449 17,
1450 18,
1451 19,
1452 20,
1453 21,
1454 22,
1455 23,
1456 24,
1457 25,
1458 26,
1459 27,
1460 28,
1461 29,
1462 30,
1463 31,
1464 0,
1465 2,
1466 4,
1467 6,
1468 8,
1469 10,
1470 12,
1471 14,
1472 16,
1473 18,
1474 20,
1475 22,
1476 24,
1477 26,
1478 28,
1479 30,
1480 1,
1481 3,
1482 5,
1483 7,
1484 9,
1485 11,
1486 13,
1487 15,
1488 17,
1489 19,
1490 21,
1491 23,
1492 25,
1493 27,
1494 29,
1495 31,
1496 0,
1497 1,
1498 2,
1499 3,
1500 4,
1501 5,
1502 6,
1503 7,
1504 8,
1505 9,
1506 10,
1507 11,
1508 12,
1509 13,
1510 14,
1511 15,
1512 16,
1513 17,
1514 18,
1515 19,
1516 20,
1517 21,
1518 22,
1519 23,
1520 24,
1521 25,
1522 26,
1523 27,
1524 28,
1525 29,
1526 30,
1527 31,
1528 0,
1529 1,
1530 2,
1531 3,
1532 0,
1533 1,
1534 2,
1535 3,
1536 4,
1537 5,
1538 6,
1539 7,
1540 24,
1541 25,
1542 26,
1543 27,
1544 28,
1545 29,
1546 30,
1547 31,
1548 16,
1549 17,
1550 18,
1551 19,
1552 20,
1553 21,
1554 22,
1555 23,
1556 8,
1557 9,
1558 10,
1559 11,
1560 12,
1561 13,
1562 14,
1563 15,
1564 0,
1565 4,
1566 8,
1567 12,
1568 16,
1569 20,
1570 24,
1571 28,
1572 1,
1573 5,
1574 9,
1575 13,
1576 17,
1577 21,
1578 25,
1579 29,
1580 0,
1581 2,
1582 4,
1583 6,
1584 8,
1585 10,
1586 12,
1587 14,
1588 16,
1589 18,
1590 20,
1591 22,
1592 24,
1593 26,
1594 28,
1595 30,
1596 0,
1597 2,
1598 4,
1599 6,
1600 24,
1601 26,
1602 28,
1603 30,
1604 16,
1605 18,
1606 20,
1607 22,
1608 8,
1609 10,
1610 12,
1611 14,
1612};
1613static inline void InitSparcMCRegisterInfo(MCRegisterInfo *RI, unsigned RA, unsigned DwarfFlavour = 0, unsigned EHFlavour = 0, unsigned PC = 0) {
1614 RI->InitMCRegisterInfo(D: SparcRegDesc, NR: 238, RA, PC, C: SparcMCRegisterClasses, NC: 20, RURoots: SparcRegUnitRoots, NRU: 173, DL: SparcRegDiffLists, RUMS: SparcLaneMaskLists, Strings: SparcRegStrings, ClassStrings: SparcRegClassStrings, SubIndices: SparcSubRegIdxLists, NumIndices: 7,
1615RET: SparcRegEncodingTable);
1616
1617 switch (DwarfFlavour) {
1618 default:
1619 llvm_unreachable("Unknown DWARF flavour");
1620 case 0:
1621 RI->mapDwarfRegsToLLVMRegs(Map: SPDwarfFlavour0Dwarf2L, Size: SPDwarfFlavour0Dwarf2LSize, isEH: false);
1622 break;
1623 }
1624 switch (EHFlavour) {
1625 default:
1626 llvm_unreachable("Unknown DWARF flavour");
1627 case 0:
1628 RI->mapDwarfRegsToLLVMRegs(Map: SPEHFlavour0Dwarf2L, Size: SPEHFlavour0Dwarf2LSize, isEH: true);
1629 break;
1630 }
1631 switch (DwarfFlavour) {
1632 default:
1633 llvm_unreachable("Unknown DWARF flavour");
1634 case 0:
1635 RI->mapLLVMRegsToDwarfRegs(Map: SPDwarfFlavour0L2Dwarf, Size: SPDwarfFlavour0L2DwarfSize, isEH: false);
1636 break;
1637 }
1638 switch (EHFlavour) {
1639 default:
1640 llvm_unreachable("Unknown DWARF flavour");
1641 case 0:
1642 RI->mapLLVMRegsToDwarfRegs(Map: SPEHFlavour0L2Dwarf, Size: SPEHFlavour0L2DwarfSize, isEH: true);
1643 break;
1644 }
1645}
1646
1647} // end namespace llvm
1648
1649