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 NVPTXRegDiffLists[] = {
12 /* 0 */ 0,
13};
14
15extern const LaneBitmask NVPTXLaneMaskLists[] = {
16 /* 0 */ LaneBitmask(0xFFFFFFFFFFFFFFFF),
17};
18
19extern const uint16_t NVPTXSubRegIdxLists[] = {
20 /* 0 */
21 /* dummy */ 0
22};
23
24
25#ifdef __GNUC__
26#pragma GCC diagnostic push
27#pragma GCC diagnostic ignored "-Woverlength-strings"
28#endif
29extern const char NVPTXRegStrings[] = {
30 /* 0 */ "ENVREG10\000"
31 /* 9 */ "ENVREG20\000"
32 /* 18 */ "ENVREG30\000"
33 /* 27 */ "ENVREG0\000"
34 /* 35 */ "RL0\000"
35 /* 39 */ "P0\000"
36 /* 42 */ "RQ0\000"
37 /* 46 */ "R0\000"
38 /* 49 */ "RS0\000"
39 /* 53 */ "ENVREG11\000"
40 /* 62 */ "ENVREG21\000"
41 /* 71 */ "ENVREG31\000"
42 /* 80 */ "ENVREG1\000"
43 /* 88 */ "RL1\000"
44 /* 92 */ "P1\000"
45 /* 95 */ "RQ1\000"
46 /* 99 */ "R1\000"
47 /* 102 */ "RS1\000"
48 /* 106 */ "ENVREG12\000"
49 /* 115 */ "ENVREG22\000"
50 /* 124 */ "VRFrame32\000"
51 /* 134 */ "VRFrameLocal32\000"
52 /* 149 */ "ENVREG2\000"
53 /* 157 */ "RL2\000"
54 /* 161 */ "P2\000"
55 /* 164 */ "RQ2\000"
56 /* 168 */ "R2\000"
57 /* 171 */ "RS2\000"
58 /* 175 */ "ENVREG13\000"
59 /* 184 */ "ENVREG23\000"
60 /* 193 */ "ENVREG3\000"
61 /* 201 */ "RL3\000"
62 /* 205 */ "P3\000"
63 /* 208 */ "RQ3\000"
64 /* 212 */ "R3\000"
65 /* 215 */ "RS3\000"
66 /* 219 */ "ENVREG14\000"
67 /* 228 */ "ENVREG24\000"
68 /* 237 */ "VRFrame64\000"
69 /* 247 */ "VRFrameLocal64\000"
70 /* 262 */ "ENVREG4\000"
71 /* 270 */ "RL4\000"
72 /* 274 */ "P4\000"
73 /* 277 */ "RQ4\000"
74 /* 281 */ "R4\000"
75 /* 284 */ "RS4\000"
76 /* 288 */ "ENVREG15\000"
77 /* 297 */ "ENVREG25\000"
78 /* 306 */ "ENVREG5\000"
79 /* 314 */ "ENVREG16\000"
80 /* 323 */ "ENVREG26\000"
81 /* 332 */ "ENVREG6\000"
82 /* 340 */ "ENVREG17\000"
83 /* 349 */ "ENVREG27\000"
84 /* 358 */ "ENVREG7\000"
85 /* 366 */ "ENVREG18\000"
86 /* 375 */ "ENVREG28\000"
87 /* 384 */ "ENVREG8\000"
88 /* 392 */ "ENVREG19\000"
89 /* 401 */ "ENVREG29\000"
90 /* 410 */ "ENVREG9\000"
91 /* 418 */ "VRDepot\000"
92};
93#ifdef __GNUC__
94#pragma GCC diagnostic pop
95#endif
96
97extern const MCRegisterDesc NVPTXRegDesc[] = { // Descriptors
98 { .Name: 8, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 0, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
99 { .Name: 418, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 0, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
100 { .Name: 27, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 1, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
101 { .Name: 80, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 2, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
102 { .Name: 149, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 3, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
103 { .Name: 193, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 4, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
104 { .Name: 262, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 5, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
105 { .Name: 306, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 6, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
106 { .Name: 332, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 7, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
107 { .Name: 358, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 8, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
108 { .Name: 384, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 9, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
109 { .Name: 410, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 10, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
110 { .Name: 0, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 11, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
111 { .Name: 53, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 12, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
112 { .Name: 106, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 13, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
113 { .Name: 175, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 14, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
114 { .Name: 219, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 15, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
115 { .Name: 288, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 16, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
116 { .Name: 314, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 17, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
117 { .Name: 340, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 18, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
118 { .Name: 366, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 19, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
119 { .Name: 392, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 20, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
120 { .Name: 9, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 21, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
121 { .Name: 62, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 22, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
122 { .Name: 115, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 23, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
123 { .Name: 184, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 24, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
124 { .Name: 228, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 25, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
125 { .Name: 297, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 26, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
126 { .Name: 323, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 27, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
127 { .Name: 349, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 28, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
128 { .Name: 375, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 29, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
129 { .Name: 401, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 30, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
130 { .Name: 18, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 31, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
131 { .Name: 71, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 32, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
132 { .Name: 39, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 33, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
133 { .Name: 92, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 34, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
134 { .Name: 161, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 35, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
135 { .Name: 205, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 36, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
136 { .Name: 274, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 37, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
137 { .Name: 46, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 38, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
138 { .Name: 99, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 39, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
139 { .Name: 168, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 40, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
140 { .Name: 212, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 41, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
141 { .Name: 281, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 42, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
142 { .Name: 35, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 43, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
143 { .Name: 88, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 44, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
144 { .Name: 157, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 45, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
145 { .Name: 201, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 46, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
146 { .Name: 270, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 47, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
147 { .Name: 42, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 48, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
148 { .Name: 95, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 49, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
149 { .Name: 164, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 50, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
150 { .Name: 208, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 51, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
151 { .Name: 277, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 52, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
152 { .Name: 49, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 53, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
153 { .Name: 102, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 54, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
154 { .Name: 171, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 55, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
155 { .Name: 215, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 56, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
156 { .Name: 284, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 57, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
157 { .Name: 124, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 58, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
158 { .Name: 237, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 59, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
159 { .Name: 134, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 60, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
160 { .Name: 247, .SubRegs: 0, .SuperRegs: 0, .SubRegIndices: 0, .RegUnits: 61, .RegUnitLaneMasks: 0, .IsConstant: 0, .IsArtificial: 0 },
161};
162
163extern const MCPhysReg NVPTXRegUnitRoots[][2] = {
164 { NVPTX::VRDepot },
165 { NVPTX::ENVREG0 },
166 { NVPTX::ENVREG1 },
167 { NVPTX::ENVREG2 },
168 { NVPTX::ENVREG3 },
169 { NVPTX::ENVREG4 },
170 { NVPTX::ENVREG5 },
171 { NVPTX::ENVREG6 },
172 { NVPTX::ENVREG7 },
173 { NVPTX::ENVREG8 },
174 { NVPTX::ENVREG9 },
175 { NVPTX::ENVREG10 },
176 { NVPTX::ENVREG11 },
177 { NVPTX::ENVREG12 },
178 { NVPTX::ENVREG13 },
179 { NVPTX::ENVREG14 },
180 { NVPTX::ENVREG15 },
181 { NVPTX::ENVREG16 },
182 { NVPTX::ENVREG17 },
183 { NVPTX::ENVREG18 },
184 { NVPTX::ENVREG19 },
185 { NVPTX::ENVREG20 },
186 { NVPTX::ENVREG21 },
187 { NVPTX::ENVREG22 },
188 { NVPTX::ENVREG23 },
189 { NVPTX::ENVREG24 },
190 { NVPTX::ENVREG25 },
191 { NVPTX::ENVREG26 },
192 { NVPTX::ENVREG27 },
193 { NVPTX::ENVREG28 },
194 { NVPTX::ENVREG29 },
195 { NVPTX::ENVREG30 },
196 { NVPTX::ENVREG31 },
197 { NVPTX::P0 },
198 { NVPTX::P1 },
199 { NVPTX::P2 },
200 { NVPTX::P3 },
201 { NVPTX::P4 },
202 { NVPTX::R0 },
203 { NVPTX::R1 },
204 { NVPTX::R2 },
205 { NVPTX::R3 },
206 { NVPTX::R4 },
207 { NVPTX::RL0 },
208 { NVPTX::RL1 },
209 { NVPTX::RL2 },
210 { NVPTX::RL3 },
211 { NVPTX::RL4 },
212 { NVPTX::RQ0 },
213 { NVPTX::RQ1 },
214 { NVPTX::RQ2 },
215 { NVPTX::RQ3 },
216 { NVPTX::RQ4 },
217 { NVPTX::RS0 },
218 { NVPTX::RS1 },
219 { NVPTX::RS2 },
220 { NVPTX::RS3 },
221 { NVPTX::RS4 },
222 { NVPTX::VRFrame32 },
223 { NVPTX::VRFrame64 },
224 { NVPTX::VRFrameLocal32 },
225 { NVPTX::VRFrameLocal64 },
226};
227
228namespace {
229
230// Register classes...
231 // B1 Register Class...
232 const MCPhysReg B1[] = {
233 NVPTX::P0, NVPTX::P1, NVPTX::P2, NVPTX::P3, NVPTX::P4,
234 };
235
236 // B1 Bit set.
237 const uint8_t B1Bits[] = {
238 0x00, 0x00, 0x00, 0x00, 0x7c,
239 };
240
241 // B16 Register Class...
242 const MCPhysReg B16[] = {
243 NVPTX::RS0, NVPTX::RS1, NVPTX::RS2, NVPTX::RS3, NVPTX::RS4,
244 };
245
246 // B16 Bit set.
247 const uint8_t B16Bits[] = {
248 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07,
249 };
250
251 // SpecialRegs Register Class...
252 const MCPhysReg SpecialRegs[] = {
253 NVPTX::VRFrame32, NVPTX::VRFrameLocal32, NVPTX::VRDepot, NVPTX::ENVREG0, NVPTX::ENVREG1, NVPTX::ENVREG2, NVPTX::ENVREG3, NVPTX::ENVREG4, NVPTX::ENVREG5, NVPTX::ENVREG6, NVPTX::ENVREG7, NVPTX::ENVREG8, NVPTX::ENVREG9, NVPTX::ENVREG10, NVPTX::ENVREG11, NVPTX::ENVREG12, NVPTX::ENVREG13, NVPTX::ENVREG14, NVPTX::ENVREG15, NVPTX::ENVREG16, NVPTX::ENVREG17, NVPTX::ENVREG18, NVPTX::ENVREG19, NVPTX::ENVREG20, NVPTX::ENVREG21, NVPTX::ENVREG22, NVPTX::ENVREG23, NVPTX::ENVREG24, NVPTX::ENVREG25, NVPTX::ENVREG26, NVPTX::ENVREG27, NVPTX::ENVREG28, NVPTX::ENVREG29, NVPTX::ENVREG30, NVPTX::ENVREG31,
254 };
255
256 // SpecialRegs Bit set.
257 const uint8_t SpecialRegsBits[] = {
258 0xfe, 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0x28,
259 };
260
261 // B32 Register Class...
262 const MCPhysReg B32[] = {
263 NVPTX::R0, NVPTX::R1, NVPTX::R2, NVPTX::R3, NVPTX::R4, NVPTX::VRFrame32, NVPTX::VRFrameLocal32,
264 };
265
266 // B32 Bit set.
267 const uint8_t B32Bits[] = {
268 0x00, 0x00, 0x00, 0x00, 0x80, 0x0f, 0x00, 0x28,
269 };
270
271 // B32_and_SpecialRegs Register Class...
272 const MCPhysReg B32_and_SpecialRegs[] = {
273 NVPTX::VRFrame32, NVPTX::VRFrameLocal32,
274 };
275
276 // B32_and_SpecialRegs Bit set.
277 const uint8_t B32_and_SpecialRegsBits[] = {
278 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28,
279 };
280
281 // B64 Register Class...
282 const MCPhysReg B64[] = {
283 NVPTX::RL0, NVPTX::RL1, NVPTX::RL2, NVPTX::RL3, NVPTX::RL4, NVPTX::VRFrame64, NVPTX::VRFrameLocal64,
284 };
285
286 // B64 Bit set.
287 const uint8_t B64Bits[] = {
288 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x01, 0x50,
289 };
290
291 // B128 Register Class...
292 const MCPhysReg B128[] = {
293 NVPTX::RQ0, NVPTX::RQ1, NVPTX::RQ2, NVPTX::RQ3, NVPTX::RQ4,
294 };
295
296 // B128 Bit set.
297 const uint8_t B128Bits[] = {
298 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e,
299 };
300
301} // namespace
302
303#ifdef __GNUC__
304#pragma GCC diagnostic push
305#pragma GCC diagnostic ignored "-Woverlength-strings"
306#endif
307extern const char NVPTXRegClassStrings[] = {
308 /* 0 */ "B1\000"
309 /* 3 */ "B32\000"
310 /* 7 */ "B64\000"
311 /* 11 */ "B16\000"
312 /* 15 */ "B128\000"
313 /* 20 */ "B32_and_SpecialRegs\000"
314};
315#ifdef __GNUC__
316#pragma GCC diagnostic pop
317#endif
318
319extern const MCRegisterClass NVPTXMCRegisterClasses[] = {
320 { .RegsBegin: B1, .RegSet: B1Bits, .NameIdx: 0, .RegsSize: 5, .RegSetSize: sizeof(B1Bits), .ID: NVPTX::B1RegClassID, .RegSizeInBits: 1, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
321 { .RegsBegin: B16, .RegSet: B16Bits, .NameIdx: 11, .RegsSize: 5, .RegSetSize: sizeof(B16Bits), .ID: NVPTX::B16RegClassID, .RegSizeInBits: 16, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
322 { .RegsBegin: SpecialRegs, .RegSet: SpecialRegsBits, .NameIdx: 28, .RegsSize: 35, .RegSetSize: sizeof(SpecialRegsBits), .ID: NVPTX::SpecialRegsRegClassID, .RegSizeInBits: 32, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
323 { .RegsBegin: B32, .RegSet: B32Bits, .NameIdx: 3, .RegsSize: 7, .RegSetSize: sizeof(B32Bits), .ID: NVPTX::B32RegClassID, .RegSizeInBits: 32, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
324 { .RegsBegin: B32_and_SpecialRegs, .RegSet: B32_and_SpecialRegsBits, .NameIdx: 20, .RegsSize: 2, .RegSetSize: sizeof(B32_and_SpecialRegsBits), .ID: NVPTX::B32_and_SpecialRegsRegClassID, .RegSizeInBits: 32, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
325 { .RegsBegin: B64, .RegSet: B64Bits, .NameIdx: 7, .RegsSize: 7, .RegSetSize: sizeof(B64Bits), .ID: NVPTX::B64RegClassID, .RegSizeInBits: 64, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
326 { .RegsBegin: B128, .RegSet: B128Bits, .NameIdx: 15, .RegsSize: 5, .RegSetSize: sizeof(B128Bits), .ID: NVPTX::B128RegClassID, .RegSizeInBits: 128, .CopyCost: 1, .Allocatable: true, .BaseClass: false },
327};
328
329extern const uint16_t NVPTXRegEncodingTable[] = {
330 0,
331 0,
332 0,
333 0,
334 0,
335 0,
336 0,
337 0,
338 0,
339 0,
340 0,
341 0,
342 0,
343 0,
344 0,
345 0,
346 0,
347 0,
348 0,
349 0,
350 0,
351 0,
352 0,
353 0,
354 0,
355 0,
356 0,
357 0,
358 0,
359 0,
360 0,
361 0,
362 0,
363 0,
364 0,
365 0,
366 0,
367 0,
368 0,
369 0,
370 0,
371 0,
372 0,
373 0,
374 0,
375 0,
376 0,
377 0,
378 0,
379 0,
380 0,
381 0,
382 0,
383 0,
384 0,
385 0,
386 0,
387 0,
388 0,
389 0,
390 0,
391 0,
392 0,
393};
394static inline void InitNVPTXMCRegisterInfo(MCRegisterInfo *RI, unsigned RA, unsigned DwarfFlavour = 0, unsigned EHFlavour = 0, unsigned PC = 0) {
395 RI->InitMCRegisterInfo(D: NVPTXRegDesc, NR: 63, RA, PC, C: NVPTXMCRegisterClasses, NC: 7, RURoots: NVPTXRegUnitRoots, NRU: 62, DL: NVPTXRegDiffLists, RUMS: NVPTXLaneMaskLists, Strings: NVPTXRegStrings, ClassStrings: NVPTXRegClassStrings, SubIndices: NVPTXSubRegIdxLists, NumIndices: 1,
396RET: NVPTXRegEncodingTable, RUI: nullptr);
397
398}
399
400
401} // namespace llvm
402