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