1 | /* |
2 | ** Copyright (c) 2014-2020 The Khronos Group Inc. |
3 | ** |
4 | ** Permission is hereby granted, free of charge, to any person obtaining a copy |
5 | ** of this software and/or associated documentation files (the "Materials"), |
6 | ** to deal in the Materials without restriction, including without limitation |
7 | ** the rights to use, copy, modify, merge, publish, distribute, sublicense, |
8 | ** and/or sell copies of the Materials, and to permit persons to whom the |
9 | ** Materials are furnished to do so, subject to the following conditions: |
10 | ** |
11 | ** The above copyright notice and this permission notice shall be included in |
12 | ** all copies or substantial portions of the Materials. |
13 | ** |
14 | ** MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS |
15 | ** STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND |
16 | ** HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ |
17 | ** |
18 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS |
19 | ** OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
20 | ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
21 | ** THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
22 | ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
23 | ** FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS |
24 | ** IN THE MATERIALS. |
25 | */ |
26 | |
27 | /* |
28 | ** This header is automatically generated by the same tool that creates |
29 | ** the Binary Section of the SPIR-V specification. |
30 | */ |
31 | |
32 | /* |
33 | ** Enumeration tokens for SPIR-V, in various styles: |
34 | ** C, C++, C++11, JSON, Lua, Python, C#, D |
35 | ** |
36 | ** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL |
37 | ** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL |
38 | ** - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL |
39 | ** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL |
40 | ** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] |
41 | ** - C# will use enum classes in the Specification class located in the "Spv" namespace, |
42 | ** e.g.: Spv.Specification.SourceLanguage.GLSL |
43 | ** - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL |
44 | ** |
45 | ** Some tokens act like mask values, which can be OR'd together, |
46 | ** while others are mutually exclusive. The mask-like ones have |
47 | ** "Mask" in their name, and a parallel enum that has the shift |
48 | ** amount (1 << x) for each corresponding enumerant. |
49 | */ |
50 | |
51 | #ifndef spirv_H |
52 | #define spirv_H |
53 | |
54 | typedef unsigned int SpvId; |
55 | |
56 | #define SPV_VERSION 0x10500 |
57 | #define SPV_REVISION 1 |
58 | |
59 | static const unsigned int SpvMagicNumber = 0x07230203; |
60 | static const unsigned int SpvVersion = 0x00010500; |
61 | static const unsigned int SpvRevision = 1; |
62 | static const unsigned int SpvOpCodeMask = 0xffff; |
63 | static const unsigned int SpvWordCountShift = 16; |
64 | |
65 | typedef enum SpvSourceLanguage_ { |
66 | SpvSourceLanguageUnknown = 0, |
67 | SpvSourceLanguageESSL = 1, |
68 | SpvSourceLanguageGLSL = 2, |
69 | SpvSourceLanguageOpenCL_C = 3, |
70 | SpvSourceLanguageOpenCL_CPP = 4, |
71 | SpvSourceLanguageHLSL = 5, |
72 | SpvSourceLanguageMax = 0x7fffffff, |
73 | } SpvSourceLanguage; |
74 | |
75 | typedef enum SpvExecutionModel_ { |
76 | SpvExecutionModelVertex = 0, |
77 | SpvExecutionModelTessellationControl = 1, |
78 | SpvExecutionModelTessellationEvaluation = 2, |
79 | SpvExecutionModelGeometry = 3, |
80 | SpvExecutionModelFragment = 4, |
81 | SpvExecutionModelGLCompute = 5, |
82 | SpvExecutionModelKernel = 6, |
83 | SpvExecutionModelTaskNV = 5267, |
84 | SpvExecutionModelMeshNV = 5268, |
85 | SpvExecutionModelRayGenerationKHR = 5313, |
86 | SpvExecutionModelRayGenerationNV = 5313, |
87 | SpvExecutionModelIntersectionKHR = 5314, |
88 | SpvExecutionModelIntersectionNV = 5314, |
89 | SpvExecutionModelAnyHitKHR = 5315, |
90 | SpvExecutionModelAnyHitNV = 5315, |
91 | SpvExecutionModelClosestHitKHR = 5316, |
92 | SpvExecutionModelClosestHitNV = 5316, |
93 | SpvExecutionModelMissKHR = 5317, |
94 | SpvExecutionModelMissNV = 5317, |
95 | SpvExecutionModelCallableKHR = 5318, |
96 | SpvExecutionModelCallableNV = 5318, |
97 | SpvExecutionModelMax = 0x7fffffff, |
98 | } SpvExecutionModel; |
99 | |
100 | typedef enum SpvAddressingModel_ { |
101 | SpvAddressingModelLogical = 0, |
102 | SpvAddressingModelPhysical32 = 1, |
103 | SpvAddressingModelPhysical64 = 2, |
104 | SpvAddressingModelPhysicalStorageBuffer64 = 5348, |
105 | SpvAddressingModelPhysicalStorageBuffer64EXT = 5348, |
106 | SpvAddressingModelMax = 0x7fffffff, |
107 | } SpvAddressingModel; |
108 | |
109 | typedef enum SpvMemoryModel_ { |
110 | SpvMemoryModelSimple = 0, |
111 | SpvMemoryModelGLSL450 = 1, |
112 | SpvMemoryModelOpenCL = 2, |
113 | SpvMemoryModelVulkan = 3, |
114 | SpvMemoryModelVulkanKHR = 3, |
115 | SpvMemoryModelMax = 0x7fffffff, |
116 | } SpvMemoryModel; |
117 | |
118 | typedef enum SpvExecutionMode_ { |
119 | SpvExecutionModeInvocations = 0, |
120 | SpvExecutionModeSpacingEqual = 1, |
121 | SpvExecutionModeSpacingFractionalEven = 2, |
122 | SpvExecutionModeSpacingFractionalOdd = 3, |
123 | SpvExecutionModeVertexOrderCw = 4, |
124 | SpvExecutionModeVertexOrderCcw = 5, |
125 | SpvExecutionModePixelCenterInteger = 6, |
126 | SpvExecutionModeOriginUpperLeft = 7, |
127 | SpvExecutionModeOriginLowerLeft = 8, |
128 | SpvExecutionModeEarlyFragmentTests = 9, |
129 | SpvExecutionModePointMode = 10, |
130 | SpvExecutionModeXfb = 11, |
131 | SpvExecutionModeDepthReplacing = 12, |
132 | SpvExecutionModeDepthGreater = 14, |
133 | SpvExecutionModeDepthLess = 15, |
134 | SpvExecutionModeDepthUnchanged = 16, |
135 | SpvExecutionModeLocalSize = 17, |
136 | SpvExecutionModeLocalSizeHint = 18, |
137 | SpvExecutionModeInputPoints = 19, |
138 | SpvExecutionModeInputLines = 20, |
139 | SpvExecutionModeInputLinesAdjacency = 21, |
140 | SpvExecutionModeTriangles = 22, |
141 | SpvExecutionModeInputTrianglesAdjacency = 23, |
142 | SpvExecutionModeQuads = 24, |
143 | SpvExecutionModeIsolines = 25, |
144 | SpvExecutionModeOutputVertices = 26, |
145 | SpvExecutionModeOutputPoints = 27, |
146 | SpvExecutionModeOutputLineStrip = 28, |
147 | SpvExecutionModeOutputTriangleStrip = 29, |
148 | SpvExecutionModeVecTypeHint = 30, |
149 | SpvExecutionModeContractionOff = 31, |
150 | SpvExecutionModeInitializer = 33, |
151 | SpvExecutionModeFinalizer = 34, |
152 | SpvExecutionModeSubgroupSize = 35, |
153 | SpvExecutionModeSubgroupsPerWorkgroup = 36, |
154 | SpvExecutionModeSubgroupsPerWorkgroupId = 37, |
155 | SpvExecutionModeLocalSizeId = 38, |
156 | SpvExecutionModeLocalSizeHintId = 39, |
157 | SpvExecutionModePostDepthCoverage = 4446, |
158 | SpvExecutionModeDenormPreserve = 4459, |
159 | SpvExecutionModeDenormFlushToZero = 4460, |
160 | SpvExecutionModeSignedZeroInfNanPreserve = 4461, |
161 | SpvExecutionModeRoundingModeRTE = 4462, |
162 | SpvExecutionModeRoundingModeRTZ = 4463, |
163 | SpvExecutionModeStencilRefReplacingEXT = 5027, |
164 | SpvExecutionModeOutputLinesNV = 5269, |
165 | SpvExecutionModeOutputPrimitivesNV = 5270, |
166 | SpvExecutionModeDerivativeGroupQuadsNV = 5289, |
167 | SpvExecutionModeDerivativeGroupLinearNV = 5290, |
168 | SpvExecutionModeOutputTrianglesNV = 5298, |
169 | SpvExecutionModePixelInterlockOrderedEXT = 5366, |
170 | SpvExecutionModePixelInterlockUnorderedEXT = 5367, |
171 | SpvExecutionModeSampleInterlockOrderedEXT = 5368, |
172 | SpvExecutionModeSampleInterlockUnorderedEXT = 5369, |
173 | SpvExecutionModeShadingRateInterlockOrderedEXT = 5370, |
174 | SpvExecutionModeShadingRateInterlockUnorderedEXT = 5371, |
175 | SpvExecutionModeMax = 0x7fffffff, |
176 | } SpvExecutionMode; |
177 | |
178 | typedef enum SpvStorageClass_ { |
179 | SpvStorageClassUniformConstant = 0, |
180 | SpvStorageClassInput = 1, |
181 | SpvStorageClassUniform = 2, |
182 | SpvStorageClassOutput = 3, |
183 | SpvStorageClassWorkgroup = 4, |
184 | SpvStorageClassCrossWorkgroup = 5, |
185 | SpvStorageClassPrivate = 6, |
186 | SpvStorageClassFunction = 7, |
187 | SpvStorageClassGeneric = 8, |
188 | SpvStorageClassPushConstant = 9, |
189 | SpvStorageClassAtomicCounter = 10, |
190 | SpvStorageClassImage = 11, |
191 | SpvStorageClassStorageBuffer = 12, |
192 | SpvStorageClassCallableDataKHR = 5328, |
193 | SpvStorageClassCallableDataNV = 5328, |
194 | SpvStorageClassIncomingCallableDataKHR = 5329, |
195 | SpvStorageClassIncomingCallableDataNV = 5329, |
196 | SpvStorageClassRayPayloadKHR = 5338, |
197 | SpvStorageClassRayPayloadNV = 5338, |
198 | SpvStorageClassHitAttributeKHR = 5339, |
199 | SpvStorageClassHitAttributeNV = 5339, |
200 | SpvStorageClassIncomingRayPayloadKHR = 5342, |
201 | SpvStorageClassIncomingRayPayloadNV = 5342, |
202 | SpvStorageClassShaderRecordBufferKHR = 5343, |
203 | SpvStorageClassShaderRecordBufferNV = 5343, |
204 | SpvStorageClassPhysicalStorageBuffer = 5349, |
205 | SpvStorageClassPhysicalStorageBufferEXT = 5349, |
206 | SpvStorageClassMax = 0x7fffffff, |
207 | } SpvStorageClass; |
208 | |
209 | typedef enum SpvDim_ { |
210 | SpvDim1D = 0, |
211 | SpvDim2D = 1, |
212 | SpvDim3D = 2, |
213 | SpvDimCube = 3, |
214 | SpvDimRect = 4, |
215 | SpvDimBuffer = 5, |
216 | SpvDimSubpassData = 6, |
217 | SpvDimMax = 0x7fffffff, |
218 | } SpvDim; |
219 | |
220 | typedef enum SpvSamplerAddressingMode_ { |
221 | SpvSamplerAddressingModeNone = 0, |
222 | SpvSamplerAddressingModeClampToEdge = 1, |
223 | SpvSamplerAddressingModeClamp = 2, |
224 | SpvSamplerAddressingModeRepeat = 3, |
225 | SpvSamplerAddressingModeRepeatMirrored = 4, |
226 | SpvSamplerAddressingModeMax = 0x7fffffff, |
227 | } SpvSamplerAddressingMode; |
228 | |
229 | typedef enum SpvSamplerFilterMode_ { |
230 | SpvSamplerFilterModeNearest = 0, |
231 | SpvSamplerFilterModeLinear = 1, |
232 | SpvSamplerFilterModeMax = 0x7fffffff, |
233 | } SpvSamplerFilterMode; |
234 | |
235 | typedef enum SpvImageFormat_ { |
236 | SpvImageFormatUnknown = 0, |
237 | SpvImageFormatRgba32f = 1, |
238 | SpvImageFormatRgba16f = 2, |
239 | SpvImageFormatR32f = 3, |
240 | SpvImageFormatRgba8 = 4, |
241 | SpvImageFormatRgba8Snorm = 5, |
242 | SpvImageFormatRg32f = 6, |
243 | SpvImageFormatRg16f = 7, |
244 | SpvImageFormatR11fG11fB10f = 8, |
245 | SpvImageFormatR16f = 9, |
246 | SpvImageFormatRgba16 = 10, |
247 | SpvImageFormatRgb10A2 = 11, |
248 | SpvImageFormatRg16 = 12, |
249 | SpvImageFormatRg8 = 13, |
250 | SpvImageFormatR16 = 14, |
251 | SpvImageFormatR8 = 15, |
252 | SpvImageFormatRgba16Snorm = 16, |
253 | SpvImageFormatRg16Snorm = 17, |
254 | SpvImageFormatRg8Snorm = 18, |
255 | SpvImageFormatR16Snorm = 19, |
256 | SpvImageFormatR8Snorm = 20, |
257 | SpvImageFormatRgba32i = 21, |
258 | SpvImageFormatRgba16i = 22, |
259 | SpvImageFormatRgba8i = 23, |
260 | SpvImageFormatR32i = 24, |
261 | SpvImageFormatRg32i = 25, |
262 | SpvImageFormatRg16i = 26, |
263 | SpvImageFormatRg8i = 27, |
264 | SpvImageFormatR16i = 28, |
265 | SpvImageFormatR8i = 29, |
266 | SpvImageFormatRgba32ui = 30, |
267 | SpvImageFormatRgba16ui = 31, |
268 | SpvImageFormatRgba8ui = 32, |
269 | SpvImageFormatR32ui = 33, |
270 | SpvImageFormatRgb10a2ui = 34, |
271 | SpvImageFormatRg32ui = 35, |
272 | SpvImageFormatRg16ui = 36, |
273 | SpvImageFormatRg8ui = 37, |
274 | SpvImageFormatR16ui = 38, |
275 | SpvImageFormatR8ui = 39, |
276 | SpvImageFormatMax = 0x7fffffff, |
277 | } SpvImageFormat; |
278 | |
279 | typedef enum SpvImageChannelOrder_ { |
280 | SpvImageChannelOrderR = 0, |
281 | SpvImageChannelOrderA = 1, |
282 | SpvImageChannelOrderRG = 2, |
283 | SpvImageChannelOrderRA = 3, |
284 | SpvImageChannelOrderRGB = 4, |
285 | SpvImageChannelOrderRGBA = 5, |
286 | SpvImageChannelOrderBGRA = 6, |
287 | SpvImageChannelOrderARGB = 7, |
288 | SpvImageChannelOrderIntensity = 8, |
289 | SpvImageChannelOrderLuminance = 9, |
290 | SpvImageChannelOrderRx = 10, |
291 | SpvImageChannelOrderRGx = 11, |
292 | SpvImageChannelOrderRGBx = 12, |
293 | SpvImageChannelOrderDepth = 13, |
294 | SpvImageChannelOrderDepthStencil = 14, |
295 | SpvImageChannelOrdersRGB = 15, |
296 | SpvImageChannelOrdersRGBx = 16, |
297 | SpvImageChannelOrdersRGBA = 17, |
298 | SpvImageChannelOrdersBGRA = 18, |
299 | SpvImageChannelOrderABGR = 19, |
300 | SpvImageChannelOrderMax = 0x7fffffff, |
301 | } SpvImageChannelOrder; |
302 | |
303 | typedef enum SpvImageChannelDataType_ { |
304 | SpvImageChannelDataTypeSnormInt8 = 0, |
305 | SpvImageChannelDataTypeSnormInt16 = 1, |
306 | SpvImageChannelDataTypeUnormInt8 = 2, |
307 | SpvImageChannelDataTypeUnormInt16 = 3, |
308 | SpvImageChannelDataTypeUnormShort565 = 4, |
309 | SpvImageChannelDataTypeUnormShort555 = 5, |
310 | SpvImageChannelDataTypeUnormInt101010 = 6, |
311 | SpvImageChannelDataTypeSignedInt8 = 7, |
312 | SpvImageChannelDataTypeSignedInt16 = 8, |
313 | SpvImageChannelDataTypeSignedInt32 = 9, |
314 | SpvImageChannelDataTypeUnsignedInt8 = 10, |
315 | SpvImageChannelDataTypeUnsignedInt16 = 11, |
316 | SpvImageChannelDataTypeUnsignedInt32 = 12, |
317 | SpvImageChannelDataTypeHalfFloat = 13, |
318 | SpvImageChannelDataTypeFloat = 14, |
319 | SpvImageChannelDataTypeUnormInt24 = 15, |
320 | SpvImageChannelDataTypeUnormInt101010_2 = 16, |
321 | SpvImageChannelDataTypeMax = 0x7fffffff, |
322 | } SpvImageChannelDataType; |
323 | |
324 | typedef enum SpvImageOperandsShift_ { |
325 | SpvImageOperandsBiasShift = 0, |
326 | SpvImageOperandsLodShift = 1, |
327 | SpvImageOperandsGradShift = 2, |
328 | SpvImageOperandsConstOffsetShift = 3, |
329 | SpvImageOperandsOffsetShift = 4, |
330 | SpvImageOperandsConstOffsetsShift = 5, |
331 | SpvImageOperandsSampleShift = 6, |
332 | SpvImageOperandsMinLodShift = 7, |
333 | SpvImageOperandsMakeTexelAvailableShift = 8, |
334 | SpvImageOperandsMakeTexelAvailableKHRShift = 8, |
335 | SpvImageOperandsMakeTexelVisibleShift = 9, |
336 | SpvImageOperandsMakeTexelVisibleKHRShift = 9, |
337 | SpvImageOperandsNonPrivateTexelShift = 10, |
338 | SpvImageOperandsNonPrivateTexelKHRShift = 10, |
339 | SpvImageOperandsVolatileTexelShift = 11, |
340 | SpvImageOperandsVolatileTexelKHRShift = 11, |
341 | SpvImageOperandsSignExtendShift = 12, |
342 | SpvImageOperandsZeroExtendShift = 13, |
343 | SpvImageOperandsMax = 0x7fffffff, |
344 | } SpvImageOperandsShift; |
345 | |
346 | typedef enum SpvImageOperandsMask_ { |
347 | SpvImageOperandsMaskNone = 0, |
348 | SpvImageOperandsBiasMask = 0x00000001, |
349 | SpvImageOperandsLodMask = 0x00000002, |
350 | SpvImageOperandsGradMask = 0x00000004, |
351 | SpvImageOperandsConstOffsetMask = 0x00000008, |
352 | SpvImageOperandsOffsetMask = 0x00000010, |
353 | SpvImageOperandsConstOffsetsMask = 0x00000020, |
354 | SpvImageOperandsSampleMask = 0x00000040, |
355 | SpvImageOperandsMinLodMask = 0x00000080, |
356 | SpvImageOperandsMakeTexelAvailableMask = 0x00000100, |
357 | SpvImageOperandsMakeTexelAvailableKHRMask = 0x00000100, |
358 | SpvImageOperandsMakeTexelVisibleMask = 0x00000200, |
359 | SpvImageOperandsMakeTexelVisibleKHRMask = 0x00000200, |
360 | SpvImageOperandsNonPrivateTexelMask = 0x00000400, |
361 | SpvImageOperandsNonPrivateTexelKHRMask = 0x00000400, |
362 | SpvImageOperandsVolatileTexelMask = 0x00000800, |
363 | SpvImageOperandsVolatileTexelKHRMask = 0x00000800, |
364 | SpvImageOperandsSignExtendMask = 0x00001000, |
365 | SpvImageOperandsZeroExtendMask = 0x00002000, |
366 | } SpvImageOperandsMask; |
367 | |
368 | typedef enum SpvFPFastMathModeShift_ { |
369 | SpvFPFastMathModeNotNaNShift = 0, |
370 | SpvFPFastMathModeNotInfShift = 1, |
371 | SpvFPFastMathModeNSZShift = 2, |
372 | SpvFPFastMathModeAllowRecipShift = 3, |
373 | SpvFPFastMathModeFastShift = 4, |
374 | SpvFPFastMathModeMax = 0x7fffffff, |
375 | } SpvFPFastMathModeShift; |
376 | |
377 | typedef enum SpvFPFastMathModeMask_ { |
378 | SpvFPFastMathModeMaskNone = 0, |
379 | SpvFPFastMathModeNotNaNMask = 0x00000001, |
380 | SpvFPFastMathModeNotInfMask = 0x00000002, |
381 | SpvFPFastMathModeNSZMask = 0x00000004, |
382 | SpvFPFastMathModeAllowRecipMask = 0x00000008, |
383 | SpvFPFastMathModeFastMask = 0x00000010, |
384 | } SpvFPFastMathModeMask; |
385 | |
386 | typedef enum SpvFPRoundingMode_ { |
387 | SpvFPRoundingModeRTE = 0, |
388 | SpvFPRoundingModeRTZ = 1, |
389 | SpvFPRoundingModeRTP = 2, |
390 | SpvFPRoundingModeRTN = 3, |
391 | SpvFPRoundingModeMax = 0x7fffffff, |
392 | } SpvFPRoundingMode; |
393 | |
394 | typedef enum SpvLinkageType_ { |
395 | SpvLinkageTypeExport = 0, |
396 | SpvLinkageTypeImport = 1, |
397 | SpvLinkageTypeMax = 0x7fffffff, |
398 | } SpvLinkageType; |
399 | |
400 | typedef enum SpvAccessQualifier_ { |
401 | SpvAccessQualifierReadOnly = 0, |
402 | SpvAccessQualifierWriteOnly = 1, |
403 | SpvAccessQualifierReadWrite = 2, |
404 | SpvAccessQualifierMax = 0x7fffffff, |
405 | } SpvAccessQualifier; |
406 | |
407 | typedef enum SpvFunctionParameterAttribute_ { |
408 | SpvFunctionParameterAttributeZext = 0, |
409 | SpvFunctionParameterAttributeSext = 1, |
410 | SpvFunctionParameterAttributeByVal = 2, |
411 | SpvFunctionParameterAttributeSret = 3, |
412 | SpvFunctionParameterAttributeNoAlias = 4, |
413 | SpvFunctionParameterAttributeNoCapture = 5, |
414 | SpvFunctionParameterAttributeNoWrite = 6, |
415 | SpvFunctionParameterAttributeNoReadWrite = 7, |
416 | SpvFunctionParameterAttributeMax = 0x7fffffff, |
417 | } SpvFunctionParameterAttribute; |
418 | |
419 | typedef enum SpvDecoration_ { |
420 | SpvDecorationRelaxedPrecision = 0, |
421 | SpvDecorationSpecId = 1, |
422 | SpvDecorationBlock = 2, |
423 | SpvDecorationBufferBlock = 3, |
424 | SpvDecorationRowMajor = 4, |
425 | SpvDecorationColMajor = 5, |
426 | SpvDecorationArrayStride = 6, |
427 | SpvDecorationMatrixStride = 7, |
428 | SpvDecorationGLSLShared = 8, |
429 | SpvDecorationGLSLPacked = 9, |
430 | SpvDecorationCPacked = 10, |
431 | SpvDecorationBuiltIn = 11, |
432 | SpvDecorationNoPerspective = 13, |
433 | SpvDecorationFlat = 14, |
434 | SpvDecorationPatch = 15, |
435 | SpvDecorationCentroid = 16, |
436 | SpvDecorationSample = 17, |
437 | SpvDecorationInvariant = 18, |
438 | SpvDecorationRestrict = 19, |
439 | SpvDecorationAliased = 20, |
440 | SpvDecorationVolatile = 21, |
441 | SpvDecorationConstant = 22, |
442 | SpvDecorationCoherent = 23, |
443 | SpvDecorationNonWritable = 24, |
444 | SpvDecorationNonReadable = 25, |
445 | SpvDecorationUniform = 26, |
446 | SpvDecorationUniformId = 27, |
447 | SpvDecorationSaturatedConversion = 28, |
448 | SpvDecorationStream = 29, |
449 | SpvDecorationLocation = 30, |
450 | SpvDecorationComponent = 31, |
451 | SpvDecorationIndex = 32, |
452 | SpvDecorationBinding = 33, |
453 | SpvDecorationDescriptorSet = 34, |
454 | SpvDecorationOffset = 35, |
455 | SpvDecorationXfbBuffer = 36, |
456 | SpvDecorationXfbStride = 37, |
457 | SpvDecorationFuncParamAttr = 38, |
458 | SpvDecorationFPRoundingMode = 39, |
459 | SpvDecorationFPFastMathMode = 40, |
460 | SpvDecorationLinkageAttributes = 41, |
461 | SpvDecorationNoContraction = 42, |
462 | SpvDecorationInputAttachmentIndex = 43, |
463 | SpvDecorationAlignment = 44, |
464 | SpvDecorationMaxByteOffset = 45, |
465 | SpvDecorationAlignmentId = 46, |
466 | SpvDecorationMaxByteOffsetId = 47, |
467 | SpvDecorationNoSignedWrap = 4469, |
468 | SpvDecorationNoUnsignedWrap = 4470, |
469 | SpvDecorationExplicitInterpAMD = 4999, |
470 | SpvDecorationOverrideCoverageNV = 5248, |
471 | SpvDecorationPassthroughNV = 5250, |
472 | SpvDecorationViewportRelativeNV = 5252, |
473 | SpvDecorationSecondaryViewportRelativeNV = 5256, |
474 | SpvDecorationPerPrimitiveNV = 5271, |
475 | SpvDecorationPerViewNV = 5272, |
476 | SpvDecorationPerTaskNV = 5273, |
477 | SpvDecorationPerVertexNV = 5285, |
478 | SpvDecorationNonUniform = 5300, |
479 | SpvDecorationNonUniformEXT = 5300, |
480 | SpvDecorationRestrictPointer = 5355, |
481 | SpvDecorationRestrictPointerEXT = 5355, |
482 | SpvDecorationAliasedPointer = 5356, |
483 | SpvDecorationAliasedPointerEXT = 5356, |
484 | SpvDecorationCounterBuffer = 5634, |
485 | SpvDecorationHlslCounterBufferGOOGLE = 5634, |
486 | SpvDecorationHlslSemanticGOOGLE = 5635, |
487 | SpvDecorationUserSemantic = 5635, |
488 | SpvDecorationUserTypeGOOGLE = 5636, |
489 | SpvDecorationMax = 0x7fffffff, |
490 | } SpvDecoration; |
491 | |
492 | typedef enum SpvBuiltIn_ { |
493 | SpvBuiltInPosition = 0, |
494 | SpvBuiltInPointSize = 1, |
495 | SpvBuiltInClipDistance = 3, |
496 | SpvBuiltInCullDistance = 4, |
497 | SpvBuiltInVertexId = 5, |
498 | SpvBuiltInInstanceId = 6, |
499 | SpvBuiltInPrimitiveId = 7, |
500 | SpvBuiltInInvocationId = 8, |
501 | SpvBuiltInLayer = 9, |
502 | SpvBuiltInViewportIndex = 10, |
503 | SpvBuiltInTessLevelOuter = 11, |
504 | SpvBuiltInTessLevelInner = 12, |
505 | SpvBuiltInTessCoord = 13, |
506 | SpvBuiltInPatchVertices = 14, |
507 | SpvBuiltInFragCoord = 15, |
508 | SpvBuiltInPointCoord = 16, |
509 | SpvBuiltInFrontFacing = 17, |
510 | SpvBuiltInSampleId = 18, |
511 | SpvBuiltInSamplePosition = 19, |
512 | SpvBuiltInSampleMask = 20, |
513 | SpvBuiltInFragDepth = 22, |
514 | SpvBuiltInHelperInvocation = 23, |
515 | SpvBuiltInNumWorkgroups = 24, |
516 | SpvBuiltInWorkgroupSize = 25, |
517 | SpvBuiltInWorkgroupId = 26, |
518 | SpvBuiltInLocalInvocationId = 27, |
519 | SpvBuiltInGlobalInvocationId = 28, |
520 | SpvBuiltInLocalInvocationIndex = 29, |
521 | SpvBuiltInWorkDim = 30, |
522 | SpvBuiltInGlobalSize = 31, |
523 | SpvBuiltInEnqueuedWorkgroupSize = 32, |
524 | SpvBuiltInGlobalOffset = 33, |
525 | SpvBuiltInGlobalLinearId = 34, |
526 | SpvBuiltInSubgroupSize = 36, |
527 | SpvBuiltInSubgroupMaxSize = 37, |
528 | SpvBuiltInNumSubgroups = 38, |
529 | SpvBuiltInNumEnqueuedSubgroups = 39, |
530 | SpvBuiltInSubgroupId = 40, |
531 | SpvBuiltInSubgroupLocalInvocationId = 41, |
532 | SpvBuiltInVertexIndex = 42, |
533 | SpvBuiltInInstanceIndex = 43, |
534 | SpvBuiltInSubgroupEqMask = 4416, |
535 | SpvBuiltInSubgroupEqMaskKHR = 4416, |
536 | SpvBuiltInSubgroupGeMask = 4417, |
537 | SpvBuiltInSubgroupGeMaskKHR = 4417, |
538 | SpvBuiltInSubgroupGtMask = 4418, |
539 | SpvBuiltInSubgroupGtMaskKHR = 4418, |
540 | SpvBuiltInSubgroupLeMask = 4419, |
541 | SpvBuiltInSubgroupLeMaskKHR = 4419, |
542 | SpvBuiltInSubgroupLtMask = 4420, |
543 | SpvBuiltInSubgroupLtMaskKHR = 4420, |
544 | SpvBuiltInBaseVertex = 4424, |
545 | SpvBuiltInBaseInstance = 4425, |
546 | SpvBuiltInDrawIndex = 4426, |
547 | SpvBuiltInDeviceIndex = 4438, |
548 | SpvBuiltInViewIndex = 4440, |
549 | SpvBuiltInBaryCoordNoPerspAMD = 4992, |
550 | SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993, |
551 | SpvBuiltInBaryCoordNoPerspSampleAMD = 4994, |
552 | SpvBuiltInBaryCoordSmoothAMD = 4995, |
553 | SpvBuiltInBaryCoordSmoothCentroidAMD = 4996, |
554 | SpvBuiltInBaryCoordSmoothSampleAMD = 4997, |
555 | SpvBuiltInBaryCoordPullModelAMD = 4998, |
556 | SpvBuiltInFragStencilRefEXT = 5014, |
557 | SpvBuiltInViewportMaskNV = 5253, |
558 | SpvBuiltInSecondaryPositionNV = 5257, |
559 | SpvBuiltInSecondaryViewportMaskNV = 5258, |
560 | SpvBuiltInPositionPerViewNV = 5261, |
561 | SpvBuiltInViewportMaskPerViewNV = 5262, |
562 | SpvBuiltInFullyCoveredEXT = 5264, |
563 | SpvBuiltInTaskCountNV = 5274, |
564 | SpvBuiltInPrimitiveCountNV = 5275, |
565 | SpvBuiltInPrimitiveIndicesNV = 5276, |
566 | SpvBuiltInClipDistancePerViewNV = 5277, |
567 | SpvBuiltInCullDistancePerViewNV = 5278, |
568 | SpvBuiltInLayerPerViewNV = 5279, |
569 | SpvBuiltInMeshViewCountNV = 5280, |
570 | SpvBuiltInMeshViewIndicesNV = 5281, |
571 | SpvBuiltInBaryCoordNV = 5286, |
572 | SpvBuiltInBaryCoordNoPerspNV = 5287, |
573 | SpvBuiltInFragSizeEXT = 5292, |
574 | SpvBuiltInFragmentSizeNV = 5292, |
575 | SpvBuiltInFragInvocationCountEXT = 5293, |
576 | SpvBuiltInInvocationsPerPixelNV = 5293, |
577 | SpvBuiltInLaunchIdKHR = 5319, |
578 | SpvBuiltInLaunchIdNV = 5319, |
579 | SpvBuiltInLaunchSizeKHR = 5320, |
580 | SpvBuiltInLaunchSizeNV = 5320, |
581 | SpvBuiltInWorldRayOriginKHR = 5321, |
582 | SpvBuiltInWorldRayOriginNV = 5321, |
583 | SpvBuiltInWorldRayDirectionKHR = 5322, |
584 | SpvBuiltInWorldRayDirectionNV = 5322, |
585 | SpvBuiltInObjectRayOriginKHR = 5323, |
586 | SpvBuiltInObjectRayOriginNV = 5323, |
587 | SpvBuiltInObjectRayDirectionKHR = 5324, |
588 | SpvBuiltInObjectRayDirectionNV = 5324, |
589 | SpvBuiltInRayTminKHR = 5325, |
590 | SpvBuiltInRayTminNV = 5325, |
591 | SpvBuiltInRayTmaxKHR = 5326, |
592 | SpvBuiltInRayTmaxNV = 5326, |
593 | SpvBuiltInInstanceCustomIndexKHR = 5327, |
594 | SpvBuiltInInstanceCustomIndexNV = 5327, |
595 | SpvBuiltInObjectToWorldKHR = 5330, |
596 | SpvBuiltInObjectToWorldNV = 5330, |
597 | SpvBuiltInWorldToObjectKHR = 5331, |
598 | SpvBuiltInWorldToObjectNV = 5331, |
599 | SpvBuiltInHitTKHR = 5332, |
600 | SpvBuiltInHitTNV = 5332, |
601 | SpvBuiltInHitKindKHR = 5333, |
602 | SpvBuiltInHitKindNV = 5333, |
603 | SpvBuiltInIncomingRayFlagsKHR = 5351, |
604 | SpvBuiltInIncomingRayFlagsNV = 5351, |
605 | SpvBuiltInRayGeometryIndexKHR = 5352, |
606 | SpvBuiltInWarpsPerSMNV = 5374, |
607 | SpvBuiltInSMCountNV = 5375, |
608 | SpvBuiltInWarpIDNV = 5376, |
609 | SpvBuiltInSMIDNV = 5377, |
610 | SpvBuiltInMax = 0x7fffffff, |
611 | } SpvBuiltIn; |
612 | |
613 | typedef enum SpvSelectionControlShift_ { |
614 | SpvSelectionControlFlattenShift = 0, |
615 | SpvSelectionControlDontFlattenShift = 1, |
616 | SpvSelectionControlMax = 0x7fffffff, |
617 | } SpvSelectionControlShift; |
618 | |
619 | typedef enum SpvSelectionControlMask_ { |
620 | SpvSelectionControlMaskNone = 0, |
621 | SpvSelectionControlFlattenMask = 0x00000001, |
622 | SpvSelectionControlDontFlattenMask = 0x00000002, |
623 | } SpvSelectionControlMask; |
624 | |
625 | typedef enum SpvLoopControlShift_ { |
626 | SpvLoopControlUnrollShift = 0, |
627 | SpvLoopControlDontUnrollShift = 1, |
628 | SpvLoopControlDependencyInfiniteShift = 2, |
629 | SpvLoopControlDependencyLengthShift = 3, |
630 | SpvLoopControlMinIterationsShift = 4, |
631 | SpvLoopControlMaxIterationsShift = 5, |
632 | SpvLoopControlIterationMultipleShift = 6, |
633 | SpvLoopControlPeelCountShift = 7, |
634 | SpvLoopControlPartialCountShift = 8, |
635 | SpvLoopControlMax = 0x7fffffff, |
636 | } SpvLoopControlShift; |
637 | |
638 | typedef enum SpvLoopControlMask_ { |
639 | SpvLoopControlMaskNone = 0, |
640 | SpvLoopControlUnrollMask = 0x00000001, |
641 | SpvLoopControlDontUnrollMask = 0x00000002, |
642 | SpvLoopControlDependencyInfiniteMask = 0x00000004, |
643 | SpvLoopControlDependencyLengthMask = 0x00000008, |
644 | SpvLoopControlMinIterationsMask = 0x00000010, |
645 | SpvLoopControlMaxIterationsMask = 0x00000020, |
646 | SpvLoopControlIterationMultipleMask = 0x00000040, |
647 | SpvLoopControlPeelCountMask = 0x00000080, |
648 | SpvLoopControlPartialCountMask = 0x00000100, |
649 | } SpvLoopControlMask; |
650 | |
651 | typedef enum SpvFunctionControlShift_ { |
652 | SpvFunctionControlInlineShift = 0, |
653 | SpvFunctionControlDontInlineShift = 1, |
654 | SpvFunctionControlPureShift = 2, |
655 | SpvFunctionControlConstShift = 3, |
656 | SpvFunctionControlMax = 0x7fffffff, |
657 | } SpvFunctionControlShift; |
658 | |
659 | typedef enum SpvFunctionControlMask_ { |
660 | SpvFunctionControlMaskNone = 0, |
661 | SpvFunctionControlInlineMask = 0x00000001, |
662 | SpvFunctionControlDontInlineMask = 0x00000002, |
663 | SpvFunctionControlPureMask = 0x00000004, |
664 | SpvFunctionControlConstMask = 0x00000008, |
665 | } SpvFunctionControlMask; |
666 | |
667 | typedef enum SpvMemorySemanticsShift_ { |
668 | SpvMemorySemanticsAcquireShift = 1, |
669 | SpvMemorySemanticsReleaseShift = 2, |
670 | SpvMemorySemanticsAcquireReleaseShift = 3, |
671 | SpvMemorySemanticsSequentiallyConsistentShift = 4, |
672 | SpvMemorySemanticsUniformMemoryShift = 6, |
673 | SpvMemorySemanticsSubgroupMemoryShift = 7, |
674 | SpvMemorySemanticsWorkgroupMemoryShift = 8, |
675 | SpvMemorySemanticsCrossWorkgroupMemoryShift = 9, |
676 | SpvMemorySemanticsAtomicCounterMemoryShift = 10, |
677 | SpvMemorySemanticsImageMemoryShift = 11, |
678 | SpvMemorySemanticsOutputMemoryShift = 12, |
679 | SpvMemorySemanticsOutputMemoryKHRShift = 12, |
680 | SpvMemorySemanticsMakeAvailableShift = 13, |
681 | SpvMemorySemanticsMakeAvailableKHRShift = 13, |
682 | SpvMemorySemanticsMakeVisibleShift = 14, |
683 | SpvMemorySemanticsMakeVisibleKHRShift = 14, |
684 | SpvMemorySemanticsVolatileShift = 15, |
685 | SpvMemorySemanticsMax = 0x7fffffff, |
686 | } SpvMemorySemanticsShift; |
687 | |
688 | typedef enum SpvMemorySemanticsMask_ { |
689 | SpvMemorySemanticsMaskNone = 0, |
690 | SpvMemorySemanticsAcquireMask = 0x00000002, |
691 | SpvMemorySemanticsReleaseMask = 0x00000004, |
692 | SpvMemorySemanticsAcquireReleaseMask = 0x00000008, |
693 | SpvMemorySemanticsSequentiallyConsistentMask = 0x00000010, |
694 | SpvMemorySemanticsUniformMemoryMask = 0x00000040, |
695 | SpvMemorySemanticsSubgroupMemoryMask = 0x00000080, |
696 | SpvMemorySemanticsWorkgroupMemoryMask = 0x00000100, |
697 | SpvMemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, |
698 | SpvMemorySemanticsAtomicCounterMemoryMask = 0x00000400, |
699 | SpvMemorySemanticsImageMemoryMask = 0x00000800, |
700 | SpvMemorySemanticsOutputMemoryMask = 0x00001000, |
701 | SpvMemorySemanticsOutputMemoryKHRMask = 0x00001000, |
702 | SpvMemorySemanticsMakeAvailableMask = 0x00002000, |
703 | SpvMemorySemanticsMakeAvailableKHRMask = 0x00002000, |
704 | SpvMemorySemanticsMakeVisibleMask = 0x00004000, |
705 | SpvMemorySemanticsMakeVisibleKHRMask = 0x00004000, |
706 | SpvMemorySemanticsVolatileMask = 0x00008000, |
707 | } SpvMemorySemanticsMask; |
708 | |
709 | typedef enum SpvMemoryAccessShift_ { |
710 | SpvMemoryAccessVolatileShift = 0, |
711 | SpvMemoryAccessAlignedShift = 1, |
712 | SpvMemoryAccessNontemporalShift = 2, |
713 | SpvMemoryAccessMakePointerAvailableShift = 3, |
714 | SpvMemoryAccessMakePointerAvailableKHRShift = 3, |
715 | SpvMemoryAccessMakePointerVisibleShift = 4, |
716 | SpvMemoryAccessMakePointerVisibleKHRShift = 4, |
717 | SpvMemoryAccessNonPrivatePointerShift = 5, |
718 | SpvMemoryAccessNonPrivatePointerKHRShift = 5, |
719 | SpvMemoryAccessMax = 0x7fffffff, |
720 | } SpvMemoryAccessShift; |
721 | |
722 | typedef enum SpvMemoryAccessMask_ { |
723 | SpvMemoryAccessMaskNone = 0, |
724 | SpvMemoryAccessVolatileMask = 0x00000001, |
725 | SpvMemoryAccessAlignedMask = 0x00000002, |
726 | SpvMemoryAccessNontemporalMask = 0x00000004, |
727 | SpvMemoryAccessMakePointerAvailableMask = 0x00000008, |
728 | SpvMemoryAccessMakePointerAvailableKHRMask = 0x00000008, |
729 | SpvMemoryAccessMakePointerVisibleMask = 0x00000010, |
730 | SpvMemoryAccessMakePointerVisibleKHRMask = 0x00000010, |
731 | SpvMemoryAccessNonPrivatePointerMask = 0x00000020, |
732 | SpvMemoryAccessNonPrivatePointerKHRMask = 0x00000020, |
733 | } SpvMemoryAccessMask; |
734 | |
735 | typedef enum SpvScope_ { |
736 | SpvScopeCrossDevice = 0, |
737 | SpvScopeDevice = 1, |
738 | SpvScopeWorkgroup = 2, |
739 | SpvScopeSubgroup = 3, |
740 | SpvScopeInvocation = 4, |
741 | SpvScopeQueueFamily = 5, |
742 | SpvScopeQueueFamilyKHR = 5, |
743 | SpvScopeShaderCallKHR = 6, |
744 | SpvScopeMax = 0x7fffffff, |
745 | } SpvScope; |
746 | |
747 | typedef enum SpvGroupOperation_ { |
748 | SpvGroupOperationReduce = 0, |
749 | SpvGroupOperationInclusiveScan = 1, |
750 | SpvGroupOperationExclusiveScan = 2, |
751 | SpvGroupOperationClusteredReduce = 3, |
752 | SpvGroupOperationPartitionedReduceNV = 6, |
753 | SpvGroupOperationPartitionedInclusiveScanNV = 7, |
754 | SpvGroupOperationPartitionedExclusiveScanNV = 8, |
755 | SpvGroupOperationMax = 0x7fffffff, |
756 | } SpvGroupOperation; |
757 | |
758 | typedef enum SpvKernelEnqueueFlags_ { |
759 | SpvKernelEnqueueFlagsNoWait = 0, |
760 | SpvKernelEnqueueFlagsWaitKernel = 1, |
761 | SpvKernelEnqueueFlagsWaitWorkGroup = 2, |
762 | SpvKernelEnqueueFlagsMax = 0x7fffffff, |
763 | } SpvKernelEnqueueFlags; |
764 | |
765 | typedef enum SpvKernelProfilingInfoShift_ { |
766 | SpvKernelProfilingInfoCmdExecTimeShift = 0, |
767 | SpvKernelProfilingInfoMax = 0x7fffffff, |
768 | } SpvKernelProfilingInfoShift; |
769 | |
770 | typedef enum SpvKernelProfilingInfoMask_ { |
771 | SpvKernelProfilingInfoMaskNone = 0, |
772 | SpvKernelProfilingInfoCmdExecTimeMask = 0x00000001, |
773 | } SpvKernelProfilingInfoMask; |
774 | |
775 | typedef enum SpvCapability_ { |
776 | SpvCapabilityMatrix = 0, |
777 | SpvCapabilityShader = 1, |
778 | SpvCapabilityGeometry = 2, |
779 | SpvCapabilityTessellation = 3, |
780 | SpvCapabilityAddresses = 4, |
781 | SpvCapabilityLinkage = 5, |
782 | SpvCapabilityKernel = 6, |
783 | SpvCapabilityVector16 = 7, |
784 | SpvCapabilityFloat16Buffer = 8, |
785 | SpvCapabilityFloat16 = 9, |
786 | SpvCapabilityFloat64 = 10, |
787 | SpvCapabilityInt64 = 11, |
788 | SpvCapabilityInt64Atomics = 12, |
789 | SpvCapabilityImageBasic = 13, |
790 | SpvCapabilityImageReadWrite = 14, |
791 | SpvCapabilityImageMipmap = 15, |
792 | SpvCapabilityPipes = 17, |
793 | SpvCapabilityGroups = 18, |
794 | SpvCapabilityDeviceEnqueue = 19, |
795 | SpvCapabilityLiteralSampler = 20, |
796 | SpvCapabilityAtomicStorage = 21, |
797 | SpvCapabilityInt16 = 22, |
798 | SpvCapabilityTessellationPointSize = 23, |
799 | SpvCapabilityGeometryPointSize = 24, |
800 | SpvCapabilityImageGatherExtended = 25, |
801 | SpvCapabilityStorageImageMultisample = 27, |
802 | SpvCapabilityUniformBufferArrayDynamicIndexing = 28, |
803 | SpvCapabilitySampledImageArrayDynamicIndexing = 29, |
804 | SpvCapabilityStorageBufferArrayDynamicIndexing = 30, |
805 | SpvCapabilityStorageImageArrayDynamicIndexing = 31, |
806 | SpvCapabilityClipDistance = 32, |
807 | SpvCapabilityCullDistance = 33, |
808 | SpvCapabilityImageCubeArray = 34, |
809 | SpvCapabilitySampleRateShading = 35, |
810 | SpvCapabilityImageRect = 36, |
811 | SpvCapabilitySampledRect = 37, |
812 | SpvCapabilityGenericPointer = 38, |
813 | SpvCapabilityInt8 = 39, |
814 | SpvCapabilityInputAttachment = 40, |
815 | SpvCapabilitySparseResidency = 41, |
816 | SpvCapabilityMinLod = 42, |
817 | SpvCapabilitySampled1D = 43, |
818 | SpvCapabilityImage1D = 44, |
819 | SpvCapabilitySampledCubeArray = 45, |
820 | SpvCapabilitySampledBuffer = 46, |
821 | SpvCapabilityImageBuffer = 47, |
822 | SpvCapabilityImageMSArray = 48, |
823 | SpvCapabilityStorageImageExtendedFormats = 49, |
824 | SpvCapabilityImageQuery = 50, |
825 | SpvCapabilityDerivativeControl = 51, |
826 | SpvCapabilityInterpolationFunction = 52, |
827 | SpvCapabilityTransformFeedback = 53, |
828 | SpvCapabilityGeometryStreams = 54, |
829 | SpvCapabilityStorageImageReadWithoutFormat = 55, |
830 | SpvCapabilityStorageImageWriteWithoutFormat = 56, |
831 | SpvCapabilityMultiViewport = 57, |
832 | SpvCapabilitySubgroupDispatch = 58, |
833 | SpvCapabilityNamedBarrier = 59, |
834 | SpvCapabilityPipeStorage = 60, |
835 | SpvCapabilityGroupNonUniform = 61, |
836 | SpvCapabilityGroupNonUniformVote = 62, |
837 | SpvCapabilityGroupNonUniformArithmetic = 63, |
838 | SpvCapabilityGroupNonUniformBallot = 64, |
839 | SpvCapabilityGroupNonUniformShuffle = 65, |
840 | SpvCapabilityGroupNonUniformShuffleRelative = 66, |
841 | SpvCapabilityGroupNonUniformClustered = 67, |
842 | SpvCapabilityGroupNonUniformQuad = 68, |
843 | SpvCapabilityShaderLayer = 69, |
844 | SpvCapabilityShaderViewportIndex = 70, |
845 | SpvCapabilitySubgroupBallotKHR = 4423, |
846 | SpvCapabilityDrawParameters = 4427, |
847 | SpvCapabilitySubgroupVoteKHR = 4431, |
848 | SpvCapabilityStorageBuffer16BitAccess = 4433, |
849 | SpvCapabilityStorageUniformBufferBlock16 = 4433, |
850 | SpvCapabilityStorageUniform16 = 4434, |
851 | SpvCapabilityUniformAndStorageBuffer16BitAccess = 4434, |
852 | SpvCapabilityStoragePushConstant16 = 4435, |
853 | SpvCapabilityStorageInputOutput16 = 4436, |
854 | SpvCapabilityDeviceGroup = 4437, |
855 | SpvCapabilityMultiView = 4439, |
856 | = 4441, |
857 | SpvCapabilityVariablePointers = 4442, |
858 | SpvCapabilityAtomicStorageOps = 4445, |
859 | SpvCapabilitySampleMaskPostDepthCoverage = 4447, |
860 | SpvCapabilityStorageBuffer8BitAccess = 4448, |
861 | SpvCapabilityUniformAndStorageBuffer8BitAccess = 4449, |
862 | SpvCapabilityStoragePushConstant8 = 4450, |
863 | SpvCapabilityDenormPreserve = 4464, |
864 | SpvCapabilityDenormFlushToZero = 4465, |
865 | SpvCapabilitySignedZeroInfNanPreserve = 4466, |
866 | SpvCapabilityRoundingModeRTE = 4467, |
867 | SpvCapabilityRoundingModeRTZ = 4468, |
868 | SpvCapabilityRayQueryProvisionalKHR = 4471, |
869 | SpvCapabilityRayTraversalPrimitiveCullingProvisionalKHR = 4478, |
870 | SpvCapabilityFloat16ImageAMD = 5008, |
871 | SpvCapabilityImageGatherBiasLodAMD = 5009, |
872 | SpvCapabilityFragmentMaskAMD = 5010, |
873 | SpvCapabilityStencilExportEXT = 5013, |
874 | SpvCapabilityImageReadWriteLodAMD = 5015, |
875 | SpvCapabilityShaderClockKHR = 5055, |
876 | SpvCapabilitySampleMaskOverrideCoverageNV = 5249, |
877 | SpvCapabilityGeometryShaderPassthroughNV = 5251, |
878 | SpvCapabilityShaderViewportIndexLayerEXT = 5254, |
879 | SpvCapabilityShaderViewportIndexLayerNV = 5254, |
880 | SpvCapabilityShaderViewportMaskNV = 5255, |
881 | SpvCapabilityShaderStereoViewNV = 5259, |
882 | SpvCapabilityPerViewAttributesNV = 5260, |
883 | SpvCapabilityFragmentFullyCoveredEXT = 5265, |
884 | SpvCapabilityMeshShadingNV = 5266, |
885 | = 5282, |
886 | SpvCapabilityFragmentBarycentricNV = 5284, |
887 | SpvCapabilityComputeDerivativeGroupQuadsNV = 5288, |
888 | SpvCapabilityFragmentDensityEXT = 5291, |
889 | SpvCapabilityShadingRateNV = 5291, |
890 | SpvCapabilityGroupNonUniformPartitionedNV = 5297, |
891 | SpvCapabilityShaderNonUniform = 5301, |
892 | SpvCapabilityShaderNonUniformEXT = 5301, |
893 | SpvCapabilityRuntimeDescriptorArray = 5302, |
894 | SpvCapabilityRuntimeDescriptorArrayEXT = 5302, |
895 | SpvCapabilityInputAttachmentArrayDynamicIndexing = 5303, |
896 | SpvCapabilityInputAttachmentArrayDynamicIndexingEXT = 5303, |
897 | SpvCapabilityUniformTexelBufferArrayDynamicIndexing = 5304, |
898 | SpvCapabilityUniformTexelBufferArrayDynamicIndexingEXT = 5304, |
899 | SpvCapabilityStorageTexelBufferArrayDynamicIndexing = 5305, |
900 | SpvCapabilityStorageTexelBufferArrayDynamicIndexingEXT = 5305, |
901 | SpvCapabilityUniformBufferArrayNonUniformIndexing = 5306, |
902 | SpvCapabilityUniformBufferArrayNonUniformIndexingEXT = 5306, |
903 | SpvCapabilitySampledImageArrayNonUniformIndexing = 5307, |
904 | SpvCapabilitySampledImageArrayNonUniformIndexingEXT = 5307, |
905 | SpvCapabilityStorageBufferArrayNonUniformIndexing = 5308, |
906 | SpvCapabilityStorageBufferArrayNonUniformIndexingEXT = 5308, |
907 | SpvCapabilityStorageImageArrayNonUniformIndexing = 5309, |
908 | SpvCapabilityStorageImageArrayNonUniformIndexingEXT = 5309, |
909 | SpvCapabilityInputAttachmentArrayNonUniformIndexing = 5310, |
910 | SpvCapabilityInputAttachmentArrayNonUniformIndexingEXT = 5310, |
911 | SpvCapabilityUniformTexelBufferArrayNonUniformIndexing = 5311, |
912 | SpvCapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311, |
913 | SpvCapabilityStorageTexelBufferArrayNonUniformIndexing = 5312, |
914 | SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312, |
915 | SpvCapabilityRayTracingNV = 5340, |
916 | SpvCapabilityVulkanMemoryModel = 5345, |
917 | SpvCapabilityVulkanMemoryModelKHR = 5345, |
918 | SpvCapabilityVulkanMemoryModelDeviceScope = 5346, |
919 | SpvCapabilityVulkanMemoryModelDeviceScopeKHR = 5346, |
920 | SpvCapabilityPhysicalStorageBufferAddresses = 5347, |
921 | SpvCapabilityPhysicalStorageBufferAddressesEXT = 5347, |
922 | SpvCapabilityComputeDerivativeGroupLinearNV = 5350, |
923 | SpvCapabilityRayTracingProvisionalKHR = 5353, |
924 | SpvCapabilityCooperativeMatrixNV = 5357, |
925 | SpvCapabilityFragmentShaderSampleInterlockEXT = 5363, |
926 | SpvCapabilityFragmentShaderShadingRateInterlockEXT = 5372, |
927 | SpvCapabilityShaderSMBuiltinsNV = 5373, |
928 | SpvCapabilityFragmentShaderPixelInterlockEXT = 5378, |
929 | SpvCapabilityDemoteToHelperInvocationEXT = 5379, |
930 | SpvCapabilitySubgroupShuffleINTEL = 5568, |
931 | SpvCapabilitySubgroupBufferBlockIOINTEL = 5569, |
932 | SpvCapabilitySubgroupImageBlockIOINTEL = 5570, |
933 | SpvCapabilitySubgroupImageMediaBlockIOINTEL = 5579, |
934 | SpvCapabilityIntegerFunctions2INTEL = 5584, |
935 | SpvCapabilitySubgroupAvcMotionEstimationINTEL = 5696, |
936 | SpvCapabilitySubgroupAvcMotionEstimationIntraINTEL = 5697, |
937 | SpvCapabilitySubgroupAvcMotionEstimationChromaINTEL = 5698, |
938 | SpvCapabilityMax = 0x7fffffff, |
939 | } SpvCapability; |
940 | |
941 | typedef enum SpvRayFlagsShift_ { |
942 | SpvRayFlagsOpaqueKHRShift = 0, |
943 | SpvRayFlagsNoOpaqueKHRShift = 1, |
944 | SpvRayFlagsTerminateOnFirstHitKHRShift = 2, |
945 | SpvRayFlagsSkipClosestHitShaderKHRShift = 3, |
946 | SpvRayFlagsCullBackFacingTrianglesKHRShift = 4, |
947 | SpvRayFlagsCullFrontFacingTrianglesKHRShift = 5, |
948 | SpvRayFlagsCullOpaqueKHRShift = 6, |
949 | SpvRayFlagsCullNoOpaqueKHRShift = 7, |
950 | SpvRayFlagsSkipTrianglesKHRShift = 8, |
951 | SpvRayFlagsSkipAABBsKHRShift = 9, |
952 | SpvRayFlagsMax = 0x7fffffff, |
953 | } SpvRayFlagsShift; |
954 | |
955 | typedef enum SpvRayFlagsMask_ { |
956 | SpvRayFlagsMaskNone = 0, |
957 | SpvRayFlagsOpaqueKHRMask = 0x00000001, |
958 | SpvRayFlagsNoOpaqueKHRMask = 0x00000002, |
959 | SpvRayFlagsTerminateOnFirstHitKHRMask = 0x00000004, |
960 | SpvRayFlagsSkipClosestHitShaderKHRMask = 0x00000008, |
961 | SpvRayFlagsCullBackFacingTrianglesKHRMask = 0x00000010, |
962 | SpvRayFlagsCullFrontFacingTrianglesKHRMask = 0x00000020, |
963 | SpvRayFlagsCullOpaqueKHRMask = 0x00000040, |
964 | SpvRayFlagsCullNoOpaqueKHRMask = 0x00000080, |
965 | SpvRayFlagsSkipTrianglesKHRMask = 0x00000100, |
966 | SpvRayFlagsSkipAABBsKHRMask = 0x00000200, |
967 | } SpvRayFlagsMask; |
968 | |
969 | typedef enum SpvRayQueryIntersection_ { |
970 | SpvRayQueryIntersectionRayQueryCandidateIntersectionKHR = 0, |
971 | SpvRayQueryIntersectionRayQueryCommittedIntersectionKHR = 1, |
972 | SpvRayQueryIntersectionMax = 0x7fffffff, |
973 | } SpvRayQueryIntersection; |
974 | |
975 | typedef enum SpvRayQueryCommittedIntersectionType_ { |
976 | SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionNoneKHR = 0, |
977 | SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionTriangleKHR = 1, |
978 | SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionGeneratedKHR = 2, |
979 | SpvRayQueryCommittedIntersectionTypeMax = 0x7fffffff, |
980 | } SpvRayQueryCommittedIntersectionType; |
981 | |
982 | typedef enum SpvRayQueryCandidateIntersectionType_ { |
983 | SpvRayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionTriangleKHR = 0, |
984 | SpvRayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionAABBKHR = 1, |
985 | SpvRayQueryCandidateIntersectionTypeMax = 0x7fffffff, |
986 | } SpvRayQueryCandidateIntersectionType; |
987 | |
988 | typedef enum SpvOp_ { |
989 | SpvOpNop = 0, |
990 | SpvOpUndef = 1, |
991 | SpvOpSourceContinued = 2, |
992 | SpvOpSource = 3, |
993 | SpvOpSourceExtension = 4, |
994 | SpvOpName = 5, |
995 | SpvOpMemberName = 6, |
996 | SpvOpString = 7, |
997 | SpvOpLine = 8, |
998 | SpvOpExtension = 10, |
999 | SpvOpExtInstImport = 11, |
1000 | SpvOpExtInst = 12, |
1001 | SpvOpMemoryModel = 14, |
1002 | SpvOpEntryPoint = 15, |
1003 | SpvOpExecutionMode = 16, |
1004 | SpvOpCapability = 17, |
1005 | SpvOpTypeVoid = 19, |
1006 | SpvOpTypeBool = 20, |
1007 | SpvOpTypeInt = 21, |
1008 | SpvOpTypeFloat = 22, |
1009 | SpvOpTypeVector = 23, |
1010 | SpvOpTypeMatrix = 24, |
1011 | SpvOpTypeImage = 25, |
1012 | SpvOpTypeSampler = 26, |
1013 | SpvOpTypeSampledImage = 27, |
1014 | SpvOpTypeArray = 28, |
1015 | SpvOpTypeRuntimeArray = 29, |
1016 | SpvOpTypeStruct = 30, |
1017 | SpvOpTypeOpaque = 31, |
1018 | SpvOpTypePointer = 32, |
1019 | SpvOpTypeFunction = 33, |
1020 | SpvOpTypeEvent = 34, |
1021 | SpvOpTypeDeviceEvent = 35, |
1022 | SpvOpTypeReserveId = 36, |
1023 | SpvOpTypeQueue = 37, |
1024 | SpvOpTypePipe = 38, |
1025 | SpvOpTypeForwardPointer = 39, |
1026 | SpvOpConstantTrue = 41, |
1027 | SpvOpConstantFalse = 42, |
1028 | SpvOpConstant = 43, |
1029 | SpvOpConstantComposite = 44, |
1030 | SpvOpConstantSampler = 45, |
1031 | SpvOpConstantNull = 46, |
1032 | SpvOpSpecConstantTrue = 48, |
1033 | SpvOpSpecConstantFalse = 49, |
1034 | SpvOpSpecConstant = 50, |
1035 | SpvOpSpecConstantComposite = 51, |
1036 | SpvOpSpecConstantOp = 52, |
1037 | SpvOpFunction = 54, |
1038 | SpvOpFunctionParameter = 55, |
1039 | SpvOpFunctionEnd = 56, |
1040 | SpvOpFunctionCall = 57, |
1041 | SpvOpVariable = 59, |
1042 | SpvOpImageTexelPointer = 60, |
1043 | SpvOpLoad = 61, |
1044 | SpvOpStore = 62, |
1045 | SpvOpCopyMemory = 63, |
1046 | SpvOpCopyMemorySized = 64, |
1047 | SpvOpAccessChain = 65, |
1048 | SpvOpInBoundsAccessChain = 66, |
1049 | SpvOpPtrAccessChain = 67, |
1050 | SpvOpArrayLength = 68, |
1051 | SpvOpGenericPtrMemSemantics = 69, |
1052 | SpvOpInBoundsPtrAccessChain = 70, |
1053 | SpvOpDecorate = 71, |
1054 | SpvOpMemberDecorate = 72, |
1055 | SpvOpDecorationGroup = 73, |
1056 | SpvOpGroupDecorate = 74, |
1057 | SpvOpGroupMemberDecorate = 75, |
1058 | = 77, |
1059 | SpvOpVectorInsertDynamic = 78, |
1060 | SpvOpVectorShuffle = 79, |
1061 | SpvOpCompositeConstruct = 80, |
1062 | = 81, |
1063 | SpvOpCompositeInsert = 82, |
1064 | SpvOpCopyObject = 83, |
1065 | SpvOpTranspose = 84, |
1066 | SpvOpSampledImage = 86, |
1067 | SpvOpImageSampleImplicitLod = 87, |
1068 | SpvOpImageSampleExplicitLod = 88, |
1069 | SpvOpImageSampleDrefImplicitLod = 89, |
1070 | SpvOpImageSampleDrefExplicitLod = 90, |
1071 | SpvOpImageSampleProjImplicitLod = 91, |
1072 | SpvOpImageSampleProjExplicitLod = 92, |
1073 | SpvOpImageSampleProjDrefImplicitLod = 93, |
1074 | SpvOpImageSampleProjDrefExplicitLod = 94, |
1075 | SpvOpImageFetch = 95, |
1076 | SpvOpImageGather = 96, |
1077 | SpvOpImageDrefGather = 97, |
1078 | SpvOpImageRead = 98, |
1079 | SpvOpImageWrite = 99, |
1080 | SpvOpImage = 100, |
1081 | SpvOpImageQueryFormat = 101, |
1082 | SpvOpImageQueryOrder = 102, |
1083 | SpvOpImageQuerySizeLod = 103, |
1084 | SpvOpImageQuerySize = 104, |
1085 | SpvOpImageQueryLod = 105, |
1086 | SpvOpImageQueryLevels = 106, |
1087 | SpvOpImageQuerySamples = 107, |
1088 | SpvOpConvertFToU = 109, |
1089 | SpvOpConvertFToS = 110, |
1090 | SpvOpConvertSToF = 111, |
1091 | SpvOpConvertUToF = 112, |
1092 | SpvOpUConvert = 113, |
1093 | SpvOpSConvert = 114, |
1094 | SpvOpFConvert = 115, |
1095 | SpvOpQuantizeToF16 = 116, |
1096 | SpvOpConvertPtrToU = 117, |
1097 | SpvOpSatConvertSToU = 118, |
1098 | SpvOpSatConvertUToS = 119, |
1099 | SpvOpConvertUToPtr = 120, |
1100 | SpvOpPtrCastToGeneric = 121, |
1101 | SpvOpGenericCastToPtr = 122, |
1102 | SpvOpGenericCastToPtrExplicit = 123, |
1103 | SpvOpBitcast = 124, |
1104 | SpvOpSNegate = 126, |
1105 | SpvOpFNegate = 127, |
1106 | SpvOpIAdd = 128, |
1107 | SpvOpFAdd = 129, |
1108 | SpvOpISub = 130, |
1109 | SpvOpFSub = 131, |
1110 | SpvOpIMul = 132, |
1111 | SpvOpFMul = 133, |
1112 | SpvOpUDiv = 134, |
1113 | SpvOpSDiv = 135, |
1114 | SpvOpFDiv = 136, |
1115 | SpvOpUMod = 137, |
1116 | SpvOpSRem = 138, |
1117 | SpvOpSMod = 139, |
1118 | SpvOpFRem = 140, |
1119 | SpvOpFMod = 141, |
1120 | SpvOpVectorTimesScalar = 142, |
1121 | SpvOpMatrixTimesScalar = 143, |
1122 | SpvOpVectorTimesMatrix = 144, |
1123 | SpvOpMatrixTimesVector = 145, |
1124 | SpvOpMatrixTimesMatrix = 146, |
1125 | SpvOpOuterProduct = 147, |
1126 | SpvOpDot = 148, |
1127 | SpvOpIAddCarry = 149, |
1128 | SpvOpISubBorrow = 150, |
1129 | SpvOpUMulExtended = 151, |
1130 | SpvOpSMulExtended = 152, |
1131 | SpvOpAny = 154, |
1132 | SpvOpAll = 155, |
1133 | SpvOpIsNan = 156, |
1134 | SpvOpIsInf = 157, |
1135 | SpvOpIsFinite = 158, |
1136 | SpvOpIsNormal = 159, |
1137 | SpvOpSignBitSet = 160, |
1138 | SpvOpLessOrGreater = 161, |
1139 | SpvOpOrdered = 162, |
1140 | SpvOpUnordered = 163, |
1141 | SpvOpLogicalEqual = 164, |
1142 | SpvOpLogicalNotEqual = 165, |
1143 | SpvOpLogicalOr = 166, |
1144 | SpvOpLogicalAnd = 167, |
1145 | SpvOpLogicalNot = 168, |
1146 | SpvOpSelect = 169, |
1147 | SpvOpIEqual = 170, |
1148 | SpvOpINotEqual = 171, |
1149 | SpvOpUGreaterThan = 172, |
1150 | SpvOpSGreaterThan = 173, |
1151 | SpvOpUGreaterThanEqual = 174, |
1152 | SpvOpSGreaterThanEqual = 175, |
1153 | SpvOpULessThan = 176, |
1154 | SpvOpSLessThan = 177, |
1155 | SpvOpULessThanEqual = 178, |
1156 | SpvOpSLessThanEqual = 179, |
1157 | SpvOpFOrdEqual = 180, |
1158 | SpvOpFUnordEqual = 181, |
1159 | SpvOpFOrdNotEqual = 182, |
1160 | SpvOpFUnordNotEqual = 183, |
1161 | SpvOpFOrdLessThan = 184, |
1162 | SpvOpFUnordLessThan = 185, |
1163 | SpvOpFOrdGreaterThan = 186, |
1164 | SpvOpFUnordGreaterThan = 187, |
1165 | SpvOpFOrdLessThanEqual = 188, |
1166 | SpvOpFUnordLessThanEqual = 189, |
1167 | SpvOpFOrdGreaterThanEqual = 190, |
1168 | SpvOpFUnordGreaterThanEqual = 191, |
1169 | SpvOpShiftRightLogical = 194, |
1170 | SpvOpShiftRightArithmetic = 195, |
1171 | SpvOpShiftLeftLogical = 196, |
1172 | SpvOpBitwiseOr = 197, |
1173 | SpvOpBitwiseXor = 198, |
1174 | SpvOpBitwiseAnd = 199, |
1175 | SpvOpNot = 200, |
1176 | SpvOpBitFieldInsert = 201, |
1177 | = 202, |
1178 | = 203, |
1179 | SpvOpBitReverse = 204, |
1180 | SpvOpBitCount = 205, |
1181 | SpvOpDPdx = 207, |
1182 | SpvOpDPdy = 208, |
1183 | SpvOpFwidth = 209, |
1184 | SpvOpDPdxFine = 210, |
1185 | SpvOpDPdyFine = 211, |
1186 | SpvOpFwidthFine = 212, |
1187 | SpvOpDPdxCoarse = 213, |
1188 | SpvOpDPdyCoarse = 214, |
1189 | SpvOpFwidthCoarse = 215, |
1190 | SpvOpEmitVertex = 218, |
1191 | SpvOpEndPrimitive = 219, |
1192 | SpvOpEmitStreamVertex = 220, |
1193 | SpvOpEndStreamPrimitive = 221, |
1194 | SpvOpControlBarrier = 224, |
1195 | SpvOpMemoryBarrier = 225, |
1196 | SpvOpAtomicLoad = 227, |
1197 | SpvOpAtomicStore = 228, |
1198 | SpvOpAtomicExchange = 229, |
1199 | SpvOpAtomicCompareExchange = 230, |
1200 | SpvOpAtomicCompareExchangeWeak = 231, |
1201 | SpvOpAtomicIIncrement = 232, |
1202 | SpvOpAtomicIDecrement = 233, |
1203 | SpvOpAtomicIAdd = 234, |
1204 | SpvOpAtomicISub = 235, |
1205 | SpvOpAtomicSMin = 236, |
1206 | SpvOpAtomicUMin = 237, |
1207 | SpvOpAtomicSMax = 238, |
1208 | SpvOpAtomicUMax = 239, |
1209 | SpvOpAtomicAnd = 240, |
1210 | SpvOpAtomicOr = 241, |
1211 | SpvOpAtomicXor = 242, |
1212 | SpvOpPhi = 245, |
1213 | SpvOpLoopMerge = 246, |
1214 | SpvOpSelectionMerge = 247, |
1215 | SpvOpLabel = 248, |
1216 | SpvOpBranch = 249, |
1217 | SpvOpBranchConditional = 250, |
1218 | SpvOpSwitch = 251, |
1219 | SpvOpKill = 252, |
1220 | SpvOpReturn = 253, |
1221 | SpvOpReturnValue = 254, |
1222 | SpvOpUnreachable = 255, |
1223 | SpvOpLifetimeStart = 256, |
1224 | SpvOpLifetimeStop = 257, |
1225 | SpvOpGroupAsyncCopy = 259, |
1226 | SpvOpGroupWaitEvents = 260, |
1227 | SpvOpGroupAll = 261, |
1228 | SpvOpGroupAny = 262, |
1229 | SpvOpGroupBroadcast = 263, |
1230 | SpvOpGroupIAdd = 264, |
1231 | SpvOpGroupFAdd = 265, |
1232 | SpvOpGroupFMin = 266, |
1233 | SpvOpGroupUMin = 267, |
1234 | SpvOpGroupSMin = 268, |
1235 | SpvOpGroupFMax = 269, |
1236 | SpvOpGroupUMax = 270, |
1237 | SpvOpGroupSMax = 271, |
1238 | SpvOpReadPipe = 274, |
1239 | SpvOpWritePipe = 275, |
1240 | SpvOpReservedReadPipe = 276, |
1241 | SpvOpReservedWritePipe = 277, |
1242 | SpvOpReserveReadPipePackets = 278, |
1243 | SpvOpReserveWritePipePackets = 279, |
1244 | SpvOpCommitReadPipe = 280, |
1245 | SpvOpCommitWritePipe = 281, |
1246 | SpvOpIsValidReserveId = 282, |
1247 | SpvOpGetNumPipePackets = 283, |
1248 | SpvOpGetMaxPipePackets = 284, |
1249 | SpvOpGroupReserveReadPipePackets = 285, |
1250 | SpvOpGroupReserveWritePipePackets = 286, |
1251 | SpvOpGroupCommitReadPipe = 287, |
1252 | SpvOpGroupCommitWritePipe = 288, |
1253 | SpvOpEnqueueMarker = 291, |
1254 | SpvOpEnqueueKernel = 292, |
1255 | SpvOpGetKernelNDrangeSubGroupCount = 293, |
1256 | SpvOpGetKernelNDrangeMaxSubGroupSize = 294, |
1257 | SpvOpGetKernelWorkGroupSize = 295, |
1258 | SpvOpGetKernelPreferredWorkGroupSizeMultiple = 296, |
1259 | SpvOpRetainEvent = 297, |
1260 | SpvOpReleaseEvent = 298, |
1261 | SpvOpCreateUserEvent = 299, |
1262 | SpvOpIsValidEvent = 300, |
1263 | SpvOpSetUserEventStatus = 301, |
1264 | SpvOpCaptureEventProfilingInfo = 302, |
1265 | SpvOpGetDefaultQueue = 303, |
1266 | SpvOpBuildNDRange = 304, |
1267 | SpvOpImageSparseSampleImplicitLod = 305, |
1268 | SpvOpImageSparseSampleExplicitLod = 306, |
1269 | SpvOpImageSparseSampleDrefImplicitLod = 307, |
1270 | SpvOpImageSparseSampleDrefExplicitLod = 308, |
1271 | SpvOpImageSparseSampleProjImplicitLod = 309, |
1272 | SpvOpImageSparseSampleProjExplicitLod = 310, |
1273 | SpvOpImageSparseSampleProjDrefImplicitLod = 311, |
1274 | SpvOpImageSparseSampleProjDrefExplicitLod = 312, |
1275 | SpvOpImageSparseFetch = 313, |
1276 | SpvOpImageSparseGather = 314, |
1277 | SpvOpImageSparseDrefGather = 315, |
1278 | SpvOpImageSparseTexelsResident = 316, |
1279 | SpvOpNoLine = 317, |
1280 | SpvOpAtomicFlagTestAndSet = 318, |
1281 | SpvOpAtomicFlagClear = 319, |
1282 | SpvOpImageSparseRead = 320, |
1283 | SpvOpSizeOf = 321, |
1284 | SpvOpTypePipeStorage = 322, |
1285 | SpvOpConstantPipeStorage = 323, |
1286 | SpvOpCreatePipeFromPipeStorage = 324, |
1287 | SpvOpGetKernelLocalSizeForSubgroupCount = 325, |
1288 | SpvOpGetKernelMaxNumSubgroups = 326, |
1289 | SpvOpTypeNamedBarrier = 327, |
1290 | SpvOpNamedBarrierInitialize = 328, |
1291 | SpvOpMemoryNamedBarrier = 329, |
1292 | SpvOpModuleProcessed = 330, |
1293 | SpvOpExecutionModeId = 331, |
1294 | SpvOpDecorateId = 332, |
1295 | SpvOpGroupNonUniformElect = 333, |
1296 | SpvOpGroupNonUniformAll = 334, |
1297 | SpvOpGroupNonUniformAny = 335, |
1298 | SpvOpGroupNonUniformAllEqual = 336, |
1299 | SpvOpGroupNonUniformBroadcast = 337, |
1300 | SpvOpGroupNonUniformBroadcastFirst = 338, |
1301 | SpvOpGroupNonUniformBallot = 339, |
1302 | SpvOpGroupNonUniformInverseBallot = 340, |
1303 | = 341, |
1304 | SpvOpGroupNonUniformBallotBitCount = 342, |
1305 | SpvOpGroupNonUniformBallotFindLSB = 343, |
1306 | SpvOpGroupNonUniformBallotFindMSB = 344, |
1307 | SpvOpGroupNonUniformShuffle = 345, |
1308 | SpvOpGroupNonUniformShuffleXor = 346, |
1309 | SpvOpGroupNonUniformShuffleUp = 347, |
1310 | SpvOpGroupNonUniformShuffleDown = 348, |
1311 | SpvOpGroupNonUniformIAdd = 349, |
1312 | SpvOpGroupNonUniformFAdd = 350, |
1313 | SpvOpGroupNonUniformIMul = 351, |
1314 | SpvOpGroupNonUniformFMul = 352, |
1315 | SpvOpGroupNonUniformSMin = 353, |
1316 | SpvOpGroupNonUniformUMin = 354, |
1317 | SpvOpGroupNonUniformFMin = 355, |
1318 | SpvOpGroupNonUniformSMax = 356, |
1319 | SpvOpGroupNonUniformUMax = 357, |
1320 | SpvOpGroupNonUniformFMax = 358, |
1321 | SpvOpGroupNonUniformBitwiseAnd = 359, |
1322 | SpvOpGroupNonUniformBitwiseOr = 360, |
1323 | SpvOpGroupNonUniformBitwiseXor = 361, |
1324 | SpvOpGroupNonUniformLogicalAnd = 362, |
1325 | SpvOpGroupNonUniformLogicalOr = 363, |
1326 | SpvOpGroupNonUniformLogicalXor = 364, |
1327 | SpvOpGroupNonUniformQuadBroadcast = 365, |
1328 | SpvOpGroupNonUniformQuadSwap = 366, |
1329 | SpvOpCopyLogical = 400, |
1330 | SpvOpPtrEqual = 401, |
1331 | SpvOpPtrNotEqual = 402, |
1332 | SpvOpPtrDiff = 403, |
1333 | SpvOpSubgroupBallotKHR = 4421, |
1334 | SpvOpSubgroupFirstInvocationKHR = 4422, |
1335 | SpvOpSubgroupAllKHR = 4428, |
1336 | SpvOpSubgroupAnyKHR = 4429, |
1337 | SpvOpSubgroupAllEqualKHR = 4430, |
1338 | SpvOpSubgroupReadInvocationKHR = 4432, |
1339 | SpvOpTypeRayQueryProvisionalKHR = 4472, |
1340 | SpvOpRayQueryInitializeKHR = 4473, |
1341 | SpvOpRayQueryTerminateKHR = 4474, |
1342 | SpvOpRayQueryGenerateIntersectionKHR = 4475, |
1343 | SpvOpRayQueryConfirmIntersectionKHR = 4476, |
1344 | SpvOpRayQueryProceedKHR = 4477, |
1345 | SpvOpRayQueryGetIntersectionTypeKHR = 4479, |
1346 | SpvOpGroupIAddNonUniformAMD = 5000, |
1347 | SpvOpGroupFAddNonUniformAMD = 5001, |
1348 | SpvOpGroupFMinNonUniformAMD = 5002, |
1349 | SpvOpGroupUMinNonUniformAMD = 5003, |
1350 | SpvOpGroupSMinNonUniformAMD = 5004, |
1351 | SpvOpGroupFMaxNonUniformAMD = 5005, |
1352 | SpvOpGroupUMaxNonUniformAMD = 5006, |
1353 | SpvOpGroupSMaxNonUniformAMD = 5007, |
1354 | SpvOpFragmentMaskFetchAMD = 5011, |
1355 | SpvOpFragmentFetchAMD = 5012, |
1356 | SpvOpReadClockKHR = 5056, |
1357 | = 5283, |
1358 | SpvOpGroupNonUniformPartitionNV = 5296, |
1359 | SpvOpWritePackedPrimitiveIndices4x8NV = 5299, |
1360 | SpvOpReportIntersectionKHR = 5334, |
1361 | SpvOpReportIntersectionNV = 5334, |
1362 | SpvOpIgnoreIntersectionKHR = 5335, |
1363 | SpvOpIgnoreIntersectionNV = 5335, |
1364 | SpvOpTerminateRayKHR = 5336, |
1365 | SpvOpTerminateRayNV = 5336, |
1366 | SpvOpTraceNV = 5337, |
1367 | SpvOpTraceRayKHR = 5337, |
1368 | SpvOpTypeAccelerationStructureKHR = 5341, |
1369 | SpvOpTypeAccelerationStructureNV = 5341, |
1370 | SpvOpExecuteCallableKHR = 5344, |
1371 | SpvOpExecuteCallableNV = 5344, |
1372 | SpvOpTypeCooperativeMatrixNV = 5358, |
1373 | SpvOpCooperativeMatrixLoadNV = 5359, |
1374 | SpvOpCooperativeMatrixStoreNV = 5360, |
1375 | SpvOpCooperativeMatrixMulAddNV = 5361, |
1376 | SpvOpCooperativeMatrixLengthNV = 5362, |
1377 | SpvOpBeginInvocationInterlockEXT = 5364, |
1378 | SpvOpEndInvocationInterlockEXT = 5365, |
1379 | SpvOpDemoteToHelperInvocationEXT = 5380, |
1380 | SpvOpIsHelperInvocationEXT = 5381, |
1381 | SpvOpSubgroupShuffleINTEL = 5571, |
1382 | SpvOpSubgroupShuffleDownINTEL = 5572, |
1383 | SpvOpSubgroupShuffleUpINTEL = 5573, |
1384 | SpvOpSubgroupShuffleXorINTEL = 5574, |
1385 | SpvOpSubgroupBlockReadINTEL = 5575, |
1386 | SpvOpSubgroupBlockWriteINTEL = 5576, |
1387 | SpvOpSubgroupImageBlockReadINTEL = 5577, |
1388 | SpvOpSubgroupImageBlockWriteINTEL = 5578, |
1389 | SpvOpSubgroupImageMediaBlockReadINTEL = 5580, |
1390 | SpvOpSubgroupImageMediaBlockWriteINTEL = 5581, |
1391 | SpvOpUCountLeadingZerosINTEL = 5585, |
1392 | SpvOpUCountTrailingZerosINTEL = 5586, |
1393 | SpvOpAbsISubINTEL = 5587, |
1394 | SpvOpAbsUSubINTEL = 5588, |
1395 | SpvOpIAddSatINTEL = 5589, |
1396 | SpvOpUAddSatINTEL = 5590, |
1397 | SpvOpIAverageINTEL = 5591, |
1398 | SpvOpUAverageINTEL = 5592, |
1399 | SpvOpIAverageRoundedINTEL = 5593, |
1400 | SpvOpUAverageRoundedINTEL = 5594, |
1401 | SpvOpISubSatINTEL = 5595, |
1402 | SpvOpUSubSatINTEL = 5596, |
1403 | SpvOpIMul32x16INTEL = 5597, |
1404 | SpvOpUMul32x16INTEL = 5598, |
1405 | SpvOpDecorateString = 5632, |
1406 | SpvOpDecorateStringGOOGLE = 5632, |
1407 | SpvOpMemberDecorateString = 5633, |
1408 | SpvOpMemberDecorateStringGOOGLE = 5633, |
1409 | SpvOpVmeImageINTEL = 5699, |
1410 | SpvOpTypeVmeImageINTEL = 5700, |
1411 | SpvOpTypeAvcImePayloadINTEL = 5701, |
1412 | SpvOpTypeAvcRefPayloadINTEL = 5702, |
1413 | SpvOpTypeAvcSicPayloadINTEL = 5703, |
1414 | SpvOpTypeAvcMcePayloadINTEL = 5704, |
1415 | SpvOpTypeAvcMceResultINTEL = 5705, |
1416 | SpvOpTypeAvcImeResultINTEL = 5706, |
1417 | SpvOpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707, |
1418 | SpvOpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708, |
1419 | SpvOpTypeAvcImeSingleReferenceStreaminINTEL = 5709, |
1420 | SpvOpTypeAvcImeDualReferenceStreaminINTEL = 5710, |
1421 | SpvOpTypeAvcRefResultINTEL = 5711, |
1422 | SpvOpTypeAvcSicResultINTEL = 5712, |
1423 | SpvOpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713, |
1424 | SpvOpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714, |
1425 | SpvOpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715, |
1426 | SpvOpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716, |
1427 | SpvOpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717, |
1428 | SpvOpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718, |
1429 | SpvOpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719, |
1430 | SpvOpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720, |
1431 | SpvOpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721, |
1432 | SpvOpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722, |
1433 | SpvOpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723, |
1434 | SpvOpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724, |
1435 | SpvOpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725, |
1436 | SpvOpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726, |
1437 | SpvOpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727, |
1438 | SpvOpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728, |
1439 | SpvOpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729, |
1440 | SpvOpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730, |
1441 | SpvOpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731, |
1442 | SpvOpSubgroupAvcMceConvertToImePayloadINTEL = 5732, |
1443 | SpvOpSubgroupAvcMceConvertToImeResultINTEL = 5733, |
1444 | SpvOpSubgroupAvcMceConvertToRefPayloadINTEL = 5734, |
1445 | SpvOpSubgroupAvcMceConvertToRefResultINTEL = 5735, |
1446 | SpvOpSubgroupAvcMceConvertToSicPayloadINTEL = 5736, |
1447 | SpvOpSubgroupAvcMceConvertToSicResultINTEL = 5737, |
1448 | SpvOpSubgroupAvcMceGetMotionVectorsINTEL = 5738, |
1449 | SpvOpSubgroupAvcMceGetInterDistortionsINTEL = 5739, |
1450 | SpvOpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740, |
1451 | SpvOpSubgroupAvcMceGetInterMajorShapeINTEL = 5741, |
1452 | SpvOpSubgroupAvcMceGetInterMinorShapeINTEL = 5742, |
1453 | SpvOpSubgroupAvcMceGetInterDirectionsINTEL = 5743, |
1454 | SpvOpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744, |
1455 | SpvOpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745, |
1456 | SpvOpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746, |
1457 | SpvOpSubgroupAvcImeInitializeINTEL = 5747, |
1458 | SpvOpSubgroupAvcImeSetSingleReferenceINTEL = 5748, |
1459 | SpvOpSubgroupAvcImeSetDualReferenceINTEL = 5749, |
1460 | SpvOpSubgroupAvcImeRefWindowSizeINTEL = 5750, |
1461 | SpvOpSubgroupAvcImeAdjustRefOffsetINTEL = 5751, |
1462 | SpvOpSubgroupAvcImeConvertToMcePayloadINTEL = 5752, |
1463 | SpvOpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753, |
1464 | SpvOpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754, |
1465 | SpvOpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755, |
1466 | SpvOpSubgroupAvcImeSetWeightedSadINTEL = 5756, |
1467 | SpvOpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757, |
1468 | SpvOpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758, |
1469 | SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759, |
1470 | SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760, |
1471 | SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761, |
1472 | SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762, |
1473 | SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763, |
1474 | SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764, |
1475 | SpvOpSubgroupAvcImeConvertToMceResultINTEL = 5765, |
1476 | SpvOpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766, |
1477 | SpvOpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767, |
1478 | SpvOpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768, |
1479 | SpvOpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769, |
1480 | SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770, |
1481 | SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771, |
1482 | SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772, |
1483 | SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773, |
1484 | SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774, |
1485 | SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775, |
1486 | SpvOpSubgroupAvcImeGetBorderReachedINTEL = 5776, |
1487 | SpvOpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777, |
1488 | SpvOpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778, |
1489 | SpvOpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779, |
1490 | SpvOpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780, |
1491 | SpvOpSubgroupAvcFmeInitializeINTEL = 5781, |
1492 | SpvOpSubgroupAvcBmeInitializeINTEL = 5782, |
1493 | SpvOpSubgroupAvcRefConvertToMcePayloadINTEL = 5783, |
1494 | SpvOpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784, |
1495 | SpvOpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785, |
1496 | SpvOpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786, |
1497 | SpvOpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787, |
1498 | SpvOpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788, |
1499 | SpvOpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789, |
1500 | SpvOpSubgroupAvcRefConvertToMceResultINTEL = 5790, |
1501 | SpvOpSubgroupAvcSicInitializeINTEL = 5791, |
1502 | SpvOpSubgroupAvcSicConfigureSkcINTEL = 5792, |
1503 | SpvOpSubgroupAvcSicConfigureIpeLumaINTEL = 5793, |
1504 | SpvOpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794, |
1505 | SpvOpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795, |
1506 | SpvOpSubgroupAvcSicConvertToMcePayloadINTEL = 5796, |
1507 | SpvOpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797, |
1508 | SpvOpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798, |
1509 | SpvOpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799, |
1510 | SpvOpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800, |
1511 | SpvOpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801, |
1512 | SpvOpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802, |
1513 | SpvOpSubgroupAvcSicEvaluateIpeINTEL = 5803, |
1514 | SpvOpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804, |
1515 | SpvOpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805, |
1516 | SpvOpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806, |
1517 | SpvOpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807, |
1518 | SpvOpSubgroupAvcSicConvertToMceResultINTEL = 5808, |
1519 | SpvOpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809, |
1520 | SpvOpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810, |
1521 | SpvOpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811, |
1522 | SpvOpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812, |
1523 | SpvOpSubgroupAvcSicGetIpeChromaModeINTEL = 5813, |
1524 | SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814, |
1525 | SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815, |
1526 | SpvOpSubgroupAvcSicGetInterRawSadsINTEL = 5816, |
1527 | SpvOpRayQueryGetRayTMinKHR = 6016, |
1528 | SpvOpRayQueryGetRayFlagsKHR = 6017, |
1529 | SpvOpRayQueryGetIntersectionTKHR = 6018, |
1530 | SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019, |
1531 | SpvOpRayQueryGetIntersectionInstanceIdKHR = 6020, |
1532 | SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021, |
1533 | SpvOpRayQueryGetIntersectionGeometryIndexKHR = 6022, |
1534 | SpvOpRayQueryGetIntersectionPrimitiveIndexKHR = 6023, |
1535 | SpvOpRayQueryGetIntersectionBarycentricsKHR = 6024, |
1536 | SpvOpRayQueryGetIntersectionFrontFaceKHR = 6025, |
1537 | SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026, |
1538 | SpvOpRayQueryGetIntersectionObjectRayDirectionKHR = 6027, |
1539 | SpvOpRayQueryGetIntersectionObjectRayOriginKHR = 6028, |
1540 | SpvOpRayQueryGetWorldRayDirectionKHR = 6029, |
1541 | SpvOpRayQueryGetWorldRayOriginKHR = 6030, |
1542 | SpvOpRayQueryGetIntersectionObjectToWorldKHR = 6031, |
1543 | SpvOpRayQueryGetIntersectionWorldToObjectKHR = 6032, |
1544 | SpvOpMax = 0x7fffffff, |
1545 | } SpvOp; |
1546 | |
1547 | #ifdef SPV_ENABLE_UTILITY_CODE |
1548 | inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultType) { |
1549 | *hasResult = *hasResultType = false; |
1550 | switch (opcode) { |
1551 | default: /* unknown opcode */ break; |
1552 | case SpvOpNop: *hasResult = false; *hasResultType = false; break; |
1553 | case SpvOpUndef: *hasResult = true; *hasResultType = true; break; |
1554 | case SpvOpSourceContinued: *hasResult = false; *hasResultType = false; break; |
1555 | case SpvOpSource: *hasResult = false; *hasResultType = false; break; |
1556 | case SpvOpSourceExtension: *hasResult = false; *hasResultType = false; break; |
1557 | case SpvOpName: *hasResult = false; *hasResultType = false; break; |
1558 | case SpvOpMemberName: *hasResult = false; *hasResultType = false; break; |
1559 | case SpvOpString: *hasResult = true; *hasResultType = false; break; |
1560 | case SpvOpLine: *hasResult = false; *hasResultType = false; break; |
1561 | case SpvOpExtension: *hasResult = false; *hasResultType = false; break; |
1562 | case SpvOpExtInstImport: *hasResult = true; *hasResultType = false; break; |
1563 | case SpvOpExtInst: *hasResult = true; *hasResultType = true; break; |
1564 | case SpvOpMemoryModel: *hasResult = false; *hasResultType = false; break; |
1565 | case SpvOpEntryPoint: *hasResult = false; *hasResultType = false; break; |
1566 | case SpvOpExecutionMode: *hasResult = false; *hasResultType = false; break; |
1567 | case SpvOpCapability: *hasResult = false; *hasResultType = false; break; |
1568 | case SpvOpTypeVoid: *hasResult = true; *hasResultType = false; break; |
1569 | case SpvOpTypeBool: *hasResult = true; *hasResultType = false; break; |
1570 | case SpvOpTypeInt: *hasResult = true; *hasResultType = false; break; |
1571 | case SpvOpTypeFloat: *hasResult = true; *hasResultType = false; break; |
1572 | case SpvOpTypeVector: *hasResult = true; *hasResultType = false; break; |
1573 | case SpvOpTypeMatrix: *hasResult = true; *hasResultType = false; break; |
1574 | case SpvOpTypeImage: *hasResult = true; *hasResultType = false; break; |
1575 | case SpvOpTypeSampler: *hasResult = true; *hasResultType = false; break; |
1576 | case SpvOpTypeSampledImage: *hasResult = true; *hasResultType = false; break; |
1577 | case SpvOpTypeArray: *hasResult = true; *hasResultType = false; break; |
1578 | case SpvOpTypeRuntimeArray: *hasResult = true; *hasResultType = false; break; |
1579 | case SpvOpTypeStruct: *hasResult = true; *hasResultType = false; break; |
1580 | case SpvOpTypeOpaque: *hasResult = true; *hasResultType = false; break; |
1581 | case SpvOpTypePointer: *hasResult = true; *hasResultType = false; break; |
1582 | case SpvOpTypeFunction: *hasResult = true; *hasResultType = false; break; |
1583 | case SpvOpTypeEvent: *hasResult = true; *hasResultType = false; break; |
1584 | case SpvOpTypeDeviceEvent: *hasResult = true; *hasResultType = false; break; |
1585 | case SpvOpTypeReserveId: *hasResult = true; *hasResultType = false; break; |
1586 | case SpvOpTypeQueue: *hasResult = true; *hasResultType = false; break; |
1587 | case SpvOpTypePipe: *hasResult = true; *hasResultType = false; break; |
1588 | case SpvOpTypeForwardPointer: *hasResult = false; *hasResultType = false; break; |
1589 | case SpvOpConstantTrue: *hasResult = true; *hasResultType = true; break; |
1590 | case SpvOpConstantFalse: *hasResult = true; *hasResultType = true; break; |
1591 | case SpvOpConstant: *hasResult = true; *hasResultType = true; break; |
1592 | case SpvOpConstantComposite: *hasResult = true; *hasResultType = true; break; |
1593 | case SpvOpConstantSampler: *hasResult = true; *hasResultType = true; break; |
1594 | case SpvOpConstantNull: *hasResult = true; *hasResultType = true; break; |
1595 | case SpvOpSpecConstantTrue: *hasResult = true; *hasResultType = true; break; |
1596 | case SpvOpSpecConstantFalse: *hasResult = true; *hasResultType = true; break; |
1597 | case SpvOpSpecConstant: *hasResult = true; *hasResultType = true; break; |
1598 | case SpvOpSpecConstantComposite: *hasResult = true; *hasResultType = true; break; |
1599 | case SpvOpSpecConstantOp: *hasResult = true; *hasResultType = true; break; |
1600 | case SpvOpFunction: *hasResult = true; *hasResultType = true; break; |
1601 | case SpvOpFunctionParameter: *hasResult = true; *hasResultType = true; break; |
1602 | case SpvOpFunctionEnd: *hasResult = false; *hasResultType = false; break; |
1603 | case SpvOpFunctionCall: *hasResult = true; *hasResultType = true; break; |
1604 | case SpvOpVariable: *hasResult = true; *hasResultType = true; break; |
1605 | case SpvOpImageTexelPointer: *hasResult = true; *hasResultType = true; break; |
1606 | case SpvOpLoad: *hasResult = true; *hasResultType = true; break; |
1607 | case SpvOpStore: *hasResult = false; *hasResultType = false; break; |
1608 | case SpvOpCopyMemory: *hasResult = false; *hasResultType = false; break; |
1609 | case SpvOpCopyMemorySized: *hasResult = false; *hasResultType = false; break; |
1610 | case SpvOpAccessChain: *hasResult = true; *hasResultType = true; break; |
1611 | case SpvOpInBoundsAccessChain: *hasResult = true; *hasResultType = true; break; |
1612 | case SpvOpPtrAccessChain: *hasResult = true; *hasResultType = true; break; |
1613 | case SpvOpArrayLength: *hasResult = true; *hasResultType = true; break; |
1614 | case SpvOpGenericPtrMemSemantics: *hasResult = true; *hasResultType = true; break; |
1615 | case SpvOpInBoundsPtrAccessChain: *hasResult = true; *hasResultType = true; break; |
1616 | case SpvOpDecorate: *hasResult = false; *hasResultType = false; break; |
1617 | case SpvOpMemberDecorate: *hasResult = false; *hasResultType = false; break; |
1618 | case SpvOpDecorationGroup: *hasResult = true; *hasResultType = false; break; |
1619 | case SpvOpGroupDecorate: *hasResult = false; *hasResultType = false; break; |
1620 | case SpvOpGroupMemberDecorate: *hasResult = false; *hasResultType = false; break; |
1621 | case SpvOpVectorExtractDynamic: *hasResult = true; *hasResultType = true; break; |
1622 | case SpvOpVectorInsertDynamic: *hasResult = true; *hasResultType = true; break; |
1623 | case SpvOpVectorShuffle: *hasResult = true; *hasResultType = true; break; |
1624 | case SpvOpCompositeConstruct: *hasResult = true; *hasResultType = true; break; |
1625 | case SpvOpCompositeExtract: *hasResult = true; *hasResultType = true; break; |
1626 | case SpvOpCompositeInsert: *hasResult = true; *hasResultType = true; break; |
1627 | case SpvOpCopyObject: *hasResult = true; *hasResultType = true; break; |
1628 | case SpvOpTranspose: *hasResult = true; *hasResultType = true; break; |
1629 | case SpvOpSampledImage: *hasResult = true; *hasResultType = true; break; |
1630 | case SpvOpImageSampleImplicitLod: *hasResult = true; *hasResultType = true; break; |
1631 | case SpvOpImageSampleExplicitLod: *hasResult = true; *hasResultType = true; break; |
1632 | case SpvOpImageSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; |
1633 | case SpvOpImageSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; |
1634 | case SpvOpImageSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; |
1635 | case SpvOpImageSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; |
1636 | case SpvOpImageSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; |
1637 | case SpvOpImageSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; |
1638 | case SpvOpImageFetch: *hasResult = true; *hasResultType = true; break; |
1639 | case SpvOpImageGather: *hasResult = true; *hasResultType = true; break; |
1640 | case SpvOpImageDrefGather: *hasResult = true; *hasResultType = true; break; |
1641 | case SpvOpImageRead: *hasResult = true; *hasResultType = true; break; |
1642 | case SpvOpImageWrite: *hasResult = false; *hasResultType = false; break; |
1643 | case SpvOpImage: *hasResult = true; *hasResultType = true; break; |
1644 | case SpvOpImageQueryFormat: *hasResult = true; *hasResultType = true; break; |
1645 | case SpvOpImageQueryOrder: *hasResult = true; *hasResultType = true; break; |
1646 | case SpvOpImageQuerySizeLod: *hasResult = true; *hasResultType = true; break; |
1647 | case SpvOpImageQuerySize: *hasResult = true; *hasResultType = true; break; |
1648 | case SpvOpImageQueryLod: *hasResult = true; *hasResultType = true; break; |
1649 | case SpvOpImageQueryLevels: *hasResult = true; *hasResultType = true; break; |
1650 | case SpvOpImageQuerySamples: *hasResult = true; *hasResultType = true; break; |
1651 | case SpvOpConvertFToU: *hasResult = true; *hasResultType = true; break; |
1652 | case SpvOpConvertFToS: *hasResult = true; *hasResultType = true; break; |
1653 | case SpvOpConvertSToF: *hasResult = true; *hasResultType = true; break; |
1654 | case SpvOpConvertUToF: *hasResult = true; *hasResultType = true; break; |
1655 | case SpvOpUConvert: *hasResult = true; *hasResultType = true; break; |
1656 | case SpvOpSConvert: *hasResult = true; *hasResultType = true; break; |
1657 | case SpvOpFConvert: *hasResult = true; *hasResultType = true; break; |
1658 | case SpvOpQuantizeToF16: *hasResult = true; *hasResultType = true; break; |
1659 | case SpvOpConvertPtrToU: *hasResult = true; *hasResultType = true; break; |
1660 | case SpvOpSatConvertSToU: *hasResult = true; *hasResultType = true; break; |
1661 | case SpvOpSatConvertUToS: *hasResult = true; *hasResultType = true; break; |
1662 | case SpvOpConvertUToPtr: *hasResult = true; *hasResultType = true; break; |
1663 | case SpvOpPtrCastToGeneric: *hasResult = true; *hasResultType = true; break; |
1664 | case SpvOpGenericCastToPtr: *hasResult = true; *hasResultType = true; break; |
1665 | case SpvOpGenericCastToPtrExplicit: *hasResult = true; *hasResultType = true; break; |
1666 | case SpvOpBitcast: *hasResult = true; *hasResultType = true; break; |
1667 | case SpvOpSNegate: *hasResult = true; *hasResultType = true; break; |
1668 | case SpvOpFNegate: *hasResult = true; *hasResultType = true; break; |
1669 | case SpvOpIAdd: *hasResult = true; *hasResultType = true; break; |
1670 | case SpvOpFAdd: *hasResult = true; *hasResultType = true; break; |
1671 | case SpvOpISub: *hasResult = true; *hasResultType = true; break; |
1672 | case SpvOpFSub: *hasResult = true; *hasResultType = true; break; |
1673 | case SpvOpIMul: *hasResult = true; *hasResultType = true; break; |
1674 | case SpvOpFMul: *hasResult = true; *hasResultType = true; break; |
1675 | case SpvOpUDiv: *hasResult = true; *hasResultType = true; break; |
1676 | case SpvOpSDiv: *hasResult = true; *hasResultType = true; break; |
1677 | case SpvOpFDiv: *hasResult = true; *hasResultType = true; break; |
1678 | case SpvOpUMod: *hasResult = true; *hasResultType = true; break; |
1679 | case SpvOpSRem: *hasResult = true; *hasResultType = true; break; |
1680 | case SpvOpSMod: *hasResult = true; *hasResultType = true; break; |
1681 | case SpvOpFRem: *hasResult = true; *hasResultType = true; break; |
1682 | case SpvOpFMod: *hasResult = true; *hasResultType = true; break; |
1683 | case SpvOpVectorTimesScalar: *hasResult = true; *hasResultType = true; break; |
1684 | case SpvOpMatrixTimesScalar: *hasResult = true; *hasResultType = true; break; |
1685 | case SpvOpVectorTimesMatrix: *hasResult = true; *hasResultType = true; break; |
1686 | case SpvOpMatrixTimesVector: *hasResult = true; *hasResultType = true; break; |
1687 | case SpvOpMatrixTimesMatrix: *hasResult = true; *hasResultType = true; break; |
1688 | case SpvOpOuterProduct: *hasResult = true; *hasResultType = true; break; |
1689 | case SpvOpDot: *hasResult = true; *hasResultType = true; break; |
1690 | case SpvOpIAddCarry: *hasResult = true; *hasResultType = true; break; |
1691 | case SpvOpISubBorrow: *hasResult = true; *hasResultType = true; break; |
1692 | case SpvOpUMulExtended: *hasResult = true; *hasResultType = true; break; |
1693 | case SpvOpSMulExtended: *hasResult = true; *hasResultType = true; break; |
1694 | case SpvOpAny: *hasResult = true; *hasResultType = true; break; |
1695 | case SpvOpAll: *hasResult = true; *hasResultType = true; break; |
1696 | case SpvOpIsNan: *hasResult = true; *hasResultType = true; break; |
1697 | case SpvOpIsInf: *hasResult = true; *hasResultType = true; break; |
1698 | case SpvOpIsFinite: *hasResult = true; *hasResultType = true; break; |
1699 | case SpvOpIsNormal: *hasResult = true; *hasResultType = true; break; |
1700 | case SpvOpSignBitSet: *hasResult = true; *hasResultType = true; break; |
1701 | case SpvOpLessOrGreater: *hasResult = true; *hasResultType = true; break; |
1702 | case SpvOpOrdered: *hasResult = true; *hasResultType = true; break; |
1703 | case SpvOpUnordered: *hasResult = true; *hasResultType = true; break; |
1704 | case SpvOpLogicalEqual: *hasResult = true; *hasResultType = true; break; |
1705 | case SpvOpLogicalNotEqual: *hasResult = true; *hasResultType = true; break; |
1706 | case SpvOpLogicalOr: *hasResult = true; *hasResultType = true; break; |
1707 | case SpvOpLogicalAnd: *hasResult = true; *hasResultType = true; break; |
1708 | case SpvOpLogicalNot: *hasResult = true; *hasResultType = true; break; |
1709 | case SpvOpSelect: *hasResult = true; *hasResultType = true; break; |
1710 | case SpvOpIEqual: *hasResult = true; *hasResultType = true; break; |
1711 | case SpvOpINotEqual: *hasResult = true; *hasResultType = true; break; |
1712 | case SpvOpUGreaterThan: *hasResult = true; *hasResultType = true; break; |
1713 | case SpvOpSGreaterThan: *hasResult = true; *hasResultType = true; break; |
1714 | case SpvOpUGreaterThanEqual: *hasResult = true; *hasResultType = true; break; |
1715 | case SpvOpSGreaterThanEqual: *hasResult = true; *hasResultType = true; break; |
1716 | case SpvOpULessThan: *hasResult = true; *hasResultType = true; break; |
1717 | case SpvOpSLessThan: *hasResult = true; *hasResultType = true; break; |
1718 | case SpvOpULessThanEqual: *hasResult = true; *hasResultType = true; break; |
1719 | case SpvOpSLessThanEqual: *hasResult = true; *hasResultType = true; break; |
1720 | case SpvOpFOrdEqual: *hasResult = true; *hasResultType = true; break; |
1721 | case SpvOpFUnordEqual: *hasResult = true; *hasResultType = true; break; |
1722 | case SpvOpFOrdNotEqual: *hasResult = true; *hasResultType = true; break; |
1723 | case SpvOpFUnordNotEqual: *hasResult = true; *hasResultType = true; break; |
1724 | case SpvOpFOrdLessThan: *hasResult = true; *hasResultType = true; break; |
1725 | case SpvOpFUnordLessThan: *hasResult = true; *hasResultType = true; break; |
1726 | case SpvOpFOrdGreaterThan: *hasResult = true; *hasResultType = true; break; |
1727 | case SpvOpFUnordGreaterThan: *hasResult = true; *hasResultType = true; break; |
1728 | case SpvOpFOrdLessThanEqual: *hasResult = true; *hasResultType = true; break; |
1729 | case SpvOpFUnordLessThanEqual: *hasResult = true; *hasResultType = true; break; |
1730 | case SpvOpFOrdGreaterThanEqual: *hasResult = true; *hasResultType = true; break; |
1731 | case SpvOpFUnordGreaterThanEqual: *hasResult = true; *hasResultType = true; break; |
1732 | case SpvOpShiftRightLogical: *hasResult = true; *hasResultType = true; break; |
1733 | case SpvOpShiftRightArithmetic: *hasResult = true; *hasResultType = true; break; |
1734 | case SpvOpShiftLeftLogical: *hasResult = true; *hasResultType = true; break; |
1735 | case SpvOpBitwiseOr: *hasResult = true; *hasResultType = true; break; |
1736 | case SpvOpBitwiseXor: *hasResult = true; *hasResultType = true; break; |
1737 | case SpvOpBitwiseAnd: *hasResult = true; *hasResultType = true; break; |
1738 | case SpvOpNot: *hasResult = true; *hasResultType = true; break; |
1739 | case SpvOpBitFieldInsert: *hasResult = true; *hasResultType = true; break; |
1740 | case SpvOpBitFieldSExtract: *hasResult = true; *hasResultType = true; break; |
1741 | case SpvOpBitFieldUExtract: *hasResult = true; *hasResultType = true; break; |
1742 | case SpvOpBitReverse: *hasResult = true; *hasResultType = true; break; |
1743 | case SpvOpBitCount: *hasResult = true; *hasResultType = true; break; |
1744 | case SpvOpDPdx: *hasResult = true; *hasResultType = true; break; |
1745 | case SpvOpDPdy: *hasResult = true; *hasResultType = true; break; |
1746 | case SpvOpFwidth: *hasResult = true; *hasResultType = true; break; |
1747 | case SpvOpDPdxFine: *hasResult = true; *hasResultType = true; break; |
1748 | case SpvOpDPdyFine: *hasResult = true; *hasResultType = true; break; |
1749 | case SpvOpFwidthFine: *hasResult = true; *hasResultType = true; break; |
1750 | case SpvOpDPdxCoarse: *hasResult = true; *hasResultType = true; break; |
1751 | case SpvOpDPdyCoarse: *hasResult = true; *hasResultType = true; break; |
1752 | case SpvOpFwidthCoarse: *hasResult = true; *hasResultType = true; break; |
1753 | case SpvOpEmitVertex: *hasResult = false; *hasResultType = false; break; |
1754 | case SpvOpEndPrimitive: *hasResult = false; *hasResultType = false; break; |
1755 | case SpvOpEmitStreamVertex: *hasResult = false; *hasResultType = false; break; |
1756 | case SpvOpEndStreamPrimitive: *hasResult = false; *hasResultType = false; break; |
1757 | case SpvOpControlBarrier: *hasResult = false; *hasResultType = false; break; |
1758 | case SpvOpMemoryBarrier: *hasResult = false; *hasResultType = false; break; |
1759 | case SpvOpAtomicLoad: *hasResult = true; *hasResultType = true; break; |
1760 | case SpvOpAtomicStore: *hasResult = false; *hasResultType = false; break; |
1761 | case SpvOpAtomicExchange: *hasResult = true; *hasResultType = true; break; |
1762 | case SpvOpAtomicCompareExchange: *hasResult = true; *hasResultType = true; break; |
1763 | case SpvOpAtomicCompareExchangeWeak: *hasResult = true; *hasResultType = true; break; |
1764 | case SpvOpAtomicIIncrement: *hasResult = true; *hasResultType = true; break; |
1765 | case SpvOpAtomicIDecrement: *hasResult = true; *hasResultType = true; break; |
1766 | case SpvOpAtomicIAdd: *hasResult = true; *hasResultType = true; break; |
1767 | case SpvOpAtomicISub: *hasResult = true; *hasResultType = true; break; |
1768 | case SpvOpAtomicSMin: *hasResult = true; *hasResultType = true; break; |
1769 | case SpvOpAtomicUMin: *hasResult = true; *hasResultType = true; break; |
1770 | case SpvOpAtomicSMax: *hasResult = true; *hasResultType = true; break; |
1771 | case SpvOpAtomicUMax: *hasResult = true; *hasResultType = true; break; |
1772 | case SpvOpAtomicAnd: *hasResult = true; *hasResultType = true; break; |
1773 | case SpvOpAtomicOr: *hasResult = true; *hasResultType = true; break; |
1774 | case SpvOpAtomicXor: *hasResult = true; *hasResultType = true; break; |
1775 | case SpvOpPhi: *hasResult = true; *hasResultType = true; break; |
1776 | case SpvOpLoopMerge: *hasResult = false; *hasResultType = false; break; |
1777 | case SpvOpSelectionMerge: *hasResult = false; *hasResultType = false; break; |
1778 | case SpvOpLabel: *hasResult = true; *hasResultType = false; break; |
1779 | case SpvOpBranch: *hasResult = false; *hasResultType = false; break; |
1780 | case SpvOpBranchConditional: *hasResult = false; *hasResultType = false; break; |
1781 | case SpvOpSwitch: *hasResult = false; *hasResultType = false; break; |
1782 | case SpvOpKill: *hasResult = false; *hasResultType = false; break; |
1783 | case SpvOpReturn: *hasResult = false; *hasResultType = false; break; |
1784 | case SpvOpReturnValue: *hasResult = false; *hasResultType = false; break; |
1785 | case SpvOpUnreachable: *hasResult = false; *hasResultType = false; break; |
1786 | case SpvOpLifetimeStart: *hasResult = false; *hasResultType = false; break; |
1787 | case SpvOpLifetimeStop: *hasResult = false; *hasResultType = false; break; |
1788 | case SpvOpGroupAsyncCopy: *hasResult = true; *hasResultType = true; break; |
1789 | case SpvOpGroupWaitEvents: *hasResult = false; *hasResultType = false; break; |
1790 | case SpvOpGroupAll: *hasResult = true; *hasResultType = true; break; |
1791 | case SpvOpGroupAny: *hasResult = true; *hasResultType = true; break; |
1792 | case SpvOpGroupBroadcast: *hasResult = true; *hasResultType = true; break; |
1793 | case SpvOpGroupIAdd: *hasResult = true; *hasResultType = true; break; |
1794 | case SpvOpGroupFAdd: *hasResult = true; *hasResultType = true; break; |
1795 | case SpvOpGroupFMin: *hasResult = true; *hasResultType = true; break; |
1796 | case SpvOpGroupUMin: *hasResult = true; *hasResultType = true; break; |
1797 | case SpvOpGroupSMin: *hasResult = true; *hasResultType = true; break; |
1798 | case SpvOpGroupFMax: *hasResult = true; *hasResultType = true; break; |
1799 | case SpvOpGroupUMax: *hasResult = true; *hasResultType = true; break; |
1800 | case SpvOpGroupSMax: *hasResult = true; *hasResultType = true; break; |
1801 | case SpvOpReadPipe: *hasResult = true; *hasResultType = true; break; |
1802 | case SpvOpWritePipe: *hasResult = true; *hasResultType = true; break; |
1803 | case SpvOpReservedReadPipe: *hasResult = true; *hasResultType = true; break; |
1804 | case SpvOpReservedWritePipe: *hasResult = true; *hasResultType = true; break; |
1805 | case SpvOpReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; |
1806 | case SpvOpReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; |
1807 | case SpvOpCommitReadPipe: *hasResult = false; *hasResultType = false; break; |
1808 | case SpvOpCommitWritePipe: *hasResult = false; *hasResultType = false; break; |
1809 | case SpvOpIsValidReserveId: *hasResult = true; *hasResultType = true; break; |
1810 | case SpvOpGetNumPipePackets: *hasResult = true; *hasResultType = true; break; |
1811 | case SpvOpGetMaxPipePackets: *hasResult = true; *hasResultType = true; break; |
1812 | case SpvOpGroupReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; |
1813 | case SpvOpGroupReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; |
1814 | case SpvOpGroupCommitReadPipe: *hasResult = false; *hasResultType = false; break; |
1815 | case SpvOpGroupCommitWritePipe: *hasResult = false; *hasResultType = false; break; |
1816 | case SpvOpEnqueueMarker: *hasResult = true; *hasResultType = true; break; |
1817 | case SpvOpEnqueueKernel: *hasResult = true; *hasResultType = true; break; |
1818 | case SpvOpGetKernelNDrangeSubGroupCount: *hasResult = true; *hasResultType = true; break; |
1819 | case SpvOpGetKernelNDrangeMaxSubGroupSize: *hasResult = true; *hasResultType = true; break; |
1820 | case SpvOpGetKernelWorkGroupSize: *hasResult = true; *hasResultType = true; break; |
1821 | case SpvOpGetKernelPreferredWorkGroupSizeMultiple: *hasResult = true; *hasResultType = true; break; |
1822 | case SpvOpRetainEvent: *hasResult = false; *hasResultType = false; break; |
1823 | case SpvOpReleaseEvent: *hasResult = false; *hasResultType = false; break; |
1824 | case SpvOpCreateUserEvent: *hasResult = true; *hasResultType = true; break; |
1825 | case SpvOpIsValidEvent: *hasResult = true; *hasResultType = true; break; |
1826 | case SpvOpSetUserEventStatus: *hasResult = false; *hasResultType = false; break; |
1827 | case SpvOpCaptureEventProfilingInfo: *hasResult = false; *hasResultType = false; break; |
1828 | case SpvOpGetDefaultQueue: *hasResult = true; *hasResultType = true; break; |
1829 | case SpvOpBuildNDRange: *hasResult = true; *hasResultType = true; break; |
1830 | case SpvOpImageSparseSampleImplicitLod: *hasResult = true; *hasResultType = true; break; |
1831 | case SpvOpImageSparseSampleExplicitLod: *hasResult = true; *hasResultType = true; break; |
1832 | case SpvOpImageSparseSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; |
1833 | case SpvOpImageSparseSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; |
1834 | case SpvOpImageSparseSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; |
1835 | case SpvOpImageSparseSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; |
1836 | case SpvOpImageSparseSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; |
1837 | case SpvOpImageSparseSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; |
1838 | case SpvOpImageSparseFetch: *hasResult = true; *hasResultType = true; break; |
1839 | case SpvOpImageSparseGather: *hasResult = true; *hasResultType = true; break; |
1840 | case SpvOpImageSparseDrefGather: *hasResult = true; *hasResultType = true; break; |
1841 | case SpvOpImageSparseTexelsResident: *hasResult = true; *hasResultType = true; break; |
1842 | case SpvOpNoLine: *hasResult = false; *hasResultType = false; break; |
1843 | case SpvOpAtomicFlagTestAndSet: *hasResult = true; *hasResultType = true; break; |
1844 | case SpvOpAtomicFlagClear: *hasResult = false; *hasResultType = false; break; |
1845 | case SpvOpImageSparseRead: *hasResult = true; *hasResultType = true; break; |
1846 | case SpvOpSizeOf: *hasResult = true; *hasResultType = true; break; |
1847 | case SpvOpTypePipeStorage: *hasResult = true; *hasResultType = false; break; |
1848 | case SpvOpConstantPipeStorage: *hasResult = true; *hasResultType = true; break; |
1849 | case SpvOpCreatePipeFromPipeStorage: *hasResult = true; *hasResultType = true; break; |
1850 | case SpvOpGetKernelLocalSizeForSubgroupCount: *hasResult = true; *hasResultType = true; break; |
1851 | case SpvOpGetKernelMaxNumSubgroups: *hasResult = true; *hasResultType = true; break; |
1852 | case SpvOpTypeNamedBarrier: *hasResult = true; *hasResultType = false; break; |
1853 | case SpvOpNamedBarrierInitialize: *hasResult = true; *hasResultType = true; break; |
1854 | case SpvOpMemoryNamedBarrier: *hasResult = false; *hasResultType = false; break; |
1855 | case SpvOpModuleProcessed: *hasResult = false; *hasResultType = false; break; |
1856 | case SpvOpExecutionModeId: *hasResult = false; *hasResultType = false; break; |
1857 | case SpvOpDecorateId: *hasResult = false; *hasResultType = false; break; |
1858 | case SpvOpGroupNonUniformElect: *hasResult = true; *hasResultType = true; break; |
1859 | case SpvOpGroupNonUniformAll: *hasResult = true; *hasResultType = true; break; |
1860 | case SpvOpGroupNonUniformAny: *hasResult = true; *hasResultType = true; break; |
1861 | case SpvOpGroupNonUniformAllEqual: *hasResult = true; *hasResultType = true; break; |
1862 | case SpvOpGroupNonUniformBroadcast: *hasResult = true; *hasResultType = true; break; |
1863 | case SpvOpGroupNonUniformBroadcastFirst: *hasResult = true; *hasResultType = true; break; |
1864 | case SpvOpGroupNonUniformBallot: *hasResult = true; *hasResultType = true; break; |
1865 | case SpvOpGroupNonUniformInverseBallot: *hasResult = true; *hasResultType = true; break; |
1866 | case SpvOpGroupNonUniformBallotBitExtract: *hasResult = true; *hasResultType = true; break; |
1867 | case SpvOpGroupNonUniformBallotBitCount: *hasResult = true; *hasResultType = true; break; |
1868 | case SpvOpGroupNonUniformBallotFindLSB: *hasResult = true; *hasResultType = true; break; |
1869 | case SpvOpGroupNonUniformBallotFindMSB: *hasResult = true; *hasResultType = true; break; |
1870 | case SpvOpGroupNonUniformShuffle: *hasResult = true; *hasResultType = true; break; |
1871 | case SpvOpGroupNonUniformShuffleXor: *hasResult = true; *hasResultType = true; break; |
1872 | case SpvOpGroupNonUniformShuffleUp: *hasResult = true; *hasResultType = true; break; |
1873 | case SpvOpGroupNonUniformShuffleDown: *hasResult = true; *hasResultType = true; break; |
1874 | case SpvOpGroupNonUniformIAdd: *hasResult = true; *hasResultType = true; break; |
1875 | case SpvOpGroupNonUniformFAdd: *hasResult = true; *hasResultType = true; break; |
1876 | case SpvOpGroupNonUniformIMul: *hasResult = true; *hasResultType = true; break; |
1877 | case SpvOpGroupNonUniformFMul: *hasResult = true; *hasResultType = true; break; |
1878 | case SpvOpGroupNonUniformSMin: *hasResult = true; *hasResultType = true; break; |
1879 | case SpvOpGroupNonUniformUMin: *hasResult = true; *hasResultType = true; break; |
1880 | case SpvOpGroupNonUniformFMin: *hasResult = true; *hasResultType = true; break; |
1881 | case SpvOpGroupNonUniformSMax: *hasResult = true; *hasResultType = true; break; |
1882 | case SpvOpGroupNonUniformUMax: *hasResult = true; *hasResultType = true; break; |
1883 | case SpvOpGroupNonUniformFMax: *hasResult = true; *hasResultType = true; break; |
1884 | case SpvOpGroupNonUniformBitwiseAnd: *hasResult = true; *hasResultType = true; break; |
1885 | case SpvOpGroupNonUniformBitwiseOr: *hasResult = true; *hasResultType = true; break; |
1886 | case SpvOpGroupNonUniformBitwiseXor: *hasResult = true; *hasResultType = true; break; |
1887 | case SpvOpGroupNonUniformLogicalAnd: *hasResult = true; *hasResultType = true; break; |
1888 | case SpvOpGroupNonUniformLogicalOr: *hasResult = true; *hasResultType = true; break; |
1889 | case SpvOpGroupNonUniformLogicalXor: *hasResult = true; *hasResultType = true; break; |
1890 | case SpvOpGroupNonUniformQuadBroadcast: *hasResult = true; *hasResultType = true; break; |
1891 | case SpvOpGroupNonUniformQuadSwap: *hasResult = true; *hasResultType = true; break; |
1892 | case SpvOpCopyLogical: *hasResult = true; *hasResultType = true; break; |
1893 | case SpvOpPtrEqual: *hasResult = true; *hasResultType = true; break; |
1894 | case SpvOpPtrNotEqual: *hasResult = true; *hasResultType = true; break; |
1895 | case SpvOpPtrDiff: *hasResult = true; *hasResultType = true; break; |
1896 | case SpvOpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break; |
1897 | case SpvOpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break; |
1898 | case SpvOpSubgroupAllKHR: *hasResult = true; *hasResultType = true; break; |
1899 | case SpvOpSubgroupAnyKHR: *hasResult = true; *hasResultType = true; break; |
1900 | case SpvOpSubgroupAllEqualKHR: *hasResult = true; *hasResultType = true; break; |
1901 | case SpvOpSubgroupReadInvocationKHR: *hasResult = true; *hasResultType = true; break; |
1902 | case SpvOpGroupIAddNonUniformAMD: *hasResult = true; *hasResultType = true; break; |
1903 | case SpvOpGroupFAddNonUniformAMD: *hasResult = true; *hasResultType = true; break; |
1904 | case SpvOpGroupFMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; |
1905 | case SpvOpGroupUMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; |
1906 | case SpvOpGroupSMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; |
1907 | case SpvOpGroupFMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; |
1908 | case SpvOpGroupUMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; |
1909 | case SpvOpGroupSMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; |
1910 | case SpvOpFragmentMaskFetchAMD: *hasResult = true; *hasResultType = true; break; |
1911 | case SpvOpFragmentFetchAMD: *hasResult = true; *hasResultType = true; break; |
1912 | case SpvOpReadClockKHR: *hasResult = true; *hasResultType = true; break; |
1913 | case SpvOpImageSampleFootprintNV: *hasResult = true; *hasResultType = true; break; |
1914 | case SpvOpGroupNonUniformPartitionNV: *hasResult = true; *hasResultType = true; break; |
1915 | case SpvOpWritePackedPrimitiveIndices4x8NV: *hasResult = false; *hasResultType = false; break; |
1916 | case SpvOpReportIntersectionNV: *hasResult = true; *hasResultType = true; break; |
1917 | case SpvOpIgnoreIntersectionNV: *hasResult = false; *hasResultType = false; break; |
1918 | case SpvOpTerminateRayNV: *hasResult = false; *hasResultType = false; break; |
1919 | case SpvOpTraceNV: *hasResult = false; *hasResultType = false; break; |
1920 | case SpvOpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break; |
1921 | case SpvOpTypeRayQueryProvisionalKHR: *hasResult = true; *hasResultType = false; break; |
1922 | case SpvOpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break; |
1923 | case SpvOpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break; |
1924 | case SpvOpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break; |
1925 | case SpvOpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break; |
1926 | case SpvOpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break; |
1927 | case SpvOpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break; |
1928 | case SpvOpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break; |
1929 | case SpvOpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break; |
1930 | case SpvOpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break; |
1931 | case SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break; |
1932 | case SpvOpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break; |
1933 | case SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break; |
1934 | case SpvOpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break; |
1935 | case SpvOpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break; |
1936 | case SpvOpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break; |
1937 | case SpvOpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break; |
1938 | case SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break; |
1939 | case SpvOpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break; |
1940 | case SpvOpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break; |
1941 | case SpvOpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break; |
1942 | case SpvOpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break; |
1943 | case SpvOpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break; |
1944 | case SpvOpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break; |
1945 | case SpvOpExecuteCallableNV: *hasResult = false; *hasResultType = false; break; |
1946 | case SpvOpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break; |
1947 | case SpvOpCooperativeMatrixLoadNV: *hasResult = true; *hasResultType = true; break; |
1948 | case SpvOpCooperativeMatrixStoreNV: *hasResult = false; *hasResultType = false; break; |
1949 | case SpvOpCooperativeMatrixMulAddNV: *hasResult = true; *hasResultType = true; break; |
1950 | case SpvOpCooperativeMatrixLengthNV: *hasResult = true; *hasResultType = true; break; |
1951 | case SpvOpBeginInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; |
1952 | case SpvOpEndInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; |
1953 | case SpvOpDemoteToHelperInvocationEXT: *hasResult = false; *hasResultType = false; break; |
1954 | case SpvOpIsHelperInvocationEXT: *hasResult = true; *hasResultType = true; break; |
1955 | case SpvOpSubgroupShuffleINTEL: *hasResult = true; *hasResultType = true; break; |
1956 | case SpvOpSubgroupShuffleDownINTEL: *hasResult = true; *hasResultType = true; break; |
1957 | case SpvOpSubgroupShuffleUpINTEL: *hasResult = true; *hasResultType = true; break; |
1958 | case SpvOpSubgroupShuffleXorINTEL: *hasResult = true; *hasResultType = true; break; |
1959 | case SpvOpSubgroupBlockReadINTEL: *hasResult = true; *hasResultType = true; break; |
1960 | case SpvOpSubgroupBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; |
1961 | case SpvOpSubgroupImageBlockReadINTEL: *hasResult = true; *hasResultType = true; break; |
1962 | case SpvOpSubgroupImageBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; |
1963 | case SpvOpSubgroupImageMediaBlockReadINTEL: *hasResult = true; *hasResultType = true; break; |
1964 | case SpvOpSubgroupImageMediaBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; |
1965 | case SpvOpUCountLeadingZerosINTEL: *hasResult = true; *hasResultType = true; break; |
1966 | case SpvOpUCountTrailingZerosINTEL: *hasResult = true; *hasResultType = true; break; |
1967 | case SpvOpAbsISubINTEL: *hasResult = true; *hasResultType = true; break; |
1968 | case SpvOpAbsUSubINTEL: *hasResult = true; *hasResultType = true; break; |
1969 | case SpvOpIAddSatINTEL: *hasResult = true; *hasResultType = true; break; |
1970 | case SpvOpUAddSatINTEL: *hasResult = true; *hasResultType = true; break; |
1971 | case SpvOpIAverageINTEL: *hasResult = true; *hasResultType = true; break; |
1972 | case SpvOpUAverageINTEL: *hasResult = true; *hasResultType = true; break; |
1973 | case SpvOpIAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; |
1974 | case SpvOpUAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; |
1975 | case SpvOpISubSatINTEL: *hasResult = true; *hasResultType = true; break; |
1976 | case SpvOpUSubSatINTEL: *hasResult = true; *hasResultType = true; break; |
1977 | case SpvOpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break; |
1978 | case SpvOpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break; |
1979 | case SpvOpDecorateString: *hasResult = false; *hasResultType = false; break; |
1980 | case SpvOpMemberDecorateString: *hasResult = false; *hasResultType = false; break; |
1981 | case SpvOpVmeImageINTEL: *hasResult = true; *hasResultType = true; break; |
1982 | case SpvOpTypeVmeImageINTEL: *hasResult = true; *hasResultType = false; break; |
1983 | case SpvOpTypeAvcImePayloadINTEL: *hasResult = true; *hasResultType = false; break; |
1984 | case SpvOpTypeAvcRefPayloadINTEL: *hasResult = true; *hasResultType = false; break; |
1985 | case SpvOpTypeAvcSicPayloadINTEL: *hasResult = true; *hasResultType = false; break; |
1986 | case SpvOpTypeAvcMcePayloadINTEL: *hasResult = true; *hasResultType = false; break; |
1987 | case SpvOpTypeAvcMceResultINTEL: *hasResult = true; *hasResultType = false; break; |
1988 | case SpvOpTypeAvcImeResultINTEL: *hasResult = true; *hasResultType = false; break; |
1989 | case SpvOpTypeAvcImeResultSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; |
1990 | case SpvOpTypeAvcImeResultDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; |
1991 | case SpvOpTypeAvcImeSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; |
1992 | case SpvOpTypeAvcImeDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; |
1993 | case SpvOpTypeAvcRefResultINTEL: *hasResult = true; *hasResultType = false; break; |
1994 | case SpvOpTypeAvcSicResultINTEL: *hasResult = true; *hasResultType = false; break; |
1995 | case SpvOpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
1996 | case SpvOpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
1997 | case SpvOpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
1998 | case SpvOpSubgroupAvcMceSetInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
1999 | case SpvOpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
2000 | case SpvOpSubgroupAvcMceSetInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
2001 | case SpvOpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
2002 | case SpvOpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL: *hasResult = true; *hasResultType = true; break; |
2003 | case SpvOpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; |
2004 | case SpvOpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; |
2005 | case SpvOpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; |
2006 | case SpvOpSubgroupAvcMceSetMotionVectorCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; |
2007 | case SpvOpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
2008 | case SpvOpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
2009 | case SpvOpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
2010 | case SpvOpSubgroupAvcMceSetAcOnlyHaarINTEL: *hasResult = true; *hasResultType = true; break; |
2011 | case SpvOpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; |
2012 | case SpvOpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; |
2013 | case SpvOpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; |
2014 | case SpvOpSubgroupAvcMceConvertToImePayloadINTEL: *hasResult = true; *hasResultType = true; break; |
2015 | case SpvOpSubgroupAvcMceConvertToImeResultINTEL: *hasResult = true; *hasResultType = true; break; |
2016 | case SpvOpSubgroupAvcMceConvertToRefPayloadINTEL: *hasResult = true; *hasResultType = true; break; |
2017 | case SpvOpSubgroupAvcMceConvertToRefResultINTEL: *hasResult = true; *hasResultType = true; break; |
2018 | case SpvOpSubgroupAvcMceConvertToSicPayloadINTEL: *hasResult = true; *hasResultType = true; break; |
2019 | case SpvOpSubgroupAvcMceConvertToSicResultINTEL: *hasResult = true; *hasResultType = true; break; |
2020 | case SpvOpSubgroupAvcMceGetMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; |
2021 | case SpvOpSubgroupAvcMceGetInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; |
2022 | case SpvOpSubgroupAvcMceGetBestInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; |
2023 | case SpvOpSubgroupAvcMceGetInterMajorShapeINTEL: *hasResult = true; *hasResultType = true; break; |
2024 | case SpvOpSubgroupAvcMceGetInterMinorShapeINTEL: *hasResult = true; *hasResultType = true; break; |
2025 | case SpvOpSubgroupAvcMceGetInterDirectionsINTEL: *hasResult = true; *hasResultType = true; break; |
2026 | case SpvOpSubgroupAvcMceGetInterMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; |
2027 | case SpvOpSubgroupAvcMceGetInterReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; |
2028 | case SpvOpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; |
2029 | case SpvOpSubgroupAvcImeInitializeINTEL: *hasResult = true; *hasResultType = true; break; |
2030 | case SpvOpSubgroupAvcImeSetSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2031 | case SpvOpSubgroupAvcImeSetDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2032 | case SpvOpSubgroupAvcImeRefWindowSizeINTEL: *hasResult = true; *hasResultType = true; break; |
2033 | case SpvOpSubgroupAvcImeAdjustRefOffsetINTEL: *hasResult = true; *hasResultType = true; break; |
2034 | case SpvOpSubgroupAvcImeConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; |
2035 | case SpvOpSubgroupAvcImeSetMaxMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; |
2036 | case SpvOpSubgroupAvcImeSetUnidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; |
2037 | case SpvOpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL: *hasResult = true; *hasResultType = true; break; |
2038 | case SpvOpSubgroupAvcImeSetWeightedSadINTEL: *hasResult = true; *hasResultType = true; break; |
2039 | case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2040 | case SpvOpSubgroupAvcImeEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2041 | case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; |
2042 | case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; |
2043 | case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; |
2044 | case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; |
2045 | case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; |
2046 | case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; |
2047 | case SpvOpSubgroupAvcImeConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; |
2048 | case SpvOpSubgroupAvcImeGetSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; |
2049 | case SpvOpSubgroupAvcImeGetDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; |
2050 | case SpvOpSubgroupAvcImeStripSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; |
2051 | case SpvOpSubgroupAvcImeStripDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; |
2052 | case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; |
2053 | case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; |
2054 | case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; |
2055 | case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; |
2056 | case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; |
2057 | case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; |
2058 | case SpvOpSubgroupAvcImeGetBorderReachedINTEL: *hasResult = true; *hasResultType = true; break; |
2059 | case SpvOpSubgroupAvcImeGetTruncatedSearchIndicationINTEL: *hasResult = true; *hasResultType = true; break; |
2060 | case SpvOpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL: *hasResult = true; *hasResultType = true; break; |
2061 | case SpvOpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL: *hasResult = true; *hasResultType = true; break; |
2062 | case SpvOpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL: *hasResult = true; *hasResultType = true; break; |
2063 | case SpvOpSubgroupAvcFmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; |
2064 | case SpvOpSubgroupAvcBmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; |
2065 | case SpvOpSubgroupAvcRefConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; |
2066 | case SpvOpSubgroupAvcRefSetBidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; |
2067 | case SpvOpSubgroupAvcRefSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; |
2068 | case SpvOpSubgroupAvcRefEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2069 | case SpvOpSubgroupAvcRefEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2070 | case SpvOpSubgroupAvcRefEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2071 | case SpvOpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; |
2072 | case SpvOpSubgroupAvcRefConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; |
2073 | case SpvOpSubgroupAvcSicInitializeINTEL: *hasResult = true; *hasResultType = true; break; |
2074 | case SpvOpSubgroupAvcSicConfigureSkcINTEL: *hasResult = true; *hasResultType = true; break; |
2075 | case SpvOpSubgroupAvcSicConfigureIpeLumaINTEL: *hasResult = true; *hasResultType = true; break; |
2076 | case SpvOpSubgroupAvcSicConfigureIpeLumaChromaINTEL: *hasResult = true; *hasResultType = true; break; |
2077 | case SpvOpSubgroupAvcSicGetMotionVectorMaskINTEL: *hasResult = true; *hasResultType = true; break; |
2078 | case SpvOpSubgroupAvcSicConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; |
2079 | case SpvOpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; |
2080 | case SpvOpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; |
2081 | case SpvOpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; |
2082 | case SpvOpSubgroupAvcSicSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; |
2083 | case SpvOpSubgroupAvcSicSetSkcForwardTransformEnableINTEL: *hasResult = true; *hasResultType = true; break; |
2084 | case SpvOpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL: *hasResult = true; *hasResultType = true; break; |
2085 | case SpvOpSubgroupAvcSicEvaluateIpeINTEL: *hasResult = true; *hasResultType = true; break; |
2086 | case SpvOpSubgroupAvcSicEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2087 | case SpvOpSubgroupAvcSicEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2088 | case SpvOpSubgroupAvcSicEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; |
2089 | case SpvOpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; |
2090 | case SpvOpSubgroupAvcSicConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; |
2091 | case SpvOpSubgroupAvcSicGetIpeLumaShapeINTEL: *hasResult = true; *hasResultType = true; break; |
2092 | case SpvOpSubgroupAvcSicGetBestIpeLumaDistortionINTEL: *hasResult = true; *hasResultType = true; break; |
2093 | case SpvOpSubgroupAvcSicGetBestIpeChromaDistortionINTEL: *hasResult = true; *hasResultType = true; break; |
2094 | case SpvOpSubgroupAvcSicGetPackedIpeLumaModesINTEL: *hasResult = true; *hasResultType = true; break; |
2095 | case SpvOpSubgroupAvcSicGetIpeChromaModeINTEL: *hasResult = true; *hasResultType = true; break; |
2096 | case SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL: *hasResult = true; *hasResultType = true; break; |
2097 | case SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL: *hasResult = true; *hasResultType = true; break; |
2098 | case SpvOpSubgroupAvcSicGetInterRawSadsINTEL: *hasResult = true; *hasResultType = true; break; |
2099 | } |
2100 | } |
2101 | #endif /* SPV_ENABLE_UTILITY_CODE */ |
2102 | |
2103 | #endif |
2104 | |
2105 | |