1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* Target Register Enum Values *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9namespace llvm {
10
11class MCRegisterClass;
12extern const MCRegisterClass RISCVMCRegisterClasses[];
13
14namespace RISCV {
15
16enum : unsigned {
17 NoRegister,
18 FCSR = 1,
19 FFLAGS = 2,
20 FRM = 3,
21 SF_VCIX_STATE = 4,
22 SSP = 5,
23 VL = 6,
24 VLENB = 7,
25 VTYPE = 8,
26 VXRM = 9,
27 VXSAT = 10,
28 DUMMY_REG_PAIR_WITH_X0 = 11,
29 M0 = 12,
30 M1 = 13,
31 M2 = 14,
32 M3 = 15,
33 M4 = 16,
34 M5 = 17,
35 M6 = 18,
36 M7 = 19,
37 T0 = 20,
38 T1 = 21,
39 T2 = 22,
40 T3 = 23,
41 T4 = 24,
42 T5 = 25,
43 T6 = 26,
44 T7 = 27,
45 T8 = 28,
46 T9 = 29,
47 T10 = 30,
48 T11 = 31,
49 T12 = 32,
50 T13 = 33,
51 T14 = 34,
52 T15 = 35,
53 V0 = 36,
54 V1 = 37,
55 V2 = 38,
56 V3 = 39,
57 V4 = 40,
58 V5 = 41,
59 V6 = 42,
60 V7 = 43,
61 V8 = 44,
62 V9 = 45,
63 V10 = 46,
64 V11 = 47,
65 V12 = 48,
66 V13 = 49,
67 V14 = 50,
68 V15 = 51,
69 V16 = 52,
70 V17 = 53,
71 V18 = 54,
72 V19 = 55,
73 V20 = 56,
74 V21 = 57,
75 V22 = 58,
76 V23 = 59,
77 V24 = 60,
78 V25 = 61,
79 V26 = 62,
80 V27 = 63,
81 V28 = 64,
82 V29 = 65,
83 V30 = 66,
84 V31 = 67,
85 X0 = 68,
86 X1 = 69,
87 X2 = 70,
88 X3 = 71,
89 X4 = 72,
90 X5 = 73,
91 X6 = 74,
92 X7 = 75,
93 X8 = 76,
94 X9 = 77,
95 X10 = 78,
96 X11 = 79,
97 X12 = 80,
98 X13 = 81,
99 X14 = 82,
100 X15 = 83,
101 X16 = 84,
102 X17 = 85,
103 X18 = 86,
104 X19 = 87,
105 X20 = 88,
106 X21 = 89,
107 X22 = 90,
108 X23 = 91,
109 X24 = 92,
110 X25 = 93,
111 X26 = 94,
112 X27 = 95,
113 X28 = 96,
114 X29 = 97,
115 X30 = 98,
116 X31 = 99,
117 F0_D = 100,
118 F1_D = 101,
119 F2_D = 102,
120 F3_D = 103,
121 F4_D = 104,
122 F5_D = 105,
123 F6_D = 106,
124 F7_D = 107,
125 F8_D = 108,
126 F9_D = 109,
127 F10_D = 110,
128 F11_D = 111,
129 F12_D = 112,
130 F13_D = 113,
131 F14_D = 114,
132 F15_D = 115,
133 F16_D = 116,
134 F17_D = 117,
135 F18_D = 118,
136 F19_D = 119,
137 F20_D = 120,
138 F21_D = 121,
139 F22_D = 122,
140 F23_D = 123,
141 F24_D = 124,
142 F25_D = 125,
143 F26_D = 126,
144 F27_D = 127,
145 F28_D = 128,
146 F29_D = 129,
147 F30_D = 130,
148 F31_D = 131,
149 F0_F = 132,
150 F1_F = 133,
151 F2_F = 134,
152 F3_F = 135,
153 F4_F = 136,
154 F5_F = 137,
155 F6_F = 138,
156 F7_F = 139,
157 F8_F = 140,
158 F9_F = 141,
159 F10_F = 142,
160 F11_F = 143,
161 F12_F = 144,
162 F13_F = 145,
163 F14_F = 146,
164 F15_F = 147,
165 F16_F = 148,
166 F17_F = 149,
167 F18_F = 150,
168 F19_F = 151,
169 F20_F = 152,
170 F21_F = 153,
171 F22_F = 154,
172 F23_F = 155,
173 F24_F = 156,
174 F25_F = 157,
175 F26_F = 158,
176 F27_F = 159,
177 F28_F = 160,
178 F29_F = 161,
179 F30_F = 162,
180 F31_F = 163,
181 F0_H = 164,
182 F1_H = 165,
183 F2_H = 166,
184 F3_H = 167,
185 F4_H = 168,
186 F5_H = 169,
187 F6_H = 170,
188 F7_H = 171,
189 F8_H = 172,
190 F9_H = 173,
191 F10_H = 174,
192 F11_H = 175,
193 F12_H = 176,
194 F13_H = 177,
195 F14_H = 178,
196 F15_H = 179,
197 F16_H = 180,
198 F17_H = 181,
199 F18_H = 182,
200 F19_H = 183,
201 F20_H = 184,
202 F21_H = 185,
203 F22_H = 186,
204 F23_H = 187,
205 F24_H = 188,
206 F25_H = 189,
207 F26_H = 190,
208 F27_H = 191,
209 F28_H = 192,
210 F29_H = 193,
211 F30_H = 194,
212 F31_H = 195,
213 F0_Q = 196,
214 F1_Q = 197,
215 F2_Q = 198,
216 F3_Q = 199,
217 F4_Q = 200,
218 F5_Q = 201,
219 F6_Q = 202,
220 F7_Q = 203,
221 F8_Q = 204,
222 F9_Q = 205,
223 F10_Q = 206,
224 F11_Q = 207,
225 F12_Q = 208,
226 F13_Q = 209,
227 F14_Q = 210,
228 F15_Q = 211,
229 F16_Q = 212,
230 F17_Q = 213,
231 F18_Q = 214,
232 F19_Q = 215,
233 F20_Q = 216,
234 F21_Q = 217,
235 F22_Q = 218,
236 F23_Q = 219,
237 F24_Q = 220,
238 F25_Q = 221,
239 F26_Q = 222,
240 F27_Q = 223,
241 F28_Q = 224,
242 F29_Q = 225,
243 F30_Q = 226,
244 F31_Q = 227,
245 X0_H = 228,
246 X1_H = 229,
247 X2_H = 230,
248 X3_H = 231,
249 X4_H = 232,
250 X5_H = 233,
251 X6_H = 234,
252 X7_H = 235,
253 X8_H = 236,
254 X9_H = 237,
255 X10_H = 238,
256 X11_H = 239,
257 X12_H = 240,
258 X13_H = 241,
259 X14_H = 242,
260 X15_H = 243,
261 X16_H = 244,
262 X17_H = 245,
263 X18_H = 246,
264 X19_H = 247,
265 X20_H = 248,
266 X21_H = 249,
267 X22_H = 250,
268 X23_H = 251,
269 X24_H = 252,
270 X25_H = 253,
271 X26_H = 254,
272 X27_H = 255,
273 X28_H = 256,
274 X29_H = 257,
275 X30_H = 258,
276 X31_H = 259,
277 X0_Pair = 260,
278 X0_W = 261,
279 X1_W = 262,
280 X2_W = 263,
281 X3_W = 264,
282 X4_W = 265,
283 X5_W = 266,
284 X6_W = 267,
285 X7_W = 268,
286 X8_W = 269,
287 X9_W = 270,
288 X10_W = 271,
289 X11_W = 272,
290 X12_W = 273,
291 X13_W = 274,
292 X14_W = 275,
293 X15_W = 276,
294 X16_W = 277,
295 X17_W = 278,
296 X18_W = 279,
297 X19_W = 280,
298 X20_W = 281,
299 X21_W = 282,
300 X22_W = 283,
301 X23_W = 284,
302 X24_W = 285,
303 X25_W = 286,
304 X26_W = 287,
305 X27_W = 288,
306 X28_W = 289,
307 X29_W = 290,
308 X30_W = 291,
309 X31_W = 292,
310 X0_Y = 293,
311 X1_Y = 294,
312 X2_Y = 295,
313 X3_Y = 296,
314 X4_Y = 297,
315 X5_Y = 298,
316 X6_Y = 299,
317 X7_Y = 300,
318 X8_Y = 301,
319 X9_Y = 302,
320 X10_Y = 303,
321 X11_Y = 304,
322 X12_Y = 305,
323 X13_Y = 306,
324 X14_Y = 307,
325 X15_Y = 308,
326 X16_Y = 309,
327 X17_Y = 310,
328 X18_Y = 311,
329 X19_Y = 312,
330 X20_Y = 313,
331 X21_Y = 314,
332 X22_Y = 315,
333 X23_Y = 316,
334 X24_Y = 317,
335 X25_Y = 318,
336 X26_Y = 319,
337 X27_Y = 320,
338 X28_Y = 321,
339 X29_Y = 322,
340 X30_Y = 323,
341 X31_Y = 324,
342 F0_Q2 = 325,
343 F1_Q2 = 326,
344 F2_Q2 = 327,
345 F3_Q2 = 328,
346 F4_Q2 = 329,
347 F5_Q2 = 330,
348 F6_Q2 = 331,
349 F7_Q2 = 332,
350 F8_Q2 = 333,
351 F9_Q2 = 334,
352 F10_Q2 = 335,
353 F11_Q2 = 336,
354 F12_Q2 = 337,
355 F13_Q2 = 338,
356 F14_Q2 = 339,
357 F15_Q2 = 340,
358 F16_Q2 = 341,
359 F17_Q2 = 342,
360 F18_Q2 = 343,
361 F19_Q2 = 344,
362 F20_Q2 = 345,
363 F21_Q2 = 346,
364 F22_Q2 = 347,
365 F23_Q2 = 348,
366 F24_Q2 = 349,
367 F25_Q2 = 350,
368 F26_Q2 = 351,
369 F27_Q2 = 352,
370 F28_Q2 = 353,
371 F29_Q2 = 354,
372 F30_Q2 = 355,
373 F31_Q2 = 356,
374 V0M2 = 357,
375 V0M4 = 358,
376 V0M8 = 359,
377 V2M2 = 360,
378 V4M2 = 361,
379 V4M4 = 362,
380 V6M2 = 363,
381 V8M2 = 364,
382 V8M4 = 365,
383 V8M8 = 366,
384 V10M2 = 367,
385 V12M2 = 368,
386 V12M4 = 369,
387 V14M2 = 370,
388 V16M2 = 371,
389 V16M4 = 372,
390 V16M8 = 373,
391 V18M2 = 374,
392 V20M2 = 375,
393 V20M4 = 376,
394 V22M2 = 377,
395 V24M2 = 378,
396 V24M4 = 379,
397 V24M8 = 380,
398 V26M2 = 381,
399 V28M2 = 382,
400 V28M4 = 383,
401 V30M2 = 384,
402 X2_X3 = 385,
403 X4_X5 = 386,
404 X6_X7 = 387,
405 X8_X9 = 388,
406 X10_X11 = 389,
407 X12_X13 = 390,
408 X14_X15 = 391,
409 X16_X17 = 392,
410 X18_X19 = 393,
411 X20_X21 = 394,
412 X22_X23 = 395,
413 X24_X25 = 396,
414 X26_X27 = 397,
415 X28_X29 = 398,
416 X30_X31 = 399,
417 V1_V2 = 400,
418 V2_V3 = 401,
419 V3_V4 = 402,
420 V4_V5 = 403,
421 V5_V6 = 404,
422 V6_V7 = 405,
423 V7_V8 = 406,
424 V8_V9 = 407,
425 V9_V10 = 408,
426 V10_V11 = 409,
427 V11_V12 = 410,
428 V12_V13 = 411,
429 V13_V14 = 412,
430 V14_V15 = 413,
431 V15_V16 = 414,
432 V16_V17 = 415,
433 V17_V18 = 416,
434 V18_V19 = 417,
435 V19_V20 = 418,
436 V20_V21 = 419,
437 V21_V22 = 420,
438 V22_V23 = 421,
439 V23_V24 = 422,
440 V24_V25 = 423,
441 V25_V26 = 424,
442 V26_V27 = 425,
443 V27_V28 = 426,
444 V28_V29 = 427,
445 V29_V30 = 428,
446 V30_V31 = 429,
447 V0_V1 = 430,
448 V2M2_V4M2 = 431,
449 V4M2_V6M2 = 432,
450 V6M2_V8M2 = 433,
451 V8M2_V10M2 = 434,
452 V10M2_V12M2 = 435,
453 V12M2_V14M2 = 436,
454 V14M2_V16M2 = 437,
455 V16M2_V18M2 = 438,
456 V18M2_V20M2 = 439,
457 V20M2_V22M2 = 440,
458 V22M2_V24M2 = 441,
459 V24M2_V26M2 = 442,
460 V26M2_V28M2 = 443,
461 V28M2_V30M2 = 444,
462 V0M2_V2M2 = 445,
463 V4M4_V8M4 = 446,
464 V8M4_V12M4 = 447,
465 V12M4_V16M4 = 448,
466 V16M4_V20M4 = 449,
467 V20M4_V24M4 = 450,
468 V24M4_V28M4 = 451,
469 V0M4_V4M4 = 452,
470 V1_V2_V3 = 453,
471 V2_V3_V4 = 454,
472 V3_V4_V5 = 455,
473 V4_V5_V6 = 456,
474 V5_V6_V7 = 457,
475 V6_V7_V8 = 458,
476 V7_V8_V9 = 459,
477 V8_V9_V10 = 460,
478 V9_V10_V11 = 461,
479 V10_V11_V12 = 462,
480 V11_V12_V13 = 463,
481 V12_V13_V14 = 464,
482 V13_V14_V15 = 465,
483 V14_V15_V16 = 466,
484 V15_V16_V17 = 467,
485 V16_V17_V18 = 468,
486 V17_V18_V19 = 469,
487 V18_V19_V20 = 470,
488 V19_V20_V21 = 471,
489 V20_V21_V22 = 472,
490 V21_V22_V23 = 473,
491 V22_V23_V24 = 474,
492 V23_V24_V25 = 475,
493 V24_V25_V26 = 476,
494 V25_V26_V27 = 477,
495 V26_V27_V28 = 478,
496 V27_V28_V29 = 479,
497 V28_V29_V30 = 480,
498 V29_V30_V31 = 481,
499 V0_V1_V2 = 482,
500 V2M2_V4M2_V6M2 = 483,
501 V4M2_V6M2_V8M2 = 484,
502 V6M2_V8M2_V10M2 = 485,
503 V8M2_V10M2_V12M2 = 486,
504 V10M2_V12M2_V14M2 = 487,
505 V12M2_V14M2_V16M2 = 488,
506 V14M2_V16M2_V18M2 = 489,
507 V16M2_V18M2_V20M2 = 490,
508 V18M2_V20M2_V22M2 = 491,
509 V20M2_V22M2_V24M2 = 492,
510 V22M2_V24M2_V26M2 = 493,
511 V24M2_V26M2_V28M2 = 494,
512 V26M2_V28M2_V30M2 = 495,
513 V0M2_V2M2_V4M2 = 496,
514 V1_V2_V3_V4 = 497,
515 V2_V3_V4_V5 = 498,
516 V3_V4_V5_V6 = 499,
517 V4_V5_V6_V7 = 500,
518 V5_V6_V7_V8 = 501,
519 V6_V7_V8_V9 = 502,
520 V7_V8_V9_V10 = 503,
521 V8_V9_V10_V11 = 504,
522 V9_V10_V11_V12 = 505,
523 V10_V11_V12_V13 = 506,
524 V11_V12_V13_V14 = 507,
525 V12_V13_V14_V15 = 508,
526 V13_V14_V15_V16 = 509,
527 V14_V15_V16_V17 = 510,
528 V15_V16_V17_V18 = 511,
529 V16_V17_V18_V19 = 512,
530 V17_V18_V19_V20 = 513,
531 V18_V19_V20_V21 = 514,
532 V19_V20_V21_V22 = 515,
533 V20_V21_V22_V23 = 516,
534 V21_V22_V23_V24 = 517,
535 V22_V23_V24_V25 = 518,
536 V23_V24_V25_V26 = 519,
537 V24_V25_V26_V27 = 520,
538 V25_V26_V27_V28 = 521,
539 V26_V27_V28_V29 = 522,
540 V27_V28_V29_V30 = 523,
541 V28_V29_V30_V31 = 524,
542 V0_V1_V2_V3 = 525,
543 V2M2_V4M2_V6M2_V8M2 = 526,
544 V4M2_V6M2_V8M2_V10M2 = 527,
545 V6M2_V8M2_V10M2_V12M2 = 528,
546 V8M2_V10M2_V12M2_V14M2 = 529,
547 V10M2_V12M2_V14M2_V16M2 = 530,
548 V12M2_V14M2_V16M2_V18M2 = 531,
549 V14M2_V16M2_V18M2_V20M2 = 532,
550 V16M2_V18M2_V20M2_V22M2 = 533,
551 V18M2_V20M2_V22M2_V24M2 = 534,
552 V20M2_V22M2_V24M2_V26M2 = 535,
553 V22M2_V24M2_V26M2_V28M2 = 536,
554 V24M2_V26M2_V28M2_V30M2 = 537,
555 V0M2_V2M2_V4M2_V6M2 = 538,
556 V1_V2_V3_V4_V5 = 539,
557 V2_V3_V4_V5_V6 = 540,
558 V3_V4_V5_V6_V7 = 541,
559 V4_V5_V6_V7_V8 = 542,
560 V5_V6_V7_V8_V9 = 543,
561 V6_V7_V8_V9_V10 = 544,
562 V7_V8_V9_V10_V11 = 545,
563 V8_V9_V10_V11_V12 = 546,
564 V9_V10_V11_V12_V13 = 547,
565 V10_V11_V12_V13_V14 = 548,
566 V11_V12_V13_V14_V15 = 549,
567 V12_V13_V14_V15_V16 = 550,
568 V13_V14_V15_V16_V17 = 551,
569 V14_V15_V16_V17_V18 = 552,
570 V15_V16_V17_V18_V19 = 553,
571 V16_V17_V18_V19_V20 = 554,
572 V17_V18_V19_V20_V21 = 555,
573 V18_V19_V20_V21_V22 = 556,
574 V19_V20_V21_V22_V23 = 557,
575 V20_V21_V22_V23_V24 = 558,
576 V21_V22_V23_V24_V25 = 559,
577 V22_V23_V24_V25_V26 = 560,
578 V23_V24_V25_V26_V27 = 561,
579 V24_V25_V26_V27_V28 = 562,
580 V25_V26_V27_V28_V29 = 563,
581 V26_V27_V28_V29_V30 = 564,
582 V27_V28_V29_V30_V31 = 565,
583 V0_V1_V2_V3_V4 = 566,
584 V1_V2_V3_V4_V5_V6 = 567,
585 V2_V3_V4_V5_V6_V7 = 568,
586 V3_V4_V5_V6_V7_V8 = 569,
587 V4_V5_V6_V7_V8_V9 = 570,
588 V5_V6_V7_V8_V9_V10 = 571,
589 V6_V7_V8_V9_V10_V11 = 572,
590 V7_V8_V9_V10_V11_V12 = 573,
591 V8_V9_V10_V11_V12_V13 = 574,
592 V9_V10_V11_V12_V13_V14 = 575,
593 V10_V11_V12_V13_V14_V15 = 576,
594 V11_V12_V13_V14_V15_V16 = 577,
595 V12_V13_V14_V15_V16_V17 = 578,
596 V13_V14_V15_V16_V17_V18 = 579,
597 V14_V15_V16_V17_V18_V19 = 580,
598 V15_V16_V17_V18_V19_V20 = 581,
599 V16_V17_V18_V19_V20_V21 = 582,
600 V17_V18_V19_V20_V21_V22 = 583,
601 V18_V19_V20_V21_V22_V23 = 584,
602 V19_V20_V21_V22_V23_V24 = 585,
603 V20_V21_V22_V23_V24_V25 = 586,
604 V21_V22_V23_V24_V25_V26 = 587,
605 V22_V23_V24_V25_V26_V27 = 588,
606 V23_V24_V25_V26_V27_V28 = 589,
607 V24_V25_V26_V27_V28_V29 = 590,
608 V25_V26_V27_V28_V29_V30 = 591,
609 V26_V27_V28_V29_V30_V31 = 592,
610 V0_V1_V2_V3_V4_V5 = 593,
611 V1_V2_V3_V4_V5_V6_V7 = 594,
612 V2_V3_V4_V5_V6_V7_V8 = 595,
613 V3_V4_V5_V6_V7_V8_V9 = 596,
614 V4_V5_V6_V7_V8_V9_V10 = 597,
615 V5_V6_V7_V8_V9_V10_V11 = 598,
616 V6_V7_V8_V9_V10_V11_V12 = 599,
617 V7_V8_V9_V10_V11_V12_V13 = 600,
618 V8_V9_V10_V11_V12_V13_V14 = 601,
619 V9_V10_V11_V12_V13_V14_V15 = 602,
620 V10_V11_V12_V13_V14_V15_V16 = 603,
621 V11_V12_V13_V14_V15_V16_V17 = 604,
622 V12_V13_V14_V15_V16_V17_V18 = 605,
623 V13_V14_V15_V16_V17_V18_V19 = 606,
624 V14_V15_V16_V17_V18_V19_V20 = 607,
625 V15_V16_V17_V18_V19_V20_V21 = 608,
626 V16_V17_V18_V19_V20_V21_V22 = 609,
627 V17_V18_V19_V20_V21_V22_V23 = 610,
628 V18_V19_V20_V21_V22_V23_V24 = 611,
629 V19_V20_V21_V22_V23_V24_V25 = 612,
630 V20_V21_V22_V23_V24_V25_V26 = 613,
631 V21_V22_V23_V24_V25_V26_V27 = 614,
632 V22_V23_V24_V25_V26_V27_V28 = 615,
633 V23_V24_V25_V26_V27_V28_V29 = 616,
634 V24_V25_V26_V27_V28_V29_V30 = 617,
635 V25_V26_V27_V28_V29_V30_V31 = 618,
636 V0_V1_V2_V3_V4_V5_V6 = 619,
637 V1_V2_V3_V4_V5_V6_V7_V8 = 620,
638 V2_V3_V4_V5_V6_V7_V8_V9 = 621,
639 V3_V4_V5_V6_V7_V8_V9_V10 = 622,
640 V4_V5_V6_V7_V8_V9_V10_V11 = 623,
641 V5_V6_V7_V8_V9_V10_V11_V12 = 624,
642 V6_V7_V8_V9_V10_V11_V12_V13 = 625,
643 V7_V8_V9_V10_V11_V12_V13_V14 = 626,
644 V8_V9_V10_V11_V12_V13_V14_V15 = 627,
645 V9_V10_V11_V12_V13_V14_V15_V16 = 628,
646 V10_V11_V12_V13_V14_V15_V16_V17 = 629,
647 V11_V12_V13_V14_V15_V16_V17_V18 = 630,
648 V12_V13_V14_V15_V16_V17_V18_V19 = 631,
649 V13_V14_V15_V16_V17_V18_V19_V20 = 632,
650 V14_V15_V16_V17_V18_V19_V20_V21 = 633,
651 V15_V16_V17_V18_V19_V20_V21_V22 = 634,
652 V16_V17_V18_V19_V20_V21_V22_V23 = 635,
653 V17_V18_V19_V20_V21_V22_V23_V24 = 636,
654 V18_V19_V20_V21_V22_V23_V24_V25 = 637,
655 V19_V20_V21_V22_V23_V24_V25_V26 = 638,
656 V20_V21_V22_V23_V24_V25_V26_V27 = 639,
657 V21_V22_V23_V24_V25_V26_V27_V28 = 640,
658 V22_V23_V24_V25_V26_V27_V28_V29 = 641,
659 V23_V24_V25_V26_V27_V28_V29_V30 = 642,
660 V24_V25_V26_V27_V28_V29_V30_V31 = 643,
661 V0_V1_V2_V3_V4_V5_V6_V7 = 644,
662 NUM_TARGET_REGS // 645
663};
664
665} // namespace RISCV
666
667// Register classes
668
669namespace RISCV {
670
671enum {
672 MRRegClassID = 0,
673 MR0RegClassID = 1,
674 FPR16RegClassID = 2,
675 GPRF16RegClassID = 3,
676 GPRF16NoX0RegClassID = 4,
677 FPR16CRegClassID = 5,
678 GPRF16CRegClassID = 6,
679 GPRAllRegClassID = 7,
680 FPR32RegClassID = 8,
681 GPRRegClassID = 9,
682 GPRF32RegClassID = 10,
683 GPRF32NoX0RegClassID = 11,
684 GPRNoX0RegClassID = 12,
685 GPRNoX2RegClassID = 13,
686 GPRNoX31RegClassID = 14,
687 GPRNoX0X2RegClassID = 15,
688 GPRNoX0_and_GPRNoX31RegClassID = 16,
689 GPRNoX2_and_GPRNoX31RegClassID = 17,
690 GPRNoX0X2_and_GPRNoX31RegClassID = 18,
691 GPRJALRRegClassID = 19,
692 GPRJALRNonX7RegClassID = 20,
693 GPRJALR_and_GPRNoX31RegClassID = 21,
694 GPRJALRNonX7_and_GPRNoX31RegClassID = 22,
695 TRRegClassID = 23,
696 GPRTCRegClassID = 24,
697 GPRNoX31_and_GPRTCRegClassID = 25,
698 GPRTCNonX7RegClassID = 26,
699 GPRNoX31_and_GPRTCNonX7RegClassID = 27,
700 FPR32CRegClassID = 28,
701 GPRCRegClassID = 29,
702 GPRF32CRegClassID = 30,
703 SR07RegClassID = 31,
704 TRM2RegClassID = 32,
705 GPRC_and_GPRTCRegClassID = 33,
706 TRM4RegClassID = 34,
707 VCSRRegClassID = 35,
708 GPRC_and_SR07RegClassID = 36,
709 GPRX1X5RegClassID = 37,
710 GPRX0RegClassID = 38,
711 GPRX1RegClassID = 39,
712 GPRX5RegClassID = 40,
713 GPRX7RegClassID = 41,
714 SPRegClassID = 42,
715 anonymous_15402RegClassID = 43,
716 GPRPairRegClassID = 44,
717 GPRPairNoX0RegClassID = 45,
718 GPRPair_with_sub_gpr_even_in_GPRNoX2RegClassID = 46,
719 GPRPair_with_sub_gpr_even_in_GPRNoX0X2RegClassID = 47,
720 GPRPair_with_sub_gpr_odd_in_GPRNoX31RegClassID = 48,
721 GPRPair_with_sub_gpr_even_in_GPRJALRRegClassID = 49,
722 GPRPair_with_sub_gpr_even_in_GPRNoX0X2_and_GPRPair_with_sub_gpr_odd_in_GPRNoX31RegClassID = 50,
723 GPRPair_with_sub_gpr_odd_in_GPRJALRNonX7RegClassID = 51,
724 GPRPair_with_sub_gpr_odd_in_GPRJALR_and_GPRNoX31RegClassID = 52,
725 GPRPair_with_sub_gpr_odd_in_GPRJALRNonX7_and_GPRNoX31RegClassID = 53,
726 GPRPair_with_sub_gpr_even_in_GPRTCRegClassID = 54,
727 GPRPair_with_sub_gpr_odd_in_GPRNoX31_and_GPRTCRegClassID = 55,
728 GPRPair_with_sub_gpr_odd_in_GPRTCNonX7RegClassID = 56,
729 GPRPair_with_sub_gpr_odd_in_GPRNoX31_and_GPRTCNonX7RegClassID = 57,
730 GPRPairCRegClassID = 58,
731 GPRPair_with_sub_gpr_even_in_SR07RegClassID = 59,
732 GPRPair_with_sub_gpr_even_in_GPRC_and_GPRTCRegClassID = 60,
733 GPRPair_with_sub_gpr_even_in_GPRC_and_SR07RegClassID = 61,
734 GPRPair_with_sub_gpr_even_in_GPRX0RegClassID = 62,
735 GPRPair_with_sub_gpr_even_in_SPRegClassID = 63,
736 GPRPair_with_sub_gpr_odd_in_GPRX1X5RegClassID = 64,
737 GPRPair_with_sub_gpr_odd_in_GPRX7RegClassID = 65,
738 FPR64RegClassID = 66,
739 VRRegClassID = 67,
740 YGPRRegClassID = 68,
741 ZZZ_VMRegClassID = 69,
742 ZZZ_VRMF2RegClassID = 70,
743 ZZZ_VRMF4RegClassID = 71,
744 ZZZ_VRMF8RegClassID = 72,
745 VRNoV0RegClassID = 73,
746 YGPR_with_sub_16_in_GPRF16NoX0RegClassID = 74,
747 YGPR_with_sub_cap_addr_in_GPRNoX2RegClassID = 75,
748 YGPR_with_sub_cap_addr_in_GPRNoX31RegClassID = 76,
749 ZZZ_VMNoV0RegClassID = 77,
750 ZZZ_VRMF2NoV0RegClassID = 78,
751 ZZZ_VRMF4NoV0RegClassID = 79,
752 ZZZ_VRMF8NoV0RegClassID = 80,
753 YGPR_with_sub_cap_addr_in_GPRNoX0X2RegClassID = 81,
754 YGPR_with_sub_cap_addr_in_GPRNoX0_and_GPRNoX31RegClassID = 82,
755 YGPR_with_sub_cap_addr_in_GPRNoX2_and_GPRNoX31RegClassID = 83,
756 YGPR_with_sub_cap_addr_in_GPRNoX0X2_and_GPRNoX31RegClassID = 84,
757 YGPR_with_sub_cap_addr_in_GPRJALRRegClassID = 85,
758 YGPR_with_sub_cap_addr_in_GPRJALRNonX7RegClassID = 86,
759 YGPR_with_sub_cap_addr_in_GPRJALR_and_GPRNoX31RegClassID = 87,
760 YGPR_with_sub_cap_addr_in_GPRJALRNonX7_and_GPRNoX31RegClassID = 88,
761 YGPR_with_sub_cap_addr_in_GPRTCRegClassID = 89,
762 YGPR_with_sub_cap_addr_in_GPRNoX31_and_GPRTCRegClassID = 90,
763 YGPR_with_sub_cap_addr_in_GPRTCNonX7RegClassID = 91,
764 YGPR_with_sub_cap_addr_in_GPRNoX31_and_GPRTCNonX7RegClassID = 92,
765 FPR64CRegClassID = 93,
766 YGPR_with_sub_16_in_GPRF16CRegClassID = 94,
767 YGPR_with_sub_cap_addr_in_SR07RegClassID = 95,
768 YGPR_with_sub_cap_addr_in_GPRC_and_GPRTCRegClassID = 96,
769 YGPR_with_sub_cap_addr_in_GPRC_and_SR07RegClassID = 97,
770 YGPR_with_sub_cap_addr_in_GPRX1X5RegClassID = 98,
771 VMV0RegClassID = 99,
772 YGPR_with_sub_cap_addr_in_GPRX0RegClassID = 100,
773 YGPR_with_sub_cap_addr_in_GPRX1RegClassID = 101,
774 YGPR_with_sub_cap_addr_in_GPRX5RegClassID = 102,
775 YGPR_with_sub_cap_addr_in_GPRX7RegClassID = 103,
776 YGPR_with_sub_cap_addr_in_SPRegClassID = 104,
777 VRN2M1RegClassID = 105,
778 VRN2M1NoV0RegClassID = 106,
779 VRM2RegClassID = 107,
780 VRM2NoV0RegClassID = 108,
781 VRM2_with_sub_vrm1_0_in_VMV0RegClassID = 109,
782 VRN2M1_with_sub_vrm1_0_in_VMV0RegClassID = 110,
783 FPR128RegClassID = 111,
784 FPR128_with_sub_16_in_FPR16CRegClassID = 112,
785 VRN3M1RegClassID = 113,
786 VRN3M1NoV0RegClassID = 114,
787 VRN3M1_with_sub_vrm1_0_in_VMV0RegClassID = 115,
788 VRN4M1RegClassID = 116,
789 VRN4M1NoV0RegClassID = 117,
790 VRN2M2RegClassID = 118,
791 VRN2M2NoV0RegClassID = 119,
792 VRM4RegClassID = 120,
793 VRM4NoV0RegClassID = 121,
794 VRM4_with_sub_vrm1_0_in_VMV0RegClassID = 122,
795 VRN2M2_with_sub_vrm2_0_in_VRM2_with_sub_vrm1_0_in_VMV0RegClassID = 123,
796 VRN4M1_with_sub_vrm1_0_in_VMV0RegClassID = 124,
797 FPR256RegClassID = 125,
798 FPR256_with_sub_16_in_FPR16CRegClassID = 126,
799 VRN5M1RegClassID = 127,
800 VRN5M1NoV0RegClassID = 128,
801 VRN5M1_with_sub_vrm1_0_in_VMV0RegClassID = 129,
802 VRN6M1RegClassID = 130,
803 VRN6M1NoV0RegClassID = 131,
804 VRN3M2RegClassID = 132,
805 VRN3M2NoV0RegClassID = 133,
806 VRN3M2_with_sub_vrm2_0_in_VRM2_with_sub_vrm1_0_in_VMV0RegClassID = 134,
807 VRN6M1_with_sub_vrm1_0_in_VMV0RegClassID = 135,
808 VRN7M1RegClassID = 136,
809 VRN7M1NoV0RegClassID = 137,
810 VRN7M1_with_sub_vrm1_0_in_VMV0RegClassID = 138,
811 VRN8M1RegClassID = 139,
812 VRN8M1NoV0RegClassID = 140,
813 VRN4M2RegClassID = 141,
814 VRN4M2NoV0RegClassID = 142,
815 VRN2M4RegClassID = 143,
816 VRN2M4NoV0RegClassID = 144,
817 VRM8RegClassID = 145,
818 VRM8NoV0RegClassID = 146,
819 VRM8_with_sub_vrm4_0_in_VRM4_with_sub_vrm1_0_in_VMV0RegClassID = 147,
820 VRN2M4_with_sub_vrm4_0_in_VRM4_with_sub_vrm1_0_in_VMV0RegClassID = 148,
821 VRN4M2_with_sub_vrm2_0_in_VRM2_with_sub_vrm1_0_in_VMV0RegClassID = 149,
822 VRN8M1_with_sub_vrm1_0_in_VMV0RegClassID = 150,
823
824};
825
826} // namespace RISCV
827
828// Register alternate name indices
829
830namespace RISCV {
831
832enum {
833 ABIRegAltName, // 0
834 NoRegAltName, // 1
835 NUM_TARGET_REG_ALT_NAMES = 2
836};
837
838} // namespace RISCV
839
840// Subregister indices
841
842namespace RISCV {
843
844enum : uint16_t {
845 NoSubRegister,
846 sub_16, // 1
847 sub_32, // 2
848 sub_64, // 3
849 sub_128, // 4
850 sub_cap_addr, // 5
851 sub_gpr_even, // 6
852 sub_gpr_odd, // 7
853 sub_vrm1_0, // 8
854 sub_vrm1_1, // 9
855 sub_vrm1_2, // 10
856 sub_vrm1_3, // 11
857 sub_vrm1_4, // 12
858 sub_vrm1_5, // 13
859 sub_vrm1_6, // 14
860 sub_vrm1_7, // 15
861 sub_vrm2_0, // 16
862 sub_vrm2_1, // 17
863 sub_vrm2_2, // 18
864 sub_vrm2_3, // 19
865 sub_vrm4_0, // 20
866 sub_vrm4_1, // 21
867 sub_gpr_odd_then_sub_16, // 22
868 sub_gpr_odd_then_sub_32, // 23
869 sub_vrm1_0_sub_vrm1_1, // 24
870 sub_vrm1_0_sub_vrm1_1_sub_vrm1_2, // 25
871 sub_vrm1_0_sub_vrm1_1_sub_vrm1_2_sub_vrm1_3, // 26
872 sub_vrm1_1_sub_vrm1_2, // 27
873 sub_vrm1_1_sub_vrm1_2_sub_vrm1_3, // 28
874 sub_vrm1_2_sub_vrm1_3, // 29
875 sub_vrm1_0_sub_vrm1_1_sub_vrm1_2_sub_vrm1_3_sub_vrm1_4, // 30
876 sub_vrm1_0_sub_vrm1_1_sub_vrm1_2_sub_vrm1_3_sub_vrm1_4_sub_vrm1_5, // 31
877 sub_vrm1_0_sub_vrm1_1_sub_vrm1_2_sub_vrm1_3_sub_vrm1_4_sub_vrm1_5_sub_vrm1_6, // 32
878 sub_vrm1_0_sub_vrm1_1_sub_vrm1_2_sub_vrm1_3_sub_vrm1_4_sub_vrm1_5_sub_vrm1_6_sub_vrm1_7, // 33
879 sub_vrm1_1_sub_vrm1_2_sub_vrm1_3_sub_vrm1_4, // 34
880 sub_vrm1_1_sub_vrm1_2_sub_vrm1_3_sub_vrm1_4_sub_vrm1_5, // 35
881 sub_vrm1_1_sub_vrm1_2_sub_vrm1_3_sub_vrm1_4_sub_vrm1_5_sub_vrm1_6, // 36
882 sub_vrm1_1_sub_vrm1_2_sub_vrm1_3_sub_vrm1_4_sub_vrm1_5_sub_vrm1_6_sub_vrm1_7, // 37
883 sub_vrm1_2_sub_vrm1_3_sub_vrm1_4, // 38
884 sub_vrm1_2_sub_vrm1_3_sub_vrm1_4_sub_vrm1_5, // 39
885 sub_vrm1_2_sub_vrm1_3_sub_vrm1_4_sub_vrm1_5_sub_vrm1_6, // 40
886 sub_vrm1_2_sub_vrm1_3_sub_vrm1_4_sub_vrm1_5_sub_vrm1_6_sub_vrm1_7, // 41
887 sub_vrm1_3_sub_vrm1_4, // 42
888 sub_vrm1_3_sub_vrm1_4_sub_vrm1_5, // 43
889 sub_vrm1_3_sub_vrm1_4_sub_vrm1_5_sub_vrm1_6, // 44
890 sub_vrm1_3_sub_vrm1_4_sub_vrm1_5_sub_vrm1_6_sub_vrm1_7, // 45
891 sub_vrm1_4_sub_vrm1_5, // 46
892 sub_vrm1_4_sub_vrm1_5_sub_vrm1_6, // 47
893 sub_vrm1_4_sub_vrm1_5_sub_vrm1_6_sub_vrm1_7, // 48
894 sub_vrm1_5_sub_vrm1_6, // 49
895 sub_vrm1_5_sub_vrm1_6_sub_vrm1_7, // 50
896 sub_vrm1_6_sub_vrm1_7, // 51
897 sub_vrm2_0_sub_vrm2_1, // 52
898 sub_vrm2_0_sub_vrm2_1_sub_vrm2_2, // 53
899 sub_vrm2_0_sub_vrm2_1_sub_vrm2_2_sub_vrm2_3, // 54
900 sub_vrm2_1_sub_vrm2_2, // 55
901 sub_vrm2_1_sub_vrm2_2_sub_vrm2_3, // 56
902 sub_vrm2_2_sub_vrm2_3, // 57
903 NUM_TARGET_SUBREGS
904};
905
906} // namespace RISCV
907// Register pressure sets enum.
908namespace RISCV {
909
910enum RegisterPressureSets {
911 MR0 = 0,
912 GPRC_and_SR07 = 1,
913 GPRX0 = 2,
914 SP = 3,
915 GPRX7 = 4,
916 GPRX1 = 5,
917 TRM4 = 6,
918 MR = 7,
919 FPR16C = 8,
920 GPRF16C = 9,
921 SR07 = 10,
922 TRM2 = 11,
923 VMV0 = 12,
924 GPRF16C_with_SR07 = 13,
925 TR = 14,
926 GPRTC = 15,
927 VRM8NoV0 = 16,
928 FPR16 = 17,
929 VR = 18,
930 GPRAll = 19,
931};
932
933} // namespace RISCV
934
935} // namespace llvm
936