1//! This file is auto-generated by tools/update_cpu_features.zig.
2
3const std = @import("../std.zig");
4const CpuFeature = std.Target.Cpu.Feature;
5const CpuModel = std.Target.Cpu.Model;
6
7pub const Feature = enum {
8 ptx32,
9 ptx40,
10 ptx41,
11 ptx42,
12 ptx43,
13 ptx50,
14 ptx60,
15 ptx61,
16 ptx62,
17 ptx63,
18 ptx64,
19 ptx65,
20 ptx70,
21 ptx71,
22 ptx72,
23 ptx73,
24 ptx74,
25 ptx75,
26 ptx76,
27 ptx77,
28 ptx78,
29 ptx80,
30 ptx81,
31 ptx82,
32 ptx83,
33 ptx84,
34 ptx85,
35 ptx86,
36 ptx87,
37 ptx88,
38 ptx90,
39 sm_100,
40 sm_100a,
41 sm_100f,
42 sm_101,
43 sm_101a,
44 sm_101f,
45 sm_103,
46 sm_103a,
47 sm_103f,
48 sm_110,
49 sm_110a,
50 sm_110f,
51 sm_120,
52 sm_120a,
53 sm_120f,
54 sm_121,
55 sm_121a,
56 sm_121f,
57 sm_20,
58 sm_21,
59 sm_30,
60 sm_32,
61 sm_35,
62 sm_37,
63 sm_50,
64 sm_52,
65 sm_53,
66 sm_60,
67 sm_61,
68 sm_62,
69 sm_70,
70 sm_72,
71 sm_75,
72 sm_80,
73 sm_86,
74 sm_87,
75 sm_88,
76 sm_89,
77 sm_90,
78 sm_90a,
79};
80
81pub const featureSet = CpuFeature.FeatureSetFns(Feature).featureSet;
82pub const featureSetHas = CpuFeature.FeatureSetFns(Feature).featureSetHas;
83pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
84pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
85
86pub const all_features = blk: {
87 const len = @typeInfo(Feature).@"enum".field_names.len;
88 std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
89 var result: [len]CpuFeature = undefined;
90 result[@backingInt(Feature.ptx32)] = .{
91 .llvm_name = "ptx32",
92 .description = "Use PTX version 32",
93 .dependencies = featureSet(&[_]Feature{}),
94 };
95 result[@backingInt(Feature.ptx40)] = .{
96 .llvm_name = "ptx40",
97 .description = "Use PTX version 40",
98 .dependencies = featureSet(&[_]Feature{}),
99 };
100 result[@backingInt(Feature.ptx41)] = .{
101 .llvm_name = "ptx41",
102 .description = "Use PTX version 41",
103 .dependencies = featureSet(&[_]Feature{}),
104 };
105 result[@backingInt(Feature.ptx42)] = .{
106 .llvm_name = "ptx42",
107 .description = "Use PTX version 42",
108 .dependencies = featureSet(&[_]Feature{}),
109 };
110 result[@backingInt(Feature.ptx43)] = .{
111 .llvm_name = "ptx43",
112 .description = "Use PTX version 43",
113 .dependencies = featureSet(&[_]Feature{}),
114 };
115 result[@backingInt(Feature.ptx50)] = .{
116 .llvm_name = "ptx50",
117 .description = "Use PTX version 50",
118 .dependencies = featureSet(&[_]Feature{}),
119 };
120 result[@backingInt(Feature.ptx60)] = .{
121 .llvm_name = "ptx60",
122 .description = "Use PTX version 60",
123 .dependencies = featureSet(&[_]Feature{}),
124 };
125 result[@backingInt(Feature.ptx61)] = .{
126 .llvm_name = "ptx61",
127 .description = "Use PTX version 61",
128 .dependencies = featureSet(&[_]Feature{}),
129 };
130 result[@backingInt(Feature.ptx62)] = .{
131 .llvm_name = "ptx62",
132 .description = "Use PTX version 62",
133 .dependencies = featureSet(&[_]Feature{}),
134 };
135 result[@backingInt(Feature.ptx63)] = .{
136 .llvm_name = "ptx63",
137 .description = "Use PTX version 63",
138 .dependencies = featureSet(&[_]Feature{}),
139 };
140 result[@backingInt(Feature.ptx64)] = .{
141 .llvm_name = "ptx64",
142 .description = "Use PTX version 64",
143 .dependencies = featureSet(&[_]Feature{}),
144 };
145 result[@backingInt(Feature.ptx65)] = .{
146 .llvm_name = "ptx65",
147 .description = "Use PTX version 65",
148 .dependencies = featureSet(&[_]Feature{}),
149 };
150 result[@backingInt(Feature.ptx70)] = .{
151 .llvm_name = "ptx70",
152 .description = "Use PTX version 70",
153 .dependencies = featureSet(&[_]Feature{}),
154 };
155 result[@backingInt(Feature.ptx71)] = .{
156 .llvm_name = "ptx71",
157 .description = "Use PTX version 71",
158 .dependencies = featureSet(&[_]Feature{}),
159 };
160 result[@backingInt(Feature.ptx72)] = .{
161 .llvm_name = "ptx72",
162 .description = "Use PTX version 72",
163 .dependencies = featureSet(&[_]Feature{}),
164 };
165 result[@backingInt(Feature.ptx73)] = .{
166 .llvm_name = "ptx73",
167 .description = "Use PTX version 73",
168 .dependencies = featureSet(&[_]Feature{}),
169 };
170 result[@backingInt(Feature.ptx74)] = .{
171 .llvm_name = "ptx74",
172 .description = "Use PTX version 74",
173 .dependencies = featureSet(&[_]Feature{}),
174 };
175 result[@backingInt(Feature.ptx75)] = .{
176 .llvm_name = "ptx75",
177 .description = "Use PTX version 75",
178 .dependencies = featureSet(&[_]Feature{}),
179 };
180 result[@backingInt(Feature.ptx76)] = .{
181 .llvm_name = "ptx76",
182 .description = "Use PTX version 76",
183 .dependencies = featureSet(&[_]Feature{}),
184 };
185 result[@backingInt(Feature.ptx77)] = .{
186 .llvm_name = "ptx77",
187 .description = "Use PTX version 77",
188 .dependencies = featureSet(&[_]Feature{}),
189 };
190 result[@backingInt(Feature.ptx78)] = .{
191 .llvm_name = "ptx78",
192 .description = "Use PTX version 78",
193 .dependencies = featureSet(&[_]Feature{}),
194 };
195 result[@backingInt(Feature.ptx80)] = .{
196 .llvm_name = "ptx80",
197 .description = "Use PTX version 80",
198 .dependencies = featureSet(&[_]Feature{}),
199 };
200 result[@backingInt(Feature.ptx81)] = .{
201 .llvm_name = "ptx81",
202 .description = "Use PTX version 81",
203 .dependencies = featureSet(&[_]Feature{}),
204 };
205 result[@backingInt(Feature.ptx82)] = .{
206 .llvm_name = "ptx82",
207 .description = "Use PTX version 82",
208 .dependencies = featureSet(&[_]Feature{}),
209 };
210 result[@backingInt(Feature.ptx83)] = .{
211 .llvm_name = "ptx83",
212 .description = "Use PTX version 83",
213 .dependencies = featureSet(&[_]Feature{}),
214 };
215 result[@backingInt(Feature.ptx84)] = .{
216 .llvm_name = "ptx84",
217 .description = "Use PTX version 84",
218 .dependencies = featureSet(&[_]Feature{}),
219 };
220 result[@backingInt(Feature.ptx85)] = .{
221 .llvm_name = "ptx85",
222 .description = "Use PTX version 85",
223 .dependencies = featureSet(&[_]Feature{}),
224 };
225 result[@backingInt(Feature.ptx86)] = .{
226 .llvm_name = "ptx86",
227 .description = "Use PTX version 86",
228 .dependencies = featureSet(&[_]Feature{}),
229 };
230 result[@backingInt(Feature.ptx87)] = .{
231 .llvm_name = "ptx87",
232 .description = "Use PTX version 87",
233 .dependencies = featureSet(&[_]Feature{}),
234 };
235 result[@backingInt(Feature.ptx88)] = .{
236 .llvm_name = "ptx88",
237 .description = "Use PTX version 88",
238 .dependencies = featureSet(&[_]Feature{}),
239 };
240 result[@backingInt(Feature.ptx90)] = .{
241 .llvm_name = "ptx90",
242 .description = "Use PTX version 90",
243 .dependencies = featureSet(&[_]Feature{}),
244 };
245 result[@backingInt(Feature.sm_100)] = .{
246 .llvm_name = "sm_100",
247 .description = "Target SM 100",
248 .dependencies = featureSet(&[_]Feature{}),
249 };
250 result[@backingInt(Feature.sm_100a)] = .{
251 .llvm_name = "sm_100a",
252 .description = "Target SM 100a",
253 .dependencies = featureSet(&[_]Feature{}),
254 };
255 result[@backingInt(Feature.sm_100f)] = .{
256 .llvm_name = "sm_100f",
257 .description = "Target SM 100f",
258 .dependencies = featureSet(&[_]Feature{}),
259 };
260 result[@backingInt(Feature.sm_101)] = .{
261 .llvm_name = "sm_101",
262 .description = "Target SM 101",
263 .dependencies = featureSet(&[_]Feature{}),
264 };
265 result[@backingInt(Feature.sm_101a)] = .{
266 .llvm_name = "sm_101a",
267 .description = "Target SM 101a",
268 .dependencies = featureSet(&[_]Feature{}),
269 };
270 result[@backingInt(Feature.sm_101f)] = .{
271 .llvm_name = "sm_101f",
272 .description = "Target SM 101f",
273 .dependencies = featureSet(&[_]Feature{}),
274 };
275 result[@backingInt(Feature.sm_103)] = .{
276 .llvm_name = "sm_103",
277 .description = "Target SM 103",
278 .dependencies = featureSet(&[_]Feature{}),
279 };
280 result[@backingInt(Feature.sm_103a)] = .{
281 .llvm_name = "sm_103a",
282 .description = "Target SM 103a",
283 .dependencies = featureSet(&[_]Feature{}),
284 };
285 result[@backingInt(Feature.sm_103f)] = .{
286 .llvm_name = "sm_103f",
287 .description = "Target SM 103f",
288 .dependencies = featureSet(&[_]Feature{}),
289 };
290 result[@backingInt(Feature.sm_110)] = .{
291 .llvm_name = "sm_110",
292 .description = "Target SM 110",
293 .dependencies = featureSet(&[_]Feature{}),
294 };
295 result[@backingInt(Feature.sm_110a)] = .{
296 .llvm_name = "sm_110a",
297 .description = "Target SM 110a",
298 .dependencies = featureSet(&[_]Feature{}),
299 };
300 result[@backingInt(Feature.sm_110f)] = .{
301 .llvm_name = "sm_110f",
302 .description = "Target SM 110f",
303 .dependencies = featureSet(&[_]Feature{}),
304 };
305 result[@backingInt(Feature.sm_120)] = .{
306 .llvm_name = "sm_120",
307 .description = "Target SM 120",
308 .dependencies = featureSet(&[_]Feature{}),
309 };
310 result[@backingInt(Feature.sm_120a)] = .{
311 .llvm_name = "sm_120a",
312 .description = "Target SM 120a",
313 .dependencies = featureSet(&[_]Feature{}),
314 };
315 result[@backingInt(Feature.sm_120f)] = .{
316 .llvm_name = "sm_120f",
317 .description = "Target SM 120f",
318 .dependencies = featureSet(&[_]Feature{}),
319 };
320 result[@backingInt(Feature.sm_121)] = .{
321 .llvm_name = "sm_121",
322 .description = "Target SM 121",
323 .dependencies = featureSet(&[_]Feature{}),
324 };
325 result[@backingInt(Feature.sm_121a)] = .{
326 .llvm_name = "sm_121a",
327 .description = "Target SM 121a",
328 .dependencies = featureSet(&[_]Feature{}),
329 };
330 result[@backingInt(Feature.sm_121f)] = .{
331 .llvm_name = "sm_121f",
332 .description = "Target SM 121f",
333 .dependencies = featureSet(&[_]Feature{}),
334 };
335 result[@backingInt(Feature.sm_20)] = .{
336 .llvm_name = "sm_20",
337 .description = "Target SM 20",
338 .dependencies = featureSet(&[_]Feature{}),
339 };
340 result[@backingInt(Feature.sm_21)] = .{
341 .llvm_name = "sm_21",
342 .description = "Target SM 21",
343 .dependencies = featureSet(&[_]Feature{}),
344 };
345 result[@backingInt(Feature.sm_30)] = .{
346 .llvm_name = "sm_30",
347 .description = "Target SM 30",
348 .dependencies = featureSet(&[_]Feature{}),
349 };
350 result[@backingInt(Feature.sm_32)] = .{
351 .llvm_name = "sm_32",
352 .description = "Target SM 32",
353 .dependencies = featureSet(&[_]Feature{}),
354 };
355 result[@backingInt(Feature.sm_35)] = .{
356 .llvm_name = "sm_35",
357 .description = "Target SM 35",
358 .dependencies = featureSet(&[_]Feature{}),
359 };
360 result[@backingInt(Feature.sm_37)] = .{
361 .llvm_name = "sm_37",
362 .description = "Target SM 37",
363 .dependencies = featureSet(&[_]Feature{}),
364 };
365 result[@backingInt(Feature.sm_50)] = .{
366 .llvm_name = "sm_50",
367 .description = "Target SM 50",
368 .dependencies = featureSet(&[_]Feature{}),
369 };
370 result[@backingInt(Feature.sm_52)] = .{
371 .llvm_name = "sm_52",
372 .description = "Target SM 52",
373 .dependencies = featureSet(&[_]Feature{}),
374 };
375 result[@backingInt(Feature.sm_53)] = .{
376 .llvm_name = "sm_53",
377 .description = "Target SM 53",
378 .dependencies = featureSet(&[_]Feature{}),
379 };
380 result[@backingInt(Feature.sm_60)] = .{
381 .llvm_name = "sm_60",
382 .description = "Target SM 60",
383 .dependencies = featureSet(&[_]Feature{}),
384 };
385 result[@backingInt(Feature.sm_61)] = .{
386 .llvm_name = "sm_61",
387 .description = "Target SM 61",
388 .dependencies = featureSet(&[_]Feature{}),
389 };
390 result[@backingInt(Feature.sm_62)] = .{
391 .llvm_name = "sm_62",
392 .description = "Target SM 62",
393 .dependencies = featureSet(&[_]Feature{}),
394 };
395 result[@backingInt(Feature.sm_70)] = .{
396 .llvm_name = "sm_70",
397 .description = "Target SM 70",
398 .dependencies = featureSet(&[_]Feature{}),
399 };
400 result[@backingInt(Feature.sm_72)] = .{
401 .llvm_name = "sm_72",
402 .description = "Target SM 72",
403 .dependencies = featureSet(&[_]Feature{}),
404 };
405 result[@backingInt(Feature.sm_75)] = .{
406 .llvm_name = "sm_75",
407 .description = "Target SM 75",
408 .dependencies = featureSet(&[_]Feature{}),
409 };
410 result[@backingInt(Feature.sm_80)] = .{
411 .llvm_name = "sm_80",
412 .description = "Target SM 80",
413 .dependencies = featureSet(&[_]Feature{}),
414 };
415 result[@backingInt(Feature.sm_86)] = .{
416 .llvm_name = "sm_86",
417 .description = "Target SM 86",
418 .dependencies = featureSet(&[_]Feature{}),
419 };
420 result[@backingInt(Feature.sm_87)] = .{
421 .llvm_name = "sm_87",
422 .description = "Target SM 87",
423 .dependencies = featureSet(&[_]Feature{}),
424 };
425 result[@backingInt(Feature.sm_88)] = .{
426 .llvm_name = "sm_88",
427 .description = "Target SM 88",
428 .dependencies = featureSet(&[_]Feature{}),
429 };
430 result[@backingInt(Feature.sm_89)] = .{
431 .llvm_name = "sm_89",
432 .description = "Target SM 89",
433 .dependencies = featureSet(&[_]Feature{}),
434 };
435 result[@backingInt(Feature.sm_90)] = .{
436 .llvm_name = "sm_90",
437 .description = "Target SM 90",
438 .dependencies = featureSet(&[_]Feature{}),
439 };
440 result[@backingInt(Feature.sm_90a)] = .{
441 .llvm_name = "sm_90a",
442 .description = "Target SM 90a",
443 .dependencies = featureSet(&[_]Feature{}),
444 };
445 const ti = @typeInfo(Feature);
446 for (&result, 0..) |*elem, i| {
447 elem.index = i;
448 elem.name = ti.@"enum".field_names[i];
449 }
450 break :blk result;
451};
452
453pub const cpu = struct {
454 pub const sm_100: CpuModel = .{
455 .name = "sm_100",
456 .llvm_name = "sm_100",
457 .features = featureSet(&[_]Feature{
458 .sm_100,
459 }),
460 };
461 pub const sm_100a: CpuModel = .{
462 .name = "sm_100a",
463 .llvm_name = "sm_100a",
464 .features = featureSet(&[_]Feature{
465 .sm_100a,
466 }),
467 };
468 pub const sm_100f: CpuModel = .{
469 .name = "sm_100f",
470 .llvm_name = "sm_100f",
471 .features = featureSet(&[_]Feature{
472 .sm_100f,
473 }),
474 };
475 pub const sm_101: CpuModel = .{
476 .name = "sm_101",
477 .llvm_name = "sm_101",
478 .features = featureSet(&[_]Feature{
479 .sm_101,
480 }),
481 };
482 pub const sm_101a: CpuModel = .{
483 .name = "sm_101a",
484 .llvm_name = "sm_101a",
485 .features = featureSet(&[_]Feature{
486 .sm_101a,
487 }),
488 };
489 pub const sm_101f: CpuModel = .{
490 .name = "sm_101f",
491 .llvm_name = "sm_101f",
492 .features = featureSet(&[_]Feature{
493 .sm_101f,
494 }),
495 };
496 pub const sm_103: CpuModel = .{
497 .name = "sm_103",
498 .llvm_name = "sm_103",
499 .features = featureSet(&[_]Feature{
500 .sm_103,
501 }),
502 };
503 pub const sm_103a: CpuModel = .{
504 .name = "sm_103a",
505 .llvm_name = "sm_103a",
506 .features = featureSet(&[_]Feature{
507 .sm_103a,
508 }),
509 };
510 pub const sm_103f: CpuModel = .{
511 .name = "sm_103f",
512 .llvm_name = "sm_103f",
513 .features = featureSet(&[_]Feature{
514 .sm_103f,
515 }),
516 };
517 pub const sm_110: CpuModel = .{
518 .name = "sm_110",
519 .llvm_name = "sm_110",
520 .features = featureSet(&[_]Feature{
521 .sm_110,
522 }),
523 };
524 pub const sm_110a: CpuModel = .{
525 .name = "sm_110a",
526 .llvm_name = "sm_110a",
527 .features = featureSet(&[_]Feature{
528 .sm_110a,
529 }),
530 };
531 pub const sm_110f: CpuModel = .{
532 .name = "sm_110f",
533 .llvm_name = "sm_110f",
534 .features = featureSet(&[_]Feature{
535 .sm_110f,
536 }),
537 };
538 pub const sm_120: CpuModel = .{
539 .name = "sm_120",
540 .llvm_name = "sm_120",
541 .features = featureSet(&[_]Feature{
542 .sm_120,
543 }),
544 };
545 pub const sm_120a: CpuModel = .{
546 .name = "sm_120a",
547 .llvm_name = "sm_120a",
548 .features = featureSet(&[_]Feature{
549 .sm_120a,
550 }),
551 };
552 pub const sm_120f: CpuModel = .{
553 .name = "sm_120f",
554 .llvm_name = "sm_120f",
555 .features = featureSet(&[_]Feature{
556 .sm_120f,
557 }),
558 };
559 pub const sm_121: CpuModel = .{
560 .name = "sm_121",
561 .llvm_name = "sm_121",
562 .features = featureSet(&[_]Feature{
563 .sm_121,
564 }),
565 };
566 pub const sm_121a: CpuModel = .{
567 .name = "sm_121a",
568 .llvm_name = "sm_121a",
569 .features = featureSet(&[_]Feature{
570 .sm_121a,
571 }),
572 };
573 pub const sm_121f: CpuModel = .{
574 .name = "sm_121f",
575 .llvm_name = "sm_121f",
576 .features = featureSet(&[_]Feature{
577 .sm_121f,
578 }),
579 };
580 pub const sm_20: CpuModel = .{
581 .name = "sm_20",
582 .llvm_name = "sm_20",
583 .features = featureSet(&[_]Feature{
584 .sm_20,
585 }),
586 };
587 pub const sm_21: CpuModel = .{
588 .name = "sm_21",
589 .llvm_name = "sm_21",
590 .features = featureSet(&[_]Feature{
591 .sm_21,
592 }),
593 };
594 pub const sm_30: CpuModel = .{
595 .name = "sm_30",
596 .llvm_name = "sm_30",
597 .features = featureSet(&[_]Feature{
598 .sm_30,
599 }),
600 };
601 pub const sm_32: CpuModel = .{
602 .name = "sm_32",
603 .llvm_name = "sm_32",
604 .features = featureSet(&[_]Feature{
605 .sm_32,
606 }),
607 };
608 pub const sm_35: CpuModel = .{
609 .name = "sm_35",
610 .llvm_name = "sm_35",
611 .features = featureSet(&[_]Feature{
612 .sm_35,
613 }),
614 };
615 pub const sm_37: CpuModel = .{
616 .name = "sm_37",
617 .llvm_name = "sm_37",
618 .features = featureSet(&[_]Feature{
619 .sm_37,
620 }),
621 };
622 pub const sm_50: CpuModel = .{
623 .name = "sm_50",
624 .llvm_name = "sm_50",
625 .features = featureSet(&[_]Feature{
626 .sm_50,
627 }),
628 };
629 pub const sm_52: CpuModel = .{
630 .name = "sm_52",
631 .llvm_name = "sm_52",
632 .features = featureSet(&[_]Feature{
633 .sm_52,
634 }),
635 };
636 pub const sm_53: CpuModel = .{
637 .name = "sm_53",
638 .llvm_name = "sm_53",
639 .features = featureSet(&[_]Feature{
640 .sm_53,
641 }),
642 };
643 pub const sm_60: CpuModel = .{
644 .name = "sm_60",
645 .llvm_name = "sm_60",
646 .features = featureSet(&[_]Feature{
647 .sm_60,
648 }),
649 };
650 pub const sm_61: CpuModel = .{
651 .name = "sm_61",
652 .llvm_name = "sm_61",
653 .features = featureSet(&[_]Feature{
654 .sm_61,
655 }),
656 };
657 pub const sm_62: CpuModel = .{
658 .name = "sm_62",
659 .llvm_name = "sm_62",
660 .features = featureSet(&[_]Feature{
661 .sm_62,
662 }),
663 };
664 pub const sm_70: CpuModel = .{
665 .name = "sm_70",
666 .llvm_name = "sm_70",
667 .features = featureSet(&[_]Feature{
668 .sm_70,
669 }),
670 };
671 pub const sm_72: CpuModel = .{
672 .name = "sm_72",
673 .llvm_name = "sm_72",
674 .features = featureSet(&[_]Feature{
675 .sm_72,
676 }),
677 };
678 pub const sm_75: CpuModel = .{
679 .name = "sm_75",
680 .llvm_name = "sm_75",
681 .features = featureSet(&[_]Feature{
682 .sm_75,
683 }),
684 };
685 pub const sm_80: CpuModel = .{
686 .name = "sm_80",
687 .llvm_name = "sm_80",
688 .features = featureSet(&[_]Feature{
689 .sm_80,
690 }),
691 };
692 pub const sm_86: CpuModel = .{
693 .name = "sm_86",
694 .llvm_name = "sm_86",
695 .features = featureSet(&[_]Feature{
696 .sm_86,
697 }),
698 };
699 pub const sm_87: CpuModel = .{
700 .name = "sm_87",
701 .llvm_name = "sm_87",
702 .features = featureSet(&[_]Feature{
703 .sm_87,
704 }),
705 };
706 pub const sm_88: CpuModel = .{
707 .name = "sm_88",
708 .llvm_name = "sm_88",
709 .features = featureSet(&[_]Feature{
710 .sm_88,
711 }),
712 };
713 pub const sm_89: CpuModel = .{
714 .name = "sm_89",
715 .llvm_name = "sm_89",
716 .features = featureSet(&[_]Feature{
717 .sm_89,
718 }),
719 };
720 pub const sm_90: CpuModel = .{
721 .name = "sm_90",
722 .llvm_name = "sm_90",
723 .features = featureSet(&[_]Feature{
724 .sm_90,
725 }),
726 };
727 pub const sm_90a: CpuModel = .{
728 .name = "sm_90a",
729 .llvm_name = "sm_90a",
730 .features = featureSet(&[_]Feature{
731 .sm_90a,
732 }),
733 };
734};