1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
|
/* automatically generated by rust-bindgen */
#[allow(non_snake_case, non_camel_case_types, non_upper_case_globals)]
pub mod root {
#[allow(unused_imports)]
use self::super::root;
pub mod spv {
#[allow(unused_imports)]
use self::super::super::root;
pub type Id = ::std::os::raw::c_uint;
pub const SourceLanguage_SourceLanguageUnknown: root::spv::SourceLanguage = 0;
pub const SourceLanguage_SourceLanguageESSL: root::spv::SourceLanguage = 1;
pub const SourceLanguage_SourceLanguageGLSL: root::spv::SourceLanguage = 2;
pub const SourceLanguage_SourceLanguageOpenCL_C: root::spv::SourceLanguage = 3;
pub const SourceLanguage_SourceLanguageOpenCL_CPP: root::spv::SourceLanguage = 4;
pub const SourceLanguage_SourceLanguageHLSL: root::spv::SourceLanguage = 5;
pub const SourceLanguage_SourceLanguageMax: root::spv::SourceLanguage = 2147483647;
pub type SourceLanguage = u32;
impl root::spv::ExecutionModel {
pub const ExecutionModelRayGenerationNV: root::spv::ExecutionModel =
ExecutionModel::ExecutionModelRayGenerationKHR;
}
impl root::spv::ExecutionModel {
pub const ExecutionModelIntersectionNV: root::spv::ExecutionModel =
ExecutionModel::ExecutionModelIntersectionKHR;
}
impl root::spv::ExecutionModel {
pub const ExecutionModelAnyHitNV: root::spv::ExecutionModel =
ExecutionModel::ExecutionModelAnyHitKHR;
}
impl root::spv::ExecutionModel {
pub const ExecutionModelClosestHitNV: root::spv::ExecutionModel =
ExecutionModel::ExecutionModelClosestHitKHR;
}
impl root::spv::ExecutionModel {
pub const ExecutionModelMissNV: root::spv::ExecutionModel =
ExecutionModel::ExecutionModelMissKHR;
}
impl root::spv::ExecutionModel {
pub const ExecutionModelCallableNV: root::spv::ExecutionModel =
ExecutionModel::ExecutionModelCallableKHR;
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum ExecutionModel {
ExecutionModelVertex = 0,
ExecutionModelTessellationControl = 1,
ExecutionModelTessellationEvaluation = 2,
ExecutionModelGeometry = 3,
ExecutionModelFragment = 4,
ExecutionModelGLCompute = 5,
ExecutionModelKernel = 6,
ExecutionModelTaskNV = 5267,
ExecutionModelMeshNV = 5268,
ExecutionModelRayGenerationKHR = 5313,
ExecutionModelIntersectionKHR = 5314,
ExecutionModelAnyHitKHR = 5315,
ExecutionModelClosestHitKHR = 5316,
ExecutionModelMissKHR = 5317,
ExecutionModelCallableKHR = 5318,
ExecutionModelMax = 2147483647,
}
pub const AddressingModel_AddressingModelLogical: root::spv::AddressingModel = 0;
pub const AddressingModel_AddressingModelPhysical32: root::spv::AddressingModel = 1;
pub const AddressingModel_AddressingModelPhysical64: root::spv::AddressingModel = 2;
pub const AddressingModel_AddressingModelPhysicalStorageBuffer64:
root::spv::AddressingModel = 5348;
pub const AddressingModel_AddressingModelPhysicalStorageBuffer64EXT:
root::spv::AddressingModel = 5348;
pub const AddressingModel_AddressingModelMax: root::spv::AddressingModel = 2147483647;
pub type AddressingModel = u32;
pub const MemoryModel_MemoryModelSimple: root::spv::MemoryModel = 0;
pub const MemoryModel_MemoryModelGLSL450: root::spv::MemoryModel = 1;
pub const MemoryModel_MemoryModelOpenCL: root::spv::MemoryModel = 2;
pub const MemoryModel_MemoryModelVulkan: root::spv::MemoryModel = 3;
pub const MemoryModel_MemoryModelVulkanKHR: root::spv::MemoryModel = 3;
pub const MemoryModel_MemoryModelMax: root::spv::MemoryModel = 2147483647;
pub type MemoryModel = u32;
pub const ExecutionMode_ExecutionModeInvocations: root::spv::ExecutionMode = 0;
pub const ExecutionMode_ExecutionModeSpacingEqual: root::spv::ExecutionMode = 1;
pub const ExecutionMode_ExecutionModeSpacingFractionalEven: root::spv::ExecutionMode = 2;
pub const ExecutionMode_ExecutionModeSpacingFractionalOdd: root::spv::ExecutionMode = 3;
pub const ExecutionMode_ExecutionModeVertexOrderCw: root::spv::ExecutionMode = 4;
pub const ExecutionMode_ExecutionModeVertexOrderCcw: root::spv::ExecutionMode = 5;
pub const ExecutionMode_ExecutionModePixelCenterInteger: root::spv::ExecutionMode = 6;
pub const ExecutionMode_ExecutionModeOriginUpperLeft: root::spv::ExecutionMode = 7;
pub const ExecutionMode_ExecutionModeOriginLowerLeft: root::spv::ExecutionMode = 8;
pub const ExecutionMode_ExecutionModeEarlyFragmentTests: root::spv::ExecutionMode = 9;
pub const ExecutionMode_ExecutionModePointMode: root::spv::ExecutionMode = 10;
pub const ExecutionMode_ExecutionModeXfb: root::spv::ExecutionMode = 11;
pub const ExecutionMode_ExecutionModeDepthReplacing: root::spv::ExecutionMode = 12;
pub const ExecutionMode_ExecutionModeDepthGreater: root::spv::ExecutionMode = 14;
pub const ExecutionMode_ExecutionModeDepthLess: root::spv::ExecutionMode = 15;
pub const ExecutionMode_ExecutionModeDepthUnchanged: root::spv::ExecutionMode = 16;
pub const ExecutionMode_ExecutionModeLocalSize: root::spv::ExecutionMode = 17;
pub const ExecutionMode_ExecutionModeLocalSizeHint: root::spv::ExecutionMode = 18;
pub const ExecutionMode_ExecutionModeInputPoints: root::spv::ExecutionMode = 19;
pub const ExecutionMode_ExecutionModeInputLines: root::spv::ExecutionMode = 20;
pub const ExecutionMode_ExecutionModeInputLinesAdjacency: root::spv::ExecutionMode = 21;
pub const ExecutionMode_ExecutionModeTriangles: root::spv::ExecutionMode = 22;
pub const ExecutionMode_ExecutionModeInputTrianglesAdjacency: root::spv::ExecutionMode = 23;
pub const ExecutionMode_ExecutionModeQuads: root::spv::ExecutionMode = 24;
pub const ExecutionMode_ExecutionModeIsolines: root::spv::ExecutionMode = 25;
pub const ExecutionMode_ExecutionModeOutputVertices: root::spv::ExecutionMode = 26;
pub const ExecutionMode_ExecutionModeOutputPoints: root::spv::ExecutionMode = 27;
pub const ExecutionMode_ExecutionModeOutputLineStrip: root::spv::ExecutionMode = 28;
pub const ExecutionMode_ExecutionModeOutputTriangleStrip: root::spv::ExecutionMode = 29;
pub const ExecutionMode_ExecutionModeVecTypeHint: root::spv::ExecutionMode = 30;
pub const ExecutionMode_ExecutionModeContractionOff: root::spv::ExecutionMode = 31;
pub const ExecutionMode_ExecutionModeInitializer: root::spv::ExecutionMode = 33;
pub const ExecutionMode_ExecutionModeFinalizer: root::spv::ExecutionMode = 34;
pub const ExecutionMode_ExecutionModeSubgroupSize: root::spv::ExecutionMode = 35;
pub const ExecutionMode_ExecutionModeSubgroupsPerWorkgroup: root::spv::ExecutionMode = 36;
pub const ExecutionMode_ExecutionModeSubgroupsPerWorkgroupId: root::spv::ExecutionMode = 37;
pub const ExecutionMode_ExecutionModeLocalSizeId: root::spv::ExecutionMode = 38;
pub const ExecutionMode_ExecutionModeLocalSizeHintId: root::spv::ExecutionMode = 39;
pub const ExecutionMode_ExecutionModePostDepthCoverage: root::spv::ExecutionMode = 4446;
pub const ExecutionMode_ExecutionModeDenormPreserve: root::spv::ExecutionMode = 4459;
pub const ExecutionMode_ExecutionModeDenormFlushToZero: root::spv::ExecutionMode = 4460;
pub const ExecutionMode_ExecutionModeSignedZeroInfNanPreserve: root::spv::ExecutionMode =
4461;
pub const ExecutionMode_ExecutionModeRoundingModeRTE: root::spv::ExecutionMode = 4462;
pub const ExecutionMode_ExecutionModeRoundingModeRTZ: root::spv::ExecutionMode = 4463;
pub const ExecutionMode_ExecutionModeStencilRefReplacingEXT: root::spv::ExecutionMode =
5027;
pub const ExecutionMode_ExecutionModeOutputLinesNV: root::spv::ExecutionMode = 5269;
pub const ExecutionMode_ExecutionModeOutputPrimitivesNV: root::spv::ExecutionMode = 5270;
pub const ExecutionMode_ExecutionModeDerivativeGroupQuadsNV: root::spv::ExecutionMode =
5289;
pub const ExecutionMode_ExecutionModeDerivativeGroupLinearNV: root::spv::ExecutionMode =
5290;
pub const ExecutionMode_ExecutionModeOutputTrianglesNV: root::spv::ExecutionMode = 5298;
pub const ExecutionMode_ExecutionModePixelInterlockOrderedEXT: root::spv::ExecutionMode =
5366;
pub const ExecutionMode_ExecutionModePixelInterlockUnorderedEXT: root::spv::ExecutionMode =
5367;
pub const ExecutionMode_ExecutionModeSampleInterlockOrderedEXT: root::spv::ExecutionMode =
5368;
pub const ExecutionMode_ExecutionModeSampleInterlockUnorderedEXT: root::spv::ExecutionMode =
5369;
pub const ExecutionMode_ExecutionModeShadingRateInterlockOrderedEXT:
root::spv::ExecutionMode = 5370;
pub const ExecutionMode_ExecutionModeShadingRateInterlockUnorderedEXT:
root::spv::ExecutionMode = 5371;
pub const ExecutionMode_ExecutionModeMax: root::spv::ExecutionMode = 2147483647;
pub type ExecutionMode = u32;
pub const StorageClass_StorageClassUniformConstant: root::spv::StorageClass = 0;
pub const StorageClass_StorageClassInput: root::spv::StorageClass = 1;
pub const StorageClass_StorageClassUniform: root::spv::StorageClass = 2;
pub const StorageClass_StorageClassOutput: root::spv::StorageClass = 3;
pub const StorageClass_StorageClassWorkgroup: root::spv::StorageClass = 4;
pub const StorageClass_StorageClassCrossWorkgroup: root::spv::StorageClass = 5;
pub const StorageClass_StorageClassPrivate: root::spv::StorageClass = 6;
pub const StorageClass_StorageClassFunction: root::spv::StorageClass = 7;
pub const StorageClass_StorageClassGeneric: root::spv::StorageClass = 8;
pub const StorageClass_StorageClassPushConstant: root::spv::StorageClass = 9;
pub const StorageClass_StorageClassAtomicCounter: root::spv::StorageClass = 10;
pub const StorageClass_StorageClassImage: root::spv::StorageClass = 11;
pub const StorageClass_StorageClassStorageBuffer: root::spv::StorageClass = 12;
pub const StorageClass_StorageClassCallableDataKHR: root::spv::StorageClass = 5328;
pub const StorageClass_StorageClassCallableDataNV: root::spv::StorageClass = 5328;
pub const StorageClass_StorageClassIncomingCallableDataKHR: root::spv::StorageClass = 5329;
pub const StorageClass_StorageClassIncomingCallableDataNV: root::spv::StorageClass = 5329;
pub const StorageClass_StorageClassRayPayloadKHR: root::spv::StorageClass = 5338;
pub const StorageClass_StorageClassRayPayloadNV: root::spv::StorageClass = 5338;
pub const StorageClass_StorageClassHitAttributeKHR: root::spv::StorageClass = 5339;
pub const StorageClass_StorageClassHitAttributeNV: root::spv::StorageClass = 5339;
pub const StorageClass_StorageClassIncomingRayPayloadKHR: root::spv::StorageClass = 5342;
pub const StorageClass_StorageClassIncomingRayPayloadNV: root::spv::StorageClass = 5342;
pub const StorageClass_StorageClassShaderRecordBufferKHR: root::spv::StorageClass = 5343;
pub const StorageClass_StorageClassShaderRecordBufferNV: root::spv::StorageClass = 5343;
pub const StorageClass_StorageClassPhysicalStorageBuffer: root::spv::StorageClass = 5349;
pub const StorageClass_StorageClassPhysicalStorageBufferEXT: root::spv::StorageClass = 5349;
pub const StorageClass_StorageClassMax: root::spv::StorageClass = 2147483647;
pub type StorageClass = u32;
pub const Dim_Dim1D: root::spv::Dim = 0;
pub const Dim_Dim2D: root::spv::Dim = 1;
pub const Dim_Dim3D: root::spv::Dim = 2;
pub const Dim_DimCube: root::spv::Dim = 3;
pub const Dim_DimRect: root::spv::Dim = 4;
pub const Dim_DimBuffer: root::spv::Dim = 5;
pub const Dim_DimSubpassData: root::spv::Dim = 6;
pub const Dim_DimMax: root::spv::Dim = 2147483647;
pub type Dim = u32;
pub const SamplerAddressingMode_SamplerAddressingModeNone:
root::spv::SamplerAddressingMode = 0;
pub const SamplerAddressingMode_SamplerAddressingModeClampToEdge:
root::spv::SamplerAddressingMode = 1;
pub const SamplerAddressingMode_SamplerAddressingModeClamp:
root::spv::SamplerAddressingMode = 2;
pub const SamplerAddressingMode_SamplerAddressingModeRepeat:
root::spv::SamplerAddressingMode = 3;
pub const SamplerAddressingMode_SamplerAddressingModeRepeatMirrored:
root::spv::SamplerAddressingMode = 4;
pub const SamplerAddressingMode_SamplerAddressingModeMax: root::spv::SamplerAddressingMode =
2147483647;
pub type SamplerAddressingMode = u32;
pub const SamplerFilterMode_SamplerFilterModeNearest: root::spv::SamplerFilterMode = 0;
pub const SamplerFilterMode_SamplerFilterModeLinear: root::spv::SamplerFilterMode = 1;
pub const SamplerFilterMode_SamplerFilterModeMax: root::spv::SamplerFilterMode = 2147483647;
pub type SamplerFilterMode = u32;
pub const ImageFormat_ImageFormatUnknown: root::spv::ImageFormat = 0;
pub const ImageFormat_ImageFormatRgba32f: root::spv::ImageFormat = 1;
pub const ImageFormat_ImageFormatRgba16f: root::spv::ImageFormat = 2;
pub const ImageFormat_ImageFormatR32f: root::spv::ImageFormat = 3;
pub const ImageFormat_ImageFormatRgba8: root::spv::ImageFormat = 4;
pub const ImageFormat_ImageFormatRgba8Snorm: root::spv::ImageFormat = 5;
pub const ImageFormat_ImageFormatRg32f: root::spv::ImageFormat = 6;
pub const ImageFormat_ImageFormatRg16f: root::spv::ImageFormat = 7;
pub const ImageFormat_ImageFormatR11fG11fB10f: root::spv::ImageFormat = 8;
pub const ImageFormat_ImageFormatR16f: root::spv::ImageFormat = 9;
pub const ImageFormat_ImageFormatRgba16: root::spv::ImageFormat = 10;
pub const ImageFormat_ImageFormatRgb10A2: root::spv::ImageFormat = 11;
pub const ImageFormat_ImageFormatRg16: root::spv::ImageFormat = 12;
pub const ImageFormat_ImageFormatRg8: root::spv::ImageFormat = 13;
pub const ImageFormat_ImageFormatR16: root::spv::ImageFormat = 14;
pub const ImageFormat_ImageFormatR8: root::spv::ImageFormat = 15;
pub const ImageFormat_ImageFormatRgba16Snorm: root::spv::ImageFormat = 16;
pub const ImageFormat_ImageFormatRg16Snorm: root::spv::ImageFormat = 17;
pub const ImageFormat_ImageFormatRg8Snorm: root::spv::ImageFormat = 18;
pub const ImageFormat_ImageFormatR16Snorm: root::spv::ImageFormat = 19;
pub const ImageFormat_ImageFormatR8Snorm: root::spv::ImageFormat = 20;
pub const ImageFormat_ImageFormatRgba32i: root::spv::ImageFormat = 21;
pub const ImageFormat_ImageFormatRgba16i: root::spv::ImageFormat = 22;
pub const ImageFormat_ImageFormatRgba8i: root::spv::ImageFormat = 23;
pub const ImageFormat_ImageFormatR32i: root::spv::ImageFormat = 24;
pub const ImageFormat_ImageFormatRg32i: root::spv::ImageFormat = 25;
pub const ImageFormat_ImageFormatRg16i: root::spv::ImageFormat = 26;
pub const ImageFormat_ImageFormatRg8i: root::spv::ImageFormat = 27;
pub const ImageFormat_ImageFormatR16i: root::spv::ImageFormat = 28;
pub const ImageFormat_ImageFormatR8i: root::spv::ImageFormat = 29;
pub const ImageFormat_ImageFormatRgba32ui: root::spv::ImageFormat = 30;
pub const ImageFormat_ImageFormatRgba16ui: root::spv::ImageFormat = 31;
pub const ImageFormat_ImageFormatRgba8ui: root::spv::ImageFormat = 32;
pub const ImageFormat_ImageFormatR32ui: root::spv::ImageFormat = 33;
pub const ImageFormat_ImageFormatRgb10a2ui: root::spv::ImageFormat = 34;
pub const ImageFormat_ImageFormatRg32ui: root::spv::ImageFormat = 35;
pub const ImageFormat_ImageFormatRg16ui: root::spv::ImageFormat = 36;
pub const ImageFormat_ImageFormatRg8ui: root::spv::ImageFormat = 37;
pub const ImageFormat_ImageFormatR16ui: root::spv::ImageFormat = 38;
pub const ImageFormat_ImageFormatR8ui: root::spv::ImageFormat = 39;
pub const ImageFormat_ImageFormatMax: root::spv::ImageFormat = 2147483647;
pub type ImageFormat = u32;
pub const ImageChannelOrder_ImageChannelOrderR: root::spv::ImageChannelOrder = 0;
pub const ImageChannelOrder_ImageChannelOrderA: root::spv::ImageChannelOrder = 1;
pub const ImageChannelOrder_ImageChannelOrderRG: root::spv::ImageChannelOrder = 2;
pub const ImageChannelOrder_ImageChannelOrderRA: root::spv::ImageChannelOrder = 3;
pub const ImageChannelOrder_ImageChannelOrderRGB: root::spv::ImageChannelOrder = 4;
pub const ImageChannelOrder_ImageChannelOrderRGBA: root::spv::ImageChannelOrder = 5;
pub const ImageChannelOrder_ImageChannelOrderBGRA: root::spv::ImageChannelOrder = 6;
pub const ImageChannelOrder_ImageChannelOrderARGB: root::spv::ImageChannelOrder = 7;
pub const ImageChannelOrder_ImageChannelOrderIntensity: root::spv::ImageChannelOrder = 8;
pub const ImageChannelOrder_ImageChannelOrderLuminance: root::spv::ImageChannelOrder = 9;
pub const ImageChannelOrder_ImageChannelOrderRx: root::spv::ImageChannelOrder = 10;
pub const ImageChannelOrder_ImageChannelOrderRGx: root::spv::ImageChannelOrder = 11;
pub const ImageChannelOrder_ImageChannelOrderRGBx: root::spv::ImageChannelOrder = 12;
pub const ImageChannelOrder_ImageChannelOrderDepth: root::spv::ImageChannelOrder = 13;
pub const ImageChannelOrder_ImageChannelOrderDepthStencil: root::spv::ImageChannelOrder =
14;
pub const ImageChannelOrder_ImageChannelOrdersRGB: root::spv::ImageChannelOrder = 15;
pub const ImageChannelOrder_ImageChannelOrdersRGBx: root::spv::ImageChannelOrder = 16;
pub const ImageChannelOrder_ImageChannelOrdersRGBA: root::spv::ImageChannelOrder = 17;
pub const ImageChannelOrder_ImageChannelOrdersBGRA: root::spv::ImageChannelOrder = 18;
pub const ImageChannelOrder_ImageChannelOrderABGR: root::spv::ImageChannelOrder = 19;
pub const ImageChannelOrder_ImageChannelOrderMax: root::spv::ImageChannelOrder = 2147483647;
pub type ImageChannelOrder = u32;
pub const ImageChannelDataType_ImageChannelDataTypeSnormInt8:
root::spv::ImageChannelDataType = 0;
pub const ImageChannelDataType_ImageChannelDataTypeSnormInt16:
root::spv::ImageChannelDataType = 1;
pub const ImageChannelDataType_ImageChannelDataTypeUnormInt8:
root::spv::ImageChannelDataType = 2;
pub const ImageChannelDataType_ImageChannelDataTypeUnormInt16:
root::spv::ImageChannelDataType = 3;
pub const ImageChannelDataType_ImageChannelDataTypeUnormShort565:
root::spv::ImageChannelDataType = 4;
pub const ImageChannelDataType_ImageChannelDataTypeUnormShort555:
root::spv::ImageChannelDataType = 5;
pub const ImageChannelDataType_ImageChannelDataTypeUnormInt101010:
root::spv::ImageChannelDataType = 6;
pub const ImageChannelDataType_ImageChannelDataTypeSignedInt8:
root::spv::ImageChannelDataType = 7;
pub const ImageChannelDataType_ImageChannelDataTypeSignedInt16:
root::spv::ImageChannelDataType = 8;
pub const ImageChannelDataType_ImageChannelDataTypeSignedInt32:
root::spv::ImageChannelDataType = 9;
pub const ImageChannelDataType_ImageChannelDataTypeUnsignedInt8:
root::spv::ImageChannelDataType = 10;
pub const ImageChannelDataType_ImageChannelDataTypeUnsignedInt16:
root::spv::ImageChannelDataType = 11;
pub const ImageChannelDataType_ImageChannelDataTypeUnsignedInt32:
root::spv::ImageChannelDataType = 12;
pub const ImageChannelDataType_ImageChannelDataTypeHalfFloat:
root::spv::ImageChannelDataType = 13;
pub const ImageChannelDataType_ImageChannelDataTypeFloat: root::spv::ImageChannelDataType =
14;
pub const ImageChannelDataType_ImageChannelDataTypeUnormInt24:
root::spv::ImageChannelDataType = 15;
pub const ImageChannelDataType_ImageChannelDataTypeUnormInt101010_2:
root::spv::ImageChannelDataType = 16;
pub const ImageChannelDataType_ImageChannelDataTypeMax: root::spv::ImageChannelDataType =
2147483647;
pub type ImageChannelDataType = u32;
pub const ImageOperandsShift_ImageOperandsBiasShift: root::spv::ImageOperandsShift = 0;
pub const ImageOperandsShift_ImageOperandsLodShift: root::spv::ImageOperandsShift = 1;
pub const ImageOperandsShift_ImageOperandsGradShift: root::spv::ImageOperandsShift = 2;
pub const ImageOperandsShift_ImageOperandsConstOffsetShift: root::spv::ImageOperandsShift =
3;
pub const ImageOperandsShift_ImageOperandsOffsetShift: root::spv::ImageOperandsShift = 4;
pub const ImageOperandsShift_ImageOperandsConstOffsetsShift: root::spv::ImageOperandsShift =
5;
pub const ImageOperandsShift_ImageOperandsSampleShift: root::spv::ImageOperandsShift = 6;
pub const ImageOperandsShift_ImageOperandsMinLodShift: root::spv::ImageOperandsShift = 7;
pub const ImageOperandsShift_ImageOperandsMakeTexelAvailableShift:
root::spv::ImageOperandsShift = 8;
pub const ImageOperandsShift_ImageOperandsMakeTexelAvailableKHRShift:
root::spv::ImageOperandsShift = 8;
pub const ImageOperandsShift_ImageOperandsMakeTexelVisibleShift:
root::spv::ImageOperandsShift = 9;
pub const ImageOperandsShift_ImageOperandsMakeTexelVisibleKHRShift:
root::spv::ImageOperandsShift = 9;
pub const ImageOperandsShift_ImageOperandsNonPrivateTexelShift:
root::spv::ImageOperandsShift = 10;
pub const ImageOperandsShift_ImageOperandsNonPrivateTexelKHRShift:
root::spv::ImageOperandsShift = 10;
pub const ImageOperandsShift_ImageOperandsVolatileTexelShift:
root::spv::ImageOperandsShift = 11;
pub const ImageOperandsShift_ImageOperandsVolatileTexelKHRShift:
root::spv::ImageOperandsShift = 11;
pub const ImageOperandsShift_ImageOperandsSignExtendShift: root::spv::ImageOperandsShift =
12;
pub const ImageOperandsShift_ImageOperandsZeroExtendShift: root::spv::ImageOperandsShift =
13;
pub const ImageOperandsShift_ImageOperandsMax: root::spv::ImageOperandsShift = 2147483647;
pub type ImageOperandsShift = u32;
impl ImageOperandsMask {
pub const ImageOperandsMaskNone: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(0);
}
impl ImageOperandsMask {
pub const ImageOperandsBiasMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(1);
}
impl ImageOperandsMask {
pub const ImageOperandsLodMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(2);
}
impl ImageOperandsMask {
pub const ImageOperandsGradMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(4);
}
impl ImageOperandsMask {
pub const ImageOperandsConstOffsetMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(8);
}
impl ImageOperandsMask {
pub const ImageOperandsOffsetMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(16);
}
impl ImageOperandsMask {
pub const ImageOperandsConstOffsetsMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(32);
}
impl ImageOperandsMask {
pub const ImageOperandsSampleMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(64);
}
impl ImageOperandsMask {
pub const ImageOperandsMinLodMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(128);
}
impl ImageOperandsMask {
pub const ImageOperandsMakeTexelAvailableMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(256);
}
impl ImageOperandsMask {
pub const ImageOperandsMakeTexelAvailableKHRMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(256);
}
impl ImageOperandsMask {
pub const ImageOperandsMakeTexelVisibleMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(512);
}
impl ImageOperandsMask {
pub const ImageOperandsMakeTexelVisibleKHRMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(512);
}
impl ImageOperandsMask {
pub const ImageOperandsNonPrivateTexelMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(1024);
}
impl ImageOperandsMask {
pub const ImageOperandsNonPrivateTexelKHRMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(1024);
}
impl ImageOperandsMask {
pub const ImageOperandsVolatileTexelMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(2048);
}
impl ImageOperandsMask {
pub const ImageOperandsVolatileTexelKHRMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(2048);
}
impl ImageOperandsMask {
pub const ImageOperandsSignExtendMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(4096);
}
impl ImageOperandsMask {
pub const ImageOperandsZeroExtendMask: root::spv::ImageOperandsMask =
root::spv::ImageOperandsMask(8192);
}
impl ::std::ops::BitOr<root::spv::ImageOperandsMask> for root::spv::ImageOperandsMask {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
ImageOperandsMask(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::ImageOperandsMask {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::ImageOperandsMask) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::ImageOperandsMask> for root::spv::ImageOperandsMask {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
ImageOperandsMask(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::ImageOperandsMask {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::ImageOperandsMask) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct ImageOperandsMask(pub u32);
pub const FPFastMathModeShift_FPFastMathModeNotNaNShift: root::spv::FPFastMathModeShift = 0;
pub const FPFastMathModeShift_FPFastMathModeNotInfShift: root::spv::FPFastMathModeShift = 1;
pub const FPFastMathModeShift_FPFastMathModeNSZShift: root::spv::FPFastMathModeShift = 2;
pub const FPFastMathModeShift_FPFastMathModeAllowRecipShift:
root::spv::FPFastMathModeShift = 3;
pub const FPFastMathModeShift_FPFastMathModeFastShift: root::spv::FPFastMathModeShift = 4;
pub const FPFastMathModeShift_FPFastMathModeMax: root::spv::FPFastMathModeShift =
2147483647;
pub type FPFastMathModeShift = u32;
impl FPFastMathModeMask {
pub const FPFastMathModeMaskNone: root::spv::FPFastMathModeMask =
root::spv::FPFastMathModeMask(0);
}
impl FPFastMathModeMask {
pub const FPFastMathModeNotNaNMask: root::spv::FPFastMathModeMask =
root::spv::FPFastMathModeMask(1);
}
impl FPFastMathModeMask {
pub const FPFastMathModeNotInfMask: root::spv::FPFastMathModeMask =
root::spv::FPFastMathModeMask(2);
}
impl FPFastMathModeMask {
pub const FPFastMathModeNSZMask: root::spv::FPFastMathModeMask =
root::spv::FPFastMathModeMask(4);
}
impl FPFastMathModeMask {
pub const FPFastMathModeAllowRecipMask: root::spv::FPFastMathModeMask =
root::spv::FPFastMathModeMask(8);
}
impl FPFastMathModeMask {
pub const FPFastMathModeFastMask: root::spv::FPFastMathModeMask =
root::spv::FPFastMathModeMask(16);
}
impl ::std::ops::BitOr<root::spv::FPFastMathModeMask> for root::spv::FPFastMathModeMask {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
FPFastMathModeMask(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::FPFastMathModeMask {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::FPFastMathModeMask) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::FPFastMathModeMask> for root::spv::FPFastMathModeMask {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
FPFastMathModeMask(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::FPFastMathModeMask {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::FPFastMathModeMask) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct FPFastMathModeMask(pub u32);
pub const FPRoundingMode_FPRoundingModeRTE: root::spv::FPRoundingMode = 0;
pub const FPRoundingMode_FPRoundingModeRTZ: root::spv::FPRoundingMode = 1;
pub const FPRoundingMode_FPRoundingModeRTP: root::spv::FPRoundingMode = 2;
pub const FPRoundingMode_FPRoundingModeRTN: root::spv::FPRoundingMode = 3;
pub const FPRoundingMode_FPRoundingModeMax: root::spv::FPRoundingMode = 2147483647;
pub type FPRoundingMode = u32;
pub const LinkageType_LinkageTypeExport: root::spv::LinkageType = 0;
pub const LinkageType_LinkageTypeImport: root::spv::LinkageType = 1;
pub const LinkageType_LinkageTypeMax: root::spv::LinkageType = 2147483647;
pub type LinkageType = u32;
pub const AccessQualifier_AccessQualifierReadOnly: root::spv::AccessQualifier = 0;
pub const AccessQualifier_AccessQualifierWriteOnly: root::spv::AccessQualifier = 1;
pub const AccessQualifier_AccessQualifierReadWrite: root::spv::AccessQualifier = 2;
pub const AccessQualifier_AccessQualifierMax: root::spv::AccessQualifier = 2147483647;
pub type AccessQualifier = u32;
pub const FunctionParameterAttribute_FunctionParameterAttributeZext:
root::spv::FunctionParameterAttribute = 0;
pub const FunctionParameterAttribute_FunctionParameterAttributeSext:
root::spv::FunctionParameterAttribute = 1;
pub const FunctionParameterAttribute_FunctionParameterAttributeByVal:
root::spv::FunctionParameterAttribute = 2;
pub const FunctionParameterAttribute_FunctionParameterAttributeSret:
root::spv::FunctionParameterAttribute = 3;
pub const FunctionParameterAttribute_FunctionParameterAttributeNoAlias:
root::spv::FunctionParameterAttribute = 4;
pub const FunctionParameterAttribute_FunctionParameterAttributeNoCapture:
root::spv::FunctionParameterAttribute = 5;
pub const FunctionParameterAttribute_FunctionParameterAttributeNoWrite:
root::spv::FunctionParameterAttribute = 6;
pub const FunctionParameterAttribute_FunctionParameterAttributeNoReadWrite:
root::spv::FunctionParameterAttribute = 7;
pub const FunctionParameterAttribute_FunctionParameterAttributeMax:
root::spv::FunctionParameterAttribute = 2147483647;
pub type FunctionParameterAttribute = u32;
impl root::spv::Decoration {
pub const DecorationNonUniformEXT: root::spv::Decoration =
Decoration::DecorationNonUniform;
}
impl root::spv::Decoration {
pub const DecorationRestrictPointerEXT: root::spv::Decoration =
Decoration::DecorationRestrictPointer;
}
impl root::spv::Decoration {
pub const DecorationAliasedPointerEXT: root::spv::Decoration =
Decoration::DecorationAliasedPointer;
}
impl root::spv::Decoration {
pub const DecorationHlslCounterBufferGOOGLE: root::spv::Decoration =
Decoration::DecorationCounterBuffer;
}
impl root::spv::Decoration {
pub const DecorationUserSemantic: root::spv::Decoration =
Decoration::DecorationHlslSemanticGOOGLE;
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum Decoration {
DecorationRelaxedPrecision = 0,
DecorationSpecId = 1,
DecorationBlock = 2,
DecorationBufferBlock = 3,
DecorationRowMajor = 4,
DecorationColMajor = 5,
DecorationArrayStride = 6,
DecorationMatrixStride = 7,
DecorationGLSLShared = 8,
DecorationGLSLPacked = 9,
DecorationCPacked = 10,
DecorationBuiltIn = 11,
DecorationNoPerspective = 13,
DecorationFlat = 14,
DecorationPatch = 15,
DecorationCentroid = 16,
DecorationSample = 17,
DecorationInvariant = 18,
DecorationRestrict = 19,
DecorationAliased = 20,
DecorationVolatile = 21,
DecorationConstant = 22,
DecorationCoherent = 23,
DecorationNonWritable = 24,
DecorationNonReadable = 25,
DecorationUniform = 26,
DecorationUniformId = 27,
DecorationSaturatedConversion = 28,
DecorationStream = 29,
DecorationLocation = 30,
DecorationComponent = 31,
DecorationIndex = 32,
DecorationBinding = 33,
DecorationDescriptorSet = 34,
DecorationOffset = 35,
DecorationXfbBuffer = 36,
DecorationXfbStride = 37,
DecorationFuncParamAttr = 38,
DecorationFPRoundingMode = 39,
DecorationFPFastMathMode = 40,
DecorationLinkageAttributes = 41,
DecorationNoContraction = 42,
DecorationInputAttachmentIndex = 43,
DecorationAlignment = 44,
DecorationMaxByteOffset = 45,
DecorationAlignmentId = 46,
DecorationMaxByteOffsetId = 47,
DecorationNoSignedWrap = 4469,
DecorationNoUnsignedWrap = 4470,
DecorationExplicitInterpAMD = 4999,
DecorationOverrideCoverageNV = 5248,
DecorationPassthroughNV = 5250,
DecorationViewportRelativeNV = 5252,
DecorationSecondaryViewportRelativeNV = 5256,
DecorationPerPrimitiveNV = 5271,
DecorationPerViewNV = 5272,
DecorationPerTaskNV = 5273,
DecorationPerVertexNV = 5285,
DecorationNonUniform = 5300,
DecorationRestrictPointer = 5355,
DecorationAliasedPointer = 5356,
DecorationCounterBuffer = 5634,
DecorationHlslSemanticGOOGLE = 5635,
DecorationUserTypeGOOGLE = 5636,
DecorationMax = 2147483647,
}
impl root::spv::BuiltIn {
pub const BuiltInSubgroupEqMaskKHR: root::spv::BuiltIn = BuiltIn::BuiltInSubgroupEqMask;
}
impl root::spv::BuiltIn {
pub const BuiltInSubgroupGeMaskKHR: root::spv::BuiltIn = BuiltIn::BuiltInSubgroupGeMask;
}
impl root::spv::BuiltIn {
pub const BuiltInSubgroupGtMaskKHR: root::spv::BuiltIn = BuiltIn::BuiltInSubgroupGtMask;
}
impl root::spv::BuiltIn {
pub const BuiltInSubgroupLeMaskKHR: root::spv::BuiltIn = BuiltIn::BuiltInSubgroupLeMask;
}
impl root::spv::BuiltIn {
pub const BuiltInSubgroupLtMaskKHR: root::spv::BuiltIn = BuiltIn::BuiltInSubgroupLtMask;
}
impl root::spv::BuiltIn {
pub const BuiltInFragmentSizeNV: root::spv::BuiltIn = BuiltIn::BuiltInFragSizeEXT;
}
impl root::spv::BuiltIn {
pub const BuiltInInvocationsPerPixelNV: root::spv::BuiltIn =
BuiltIn::BuiltInFragInvocationCountEXT;
}
impl root::spv::BuiltIn {
pub const BuiltInLaunchIdNV: root::spv::BuiltIn = BuiltIn::BuiltInLaunchIdKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInLaunchSizeNV: root::spv::BuiltIn = BuiltIn::BuiltInLaunchSizeKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInWorldRayOriginNV: root::spv::BuiltIn =
BuiltIn::BuiltInWorldRayOriginKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInWorldRayDirectionNV: root::spv::BuiltIn =
BuiltIn::BuiltInWorldRayDirectionKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInObjectRayOriginNV: root::spv::BuiltIn =
BuiltIn::BuiltInObjectRayOriginKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInObjectRayDirectionNV: root::spv::BuiltIn =
BuiltIn::BuiltInObjectRayDirectionKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInRayTminNV: root::spv::BuiltIn = BuiltIn::BuiltInRayTminKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInRayTmaxNV: root::spv::BuiltIn = BuiltIn::BuiltInRayTmaxKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInInstanceCustomIndexNV: root::spv::BuiltIn =
BuiltIn::BuiltInInstanceCustomIndexKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInObjectToWorldNV: root::spv::BuiltIn = BuiltIn::BuiltInObjectToWorldKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInWorldToObjectNV: root::spv::BuiltIn = BuiltIn::BuiltInWorldToObjectKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInHitTNV: root::spv::BuiltIn = BuiltIn::BuiltInHitTKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInHitKindNV: root::spv::BuiltIn = BuiltIn::BuiltInHitKindKHR;
}
impl root::spv::BuiltIn {
pub const BuiltInIncomingRayFlagsNV: root::spv::BuiltIn =
BuiltIn::BuiltInIncomingRayFlagsKHR;
}
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum BuiltIn {
BuiltInPosition = 0,
BuiltInPointSize = 1,
BuiltInClipDistance = 3,
BuiltInCullDistance = 4,
BuiltInVertexId = 5,
BuiltInInstanceId = 6,
BuiltInPrimitiveId = 7,
BuiltInInvocationId = 8,
BuiltInLayer = 9,
BuiltInViewportIndex = 10,
BuiltInTessLevelOuter = 11,
BuiltInTessLevelInner = 12,
BuiltInTessCoord = 13,
BuiltInPatchVertices = 14,
BuiltInFragCoord = 15,
BuiltInPointCoord = 16,
BuiltInFrontFacing = 17,
BuiltInSampleId = 18,
BuiltInSamplePosition = 19,
BuiltInSampleMask = 20,
BuiltInFragDepth = 22,
BuiltInHelperInvocation = 23,
BuiltInNumWorkgroups = 24,
BuiltInWorkgroupSize = 25,
BuiltInWorkgroupId = 26,
BuiltInLocalInvocationId = 27,
BuiltInGlobalInvocationId = 28,
BuiltInLocalInvocationIndex = 29,
BuiltInWorkDim = 30,
BuiltInGlobalSize = 31,
BuiltInEnqueuedWorkgroupSize = 32,
BuiltInGlobalOffset = 33,
BuiltInGlobalLinearId = 34,
BuiltInSubgroupSize = 36,
BuiltInSubgroupMaxSize = 37,
BuiltInNumSubgroups = 38,
BuiltInNumEnqueuedSubgroups = 39,
BuiltInSubgroupId = 40,
BuiltInSubgroupLocalInvocationId = 41,
BuiltInVertexIndex = 42,
BuiltInInstanceIndex = 43,
BuiltInSubgroupEqMask = 4416,
BuiltInSubgroupGeMask = 4417,
BuiltInSubgroupGtMask = 4418,
BuiltInSubgroupLeMask = 4419,
BuiltInSubgroupLtMask = 4420,
BuiltInBaseVertex = 4424,
BuiltInBaseInstance = 4425,
BuiltInDrawIndex = 4426,
BuiltInDeviceIndex = 4438,
BuiltInViewIndex = 4440,
BuiltInBaryCoordNoPerspAMD = 4992,
BuiltInBaryCoordNoPerspCentroidAMD = 4993,
BuiltInBaryCoordNoPerspSampleAMD = 4994,
BuiltInBaryCoordSmoothAMD = 4995,
BuiltInBaryCoordSmoothCentroidAMD = 4996,
BuiltInBaryCoordSmoothSampleAMD = 4997,
BuiltInBaryCoordPullModelAMD = 4998,
BuiltInFragStencilRefEXT = 5014,
BuiltInViewportMaskNV = 5253,
BuiltInSecondaryPositionNV = 5257,
BuiltInSecondaryViewportMaskNV = 5258,
BuiltInPositionPerViewNV = 5261,
BuiltInViewportMaskPerViewNV = 5262,
BuiltInFullyCoveredEXT = 5264,
BuiltInTaskCountNV = 5274,
BuiltInPrimitiveCountNV = 5275,
BuiltInPrimitiveIndicesNV = 5276,
BuiltInClipDistancePerViewNV = 5277,
BuiltInCullDistancePerViewNV = 5278,
BuiltInLayerPerViewNV = 5279,
BuiltInMeshViewCountNV = 5280,
BuiltInMeshViewIndicesNV = 5281,
BuiltInBaryCoordNV = 5286,
BuiltInBaryCoordNoPerspNV = 5287,
BuiltInFragSizeEXT = 5292,
BuiltInFragInvocationCountEXT = 5293,
BuiltInLaunchIdKHR = 5319,
BuiltInLaunchSizeKHR = 5320,
BuiltInWorldRayOriginKHR = 5321,
BuiltInWorldRayDirectionKHR = 5322,
BuiltInObjectRayOriginKHR = 5323,
BuiltInObjectRayDirectionKHR = 5324,
BuiltInRayTminKHR = 5325,
BuiltInRayTmaxKHR = 5326,
BuiltInInstanceCustomIndexKHR = 5327,
BuiltInObjectToWorldKHR = 5330,
BuiltInWorldToObjectKHR = 5331,
BuiltInHitTKHR = 5332,
BuiltInHitKindKHR = 5333,
BuiltInIncomingRayFlagsKHR = 5351,
BuiltInRayGeometryIndexKHR = 5352,
BuiltInWarpsPerSMNV = 5374,
BuiltInSMCountNV = 5375,
BuiltInWarpIDNV = 5376,
BuiltInSMIDNV = 5377,
BuiltInMax = 2147483647,
}
pub const SelectionControlShift_SelectionControlFlattenShift:
root::spv::SelectionControlShift = 0;
pub const SelectionControlShift_SelectionControlDontFlattenShift:
root::spv::SelectionControlShift = 1;
pub const SelectionControlShift_SelectionControlMax: root::spv::SelectionControlShift =
2147483647;
pub type SelectionControlShift = u32;
impl SelectionControlMask {
pub const SelectionControlMaskNone: root::spv::SelectionControlMask =
root::spv::SelectionControlMask(0);
}
impl SelectionControlMask {
pub const SelectionControlFlattenMask: root::spv::SelectionControlMask =
root::spv::SelectionControlMask(1);
}
impl SelectionControlMask {
pub const SelectionControlDontFlattenMask: root::spv::SelectionControlMask =
root::spv::SelectionControlMask(2);
}
impl ::std::ops::BitOr<root::spv::SelectionControlMask> for root::spv::SelectionControlMask {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
SelectionControlMask(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::SelectionControlMask {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::SelectionControlMask) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::SelectionControlMask> for root::spv::SelectionControlMask {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
SelectionControlMask(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::SelectionControlMask {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::SelectionControlMask) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct SelectionControlMask(pub u32);
pub const LoopControlShift_LoopControlUnrollShift: root::spv::LoopControlShift = 0;
pub const LoopControlShift_LoopControlDontUnrollShift: root::spv::LoopControlShift = 1;
pub const LoopControlShift_LoopControlDependencyInfiniteShift: root::spv::LoopControlShift =
2;
pub const LoopControlShift_LoopControlDependencyLengthShift: root::spv::LoopControlShift =
3;
pub const LoopControlShift_LoopControlMinIterationsShift: root::spv::LoopControlShift = 4;
pub const LoopControlShift_LoopControlMaxIterationsShift: root::spv::LoopControlShift = 5;
pub const LoopControlShift_LoopControlIterationMultipleShift: root::spv::LoopControlShift =
6;
pub const LoopControlShift_LoopControlPeelCountShift: root::spv::LoopControlShift = 7;
pub const LoopControlShift_LoopControlPartialCountShift: root::spv::LoopControlShift = 8;
pub const LoopControlShift_LoopControlMax: root::spv::LoopControlShift = 2147483647;
pub type LoopControlShift = u32;
impl LoopControlMask {
pub const LoopControlMaskNone: root::spv::LoopControlMask =
root::spv::LoopControlMask(0);
}
impl LoopControlMask {
pub const LoopControlUnrollMask: root::spv::LoopControlMask =
root::spv::LoopControlMask(1);
}
impl LoopControlMask {
pub const LoopControlDontUnrollMask: root::spv::LoopControlMask =
root::spv::LoopControlMask(2);
}
impl LoopControlMask {
pub const LoopControlDependencyInfiniteMask: root::spv::LoopControlMask =
root::spv::LoopControlMask(4);
}
impl LoopControlMask {
pub const LoopControlDependencyLengthMask: root::spv::LoopControlMask =
root::spv::LoopControlMask(8);
}
impl LoopControlMask {
pub const LoopControlMinIterationsMask: root::spv::LoopControlMask =
root::spv::LoopControlMask(16);
}
impl LoopControlMask {
pub const LoopControlMaxIterationsMask: root::spv::LoopControlMask =
root::spv::LoopControlMask(32);
}
impl LoopControlMask {
pub const LoopControlIterationMultipleMask: root::spv::LoopControlMask =
root::spv::LoopControlMask(64);
}
impl LoopControlMask {
pub const LoopControlPeelCountMask: root::spv::LoopControlMask =
root::spv::LoopControlMask(128);
}
impl LoopControlMask {
pub const LoopControlPartialCountMask: root::spv::LoopControlMask =
root::spv::LoopControlMask(256);
}
impl ::std::ops::BitOr<root::spv::LoopControlMask> for root::spv::LoopControlMask {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
LoopControlMask(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::LoopControlMask {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::LoopControlMask) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::LoopControlMask> for root::spv::LoopControlMask {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
LoopControlMask(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::LoopControlMask {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::LoopControlMask) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct LoopControlMask(pub u32);
pub const FunctionControlShift_FunctionControlInlineShift: root::spv::FunctionControlShift =
0;
pub const FunctionControlShift_FunctionControlDontInlineShift:
root::spv::FunctionControlShift = 1;
pub const FunctionControlShift_FunctionControlPureShift: root::spv::FunctionControlShift =
2;
pub const FunctionControlShift_FunctionControlConstShift: root::spv::FunctionControlShift =
3;
pub const FunctionControlShift_FunctionControlMax: root::spv::FunctionControlShift =
2147483647;
pub type FunctionControlShift = u32;
impl FunctionControlMask {
pub const FunctionControlMaskNone: root::spv::FunctionControlMask =
root::spv::FunctionControlMask(0);
}
impl FunctionControlMask {
pub const FunctionControlInlineMask: root::spv::FunctionControlMask =
root::spv::FunctionControlMask(1);
}
impl FunctionControlMask {
pub const FunctionControlDontInlineMask: root::spv::FunctionControlMask =
root::spv::FunctionControlMask(2);
}
impl FunctionControlMask {
pub const FunctionControlPureMask: root::spv::FunctionControlMask =
root::spv::FunctionControlMask(4);
}
impl FunctionControlMask {
pub const FunctionControlConstMask: root::spv::FunctionControlMask =
root::spv::FunctionControlMask(8);
}
impl ::std::ops::BitOr<root::spv::FunctionControlMask> for root::spv::FunctionControlMask {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
FunctionControlMask(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::FunctionControlMask {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::FunctionControlMask) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::FunctionControlMask> for root::spv::FunctionControlMask {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
FunctionControlMask(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::FunctionControlMask {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::FunctionControlMask) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct FunctionControlMask(pub u32);
pub const MemorySemanticsShift_MemorySemanticsAcquireShift:
root::spv::MemorySemanticsShift = 1;
pub const MemorySemanticsShift_MemorySemanticsReleaseShift:
root::spv::MemorySemanticsShift = 2;
pub const MemorySemanticsShift_MemorySemanticsAcquireReleaseShift:
root::spv::MemorySemanticsShift = 3;
pub const MemorySemanticsShift_MemorySemanticsSequentiallyConsistentShift:
root::spv::MemorySemanticsShift = 4;
pub const MemorySemanticsShift_MemorySemanticsUniformMemoryShift:
root::spv::MemorySemanticsShift = 6;
pub const MemorySemanticsShift_MemorySemanticsSubgroupMemoryShift:
root::spv::MemorySemanticsShift = 7;
pub const MemorySemanticsShift_MemorySemanticsWorkgroupMemoryShift:
root::spv::MemorySemanticsShift = 8;
pub const MemorySemanticsShift_MemorySemanticsCrossWorkgroupMemoryShift:
root::spv::MemorySemanticsShift = 9;
pub const MemorySemanticsShift_MemorySemanticsAtomicCounterMemoryShift:
root::spv::MemorySemanticsShift = 10;
pub const MemorySemanticsShift_MemorySemanticsImageMemoryShift:
root::spv::MemorySemanticsShift = 11;
pub const MemorySemanticsShift_MemorySemanticsOutputMemoryShift:
root::spv::MemorySemanticsShift = 12;
pub const MemorySemanticsShift_MemorySemanticsOutputMemoryKHRShift:
root::spv::MemorySemanticsShift = 12;
pub const MemorySemanticsShift_MemorySemanticsMakeAvailableShift:
root::spv::MemorySemanticsShift = 13;
pub const MemorySemanticsShift_MemorySemanticsMakeAvailableKHRShift:
root::spv::MemorySemanticsShift = 13;
pub const MemorySemanticsShift_MemorySemanticsMakeVisibleShift:
root::spv::MemorySemanticsShift = 14;
pub const MemorySemanticsShift_MemorySemanticsMakeVisibleKHRShift:
root::spv::MemorySemanticsShift = 14;
pub const MemorySemanticsShift_MemorySemanticsVolatileShift:
root::spv::MemorySemanticsShift = 15;
pub const MemorySemanticsShift_MemorySemanticsMax: root::spv::MemorySemanticsShift =
2147483647;
pub type MemorySemanticsShift = u32;
impl MemorySemanticsMask {
pub const MemorySemanticsMaskNone: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(0);
}
impl MemorySemanticsMask {
pub const MemorySemanticsAcquireMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(2);
}
impl MemorySemanticsMask {
pub const MemorySemanticsReleaseMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(4);
}
impl MemorySemanticsMask {
pub const MemorySemanticsAcquireReleaseMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(8);
}
impl MemorySemanticsMask {
pub const MemorySemanticsSequentiallyConsistentMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(16);
}
impl MemorySemanticsMask {
pub const MemorySemanticsUniformMemoryMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(64);
}
impl MemorySemanticsMask {
pub const MemorySemanticsSubgroupMemoryMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(128);
}
impl MemorySemanticsMask {
pub const MemorySemanticsWorkgroupMemoryMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(256);
}
impl MemorySemanticsMask {
pub const MemorySemanticsCrossWorkgroupMemoryMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(512);
}
impl MemorySemanticsMask {
pub const MemorySemanticsAtomicCounterMemoryMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(1024);
}
impl MemorySemanticsMask {
pub const MemorySemanticsImageMemoryMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(2048);
}
impl MemorySemanticsMask {
pub const MemorySemanticsOutputMemoryMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(4096);
}
impl MemorySemanticsMask {
pub const MemorySemanticsOutputMemoryKHRMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(4096);
}
impl MemorySemanticsMask {
pub const MemorySemanticsMakeAvailableMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(8192);
}
impl MemorySemanticsMask {
pub const MemorySemanticsMakeAvailableKHRMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(8192);
}
impl MemorySemanticsMask {
pub const MemorySemanticsMakeVisibleMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(16384);
}
impl MemorySemanticsMask {
pub const MemorySemanticsMakeVisibleKHRMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(16384);
}
impl MemorySemanticsMask {
pub const MemorySemanticsVolatileMask: root::spv::MemorySemanticsMask =
root::spv::MemorySemanticsMask(32768);
}
impl ::std::ops::BitOr<root::spv::MemorySemanticsMask> for root::spv::MemorySemanticsMask {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
MemorySemanticsMask(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::MemorySemanticsMask {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::MemorySemanticsMask) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::MemorySemanticsMask> for root::spv::MemorySemanticsMask {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
MemorySemanticsMask(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::MemorySemanticsMask {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::MemorySemanticsMask) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct MemorySemanticsMask(pub u32);
pub const MemoryAccessShift_MemoryAccessVolatileShift: root::spv::MemoryAccessShift = 0;
pub const MemoryAccessShift_MemoryAccessAlignedShift: root::spv::MemoryAccessShift = 1;
pub const MemoryAccessShift_MemoryAccessNontemporalShift: root::spv::MemoryAccessShift = 2;
pub const MemoryAccessShift_MemoryAccessMakePointerAvailableShift:
root::spv::MemoryAccessShift = 3;
pub const MemoryAccessShift_MemoryAccessMakePointerAvailableKHRShift:
root::spv::MemoryAccessShift = 3;
pub const MemoryAccessShift_MemoryAccessMakePointerVisibleShift:
root::spv::MemoryAccessShift = 4;
pub const MemoryAccessShift_MemoryAccessMakePointerVisibleKHRShift:
root::spv::MemoryAccessShift = 4;
pub const MemoryAccessShift_MemoryAccessNonPrivatePointerShift:
root::spv::MemoryAccessShift = 5;
pub const MemoryAccessShift_MemoryAccessNonPrivatePointerKHRShift:
root::spv::MemoryAccessShift = 5;
pub const MemoryAccessShift_MemoryAccessMax: root::spv::MemoryAccessShift = 2147483647;
pub type MemoryAccessShift = u32;
impl MemoryAccessMask {
pub const MemoryAccessMaskNone: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(0);
}
impl MemoryAccessMask {
pub const MemoryAccessVolatileMask: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(1);
}
impl MemoryAccessMask {
pub const MemoryAccessAlignedMask: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(2);
}
impl MemoryAccessMask {
pub const MemoryAccessNontemporalMask: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(4);
}
impl MemoryAccessMask {
pub const MemoryAccessMakePointerAvailableMask: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(8);
}
impl MemoryAccessMask {
pub const MemoryAccessMakePointerAvailableKHRMask: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(8);
}
impl MemoryAccessMask {
pub const MemoryAccessMakePointerVisibleMask: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(16);
}
impl MemoryAccessMask {
pub const MemoryAccessMakePointerVisibleKHRMask: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(16);
}
impl MemoryAccessMask {
pub const MemoryAccessNonPrivatePointerMask: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(32);
}
impl MemoryAccessMask {
pub const MemoryAccessNonPrivatePointerKHRMask: root::spv::MemoryAccessMask =
root::spv::MemoryAccessMask(32);
}
impl ::std::ops::BitOr<root::spv::MemoryAccessMask> for root::spv::MemoryAccessMask {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
MemoryAccessMask(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::MemoryAccessMask {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::MemoryAccessMask) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::MemoryAccessMask> for root::spv::MemoryAccessMask {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
MemoryAccessMask(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::MemoryAccessMask {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::MemoryAccessMask) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct MemoryAccessMask(pub u32);
pub const Scope_ScopeCrossDevice: root::spv::Scope = 0;
pub const Scope_ScopeDevice: root::spv::Scope = 1;
pub const Scope_ScopeWorkgroup: root::spv::Scope = 2;
pub const Scope_ScopeSubgroup: root::spv::Scope = 3;
pub const Scope_ScopeInvocation: root::spv::Scope = 4;
pub const Scope_ScopeQueueFamily: root::spv::Scope = 5;
pub const Scope_ScopeQueueFamilyKHR: root::spv::Scope = 5;
pub const Scope_ScopeShaderCallKHR: root::spv::Scope = 6;
pub const Scope_ScopeMax: root::spv::Scope = 2147483647;
pub type Scope = u32;
pub const GroupOperation_GroupOperationReduce: root::spv::GroupOperation = 0;
pub const GroupOperation_GroupOperationInclusiveScan: root::spv::GroupOperation = 1;
pub const GroupOperation_GroupOperationExclusiveScan: root::spv::GroupOperation = 2;
pub const GroupOperation_GroupOperationClusteredReduce: root::spv::GroupOperation = 3;
pub const GroupOperation_GroupOperationPartitionedReduceNV: root::spv::GroupOperation = 6;
pub const GroupOperation_GroupOperationPartitionedInclusiveScanNV:
root::spv::GroupOperation = 7;
pub const GroupOperation_GroupOperationPartitionedExclusiveScanNV:
root::spv::GroupOperation = 8;
pub const GroupOperation_GroupOperationMax: root::spv::GroupOperation = 2147483647;
pub type GroupOperation = u32;
impl KernelEnqueueFlags {
pub const KernelEnqueueFlagsNoWait: root::spv::KernelEnqueueFlags =
root::spv::KernelEnqueueFlags(0);
}
impl KernelEnqueueFlags {
pub const KernelEnqueueFlagsWaitKernel: root::spv::KernelEnqueueFlags =
root::spv::KernelEnqueueFlags(1);
}
impl KernelEnqueueFlags {
pub const KernelEnqueueFlagsWaitWorkGroup: root::spv::KernelEnqueueFlags =
root::spv::KernelEnqueueFlags(2);
}
impl KernelEnqueueFlags {
pub const KernelEnqueueFlagsMax: root::spv::KernelEnqueueFlags =
root::spv::KernelEnqueueFlags(2147483647);
}
impl ::std::ops::BitOr<root::spv::KernelEnqueueFlags> for root::spv::KernelEnqueueFlags {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
KernelEnqueueFlags(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::KernelEnqueueFlags {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::KernelEnqueueFlags) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::KernelEnqueueFlags> for root::spv::KernelEnqueueFlags {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
KernelEnqueueFlags(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::KernelEnqueueFlags {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::KernelEnqueueFlags) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct KernelEnqueueFlags(pub u32);
pub const KernelProfilingInfoShift_KernelProfilingInfoCmdExecTimeShift:
root::spv::KernelProfilingInfoShift = 0;
pub const KernelProfilingInfoShift_KernelProfilingInfoMax:
root::spv::KernelProfilingInfoShift = 2147483647;
pub type KernelProfilingInfoShift = u32;
impl KernelProfilingInfoMask {
pub const KernelProfilingInfoMaskNone: root::spv::KernelProfilingInfoMask =
root::spv::KernelProfilingInfoMask(0);
}
impl KernelProfilingInfoMask {
pub const KernelProfilingInfoCmdExecTimeMask: root::spv::KernelProfilingInfoMask =
root::spv::KernelProfilingInfoMask(1);
}
impl ::std::ops::BitOr<root::spv::KernelProfilingInfoMask> for root::spv::KernelProfilingInfoMask {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
KernelProfilingInfoMask(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::KernelProfilingInfoMask {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::KernelProfilingInfoMask) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::KernelProfilingInfoMask> for root::spv::KernelProfilingInfoMask {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
KernelProfilingInfoMask(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::KernelProfilingInfoMask {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::KernelProfilingInfoMask) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct KernelProfilingInfoMask(pub u32);
pub const Capability_CapabilityMatrix: root::spv::Capability = 0;
pub const Capability_CapabilityShader: root::spv::Capability = 1;
pub const Capability_CapabilityGeometry: root::spv::Capability = 2;
pub const Capability_CapabilityTessellation: root::spv::Capability = 3;
pub const Capability_CapabilityAddresses: root::spv::Capability = 4;
pub const Capability_CapabilityLinkage: root::spv::Capability = 5;
pub const Capability_CapabilityKernel: root::spv::Capability = 6;
pub const Capability_CapabilityVector16: root::spv::Capability = 7;
pub const Capability_CapabilityFloat16Buffer: root::spv::Capability = 8;
pub const Capability_CapabilityFloat16: root::spv::Capability = 9;
pub const Capability_CapabilityFloat64: root::spv::Capability = 10;
pub const Capability_CapabilityInt64: root::spv::Capability = 11;
pub const Capability_CapabilityInt64Atomics: root::spv::Capability = 12;
pub const Capability_CapabilityImageBasic: root::spv::Capability = 13;
pub const Capability_CapabilityImageReadWrite: root::spv::Capability = 14;
pub const Capability_CapabilityImageMipmap: root::spv::Capability = 15;
pub const Capability_CapabilityPipes: root::spv::Capability = 17;
pub const Capability_CapabilityGroups: root::spv::Capability = 18;
pub const Capability_CapabilityDeviceEnqueue: root::spv::Capability = 19;
pub const Capability_CapabilityLiteralSampler: root::spv::Capability = 20;
pub const Capability_CapabilityAtomicStorage: root::spv::Capability = 21;
pub const Capability_CapabilityInt16: root::spv::Capability = 22;
pub const Capability_CapabilityTessellationPointSize: root::spv::Capability = 23;
pub const Capability_CapabilityGeometryPointSize: root::spv::Capability = 24;
pub const Capability_CapabilityImageGatherExtended: root::spv::Capability = 25;
pub const Capability_CapabilityStorageImageMultisample: root::spv::Capability = 27;
pub const Capability_CapabilityUniformBufferArrayDynamicIndexing: root::spv::Capability =
28;
pub const Capability_CapabilitySampledImageArrayDynamicIndexing: root::spv::Capability = 29;
pub const Capability_CapabilityStorageBufferArrayDynamicIndexing: root::spv::Capability =
30;
pub const Capability_CapabilityStorageImageArrayDynamicIndexing: root::spv::Capability = 31;
pub const Capability_CapabilityClipDistance: root::spv::Capability = 32;
pub const Capability_CapabilityCullDistance: root::spv::Capability = 33;
pub const Capability_CapabilityImageCubeArray: root::spv::Capability = 34;
pub const Capability_CapabilitySampleRateShading: root::spv::Capability = 35;
pub const Capability_CapabilityImageRect: root::spv::Capability = 36;
pub const Capability_CapabilitySampledRect: root::spv::Capability = 37;
pub const Capability_CapabilityGenericPointer: root::spv::Capability = 38;
pub const Capability_CapabilityInt8: root::spv::Capability = 39;
pub const Capability_CapabilityInputAttachment: root::spv::Capability = 40;
pub const Capability_CapabilitySparseResidency: root::spv::Capability = 41;
pub const Capability_CapabilityMinLod: root::spv::Capability = 42;
pub const Capability_CapabilitySampled1D: root::spv::Capability = 43;
pub const Capability_CapabilityImage1D: root::spv::Capability = 44;
pub const Capability_CapabilitySampledCubeArray: root::spv::Capability = 45;
pub const Capability_CapabilitySampledBuffer: root::spv::Capability = 46;
pub const Capability_CapabilityImageBuffer: root::spv::Capability = 47;
pub const Capability_CapabilityImageMSArray: root::spv::Capability = 48;
pub const Capability_CapabilityStorageImageExtendedFormats: root::spv::Capability = 49;
pub const Capability_CapabilityImageQuery: root::spv::Capability = 50;
pub const Capability_CapabilityDerivativeControl: root::spv::Capability = 51;
pub const Capability_CapabilityInterpolationFunction: root::spv::Capability = 52;
pub const Capability_CapabilityTransformFeedback: root::spv::Capability = 53;
pub const Capability_CapabilityGeometryStreams: root::spv::Capability = 54;
pub const Capability_CapabilityStorageImageReadWithoutFormat: root::spv::Capability = 55;
pub const Capability_CapabilityStorageImageWriteWithoutFormat: root::spv::Capability = 56;
pub const Capability_CapabilityMultiViewport: root::spv::Capability = 57;
pub const Capability_CapabilitySubgroupDispatch: root::spv::Capability = 58;
pub const Capability_CapabilityNamedBarrier: root::spv::Capability = 59;
pub const Capability_CapabilityPipeStorage: root::spv::Capability = 60;
pub const Capability_CapabilityGroupNonUniform: root::spv::Capability = 61;
pub const Capability_CapabilityGroupNonUniformVote: root::spv::Capability = 62;
pub const Capability_CapabilityGroupNonUniformArithmetic: root::spv::Capability = 63;
pub const Capability_CapabilityGroupNonUniformBallot: root::spv::Capability = 64;
pub const Capability_CapabilityGroupNonUniformShuffle: root::spv::Capability = 65;
pub const Capability_CapabilityGroupNonUniformShuffleRelative: root::spv::Capability = 66;
pub const Capability_CapabilityGroupNonUniformClustered: root::spv::Capability = 67;
pub const Capability_CapabilityGroupNonUniformQuad: root::spv::Capability = 68;
pub const Capability_CapabilityShaderLayer: root::spv::Capability = 69;
pub const Capability_CapabilityShaderViewportIndex: root::spv::Capability = 70;
pub const Capability_CapabilitySubgroupBallotKHR: root::spv::Capability = 4423;
pub const Capability_CapabilityDrawParameters: root::spv::Capability = 4427;
pub const Capability_CapabilitySubgroupVoteKHR: root::spv::Capability = 4431;
pub const Capability_CapabilityStorageBuffer16BitAccess: root::spv::Capability = 4433;
pub const Capability_CapabilityStorageUniformBufferBlock16: root::spv::Capability = 4433;
pub const Capability_CapabilityStorageUniform16: root::spv::Capability = 4434;
pub const Capability_CapabilityUniformAndStorageBuffer16BitAccess: root::spv::Capability =
4434;
pub const Capability_CapabilityStoragePushConstant16: root::spv::Capability = 4435;
pub const Capability_CapabilityStorageInputOutput16: root::spv::Capability = 4436;
pub const Capability_CapabilityDeviceGroup: root::spv::Capability = 4437;
pub const Capability_CapabilityMultiView: root::spv::Capability = 4439;
pub const Capability_CapabilityVariablePointersStorageBuffer: root::spv::Capability = 4441;
pub const Capability_CapabilityVariablePointers: root::spv::Capability = 4442;
pub const Capability_CapabilityAtomicStorageOps: root::spv::Capability = 4445;
pub const Capability_CapabilitySampleMaskPostDepthCoverage: root::spv::Capability = 4447;
pub const Capability_CapabilityStorageBuffer8BitAccess: root::spv::Capability = 4448;
pub const Capability_CapabilityUniformAndStorageBuffer8BitAccess: root::spv::Capability =
4449;
pub const Capability_CapabilityStoragePushConstant8: root::spv::Capability = 4450;
pub const Capability_CapabilityDenormPreserve: root::spv::Capability = 4464;
pub const Capability_CapabilityDenormFlushToZero: root::spv::Capability = 4465;
pub const Capability_CapabilitySignedZeroInfNanPreserve: root::spv::Capability = 4466;
pub const Capability_CapabilityRoundingModeRTE: root::spv::Capability = 4467;
pub const Capability_CapabilityRoundingModeRTZ: root::spv::Capability = 4468;
pub const Capability_CapabilityRayQueryProvisionalKHR: root::spv::Capability = 4471;
pub const Capability_CapabilityRayTraversalPrimitiveCullingProvisionalKHR:
root::spv::Capability = 4478;
pub const Capability_CapabilityFloat16ImageAMD: root::spv::Capability = 5008;
pub const Capability_CapabilityImageGatherBiasLodAMD: root::spv::Capability = 5009;
pub const Capability_CapabilityFragmentMaskAMD: root::spv::Capability = 5010;
pub const Capability_CapabilityStencilExportEXT: root::spv::Capability = 5013;
pub const Capability_CapabilityImageReadWriteLodAMD: root::spv::Capability = 5015;
pub const Capability_CapabilityShaderClockKHR: root::spv::Capability = 5055;
pub const Capability_CapabilitySampleMaskOverrideCoverageNV: root::spv::Capability = 5249;
pub const Capability_CapabilityGeometryShaderPassthroughNV: root::spv::Capability = 5251;
pub const Capability_CapabilityShaderViewportIndexLayerEXT: root::spv::Capability = 5254;
pub const Capability_CapabilityShaderViewportIndexLayerNV: root::spv::Capability = 5254;
pub const Capability_CapabilityShaderViewportMaskNV: root::spv::Capability = 5255;
pub const Capability_CapabilityShaderStereoViewNV: root::spv::Capability = 5259;
pub const Capability_CapabilityPerViewAttributesNV: root::spv::Capability = 5260;
pub const Capability_CapabilityFragmentFullyCoveredEXT: root::spv::Capability = 5265;
pub const Capability_CapabilityMeshShadingNV: root::spv::Capability = 5266;
pub const Capability_CapabilityImageFootprintNV: root::spv::Capability = 5282;
pub const Capability_CapabilityFragmentBarycentricNV: root::spv::Capability = 5284;
pub const Capability_CapabilityComputeDerivativeGroupQuadsNV: root::spv::Capability = 5288;
pub const Capability_CapabilityFragmentDensityEXT: root::spv::Capability = 5291;
pub const Capability_CapabilityShadingRateNV: root::spv::Capability = 5291;
pub const Capability_CapabilityGroupNonUniformPartitionedNV: root::spv::Capability = 5297;
pub const Capability_CapabilityShaderNonUniform: root::spv::Capability = 5301;
pub const Capability_CapabilityShaderNonUniformEXT: root::spv::Capability = 5301;
pub const Capability_CapabilityRuntimeDescriptorArray: root::spv::Capability = 5302;
pub const Capability_CapabilityRuntimeDescriptorArrayEXT: root::spv::Capability = 5302;
pub const Capability_CapabilityInputAttachmentArrayDynamicIndexing: root::spv::Capability =
5303;
pub const Capability_CapabilityInputAttachmentArrayDynamicIndexingEXT:
root::spv::Capability = 5303;
pub const Capability_CapabilityUniformTexelBufferArrayDynamicIndexing:
root::spv::Capability = 5304;
pub const Capability_CapabilityUniformTexelBufferArrayDynamicIndexingEXT:
root::spv::Capability = 5304;
pub const Capability_CapabilityStorageTexelBufferArrayDynamicIndexing:
root::spv::Capability = 5305;
pub const Capability_CapabilityStorageTexelBufferArrayDynamicIndexingEXT:
root::spv::Capability = 5305;
pub const Capability_CapabilityUniformBufferArrayNonUniformIndexing: root::spv::Capability =
5306;
pub const Capability_CapabilityUniformBufferArrayNonUniformIndexingEXT:
root::spv::Capability = 5306;
pub const Capability_CapabilitySampledImageArrayNonUniformIndexing: root::spv::Capability =
5307;
pub const Capability_CapabilitySampledImageArrayNonUniformIndexingEXT:
root::spv::Capability = 5307;
pub const Capability_CapabilityStorageBufferArrayNonUniformIndexing: root::spv::Capability =
5308;
pub const Capability_CapabilityStorageBufferArrayNonUniformIndexingEXT:
root::spv::Capability = 5308;
pub const Capability_CapabilityStorageImageArrayNonUniformIndexing: root::spv::Capability =
5309;
pub const Capability_CapabilityStorageImageArrayNonUniformIndexingEXT:
root::spv::Capability = 5309;
pub const Capability_CapabilityInputAttachmentArrayNonUniformIndexing:
root::spv::Capability = 5310;
pub const Capability_CapabilityInputAttachmentArrayNonUniformIndexingEXT:
root::spv::Capability = 5310;
pub const Capability_CapabilityUniformTexelBufferArrayNonUniformIndexing:
root::spv::Capability = 5311;
pub const Capability_CapabilityUniformTexelBufferArrayNonUniformIndexingEXT:
root::spv::Capability = 5311;
pub const Capability_CapabilityStorageTexelBufferArrayNonUniformIndexing:
root::spv::Capability = 5312;
pub const Capability_CapabilityStorageTexelBufferArrayNonUniformIndexingEXT:
root::spv::Capability = 5312;
pub const Capability_CapabilityRayTracingNV: root::spv::Capability = 5340;
pub const Capability_CapabilityVulkanMemoryModel: root::spv::Capability = 5345;
pub const Capability_CapabilityVulkanMemoryModelKHR: root::spv::Capability = 5345;
pub const Capability_CapabilityVulkanMemoryModelDeviceScope: root::spv::Capability = 5346;
pub const Capability_CapabilityVulkanMemoryModelDeviceScopeKHR: root::spv::Capability =
5346;
pub const Capability_CapabilityPhysicalStorageBufferAddresses: root::spv::Capability = 5347;
pub const Capability_CapabilityPhysicalStorageBufferAddressesEXT: root::spv::Capability =
5347;
pub const Capability_CapabilityComputeDerivativeGroupLinearNV: root::spv::Capability = 5350;
pub const Capability_CapabilityRayTracingProvisionalKHR: root::spv::Capability = 5353;
pub const Capability_CapabilityCooperativeMatrixNV: root::spv::Capability = 5357;
pub const Capability_CapabilityFragmentShaderSampleInterlockEXT: root::spv::Capability =
5363;
pub const Capability_CapabilityFragmentShaderShadingRateInterlockEXT:
root::spv::Capability = 5372;
pub const Capability_CapabilityShaderSMBuiltinsNV: root::spv::Capability = 5373;
pub const Capability_CapabilityFragmentShaderPixelInterlockEXT: root::spv::Capability =
5378;
pub const Capability_CapabilityDemoteToHelperInvocationEXT: root::spv::Capability = 5379;
pub const Capability_CapabilitySubgroupShuffleINTEL: root::spv::Capability = 5568;
pub const Capability_CapabilitySubgroupBufferBlockIOINTEL: root::spv::Capability = 5569;
pub const Capability_CapabilitySubgroupImageBlockIOINTEL: root::spv::Capability = 5570;
pub const Capability_CapabilitySubgroupImageMediaBlockIOINTEL: root::spv::Capability = 5579;
pub const Capability_CapabilityIntegerFunctions2INTEL: root::spv::Capability = 5584;
pub const Capability_CapabilitySubgroupAvcMotionEstimationINTEL: root::spv::Capability =
5696;
pub const Capability_CapabilitySubgroupAvcMotionEstimationIntraINTEL:
root::spv::Capability = 5697;
pub const Capability_CapabilitySubgroupAvcMotionEstimationChromaINTEL:
root::spv::Capability = 5698;
pub const Capability_CapabilityMax: root::spv::Capability = 2147483647;
pub type Capability = u32;
pub const RayFlagsShift_RayFlagsOpaqueKHRShift: root::spv::RayFlagsShift = 0;
pub const RayFlagsShift_RayFlagsNoOpaqueKHRShift: root::spv::RayFlagsShift = 1;
pub const RayFlagsShift_RayFlagsTerminateOnFirstHitKHRShift: root::spv::RayFlagsShift = 2;
pub const RayFlagsShift_RayFlagsSkipClosestHitShaderKHRShift: root::spv::RayFlagsShift = 3;
pub const RayFlagsShift_RayFlagsCullBackFacingTrianglesKHRShift: root::spv::RayFlagsShift =
4;
pub const RayFlagsShift_RayFlagsCullFrontFacingTrianglesKHRShift: root::spv::RayFlagsShift =
5;
pub const RayFlagsShift_RayFlagsCullOpaqueKHRShift: root::spv::RayFlagsShift = 6;
pub const RayFlagsShift_RayFlagsCullNoOpaqueKHRShift: root::spv::RayFlagsShift = 7;
pub const RayFlagsShift_RayFlagsSkipTrianglesKHRShift: root::spv::RayFlagsShift = 8;
pub const RayFlagsShift_RayFlagsSkipAABBsKHRShift: root::spv::RayFlagsShift = 9;
pub const RayFlagsShift_RayFlagsMax: root::spv::RayFlagsShift = 2147483647;
pub type RayFlagsShift = u32;
impl RayFlagsMask {
pub const RayFlagsMaskNone: root::spv::RayFlagsMask = root::spv::RayFlagsMask(0);
}
impl RayFlagsMask {
pub const RayFlagsOpaqueKHRMask: root::spv::RayFlagsMask = root::spv::RayFlagsMask(1);
}
impl RayFlagsMask {
pub const RayFlagsNoOpaqueKHRMask: root::spv::RayFlagsMask = root::spv::RayFlagsMask(2);
}
impl RayFlagsMask {
pub const RayFlagsTerminateOnFirstHitKHRMask: root::spv::RayFlagsMask =
root::spv::RayFlagsMask(4);
}
impl RayFlagsMask {
pub const RayFlagsSkipClosestHitShaderKHRMask: root::spv::RayFlagsMask =
root::spv::RayFlagsMask(8);
}
impl RayFlagsMask {
pub const RayFlagsCullBackFacingTrianglesKHRMask: root::spv::RayFlagsMask =
root::spv::RayFlagsMask(16);
}
impl RayFlagsMask {
pub const RayFlagsCullFrontFacingTrianglesKHRMask: root::spv::RayFlagsMask =
root::spv::RayFlagsMask(32);
}
impl RayFlagsMask {
pub const RayFlagsCullOpaqueKHRMask: root::spv::RayFlagsMask =
root::spv::RayFlagsMask(64);
}
impl RayFlagsMask {
pub const RayFlagsCullNoOpaqueKHRMask: root::spv::RayFlagsMask =
root::spv::RayFlagsMask(128);
}
impl RayFlagsMask {
pub const RayFlagsSkipTrianglesKHRMask: root::spv::RayFlagsMask =
root::spv::RayFlagsMask(256);
}
impl RayFlagsMask {
pub const RayFlagsSkipAABBsKHRMask: root::spv::RayFlagsMask =
root::spv::RayFlagsMask(512);
}
impl ::std::ops::BitOr<root::spv::RayFlagsMask> for root::spv::RayFlagsMask {
type Output = Self;
#[inline]
fn bitor(self, other: Self) -> Self {
RayFlagsMask(self.0 | other.0)
}
}
impl ::std::ops::BitOrAssign for root::spv::RayFlagsMask {
#[inline]
fn bitor_assign(&mut self, rhs: root::spv::RayFlagsMask) {
self.0 |= rhs.0;
}
}
impl ::std::ops::BitAnd<root::spv::RayFlagsMask> for root::spv::RayFlagsMask {
type Output = Self;
#[inline]
fn bitand(self, other: Self) -> Self {
RayFlagsMask(self.0 & other.0)
}
}
impl ::std::ops::BitAndAssign for root::spv::RayFlagsMask {
#[inline]
fn bitand_assign(&mut self, rhs: root::spv::RayFlagsMask) {
self.0 &= rhs.0;
}
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub struct RayFlagsMask(pub u32);
pub const RayQueryIntersection_RayQueryIntersectionRayQueryCandidateIntersectionKHR:
root::spv::RayQueryIntersection = 0;
pub const RayQueryIntersection_RayQueryIntersectionRayQueryCommittedIntersectionKHR:
root::spv::RayQueryIntersection = 1;
pub const RayQueryIntersection_RayQueryIntersectionMax: root::spv::RayQueryIntersection =
2147483647;
pub type RayQueryIntersection = u32;
pub const RayQueryCommittedIntersectionType_RayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionNoneKHR : root :: spv :: RayQueryCommittedIntersectionType = 0 ;
pub const RayQueryCommittedIntersectionType_RayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionTriangleKHR : root :: spv :: RayQueryCommittedIntersectionType = 1 ;
pub const RayQueryCommittedIntersectionType_RayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionGeneratedKHR : root :: spv :: RayQueryCommittedIntersectionType = 2 ;
pub const RayQueryCommittedIntersectionType_RayQueryCommittedIntersectionTypeMax:
root::spv::RayQueryCommittedIntersectionType = 2147483647;
pub type RayQueryCommittedIntersectionType = u32;
pub const RayQueryCandidateIntersectionType_RayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionTriangleKHR : root :: spv :: RayQueryCandidateIntersectionType = 0 ;
pub const RayQueryCandidateIntersectionType_RayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionAABBKHR : root :: spv :: RayQueryCandidateIntersectionType = 1 ;
pub const RayQueryCandidateIntersectionType_RayQueryCandidateIntersectionTypeMax:
root::spv::RayQueryCandidateIntersectionType = 2147483647;
pub type RayQueryCandidateIntersectionType = u32;
pub const Op_OpNop: root::spv::Op = 0;
pub const Op_OpUndef: root::spv::Op = 1;
pub const Op_OpSourceContinued: root::spv::Op = 2;
pub const Op_OpSource: root::spv::Op = 3;
pub const Op_OpSourceExtension: root::spv::Op = 4;
pub const Op_OpName: root::spv::Op = 5;
pub const Op_OpMemberName: root::spv::Op = 6;
pub const Op_OpString: root::spv::Op = 7;
pub const Op_OpLine: root::spv::Op = 8;
pub const Op_OpExtension: root::spv::Op = 10;
pub const Op_OpExtInstImport: root::spv::Op = 11;
pub const Op_OpExtInst: root::spv::Op = 12;
pub const Op_OpMemoryModel: root::spv::Op = 14;
pub const Op_OpEntryPoint: root::spv::Op = 15;
pub const Op_OpExecutionMode: root::spv::Op = 16;
pub const Op_OpCapability: root::spv::Op = 17;
pub const Op_OpTypeVoid: root::spv::Op = 19;
pub const Op_OpTypeBool: root::spv::Op = 20;
pub const Op_OpTypeInt: root::spv::Op = 21;
pub const Op_OpTypeFloat: root::spv::Op = 22;
pub const Op_OpTypeVector: root::spv::Op = 23;
pub const Op_OpTypeMatrix: root::spv::Op = 24;
pub const Op_OpTypeImage: root::spv::Op = 25;
pub const Op_OpTypeSampler: root::spv::Op = 26;
pub const Op_OpTypeSampledImage: root::spv::Op = 27;
pub const Op_OpTypeArray: root::spv::Op = 28;
pub const Op_OpTypeRuntimeArray: root::spv::Op = 29;
pub const Op_OpTypeStruct: root::spv::Op = 30;
pub const Op_OpTypeOpaque: root::spv::Op = 31;
pub const Op_OpTypePointer: root::spv::Op = 32;
pub const Op_OpTypeFunction: root::spv::Op = 33;
pub const Op_OpTypeEvent: root::spv::Op = 34;
pub const Op_OpTypeDeviceEvent: root::spv::Op = 35;
pub const Op_OpTypeReserveId: root::spv::Op = 36;
pub const Op_OpTypeQueue: root::spv::Op = 37;
pub const Op_OpTypePipe: root::spv::Op = 38;
pub const Op_OpTypeForwardPointer: root::spv::Op = 39;
pub const Op_OpConstantTrue: root::spv::Op = 41;
pub const Op_OpConstantFalse: root::spv::Op = 42;
pub const Op_OpConstant: root::spv::Op = 43;
pub const Op_OpConstantComposite: root::spv::Op = 44;
pub const Op_OpConstantSampler: root::spv::Op = 45;
pub const Op_OpConstantNull: root::spv::Op = 46;
pub const Op_OpSpecConstantTrue: root::spv::Op = 48;
pub const Op_OpSpecConstantFalse: root::spv::Op = 49;
pub const Op_OpSpecConstant: root::spv::Op = 50;
pub const Op_OpSpecConstantComposite: root::spv::Op = 51;
pub const Op_OpSpecConstantOp: root::spv::Op = 52;
pub const Op_OpFunction: root::spv::Op = 54;
pub const Op_OpFunctionParameter: root::spv::Op = 55;
pub const Op_OpFunctionEnd: root::spv::Op = 56;
pub const Op_OpFunctionCall: root::spv::Op = 57;
pub const Op_OpVariable: root::spv::Op = 59;
pub const Op_OpImageTexelPointer: root::spv::Op = 60;
pub const Op_OpLoad: root::spv::Op = 61;
pub const Op_OpStore: root::spv::Op = 62;
pub const Op_OpCopyMemory: root::spv::Op = 63;
pub const Op_OpCopyMemorySized: root::spv::Op = 64;
pub const Op_OpAccessChain: root::spv::Op = 65;
pub const Op_OpInBoundsAccessChain: root::spv::Op = 66;
pub const Op_OpPtrAccessChain: root::spv::Op = 67;
pub const Op_OpArrayLength: root::spv::Op = 68;
pub const Op_OpGenericPtrMemSemantics: root::spv::Op = 69;
pub const Op_OpInBoundsPtrAccessChain: root::spv::Op = 70;
pub const Op_OpDecorate: root::spv::Op = 71;
pub const Op_OpMemberDecorate: root::spv::Op = 72;
pub const Op_OpDecorationGroup: root::spv::Op = 73;
pub const Op_OpGroupDecorate: root::spv::Op = 74;
pub const Op_OpGroupMemberDecorate: root::spv::Op = 75;
pub const Op_OpVectorExtractDynamic: root::spv::Op = 77;
pub const Op_OpVectorInsertDynamic: root::spv::Op = 78;
pub const Op_OpVectorShuffle: root::spv::Op = 79;
pub const Op_OpCompositeConstruct: root::spv::Op = 80;
pub const Op_OpCompositeExtract: root::spv::Op = 81;
pub const Op_OpCompositeInsert: root::spv::Op = 82;
pub const Op_OpCopyObject: root::spv::Op = 83;
pub const Op_OpTranspose: root::spv::Op = 84;
pub const Op_OpSampledImage: root::spv::Op = 86;
pub const Op_OpImageSampleImplicitLod: root::spv::Op = 87;
pub const Op_OpImageSampleExplicitLod: root::spv::Op = 88;
pub const Op_OpImageSampleDrefImplicitLod: root::spv::Op = 89;
pub const Op_OpImageSampleDrefExplicitLod: root::spv::Op = 90;
pub const Op_OpImageSampleProjImplicitLod: root::spv::Op = 91;
pub const Op_OpImageSampleProjExplicitLod: root::spv::Op = 92;
pub const Op_OpImageSampleProjDrefImplicitLod: root::spv::Op = 93;
pub const Op_OpImageSampleProjDrefExplicitLod: root::spv::Op = 94;
pub const Op_OpImageFetch: root::spv::Op = 95;
pub const Op_OpImageGather: root::spv::Op = 96;
pub const Op_OpImageDrefGather: root::spv::Op = 97;
pub const Op_OpImageRead: root::spv::Op = 98;
pub const Op_OpImageWrite: root::spv::Op = 99;
pub const Op_OpImage: root::spv::Op = 100;
pub const Op_OpImageQueryFormat: root::spv::Op = 101;
pub const Op_OpImageQueryOrder: root::spv::Op = 102;
pub const Op_OpImageQuerySizeLod: root::spv::Op = 103;
pub const Op_OpImageQuerySize: root::spv::Op = 104;
pub const Op_OpImageQueryLod: root::spv::Op = 105;
pub const Op_OpImageQueryLevels: root::spv::Op = 106;
pub const Op_OpImageQuerySamples: root::spv::Op = 107;
pub const Op_OpConvertFToU: root::spv::Op = 109;
pub const Op_OpConvertFToS: root::spv::Op = 110;
pub const Op_OpConvertSToF: root::spv::Op = 111;
pub const Op_OpConvertUToF: root::spv::Op = 112;
pub const Op_OpUConvert: root::spv::Op = 113;
pub const Op_OpSConvert: root::spv::Op = 114;
pub const Op_OpFConvert: root::spv::Op = 115;
pub const Op_OpQuantizeToF16: root::spv::Op = 116;
pub const Op_OpConvertPtrToU: root::spv::Op = 117;
pub const Op_OpSatConvertSToU: root::spv::Op = 118;
pub const Op_OpSatConvertUToS: root::spv::Op = 119;
pub const Op_OpConvertUToPtr: root::spv::Op = 120;
pub const Op_OpPtrCastToGeneric: root::spv::Op = 121;
pub const Op_OpGenericCastToPtr: root::spv::Op = 122;
pub const Op_OpGenericCastToPtrExplicit: root::spv::Op = 123;
pub const Op_OpBitcast: root::spv::Op = 124;
pub const Op_OpSNegate: root::spv::Op = 126;
pub const Op_OpFNegate: root::spv::Op = 127;
pub const Op_OpIAdd: root::spv::Op = 128;
pub const Op_OpFAdd: root::spv::Op = 129;
pub const Op_OpISub: root::spv::Op = 130;
pub const Op_OpFSub: root::spv::Op = 131;
pub const Op_OpIMul: root::spv::Op = 132;
pub const Op_OpFMul: root::spv::Op = 133;
pub const Op_OpUDiv: root::spv::Op = 134;
pub const Op_OpSDiv: root::spv::Op = 135;
pub const Op_OpFDiv: root::spv::Op = 136;
pub const Op_OpUMod: root::spv::Op = 137;
pub const Op_OpSRem: root::spv::Op = 138;
pub const Op_OpSMod: root::spv::Op = 139;
pub const Op_OpFRem: root::spv::Op = 140;
pub const Op_OpFMod: root::spv::Op = 141;
pub const Op_OpVectorTimesScalar: root::spv::Op = 142;
pub const Op_OpMatrixTimesScalar: root::spv::Op = 143;
pub const Op_OpVectorTimesMatrix: root::spv::Op = 144;
pub const Op_OpMatrixTimesVector: root::spv::Op = 145;
pub const Op_OpMatrixTimesMatrix: root::spv::Op = 146;
pub const Op_OpOuterProduct: root::spv::Op = 147;
pub const Op_OpDot: root::spv::Op = 148;
pub const Op_OpIAddCarry: root::spv::Op = 149;
pub const Op_OpISubBorrow: root::spv::Op = 150;
pub const Op_OpUMulExtended: root::spv::Op = 151;
pub const Op_OpSMulExtended: root::spv::Op = 152;
pub const Op_OpAny: root::spv::Op = 154;
pub const Op_OpAll: root::spv::Op = 155;
pub const Op_OpIsNan: root::spv::Op = 156;
pub const Op_OpIsInf: root::spv::Op = 157;
pub const Op_OpIsFinite: root::spv::Op = 158;
pub const Op_OpIsNormal: root::spv::Op = 159;
pub const Op_OpSignBitSet: root::spv::Op = 160;
pub const Op_OpLessOrGreater: root::spv::Op = 161;
pub const Op_OpOrdered: root::spv::Op = 162;
pub const Op_OpUnordered: root::spv::Op = 163;
pub const Op_OpLogicalEqual: root::spv::Op = 164;
pub const Op_OpLogicalNotEqual: root::spv::Op = 165;
pub const Op_OpLogicalOr: root::spv::Op = 166;
pub const Op_OpLogicalAnd: root::spv::Op = 167;
pub const Op_OpLogicalNot: root::spv::Op = 168;
pub const Op_OpSelect: root::spv::Op = 169;
pub const Op_OpIEqual: root::spv::Op = 170;
pub const Op_OpINotEqual: root::spv::Op = 171;
pub const Op_OpUGreaterThan: root::spv::Op = 172;
pub const Op_OpSGreaterThan: root::spv::Op = 173;
pub const Op_OpUGreaterThanEqual: root::spv::Op = 174;
pub const Op_OpSGreaterThanEqual: root::spv::Op = 175;
pub const Op_OpULessThan: root::spv::Op = 176;
pub const Op_OpSLessThan: root::spv::Op = 177;
pub const Op_OpULessThanEqual: root::spv::Op = 178;
pub const Op_OpSLessThanEqual: root::spv::Op = 179;
pub const Op_OpFOrdEqual: root::spv::Op = 180;
pub const Op_OpFUnordEqual: root::spv::Op = 181;
pub const Op_OpFOrdNotEqual: root::spv::Op = 182;
pub const Op_OpFUnordNotEqual: root::spv::Op = 183;
pub const Op_OpFOrdLessThan: root::spv::Op = 184;
pub const Op_OpFUnordLessThan: root::spv::Op = 185;
pub const Op_OpFOrdGreaterThan: root::spv::Op = 186;
pub const Op_OpFUnordGreaterThan: root::spv::Op = 187;
pub const Op_OpFOrdLessThanEqual: root::spv::Op = 188;
pub const Op_OpFUnordLessThanEqual: root::spv::Op = 189;
pub const Op_OpFOrdGreaterThanEqual: root::spv::Op = 190;
pub const Op_OpFUnordGreaterThanEqual: root::spv::Op = 191;
pub const Op_OpShiftRightLogical: root::spv::Op = 194;
pub const Op_OpShiftRightArithmetic: root::spv::Op = 195;
pub const Op_OpShiftLeftLogical: root::spv::Op = 196;
pub const Op_OpBitwiseOr: root::spv::Op = 197;
pub const Op_OpBitwiseXor: root::spv::Op = 198;
pub const Op_OpBitwiseAnd: root::spv::Op = 199;
pub const Op_OpNot: root::spv::Op = 200;
pub const Op_OpBitFieldInsert: root::spv::Op = 201;
pub const Op_OpBitFieldSExtract: root::spv::Op = 202;
pub const Op_OpBitFieldUExtract: root::spv::Op = 203;
pub const Op_OpBitReverse: root::spv::Op = 204;
pub const Op_OpBitCount: root::spv::Op = 205;
pub const Op_OpDPdx: root::spv::Op = 207;
pub const Op_OpDPdy: root::spv::Op = 208;
pub const Op_OpFwidth: root::spv::Op = 209;
pub const Op_OpDPdxFine: root::spv::Op = 210;
pub const Op_OpDPdyFine: root::spv::Op = 211;
pub const Op_OpFwidthFine: root::spv::Op = 212;
pub const Op_OpDPdxCoarse: root::spv::Op = 213;
pub const Op_OpDPdyCoarse: root::spv::Op = 214;
pub const Op_OpFwidthCoarse: root::spv::Op = 215;
pub const Op_OpEmitVertex: root::spv::Op = 218;
pub const Op_OpEndPrimitive: root::spv::Op = 219;
pub const Op_OpEmitStreamVertex: root::spv::Op = 220;
pub const Op_OpEndStreamPrimitive: root::spv::Op = 221;
pub const Op_OpControlBarrier: root::spv::Op = 224;
pub const Op_OpMemoryBarrier: root::spv::Op = 225;
pub const Op_OpAtomicLoad: root::spv::Op = 227;
pub const Op_OpAtomicStore: root::spv::Op = 228;
pub const Op_OpAtomicExchange: root::spv::Op = 229;
pub const Op_OpAtomicCompareExchange: root::spv::Op = 230;
pub const Op_OpAtomicCompareExchangeWeak: root::spv::Op = 231;
pub const Op_OpAtomicIIncrement: root::spv::Op = 232;
pub const Op_OpAtomicIDecrement: root::spv::Op = 233;
pub const Op_OpAtomicIAdd: root::spv::Op = 234;
pub const Op_OpAtomicISub: root::spv::Op = 235;
pub const Op_OpAtomicSMin: root::spv::Op = 236;
pub const Op_OpAtomicUMin: root::spv::Op = 237;
pub const Op_OpAtomicSMax: root::spv::Op = 238;
pub const Op_OpAtomicUMax: root::spv::Op = 239;
pub const Op_OpAtomicAnd: root::spv::Op = 240;
pub const Op_OpAtomicOr: root::spv::Op = 241;
pub const Op_OpAtomicXor: root::spv::Op = 242;
pub const Op_OpPhi: root::spv::Op = 245;
pub const Op_OpLoopMerge: root::spv::Op = 246;
pub const Op_OpSelectionMerge: root::spv::Op = 247;
pub const Op_OpLabel: root::spv::Op = 248;
pub const Op_OpBranch: root::spv::Op = 249;
pub const Op_OpBranchConditional: root::spv::Op = 250;
pub const Op_OpSwitch: root::spv::Op = 251;
pub const Op_OpKill: root::spv::Op = 252;
pub const Op_OpReturn: root::spv::Op = 253;
pub const Op_OpReturnValue: root::spv::Op = 254;
pub const Op_OpUnreachable: root::spv::Op = 255;
pub const Op_OpLifetimeStart: root::spv::Op = 256;
pub const Op_OpLifetimeStop: root::spv::Op = 257;
pub const Op_OpGroupAsyncCopy: root::spv::Op = 259;
pub const Op_OpGroupWaitEvents: root::spv::Op = 260;
pub const Op_OpGroupAll: root::spv::Op = 261;
pub const Op_OpGroupAny: root::spv::Op = 262;
pub const Op_OpGroupBroadcast: root::spv::Op = 263;
pub const Op_OpGroupIAdd: root::spv::Op = 264;
pub const Op_OpGroupFAdd: root::spv::Op = 265;
pub const Op_OpGroupFMin: root::spv::Op = 266;
pub const Op_OpGroupUMin: root::spv::Op = 267;
pub const Op_OpGroupSMin: root::spv::Op = 268;
pub const Op_OpGroupFMax: root::spv::Op = 269;
pub const Op_OpGroupUMax: root::spv::Op = 270;
pub const Op_OpGroupSMax: root::spv::Op = 271;
pub const Op_OpReadPipe: root::spv::Op = 274;
pub const Op_OpWritePipe: root::spv::Op = 275;
pub const Op_OpReservedReadPipe: root::spv::Op = 276;
pub const Op_OpReservedWritePipe: root::spv::Op = 277;
pub const Op_OpReserveReadPipePackets: root::spv::Op = 278;
pub const Op_OpReserveWritePipePackets: root::spv::Op = 279;
pub const Op_OpCommitReadPipe: root::spv::Op = 280;
pub const Op_OpCommitWritePipe: root::spv::Op = 281;
pub const Op_OpIsValidReserveId: root::spv::Op = 282;
pub const Op_OpGetNumPipePackets: root::spv::Op = 283;
pub const Op_OpGetMaxPipePackets: root::spv::Op = 284;
pub const Op_OpGroupReserveReadPipePackets: root::spv::Op = 285;
pub const Op_OpGroupReserveWritePipePackets: root::spv::Op = 286;
pub const Op_OpGroupCommitReadPipe: root::spv::Op = 287;
pub const Op_OpGroupCommitWritePipe: root::spv::Op = 288;
pub const Op_OpEnqueueMarker: root::spv::Op = 291;
pub const Op_OpEnqueueKernel: root::spv::Op = 292;
pub const Op_OpGetKernelNDrangeSubGroupCount: root::spv::Op = 293;
pub const Op_OpGetKernelNDrangeMaxSubGroupSize: root::spv::Op = 294;
pub const Op_OpGetKernelWorkGroupSize: root::spv::Op = 295;
pub const Op_OpGetKernelPreferredWorkGroupSizeMultiple: root::spv::Op = 296;
pub const Op_OpRetainEvent: root::spv::Op = 297;
pub const Op_OpReleaseEvent: root::spv::Op = 298;
pub const Op_OpCreateUserEvent: root::spv::Op = 299;
pub const Op_OpIsValidEvent: root::spv::Op = 300;
pub const Op_OpSetUserEventStatus: root::spv::Op = 301;
pub const Op_OpCaptureEventProfilingInfo: root::spv::Op = 302;
pub const Op_OpGetDefaultQueue: root::spv::Op = 303;
pub const Op_OpBuildNDRange: root::spv::Op = 304;
pub const Op_OpImageSparseSampleImplicitLod: root::spv::Op = 305;
pub const Op_OpImageSparseSampleExplicitLod: root::spv::Op = 306;
pub const Op_OpImageSparseSampleDrefImplicitLod: root::spv::Op = 307;
pub const Op_OpImageSparseSampleDrefExplicitLod: root::spv::Op = 308;
pub const Op_OpImageSparseSampleProjImplicitLod: root::spv::Op = 309;
pub const Op_OpImageSparseSampleProjExplicitLod: root::spv::Op = 310;
pub const Op_OpImageSparseSampleProjDrefImplicitLod: root::spv::Op = 311;
pub const Op_OpImageSparseSampleProjDrefExplicitLod: root::spv::Op = 312;
pub const Op_OpImageSparseFetch: root::spv::Op = 313;
pub const Op_OpImageSparseGather: root::spv::Op = 314;
pub const Op_OpImageSparseDrefGather: root::spv::Op = 315;
pub const Op_OpImageSparseTexelsResident: root::spv::Op = 316;
pub const Op_OpNoLine: root::spv::Op = 317;
pub const Op_OpAtomicFlagTestAndSet: root::spv::Op = 318;
pub const Op_OpAtomicFlagClear: root::spv::Op = 319;
pub const Op_OpImageSparseRead: root::spv::Op = 320;
pub const Op_OpSizeOf: root::spv::Op = 321;
pub const Op_OpTypePipeStorage: root::spv::Op = 322;
pub const Op_OpConstantPipeStorage: root::spv::Op = 323;
pub const Op_OpCreatePipeFromPipeStorage: root::spv::Op = 324;
pub const Op_OpGetKernelLocalSizeForSubgroupCount: root::spv::Op = 325;
pub const Op_OpGetKernelMaxNumSubgroups: root::spv::Op = 326;
pub const Op_OpTypeNamedBarrier: root::spv::Op = 327;
pub const Op_OpNamedBarrierInitialize: root::spv::Op = 328;
pub const Op_OpMemoryNamedBarrier: root::spv::Op = 329;
pub const Op_OpModuleProcessed: root::spv::Op = 330;
pub const Op_OpExecutionModeId: root::spv::Op = 331;
pub const Op_OpDecorateId: root::spv::Op = 332;
pub const Op_OpGroupNonUniformElect: root::spv::Op = 333;
pub const Op_OpGroupNonUniformAll: root::spv::Op = 334;
pub const Op_OpGroupNonUniformAny: root::spv::Op = 335;
pub const Op_OpGroupNonUniformAllEqual: root::spv::Op = 336;
pub const Op_OpGroupNonUniformBroadcast: root::spv::Op = 337;
pub const Op_OpGroupNonUniformBroadcastFirst: root::spv::Op = 338;
pub const Op_OpGroupNonUniformBallot: root::spv::Op = 339;
pub const Op_OpGroupNonUniformInverseBallot: root::spv::Op = 340;
pub const Op_OpGroupNonUniformBallotBitExtract: root::spv::Op = 341;
pub const Op_OpGroupNonUniformBallotBitCount: root::spv::Op = 342;
pub const Op_OpGroupNonUniformBallotFindLSB: root::spv::Op = 343;
pub const Op_OpGroupNonUniformBallotFindMSB: root::spv::Op = 344;
pub const Op_OpGroupNonUniformShuffle: root::spv::Op = 345;
pub const Op_OpGroupNonUniformShuffleXor: root::spv::Op = 346;
pub const Op_OpGroupNonUniformShuffleUp: root::spv::Op = 347;
pub const Op_OpGroupNonUniformShuffleDown: root::spv::Op = 348;
pub const Op_OpGroupNonUniformIAdd: root::spv::Op = 349;
pub const Op_OpGroupNonUniformFAdd: root::spv::Op = 350;
pub const Op_OpGroupNonUniformIMul: root::spv::Op = 351;
pub const Op_OpGroupNonUniformFMul: root::spv::Op = 352;
pub const Op_OpGroupNonUniformSMin: root::spv::Op = 353;
pub const Op_OpGroupNonUniformUMin: root::spv::Op = 354;
pub const Op_OpGroupNonUniformFMin: root::spv::Op = 355;
pub const Op_OpGroupNonUniformSMax: root::spv::Op = 356;
pub const Op_OpGroupNonUniformUMax: root::spv::Op = 357;
pub const Op_OpGroupNonUniformFMax: root::spv::Op = 358;
pub const Op_OpGroupNonUniformBitwiseAnd: root::spv::Op = 359;
pub const Op_OpGroupNonUniformBitwiseOr: root::spv::Op = 360;
pub const Op_OpGroupNonUniformBitwiseXor: root::spv::Op = 361;
pub const Op_OpGroupNonUniformLogicalAnd: root::spv::Op = 362;
pub const Op_OpGroupNonUniformLogicalOr: root::spv::Op = 363;
pub const Op_OpGroupNonUniformLogicalXor: root::spv::Op = 364;
pub const Op_OpGroupNonUniformQuadBroadcast: root::spv::Op = 365;
pub const Op_OpGroupNonUniformQuadSwap: root::spv::Op = 366;
pub const Op_OpCopyLogical: root::spv::Op = 400;
pub const Op_OpPtrEqual: root::spv::Op = 401;
pub const Op_OpPtrNotEqual: root::spv::Op = 402;
pub const Op_OpPtrDiff: root::spv::Op = 403;
pub const Op_OpSubgroupBallotKHR: root::spv::Op = 4421;
pub const Op_OpSubgroupFirstInvocationKHR: root::spv::Op = 4422;
pub const Op_OpSubgroupAllKHR: root::spv::Op = 4428;
pub const Op_OpSubgroupAnyKHR: root::spv::Op = 4429;
pub const Op_OpSubgroupAllEqualKHR: root::spv::Op = 4430;
pub const Op_OpSubgroupReadInvocationKHR: root::spv::Op = 4432;
pub const Op_OpTypeRayQueryProvisionalKHR: root::spv::Op = 4472;
pub const Op_OpRayQueryInitializeKHR: root::spv::Op = 4473;
pub const Op_OpRayQueryTerminateKHR: root::spv::Op = 4474;
pub const Op_OpRayQueryGenerateIntersectionKHR: root::spv::Op = 4475;
pub const Op_OpRayQueryConfirmIntersectionKHR: root::spv::Op = 4476;
pub const Op_OpRayQueryProceedKHR: root::spv::Op = 4477;
pub const Op_OpRayQueryGetIntersectionTypeKHR: root::spv::Op = 4479;
pub const Op_OpGroupIAddNonUniformAMD: root::spv::Op = 5000;
pub const Op_OpGroupFAddNonUniformAMD: root::spv::Op = 5001;
pub const Op_OpGroupFMinNonUniformAMD: root::spv::Op = 5002;
pub const Op_OpGroupUMinNonUniformAMD: root::spv::Op = 5003;
pub const Op_OpGroupSMinNonUniformAMD: root::spv::Op = 5004;
pub const Op_OpGroupFMaxNonUniformAMD: root::spv::Op = 5005;
pub const Op_OpGroupUMaxNonUniformAMD: root::spv::Op = 5006;
pub const Op_OpGroupSMaxNonUniformAMD: root::spv::Op = 5007;
pub const Op_OpFragmentMaskFetchAMD: root::spv::Op = 5011;
pub const Op_OpFragmentFetchAMD: root::spv::Op = 5012;
pub const Op_OpReadClockKHR: root::spv::Op = 5056;
pub const Op_OpImageSampleFootprintNV: root::spv::Op = 5283;
pub const Op_OpGroupNonUniformPartitionNV: root::spv::Op = 5296;
pub const Op_OpWritePackedPrimitiveIndices4x8NV: root::spv::Op = 5299;
pub const Op_OpReportIntersectionKHR: root::spv::Op = 5334;
pub const Op_OpReportIntersectionNV: root::spv::Op = 5334;
pub const Op_OpIgnoreIntersectionKHR: root::spv::Op = 5335;
pub const Op_OpIgnoreIntersectionNV: root::spv::Op = 5335;
pub const Op_OpTerminateRayKHR: root::spv::Op = 5336;
pub const Op_OpTerminateRayNV: root::spv::Op = 5336;
pub const Op_OpTraceNV: root::spv::Op = 5337;
pub const Op_OpTraceRayKHR: root::spv::Op = 5337;
pub const Op_OpTypeAccelerationStructureKHR: root::spv::Op = 5341;
pub const Op_OpTypeAccelerationStructureNV: root::spv::Op = 5341;
pub const Op_OpExecuteCallableKHR: root::spv::Op = 5344;
pub const Op_OpExecuteCallableNV: root::spv::Op = 5344;
pub const Op_OpTypeCooperativeMatrixNV: root::spv::Op = 5358;
pub const Op_OpCooperativeMatrixLoadNV: root::spv::Op = 5359;
pub const Op_OpCooperativeMatrixStoreNV: root::spv::Op = 5360;
pub const Op_OpCooperativeMatrixMulAddNV: root::spv::Op = 5361;
pub const Op_OpCooperativeMatrixLengthNV: root::spv::Op = 5362;
pub const Op_OpBeginInvocationInterlockEXT: root::spv::Op = 5364;
pub const Op_OpEndInvocationInterlockEXT: root::spv::Op = 5365;
pub const Op_OpDemoteToHelperInvocationEXT: root::spv::Op = 5380;
pub const Op_OpIsHelperInvocationEXT: root::spv::Op = 5381;
pub const Op_OpSubgroupShuffleINTEL: root::spv::Op = 5571;
pub const Op_OpSubgroupShuffleDownINTEL: root::spv::Op = 5572;
pub const Op_OpSubgroupShuffleUpINTEL: root::spv::Op = 5573;
pub const Op_OpSubgroupShuffleXorINTEL: root::spv::Op = 5574;
pub const Op_OpSubgroupBlockReadINTEL: root::spv::Op = 5575;
pub const Op_OpSubgroupBlockWriteINTEL: root::spv::Op = 5576;
pub const Op_OpSubgroupImageBlockReadINTEL: root::spv::Op = 5577;
pub const Op_OpSubgroupImageBlockWriteINTEL: root::spv::Op = 5578;
pub const Op_OpSubgroupImageMediaBlockReadINTEL: root::spv::Op = 5580;
pub const Op_OpSubgroupImageMediaBlockWriteINTEL: root::spv::Op = 5581;
pub const Op_OpUCountLeadingZerosINTEL: root::spv::Op = 5585;
pub const Op_OpUCountTrailingZerosINTEL: root::spv::Op = 5586;
pub const Op_OpAbsISubINTEL: root::spv::Op = 5587;
pub const Op_OpAbsUSubINTEL: root::spv::Op = 5588;
pub const Op_OpIAddSatINTEL: root::spv::Op = 5589;
pub const Op_OpUAddSatINTEL: root::spv::Op = 5590;
pub const Op_OpIAverageINTEL: root::spv::Op = 5591;
pub const Op_OpUAverageINTEL: root::spv::Op = 5592;
pub const Op_OpIAverageRoundedINTEL: root::spv::Op = 5593;
pub const Op_OpUAverageRoundedINTEL: root::spv::Op = 5594;
pub const Op_OpISubSatINTEL: root::spv::Op = 5595;
pub const Op_OpUSubSatINTEL: root::spv::Op = 5596;
pub const Op_OpIMul32x16INTEL: root::spv::Op = 5597;
pub const Op_OpUMul32x16INTEL: root::spv::Op = 5598;
pub const Op_OpDecorateString: root::spv::Op = 5632;
pub const Op_OpDecorateStringGOOGLE: root::spv::Op = 5632;
pub const Op_OpMemberDecorateString: root::spv::Op = 5633;
pub const Op_OpMemberDecorateStringGOOGLE: root::spv::Op = 5633;
pub const Op_OpVmeImageINTEL: root::spv::Op = 5699;
pub const Op_OpTypeVmeImageINTEL: root::spv::Op = 5700;
pub const Op_OpTypeAvcImePayloadINTEL: root::spv::Op = 5701;
pub const Op_OpTypeAvcRefPayloadINTEL: root::spv::Op = 5702;
pub const Op_OpTypeAvcSicPayloadINTEL: root::spv::Op = 5703;
pub const Op_OpTypeAvcMcePayloadINTEL: root::spv::Op = 5704;
pub const Op_OpTypeAvcMceResultINTEL: root::spv::Op = 5705;
pub const Op_OpTypeAvcImeResultINTEL: root::spv::Op = 5706;
pub const Op_OpTypeAvcImeResultSingleReferenceStreamoutINTEL: root::spv::Op = 5707;
pub const Op_OpTypeAvcImeResultDualReferenceStreamoutINTEL: root::spv::Op = 5708;
pub const Op_OpTypeAvcImeSingleReferenceStreaminINTEL: root::spv::Op = 5709;
pub const Op_OpTypeAvcImeDualReferenceStreaminINTEL: root::spv::Op = 5710;
pub const Op_OpTypeAvcRefResultINTEL: root::spv::Op = 5711;
pub const Op_OpTypeAvcSicResultINTEL: root::spv::Op = 5712;
pub const Op_OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL: root::spv::Op =
5713;
pub const Op_OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL: root::spv::Op = 5714;
pub const Op_OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL: root::spv::Op = 5715;
pub const Op_OpSubgroupAvcMceSetInterShapePenaltyINTEL: root::spv::Op = 5716;
pub const Op_OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL: root::spv::Op = 5717;
pub const Op_OpSubgroupAvcMceSetInterDirectionPenaltyINTEL: root::spv::Op = 5718;
pub const Op_OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL: root::spv::Op = 5719;
pub const Op_OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL: root::spv::Op =
5720;
pub const Op_OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL: root::spv::Op = 5721;
pub const Op_OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL: root::spv::Op = 5722;
pub const Op_OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL: root::spv::Op = 5723;
pub const Op_OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL: root::spv::Op = 5724;
pub const Op_OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL: root::spv::Op = 5725;
pub const Op_OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL: root::spv::Op = 5726;
pub const Op_OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL: root::spv::Op =
5727;
pub const Op_OpSubgroupAvcMceSetAcOnlyHaarINTEL: root::spv::Op = 5728;
pub const Op_OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL: root::spv::Op = 5729;
pub const Op_OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL: root::spv::Op =
5730;
pub const Op_OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL: root::spv::Op =
5731;
pub const Op_OpSubgroupAvcMceConvertToImePayloadINTEL: root::spv::Op = 5732;
pub const Op_OpSubgroupAvcMceConvertToImeResultINTEL: root::spv::Op = 5733;
pub const Op_OpSubgroupAvcMceConvertToRefPayloadINTEL: root::spv::Op = 5734;
pub const Op_OpSubgroupAvcMceConvertToRefResultINTEL: root::spv::Op = 5735;
pub const Op_OpSubgroupAvcMceConvertToSicPayloadINTEL: root::spv::Op = 5736;
pub const Op_OpSubgroupAvcMceConvertToSicResultINTEL: root::spv::Op = 5737;
pub const Op_OpSubgroupAvcMceGetMotionVectorsINTEL: root::spv::Op = 5738;
pub const Op_OpSubgroupAvcMceGetInterDistortionsINTEL: root::spv::Op = 5739;
pub const Op_OpSubgroupAvcMceGetBestInterDistortionsINTEL: root::spv::Op = 5740;
pub const Op_OpSubgroupAvcMceGetInterMajorShapeINTEL: root::spv::Op = 5741;
pub const Op_OpSubgroupAvcMceGetInterMinorShapeINTEL: root::spv::Op = 5742;
pub const Op_OpSubgroupAvcMceGetInterDirectionsINTEL: root::spv::Op = 5743;
pub const Op_OpSubgroupAvcMceGetInterMotionVectorCountINTEL: root::spv::Op = 5744;
pub const Op_OpSubgroupAvcMceGetInterReferenceIdsINTEL: root::spv::Op = 5745;
pub const Op_OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL:
root::spv::Op = 5746;
pub const Op_OpSubgroupAvcImeInitializeINTEL: root::spv::Op = 5747;
pub const Op_OpSubgroupAvcImeSetSingleReferenceINTEL: root::spv::Op = 5748;
pub const Op_OpSubgroupAvcImeSetDualReferenceINTEL: root::spv::Op = 5749;
pub const Op_OpSubgroupAvcImeRefWindowSizeINTEL: root::spv::Op = 5750;
pub const Op_OpSubgroupAvcImeAdjustRefOffsetINTEL: root::spv::Op = 5751;
pub const Op_OpSubgroupAvcImeConvertToMcePayloadINTEL: root::spv::Op = 5752;
pub const Op_OpSubgroupAvcImeSetMaxMotionVectorCountINTEL: root::spv::Op = 5753;
pub const Op_OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL: root::spv::Op = 5754;
pub const Op_OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL: root::spv::Op = 5755;
pub const Op_OpSubgroupAvcImeSetWeightedSadINTEL: root::spv::Op = 5756;
pub const Op_OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL: root::spv::Op = 5757;
pub const Op_OpSubgroupAvcImeEvaluateWithDualReferenceINTEL: root::spv::Op = 5758;
pub const Op_OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL: root::spv::Op = 5759;
pub const Op_OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL: root::spv::Op = 5760;
pub const Op_OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL: root::spv::Op =
5761;
pub const Op_OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL: root::spv::Op = 5762;
pub const Op_OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL: root::spv::Op =
5763;
pub const Op_OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL: root::spv::Op =
5764;
pub const Op_OpSubgroupAvcImeConvertToMceResultINTEL: root::spv::Op = 5765;
pub const Op_OpSubgroupAvcImeGetSingleReferenceStreaminINTEL: root::spv::Op = 5766;
pub const Op_OpSubgroupAvcImeGetDualReferenceStreaminINTEL: root::spv::Op = 5767;
pub const Op_OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL: root::spv::Op = 5768;
pub const Op_OpSubgroupAvcImeStripDualReferenceStreamoutINTEL: root::spv::Op = 5769;
pub const Op_OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL:
root::spv::Op = 5770;
pub const Op_OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL:
root::spv::Op = 5771;
pub const Op_OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL:
root::spv::Op = 5772;
pub const Op_OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL:
root::spv::Op = 5773;
pub const Op_OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL:
root::spv::Op = 5774;
pub const Op_OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL:
root::spv::Op = 5775;
pub const Op_OpSubgroupAvcImeGetBorderReachedINTEL: root::spv::Op = 5776;
pub const Op_OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL: root::spv::Op = 5777;
pub const Op_OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL: root::spv::Op =
5778;
pub const Op_OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL: root::spv::Op =
5779;
pub const Op_OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL: root::spv::Op =
5780;
pub const Op_OpSubgroupAvcFmeInitializeINTEL: root::spv::Op = 5781;
pub const Op_OpSubgroupAvcBmeInitializeINTEL: root::spv::Op = 5782;
pub const Op_OpSubgroupAvcRefConvertToMcePayloadINTEL: root::spv::Op = 5783;
pub const Op_OpSubgroupAvcRefSetBidirectionalMixDisableINTEL: root::spv::Op = 5784;
pub const Op_OpSubgroupAvcRefSetBilinearFilterEnableINTEL: root::spv::Op = 5785;
pub const Op_OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL: root::spv::Op = 5786;
pub const Op_OpSubgroupAvcRefEvaluateWithDualReferenceINTEL: root::spv::Op = 5787;
pub const Op_OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL: root::spv::Op = 5788;
pub const Op_OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL: root::spv::Op =
5789;
pub const Op_OpSubgroupAvcRefConvertToMceResultINTEL: root::spv::Op = 5790;
pub const Op_OpSubgroupAvcSicInitializeINTEL: root::spv::Op = 5791;
pub const Op_OpSubgroupAvcSicConfigureSkcINTEL: root::spv::Op = 5792;
pub const Op_OpSubgroupAvcSicConfigureIpeLumaINTEL: root::spv::Op = 5793;
pub const Op_OpSubgroupAvcSicConfigureIpeLumaChromaINTEL: root::spv::Op = 5794;
pub const Op_OpSubgroupAvcSicGetMotionVectorMaskINTEL: root::spv::Op = 5795;
pub const Op_OpSubgroupAvcSicConvertToMcePayloadINTEL: root::spv::Op = 5796;
pub const Op_OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL: root::spv::Op = 5797;
pub const Op_OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL: root::spv::Op = 5798;
pub const Op_OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL: root::spv::Op = 5799;
pub const Op_OpSubgroupAvcSicSetBilinearFilterEnableINTEL: root::spv::Op = 5800;
pub const Op_OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL: root::spv::Op = 5801;
pub const Op_OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL: root::spv::Op = 5802;
pub const Op_OpSubgroupAvcSicEvaluateIpeINTEL: root::spv::Op = 5803;
pub const Op_OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL: root::spv::Op = 5804;
pub const Op_OpSubgroupAvcSicEvaluateWithDualReferenceINTEL: root::spv::Op = 5805;
pub const Op_OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL: root::spv::Op = 5806;
pub const Op_OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL: root::spv::Op =
5807;
pub const Op_OpSubgroupAvcSicConvertToMceResultINTEL: root::spv::Op = 5808;
pub const Op_OpSubgroupAvcSicGetIpeLumaShapeINTEL: root::spv::Op = 5809;
pub const Op_OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL: root::spv::Op = 5810;
pub const Op_OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL: root::spv::Op = 5811;
pub const Op_OpSubgroupAvcSicGetPackedIpeLumaModesINTEL: root::spv::Op = 5812;
pub const Op_OpSubgroupAvcSicGetIpeChromaModeINTEL: root::spv::Op = 5813;
pub const Op_OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL: root::spv::Op = 5814;
pub const Op_OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL: root::spv::Op = 5815;
pub const Op_OpSubgroupAvcSicGetInterRawSadsINTEL: root::spv::Op = 5816;
pub const Op_OpRayQueryGetRayTMinKHR: root::spv::Op = 6016;
pub const Op_OpRayQueryGetRayFlagsKHR: root::spv::Op = 6017;
pub const Op_OpRayQueryGetIntersectionTKHR: root::spv::Op = 6018;
pub const Op_OpRayQueryGetIntersectionInstanceCustomIndexKHR: root::spv::Op = 6019;
pub const Op_OpRayQueryGetIntersectionInstanceIdKHR: root::spv::Op = 6020;
pub const Op_OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR:
root::spv::Op = 6021;
pub const Op_OpRayQueryGetIntersectionGeometryIndexKHR: root::spv::Op = 6022;
pub const Op_OpRayQueryGetIntersectionPrimitiveIndexKHR: root::spv::Op = 6023;
pub const Op_OpRayQueryGetIntersectionBarycentricsKHR: root::spv::Op = 6024;
pub const Op_OpRayQueryGetIntersectionFrontFaceKHR: root::spv::Op = 6025;
pub const Op_OpRayQueryGetIntersectionCandidateAABBOpaqueKHR: root::spv::Op = 6026;
pub const Op_OpRayQueryGetIntersectionObjectRayDirectionKHR: root::spv::Op = 6027;
pub const Op_OpRayQueryGetIntersectionObjectRayOriginKHR: root::spv::Op = 6028;
pub const Op_OpRayQueryGetWorldRayDirectionKHR: root::spv::Op = 6029;
pub const Op_OpRayQueryGetWorldRayOriginKHR: root::spv::Op = 6030;
pub const Op_OpRayQueryGetIntersectionObjectToWorldKHR: root::spv::Op = 6031;
pub const Op_OpRayQueryGetIntersectionWorldToObjectKHR: root::spv::Op = 6032;
pub const Op_OpMax: root::spv::Op = 2147483647;
pub type Op = u32;
}
pub mod std {
#[allow(unused_imports)]
use self::super::super::root;
}
pub type __darwin_size_t = ::std::os::raw::c_ulong;
pub mod spirv_cross {
#[allow(unused_imports)]
use self::super::super::root;
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum SPIRType_BaseType {
Unknown = 0,
Void = 1,
Boolean = 2,
SByte = 3,
UByte = 4,
Short = 5,
UShort = 6,
Int = 7,
UInt = 8,
Int64 = 9,
UInt64 = 10,
AtomicCounter = 11,
Half = 12,
Float = 13,
Double = 14,
Struct = 15,
Image = 16,
SampledImage = 17,
Sampler = 18,
AccelerationStructure = 19,
RayQuery = 20,
ControlPointArray = 21,
Char = 22,
}
pub const MSLSamplerCoord_MSL_SAMPLER_COORD_NORMALIZED: root::spirv_cross::MSLSamplerCoord =
0;
pub const MSLSamplerCoord_MSL_SAMPLER_COORD_PIXEL: root::spirv_cross::MSLSamplerCoord = 1;
pub const MSLSamplerCoord_MSL_SAMPLER_INT_MAX: root::spirv_cross::MSLSamplerCoord =
2147483647;
pub type MSLSamplerCoord = u32;
pub const MSLSamplerFilter_MSL_SAMPLER_FILTER_NEAREST: root::spirv_cross::MSLSamplerFilter =
0;
pub const MSLSamplerFilter_MSL_SAMPLER_FILTER_LINEAR: root::spirv_cross::MSLSamplerFilter =
1;
pub const MSLSamplerFilter_MSL_SAMPLER_FILTER_INT_MAX: root::spirv_cross::MSLSamplerFilter =
2147483647;
pub type MSLSamplerFilter = u32;
pub const MSLSamplerMipFilter_MSL_SAMPLER_MIP_FILTER_NONE:
root::spirv_cross::MSLSamplerMipFilter = 0;
pub const MSLSamplerMipFilter_MSL_SAMPLER_MIP_FILTER_NEAREST:
root::spirv_cross::MSLSamplerMipFilter = 1;
pub const MSLSamplerMipFilter_MSL_SAMPLER_MIP_FILTER_LINEAR:
root::spirv_cross::MSLSamplerMipFilter = 2;
pub const MSLSamplerMipFilter_MSL_SAMPLER_MIP_FILTER_INT_MAX:
root::spirv_cross::MSLSamplerMipFilter = 2147483647;
pub type MSLSamplerMipFilter = u32;
pub const MSLSamplerAddress_MSL_SAMPLER_ADDRESS_CLAMP_TO_ZERO:
root::spirv_cross::MSLSamplerAddress = 0;
pub const MSLSamplerAddress_MSL_SAMPLER_ADDRESS_CLAMP_TO_EDGE:
root::spirv_cross::MSLSamplerAddress = 1;
pub const MSLSamplerAddress_MSL_SAMPLER_ADDRESS_CLAMP_TO_BORDER:
root::spirv_cross::MSLSamplerAddress = 2;
pub const MSLSamplerAddress_MSL_SAMPLER_ADDRESS_REPEAT:
root::spirv_cross::MSLSamplerAddress = 3;
pub const MSLSamplerAddress_MSL_SAMPLER_ADDRESS_MIRRORED_REPEAT:
root::spirv_cross::MSLSamplerAddress = 4;
pub const MSLSamplerAddress_MSL_SAMPLER_ADDRESS_INT_MAX:
root::spirv_cross::MSLSamplerAddress = 2147483647;
pub type MSLSamplerAddress = u32;
pub const MSLSamplerCompareFunc_MSL_SAMPLER_COMPARE_FUNC_NEVER:
root::spirv_cross::MSLSamplerCompareFunc = 0;
pub const MSLSamplerCompareFunc_MSL_SAMPLER_COMPARE_FUNC_LESS:
root::spirv_cross::MSLSamplerCompareFunc = 1;
pub const MSLSamplerCompareFunc_MSL_SAMPLER_COMPARE_FUNC_LESS_EQUAL:
root::spirv_cross::MSLSamplerCompareFunc = 2;
pub const MSLSamplerCompareFunc_MSL_SAMPLER_COMPARE_FUNC_GREATER:
root::spirv_cross::MSLSamplerCompareFunc = 3;
pub const MSLSamplerCompareFunc_MSL_SAMPLER_COMPARE_FUNC_GREATER_EQUAL:
root::spirv_cross::MSLSamplerCompareFunc = 4;
pub const MSLSamplerCompareFunc_MSL_SAMPLER_COMPARE_FUNC_EQUAL:
root::spirv_cross::MSLSamplerCompareFunc = 5;
pub const MSLSamplerCompareFunc_MSL_SAMPLER_COMPARE_FUNC_NOT_EQUAL:
root::spirv_cross::MSLSamplerCompareFunc = 6;
pub const MSLSamplerCompareFunc_MSL_SAMPLER_COMPARE_FUNC_ALWAYS:
root::spirv_cross::MSLSamplerCompareFunc = 7;
pub const MSLSamplerCompareFunc_MSL_SAMPLER_COMPARE_FUNC_INT_MAX:
root::spirv_cross::MSLSamplerCompareFunc = 2147483647;
pub type MSLSamplerCompareFunc = u32;
pub const MSLSamplerBorderColor_MSL_SAMPLER_BORDER_COLOR_TRANSPARENT_BLACK:
root::spirv_cross::MSLSamplerBorderColor = 0;
pub const MSLSamplerBorderColor_MSL_SAMPLER_BORDER_COLOR_OPAQUE_BLACK:
root::spirv_cross::MSLSamplerBorderColor = 1;
pub const MSLSamplerBorderColor_MSL_SAMPLER_BORDER_COLOR_OPAQUE_WHITE:
root::spirv_cross::MSLSamplerBorderColor = 2;
pub const MSLSamplerBorderColor_MSL_SAMPLER_BORDER_COLOR_INT_MAX:
root::spirv_cross::MSLSamplerBorderColor = 2147483647;
pub type MSLSamplerBorderColor = u32;
pub const MSLFormatResolution_MSL_FORMAT_RESOLUTION_444:
root::spirv_cross::MSLFormatResolution = 0;
pub const MSLFormatResolution_MSL_FORMAT_RESOLUTION_422:
root::spirv_cross::MSLFormatResolution = 1;
pub const MSLFormatResolution_MSL_FORMAT_RESOLUTION_420:
root::spirv_cross::MSLFormatResolution = 2;
pub const MSLFormatResolution_MSL_FORMAT_RESOLUTION_INT_MAX:
root::spirv_cross::MSLFormatResolution = 2147483647;
pub type MSLFormatResolution = u32;
pub const MSLChromaLocation_MSL_CHROMA_LOCATION_COSITED_EVEN:
root::spirv_cross::MSLChromaLocation = 0;
pub const MSLChromaLocation_MSL_CHROMA_LOCATION_MIDPOINT:
root::spirv_cross::MSLChromaLocation = 1;
pub const MSLChromaLocation_MSL_CHROMA_LOCATION_INT_MAX:
root::spirv_cross::MSLChromaLocation = 2147483647;
pub type MSLChromaLocation = u32;
pub const MSLComponentSwizzle_MSL_COMPONENT_SWIZZLE_IDENTITY:
root::spirv_cross::MSLComponentSwizzle = 0;
pub const MSLComponentSwizzle_MSL_COMPONENT_SWIZZLE_ZERO:
root::spirv_cross::MSLComponentSwizzle = 1;
pub const MSLComponentSwizzle_MSL_COMPONENT_SWIZZLE_ONE:
root::spirv_cross::MSLComponentSwizzle = 2;
pub const MSLComponentSwizzle_MSL_COMPONENT_SWIZZLE_R:
root::spirv_cross::MSLComponentSwizzle = 3;
pub const MSLComponentSwizzle_MSL_COMPONENT_SWIZZLE_G:
root::spirv_cross::MSLComponentSwizzle = 4;
pub const MSLComponentSwizzle_MSL_COMPONENT_SWIZZLE_B:
root::spirv_cross::MSLComponentSwizzle = 5;
pub const MSLComponentSwizzle_MSL_COMPONENT_SWIZZLE_A:
root::spirv_cross::MSLComponentSwizzle = 6;
pub const MSLComponentSwizzle_MSL_COMPONENT_SWIZZLE_INT_MAX:
root::spirv_cross::MSLComponentSwizzle = 2147483647;
pub type MSLComponentSwizzle = u32;
pub const MSLSamplerYCbCrModelConversion_MSL_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY:
root::spirv_cross::MSLSamplerYCbCrModelConversion = 0;
pub const MSLSamplerYCbCrModelConversion_MSL_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY : root :: spirv_cross :: MSLSamplerYCbCrModelConversion = 1 ;
pub const MSLSamplerYCbCrModelConversion_MSL_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_BT_709:
root::spirv_cross::MSLSamplerYCbCrModelConversion = 2;
pub const MSLSamplerYCbCrModelConversion_MSL_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_BT_601:
root::spirv_cross::MSLSamplerYCbCrModelConversion = 3;
pub const MSLSamplerYCbCrModelConversion_MSL_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_BT_2020 : root :: spirv_cross :: MSLSamplerYCbCrModelConversion = 4 ;
pub const MSLSamplerYCbCrModelConversion_MSL_SAMPLER_YCBCR_MODEL_CONVERSION_INT_MAX:
root::spirv_cross::MSLSamplerYCbCrModelConversion = 2147483647;
pub type MSLSamplerYCbCrModelConversion = u32;
pub const MSLSamplerYCbCrRange_MSL_SAMPLER_YCBCR_RANGE_ITU_FULL:
root::spirv_cross::MSLSamplerYCbCrRange = 0;
pub const MSLSamplerYCbCrRange_MSL_SAMPLER_YCBCR_RANGE_ITU_NARROW:
root::spirv_cross::MSLSamplerYCbCrRange = 1;
pub const MSLSamplerYCbCrRange_MSL_SAMPLER_YCBCR_RANGE_INT_MAX:
root::spirv_cross::MSLSamplerYCbCrRange = 2147483647;
pub type MSLSamplerYCbCrRange = u32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct MSLConstexprSampler {
pub coord: root::spirv_cross::MSLSamplerCoord,
pub min_filter: root::spirv_cross::MSLSamplerFilter,
pub mag_filter: root::spirv_cross::MSLSamplerFilter,
pub mip_filter: root::spirv_cross::MSLSamplerMipFilter,
pub s_address: root::spirv_cross::MSLSamplerAddress,
pub t_address: root::spirv_cross::MSLSamplerAddress,
pub r_address: root::spirv_cross::MSLSamplerAddress,
pub compare_func: root::spirv_cross::MSLSamplerCompareFunc,
pub border_color: root::spirv_cross::MSLSamplerBorderColor,
pub lod_clamp_min: f32,
pub lod_clamp_max: f32,
pub max_anisotropy: ::std::os::raw::c_int,
pub planes: u32,
pub resolution: root::spirv_cross::MSLFormatResolution,
pub chroma_filter: root::spirv_cross::MSLSamplerFilter,
pub x_chroma_offset: root::spirv_cross::MSLChromaLocation,
pub y_chroma_offset: root::spirv_cross::MSLChromaLocation,
pub swizzle: [root::spirv_cross::MSLComponentSwizzle; 4usize],
pub ycbcr_model: root::spirv_cross::MSLSamplerYCbCrModelConversion,
pub ycbcr_range: root::spirv_cross::MSLSamplerYCbCrRange,
pub bpc: u32,
pub compare_enable: bool,
pub lod_clamp_enable: bool,
pub anisotropy_enable: bool,
pub ycbcr_conversion_enable: bool,
}
}
pub type ScInternalCompilerBase = ::std::os::raw::c_void;
pub type ScInternalCompilerHlsl = ::std::os::raw::c_void;
pub type ScInternalCompilerMsl = ::std::os::raw::c_void;
pub type ScInternalCompilerGlsl = ::std::os::raw::c_void;
#[repr(u32)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
pub enum ScInternalResult {
Success = 0,
Unhandled = 1,
CompilationError = 2,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScEntryPoint {
pub name: *mut ::std::os::raw::c_char,
pub execution_model: root::spv::ExecutionModel,
pub work_group_size_x: u32,
pub work_group_size_y: u32,
pub work_group_size_z: u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScBufferRange {
pub index: ::std::os::raw::c_uint,
pub offset: usize,
pub range: usize,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScCombinedImageSampler {
pub combined_id: u32,
pub image_id: u32,
pub sampler_id: u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScHlslRootConstant {
pub start: u32,
pub end: u32,
pub binding: u32,
pub space: u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScHlslCompilerOptions {
pub shader_model: i32,
pub point_size_compat: bool,
pub point_coord_compat: bool,
pub vertex_transform_clip_space: bool,
pub vertex_invert_y: bool,
pub force_storage_buffer_as_uav: bool,
pub nonwritable_uav_texture_as_srv: bool,
pub force_zero_initialized_variables: bool,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScMslCompilerOptions {
pub vertex_transform_clip_space: bool,
pub vertex_invert_y: bool,
pub platform: u8,
pub version: u32,
pub enable_point_size_builtin: bool,
pub disable_rasterization: bool,
pub swizzle_buffer_index: u32,
pub indirect_params_buffer_index: u32,
pub shader_output_buffer_index: u32,
pub shader_patch_output_buffer_index: u32,
pub shader_tess_factor_buffer_index: u32,
pub buffer_size_buffer_index: u32,
pub capture_output_to_buffer: bool,
pub swizzle_texture_samples: bool,
pub tess_domain_origin_lower_left: bool,
pub argument_buffers: bool,
pub pad_fragment_output_components: bool,
pub force_native_arrays: bool,
pub force_zero_initialized_variables: bool,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScGlslCompilerOptions {
pub vertex_transform_clip_space: bool,
pub vertex_invert_y: bool,
pub vertex_support_nonzero_base_instance: bool,
pub fragment_default_float_precision: u8,
pub fragment_default_int_precision: u8,
pub version: u32,
pub es: bool,
pub force_temporary: bool,
pub vulkan_semantics: bool,
pub separate_shader_objects: bool,
pub flatten_multidimensional_arrays: bool,
pub enable_420_pack_extension: bool,
pub emit_push_constant_as_uniform_buffer: bool,
pub emit_uniform_buffer_as_plain_uniforms: bool,
pub emit_line_directives: bool,
pub enable_storage_image_qualifier_deduction: bool,
pub force_zero_initialized_variables: bool,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScResource {
pub id: u32,
pub type_id: u32,
pub base_type_id: u32,
pub name: *mut ::std::os::raw::c_char,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScResourceArray {
pub data: *mut root::ScResource,
pub num: usize,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScShaderResources {
pub uniform_buffers: root::ScResourceArray,
pub storage_buffers: root::ScResourceArray,
pub stage_inputs: root::ScResourceArray,
pub stage_outputs: root::ScResourceArray,
pub subpass_inputs: root::ScResourceArray,
pub storage_images: root::ScResourceArray,
pub sampled_images: root::ScResourceArray,
pub atomic_counters: root::ScResourceArray,
pub push_constant_buffers: root::ScResourceArray,
pub separate_images: root::ScResourceArray,
pub separate_samplers: root::ScResourceArray,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScSpecializationConstant {
pub id: u32,
pub constant_id: u32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScType {
pub type_: root::spirv_cross::SPIRType_BaseType,
pub vecsize: u32,
pub columns: u32,
pub member_types: *mut u32,
pub member_types_size: usize,
pub array: *mut u32,
pub array_size: usize,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScMslConstSamplerMapping {
pub desc_set: u32,
pub binding: u32,
pub sampler: root::spirv_cross::MSLConstexprSampler,
}
}
|