/*Copyright (c) 2014-2016 The Khronos Group Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and/or associated documentation files (the "Materials"), to deal in the Materials without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Materials, and to permit persons to whom the Materials are furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Materials. MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.*/ // THIS FILE IS GENERATED WITH tools/process_grammar.rb export default { "magic": "0x07230203", "version": [ 1, 5 ], "instructions": { "OpNop": { "opcode": 0, "operands": [ ] }, "OpUndef": { "opcode": 1, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" } ] }, "OpSourceContinued": { "opcode": 2, "operands": [ { "kind": "LiteralString" } ] }, "OpSource": { "opcode": 3, "operands": [ { "kind": "SourceLanguage" }, { "kind": "LiteralInteger" }, { "kind": "IdRef", "quantifier": "?" }, { "kind": "LiteralString", "quantifier": "?" } ] }, "OpSourceExtension": { "opcode": 4, "operands": [ { "kind": "LiteralString" } ] }, "OpName": { "opcode": 5, "operands": [ { "kind": "IdRef" }, { "kind": "LiteralString" } ] }, "OpMemberName": { "opcode": 6, "operands": [ { "kind": "IdRef" }, { "kind": "LiteralInteger" }, { "kind": "LiteralString" } ] }, "OpString": { "opcode": 7, "operands": [ { "kind": "IdResult" }, { "kind": "LiteralString" } ] }, "OpLine": { "opcode": 8, "operands": [ { "kind": "IdRef" }, { "kind": "LiteralInteger" }, { "kind": "LiteralInteger" } ] }, "OpExtension": { "opcode": 10, "operands": [ { "kind": "LiteralString" } ] }, "OpExtInstImport": { "opcode": 11, "operands": [ { "kind": "IdResult" }, { "kind": "LiteralString" } ] }, "OpExtInst": { "opcode": 12, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "LiteralExtInstInteger" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpMemoryModel": { "opcode": 14, "operands": [ { "kind": "AddressingModel" }, { "kind": "MemoryModel" } ] }, "OpEntryPoint": { "opcode": 15, "operands": [ { "kind": "ExecutionModel" }, { "kind": "IdRef" }, { "kind": "LiteralString" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpExecutionMode": { "opcode": 16, "operands": [ { "kind": "IdRef" }, { "kind": "ExecutionMode" } ] }, "OpCapability": { "opcode": 17, "operands": [ { "kind": "Capability" } ] }, "OpTypeVoid": { "opcode": 19, "operands": [ { "kind": "IdResult" } ] }, "OpTypeBool": { "opcode": 20, "operands": [ { "kind": "IdResult" } ] }, "OpTypeInt": { "opcode": 21, "operands": [ { "kind": "IdResult" }, { "kind": "LiteralInteger" }, { "kind": "LiteralInteger" } ] }, "OpTypeFloat": { "opcode": 22, "operands": [ { "kind": "IdResult" }, { "kind": "LiteralInteger" } ] }, "OpTypeVector": { "opcode": 23, "operands": [ { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "LiteralInteger" } ] }, "OpTypeMatrix": { "opcode": 24, "operands": [ { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "LiteralInteger" } ] }, "OpTypeImage": { "opcode": 25, "operands": [ { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "Dim" }, { "kind": "LiteralInteger" }, { "kind": "LiteralInteger" }, { "kind": "LiteralInteger" }, { "kind": "LiteralInteger" }, { "kind": "ImageFormat" }, { "kind": "AccessQualifier", "quantifier": "?" } ] }, "OpTypeSampler": { "opcode": 26, "operands": [ { "kind": "IdResult" } ] }, "OpTypeSampledImage": { "opcode": 27, "operands": [ { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpTypeArray": { "opcode": 28, "operands": [ { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpTypeRuntimeArray": { "opcode": 29, "operands": [ { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpTypeStruct": { "opcode": 30, "operands": [ { "kind": "IdResult" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpTypePointer": { "opcode": 32, "operands": [ { "kind": "IdResult" }, { "kind": "StorageClass" }, { "kind": "IdRef" } ] }, "OpTypeFunction": { "opcode": 33, "operands": [ { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpConstantTrue": { "opcode": 41, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" } ] }, "OpConstantFalse": { "opcode": 42, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" } ] }, "OpConstant": { "opcode": 43, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "LiteralContextDependentNumber" } ] }, "OpConstantComposite": { "opcode": 44, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpConstantNull": { "opcode": 46, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" } ] }, "OpSpecConstantTrue": { "opcode": 48, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" } ] }, "OpSpecConstantFalse": { "opcode": 49, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" } ] }, "OpSpecConstant": { "opcode": 50, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "LiteralContextDependentNumber" } ] }, "OpSpecConstantComposite": { "opcode": 51, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpSpecConstantOp": { "opcode": 52, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "LiteralSpecConstantOpInteger" } ] }, "OpFunction": { "opcode": 54, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "FunctionControl" }, { "kind": "IdRef" } ] }, "OpFunctionParameter": { "opcode": 55, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" } ] }, "OpFunctionEnd": { "opcode": 56, "operands": [ ] }, "OpFunctionCall": { "opcode": 57, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpVariable": { "opcode": 59, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "StorageClass" }, { "kind": "IdRef", "quantifier": "?" } ] }, "OpImageTexelPointer": { "opcode": 60, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpLoad": { "opcode": 61, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "MemoryAccess", "quantifier": "?" } ] }, "OpStore": { "opcode": 62, "operands": [ { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "MemoryAccess", "quantifier": "?" } ] }, "OpCopyMemory": { "opcode": 63, "operands": [ { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "MemoryAccess", "quantifier": "?" }, { "kind": "MemoryAccess", "quantifier": "?" } ] }, "OpAccessChain": { "opcode": 65, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpInBoundsAccessChain": { "opcode": 66, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpArrayLength": { "opcode": 68, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "LiteralInteger" } ] }, "OpDecorate": { "opcode": 71, "operands": [ { "kind": "IdRef" }, { "kind": "Decoration" } ] }, "OpMemberDecorate": { "opcode": 72, "operands": [ { "kind": "IdRef" }, { "kind": "LiteralInteger" }, { "kind": "Decoration" } ] }, "OpDecorationGroup": { "opcode": 73, "operands": [ { "kind": "IdResult" } ] }, "OpGroupDecorate": { "opcode": 74, "operands": [ { "kind": "IdRef" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpGroupMemberDecorate": { "opcode": 75, "operands": [ { "kind": "IdRef" }, { "kind": "PairIdRefLiteralInteger", "quantifier": "*" } ] }, "OpVectorExtractDynamic": { "opcode": 77, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpVectorInsertDynamic": { "opcode": 78, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpVectorShuffle": { "opcode": 79, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "LiteralInteger", "quantifier": "*" } ] }, "OpCompositeConstruct": { "opcode": 80, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef", "quantifier": "*" } ] }, "OpCompositeExtract": { "opcode": 81, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "LiteralInteger", "quantifier": "*" } ] }, "OpCompositeInsert": { "opcode": 82, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "LiteralInteger", "quantifier": "*" } ] }, "OpCopyObject": { "opcode": 83, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpTranspose": { "opcode": 84, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpSampledImage": { "opcode": 86, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpImageSampleImplicitLod": { "opcode": 87, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands", "quantifier": "?" } ] }, "OpImageSampleExplicitLod": { "opcode": 88, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands" } ] }, "OpImageSampleDrefImplicitLod": { "opcode": 89, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands", "quantifier": "?" } ] }, "OpImageSampleDrefExplicitLod": { "opcode": 90, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands" } ] }, "OpImageSampleProjImplicitLod": { "opcode": 91, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands", "quantifier": "?" } ] }, "OpImageSampleProjExplicitLod": { "opcode": 92, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands" } ] }, "OpImageSampleProjDrefImplicitLod": { "opcode": 93, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands", "quantifier": "?" } ] }, "OpImageSampleProjDrefExplicitLod": { "opcode": 94, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands" } ] }, "OpImageFetch": { "opcode": 95, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands", "quantifier": "?" } ] }, "OpImageGather": { "opcode": 96, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands", "quantifier": "?" } ] }, "OpImageDrefGather": { "opcode": 97, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands", "quantifier": "?" } ] }, "OpImageRead": { "opcode": 98, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands", "quantifier": "?" } ] }, "OpImageWrite": { "opcode": 99, "operands": [ { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "ImageOperands", "quantifier": "?" } ] }, "OpImage": { "opcode": 100, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpImageQuerySizeLod": { "opcode": 103, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpImageQuerySize": { "opcode": 104, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpImageQueryLod": { "opcode": 105, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpImageQueryLevels": { "opcode": 106, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpImageQuerySamples": { "opcode": 107, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpConvertFToU": { "opcode": 109, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpConvertFToS": { "opcode": 110, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpConvertSToF": { "opcode": 111, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpConvertUToF": { "opcode": 112, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpUConvert": { "opcode": 113, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpSConvert": { "opcode": 114, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpFConvert": { "opcode": 115, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpQuantizeToF16": { "opcode": 116, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpBitcast": { "opcode": 124, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpSNegate": { "opcode": 126, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpFNegate": { "opcode": 127, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpIAdd": { "opcode": 128, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFAdd": { "opcode": 129, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpISub": { "opcode": 130, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFSub": { "opcode": 131, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpIMul": { "opcode": 132, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFMul": { "opcode": 133, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpUDiv": { "opcode": 134, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpSDiv": { "opcode": 135, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFDiv": { "opcode": 136, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpUMod": { "opcode": 137, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpSRem": { "opcode": 138, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpSMod": { "opcode": 139, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFRem": { "opcode": 140, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFMod": { "opcode": 141, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpVectorTimesScalar": { "opcode": 142, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpMatrixTimesScalar": { "opcode": 143, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpVectorTimesMatrix": { "opcode": 144, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpMatrixTimesVector": { "opcode": 145, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpMatrixTimesMatrix": { "opcode": 146, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpOuterProduct": { "opcode": 147, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpDot": { "opcode": 148, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpIAddCarry": { "opcode": 149, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpISubBorrow": { "opcode": 150, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpUMulExtended": { "opcode": 151, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpSMulExtended": { "opcode": 152, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpAny": { "opcode": 154, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpAll": { "opcode": 155, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpIsNan": { "opcode": 156, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpIsInf": { "opcode": 157, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpLogicalEqual": { "opcode": 164, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpLogicalNotEqual": { "opcode": 165, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpLogicalOr": { "opcode": 166, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpLogicalAnd": { "opcode": 167, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpLogicalNot": { "opcode": 168, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpSelect": { "opcode": 169, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpIEqual": { "opcode": 170, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpINotEqual": { "opcode": 171, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpUGreaterThan": { "opcode": 172, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpSGreaterThan": { "opcode": 173, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpUGreaterThanEqual": { "opcode": 174, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpSGreaterThanEqual": { "opcode": 175, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpULessThan": { "opcode": 176, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpSLessThan": { "opcode": 177, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpULessThanEqual": { "opcode": 178, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpSLessThanEqual": { "opcode": 179, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFOrdEqual": { "opcode": 180, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFUnordEqual": { "opcode": 181, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFOrdNotEqual": { "opcode": 182, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFUnordNotEqual": { "opcode": 183, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFOrdLessThan": { "opcode": 184, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFUnordLessThan": { "opcode": 185, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFOrdGreaterThan": { "opcode": 186, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFUnordGreaterThan": { "opcode": 187, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFOrdLessThanEqual": { "opcode": 188, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFUnordLessThanEqual": { "opcode": 189, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFOrdGreaterThanEqual": { "opcode": 190, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpFUnordGreaterThanEqual": { "opcode": 191, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpShiftRightLogical": { "opcode": 194, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpShiftRightArithmetic": { "opcode": 195, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpShiftLeftLogical": { "opcode": 196, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpBitwiseOr": { "opcode": 197, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpBitwiseXor": { "opcode": 198, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpBitwiseAnd": { "opcode": 199, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpNot": { "opcode": 200, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpBitFieldInsert": { "opcode": 201, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpBitFieldSExtract": { "opcode": 202, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpBitFieldUExtract": { "opcode": 203, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpBitReverse": { "opcode": 204, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpBitCount": { "opcode": 205, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpDPdx": { "opcode": 207, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpDPdy": { "opcode": 208, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpFwidth": { "opcode": 209, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpDPdxFine": { "opcode": 210, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpDPdyFine": { "opcode": 211, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpFwidthFine": { "opcode": 212, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpDPdxCoarse": { "opcode": 213, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpDPdyCoarse": { "opcode": 214, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpFwidthCoarse": { "opcode": 215, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpControlBarrier": { "opcode": 224, "operands": [ { "kind": "IdScope" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" } ] }, "OpMemoryBarrier": { "opcode": 225, "operands": [ { "kind": "IdScope" }, { "kind": "IdMemorySemantics" } ] }, "OpAtomicLoad": { "opcode": 227, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" } ] }, "OpAtomicStore": { "opcode": 228, "operands": [ { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicExchange": { "opcode": 229, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicCompareExchange": { "opcode": 230, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpAtomicIIncrement": { "opcode": 232, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" } ] }, "OpAtomicIDecrement": { "opcode": 233, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" } ] }, "OpAtomicIAdd": { "opcode": 234, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicISub": { "opcode": 235, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicSMin": { "opcode": 236, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicUMin": { "opcode": 237, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicSMax": { "opcode": 238, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicUMax": { "opcode": 239, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicAnd": { "opcode": 240, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicOr": { "opcode": 241, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpAtomicXor": { "opcode": 242, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdScope" }, { "kind": "IdMemorySemantics" }, { "kind": "IdRef" } ] }, "OpPhi": { "opcode": 245, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "PairIdRefIdRef", "quantifier": "*" } ] }, "OpLoopMerge": { "opcode": 246, "operands": [ { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "LoopControl" } ] }, "OpSelectionMerge": { "opcode": 247, "operands": [ { "kind": "IdRef" }, { "kind": "SelectionControl" } ] }, "OpLabel": { "opcode": 248, "operands": [ { "kind": "IdResult" } ] }, "OpBranch": { "opcode": 249, "operands": [ { "kind": "IdRef" } ] }, "OpBranchConditional": { "opcode": 250, "operands": [ { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "LiteralInteger", "quantifier": "*" } ] }, "OpSwitch": { "opcode": 251, "operands": [ { "kind": "IdRef" }, { "kind": "IdRef" }, { "kind": "PairLiteralIntegerIdRef", "quantifier": "*" } ] }, "OpKill": { "opcode": 252, "operands": [ ] }, "OpReturn": { "opcode": 253, "operands": [ ] }, "OpReturnValue": { "opcode": 254, "operands": [ { "kind": "IdRef" } ] }, "OpUnreachable": { "opcode": 255, "operands": [ ] }, "OpNoLine": { "opcode": 317, "operands": [ ] }, "OpModuleProcessed": { "opcode": 330, "operands": [ { "kind": "LiteralString" } ] }, "OpExecutionModeId": { "opcode": 331, "operands": [ { "kind": "IdRef" }, { "kind": "ExecutionMode" } ] }, "OpDecorateId": { "opcode": 332, "operands": [ { "kind": "IdRef" }, { "kind": "Decoration" } ] }, "OpCopyLogical": { "opcode": 400, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" } ] }, "OpPtrEqual": { "opcode": 401, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpPtrNotEqual": { "opcode": 402, "operands": [ { "kind": "IdResultType" }, { "kind": "IdResult" }, { "kind": "IdRef" }, { "kind": "IdRef" } ] }, "OpDecorateString": { "opcode": 5632, "operands": [ { "kind": "IdRef" }, { "kind": "Decoration" } ] }, "OpDecorateStringGOOGLE": { "opcode": 5632, "operands": [ { "kind": "IdRef" }, { "kind": "Decoration" } ] }, "OpMemberDecorateString": { "opcode": 5633, "operands": [ { "kind": "IdRef" }, { "kind": "LiteralInteger" }, { "kind": "Decoration" } ] }, "OpMemberDecorateStringGOOGLE": { "opcode": 5633, "operands": [ { "kind": "IdRef" }, { "kind": "LiteralInteger" }, { "kind": "Decoration" } ] } }, "operand_kinds": { "ImageOperands": { "type": "BitEnum", "values": { "None": { "value": 0 }, "Bias": { "value": 1, "params": [ "IdRef" ] }, "Lod": { "value": 2, "params": [ "IdRef" ] }, "Grad": { "value": 4, "params": [ "IdRef", "IdRef" ] }, "ConstOffset": { "value": 8, "params": [ "IdRef" ] }, "Sample": { "value": 64, "params": [ "IdRef" ] }, "MakeTexelAvailable": { "value": 256, "params": [ "IdScope" ] }, "MakeTexelAvailableKHR": { "value": 256, "params": [ "IdScope" ] }, "MakeTexelVisible": { "value": 512, "params": [ "IdScope" ] }, "MakeTexelVisibleKHR": { "value": 512, "params": [ "IdScope" ] }, "NonPrivateTexel": { "value": 1024 }, "NonPrivateTexelKHR": { "value": 1024 }, "VolatileTexel": { "value": 2048 }, "VolatileTexelKHR": { "value": 2048 }, "SignExtend": { "value": 4096 }, "ZeroExtend": { "value": 8192 } } }, "FPFastMathMode": { "type": "BitEnum", "values": { "None": { "value": 0 } } }, "SelectionControl": { "type": "BitEnum", "values": { "None": { "value": 0 }, "Flatten": { "value": 1 }, "DontFlatten": { "value": 2 } } }, "LoopControl": { "type": "BitEnum", "values": { "None": { "value": 0 }, "Unroll": { "value": 1 }, "DontUnroll": { "value": 2 }, "DependencyInfinite": { "value": 4 }, "DependencyLength": { "value": 8, "params": [ "LiteralInteger" ] }, "MinIterations": { "value": 16, "params": [ "LiteralInteger" ] }, "MaxIterations": { "value": 32, "params": [ "LiteralInteger" ] }, "IterationMultiple": { "value": 64, "params": [ "LiteralInteger" ] }, "PeelCount": { "value": 128, "params": [ "LiteralInteger" ] }, "PartialCount": { "value": 256, "params": [ "LiteralInteger" ] } } }, "FunctionControl": { "type": "BitEnum", "values": { "None": { "value": 0 }, "Inline": { "value": 1 }, "DontInline": { "value": 2 }, "Pure": { "value": 4 }, "Const": { "value": 8 } } }, "MemorySemantics": { "type": "BitEnum", "values": { "Relaxed": { "value": 0 }, "None": { "value": 0 }, "Acquire": { "value": 2 }, "Release": { "value": 4 }, "AcquireRelease": { "value": 8 }, "SequentiallyConsistent": { "value": 16 }, "UniformMemory": { "value": 64 }, "SubgroupMemory": { "value": 128 }, "WorkgroupMemory": { "value": 256 }, "CrossWorkgroupMemory": { "value": 512 }, "ImageMemory": { "value": 2048 }, "OutputMemory": { "value": 4096 }, "OutputMemoryKHR": { "value": 4096 }, "MakeAvailable": { "value": 8192 }, "MakeAvailableKHR": { "value": 8192 }, "MakeVisible": { "value": 16384 }, "MakeVisibleKHR": { "value": 16384 }, "Volatile": { "value": 32768 } } }, "MemoryAccess": { "type": "BitEnum", "values": { "None": { "value": 0 }, "Volatile": { "value": 1 }, "Aligned": { "value": 2, "params": [ "LiteralInteger" ] }, "Nontemporal": { "value": 4 }, "MakePointerAvailable": { "value": 8, "params": [ "IdScope" ] }, "MakePointerAvailableKHR": { "value": 8, "params": [ "IdScope" ] }, "MakePointerVisible": { "value": 16, "params": [ "IdScope" ] }, "MakePointerVisibleKHR": { "value": 16, "params": [ "IdScope" ] }, "NonPrivatePointer": { "value": 32 }, "NonPrivatePointerKHR": { "value": 32 } } }, "KernelProfilingInfo": { "type": "BitEnum", "values": { "None": { "value": 0 } } }, "SourceLanguage": { "type": "ValueEnum", "values": { "Unknown": { "value": 0 }, "ESSL": { "value": 1 }, "GLSL": { "value": 2 }, "OpenCL_C": { "value": 3 }, "OpenCL_CPP": { "value": 4 }, "HLSL": { "value": 5 } } }, "ExecutionModel": { "type": "ValueEnum", "values": { "Vertex": { "value": 0 }, "Fragment": { "value": 4 }, "GLCompute": { "value": 5 } } }, "AddressingModel": { "type": "ValueEnum", "values": { "Logical": { "value": 0 } } }, "MemoryModel": { "type": "ValueEnum", "values": { "Simple": { "value": 0 }, "GLSL450": { "value": 1 }, "Vulkan": { "value": 3 }, "VulkanKHR": { "value": 3 } } }, "ExecutionMode": { "type": "ValueEnum", "values": { "PixelCenterInteger": { "value": 6 }, "OriginUpperLeft": { "value": 7 }, "OriginLowerLeft": { "value": 8 }, "EarlyFragmentTests": { "value": 9 }, "DepthReplacing": { "value": 12 }, "DepthGreater": { "value": 14 }, "DepthLess": { "value": 15 }, "DepthUnchanged": { "value": 16 }, "LocalSize": { "value": 17, "params": [ "LiteralInteger", "LiteralInteger", "LiteralInteger" ] }, "LocalSizeId": { "value": 38, "params": [ "IdRef", "IdRef", "IdRef" ] } } }, "StorageClass": { "type": "ValueEnum", "values": { "UniformConstant": { "value": 0 }, "Input": { "value": 1 }, "Uniform": { "value": 2 }, "Output": { "value": 3 }, "Workgroup": { "value": 4 }, "CrossWorkgroup": { "value": 5 }, "Private": { "value": 6 }, "Function": { "value": 7 }, "PushConstant": { "value": 9 }, "Image": { "value": 11 }, "StorageBuffer": { "value": 12 } } }, "Dim": { "type": "ValueEnum", "values": { "1D": { "value": 0 }, "2D": { "value": 1 }, "3D": { "value": 2 }, "Cube": { "value": 3 } } }, "ImageFormat": { "type": "ValueEnum", "values": { "Unknown": { "value": 0 }, "Rgba32f": { "value": 1 }, "Rgba16f": { "value": 2 }, "R32f": { "value": 3 }, "Rgba8": { "value": 4 }, "Rgba8Snorm": { "value": 5 }, "Rgba32i": { "value": 21 }, "Rgba16i": { "value": 22 }, "Rgba8i": { "value": 23 }, "R32i": { "value": 24 }, "Rgba32ui": { "value": 30 }, "Rgba16ui": { "value": 31 }, "Rgba8ui": { "value": 32 }, "R32ui": { "value": 33 } } }, "FPRoundingMode": { "type": "ValueEnum", "values": { "RTE": { "value": 0 }, "RTZ": { "value": 1 }, "RTP": { "value": 2 }, "RTN": { "value": 3 } } }, "Decoration": { "type": "ValueEnum", "values": { "RelaxedPrecision": { "value": 0 }, "SpecId": { "value": 1, "params": [ "LiteralInteger" ] }, "Block": { "value": 2 }, "BufferBlock": { "value": 3 }, "RowMajor": { "value": 4 }, "ColMajor": { "value": 5 }, "ArrayStride": { "value": 6, "params": [ "LiteralInteger" ] }, "MatrixStride": { "value": 7, "params": [ "LiteralInteger" ] }, "GLSLShared": { "value": 8 }, "GLSLPacked": { "value": 9 }, "BuiltIn": { "value": 11, "params": [ "BuiltIn" ] }, "NoPerspective": { "value": 13 }, "Flat": { "value": 14 }, "Centroid": { "value": 16 }, "Invariant": { "value": 18 }, "Restrict": { "value": 19 }, "Aliased": { "value": 20 }, "Volatile": { "value": 21 }, "Coherent": { "value": 23 }, "NonWritable": { "value": 24 }, "NonReadable": { "value": 25 }, "Uniform": { "value": 26 }, "UniformId": { "value": 27, "params": [ "IdScope" ] }, "Location": { "value": 30, "params": [ "LiteralInteger" ] }, "Component": { "value": 31, "params": [ "LiteralInteger" ] }, "Index": { "value": 32, "params": [ "LiteralInteger" ] }, "Binding": { "value": 33, "params": [ "LiteralInteger" ] }, "DescriptorSet": { "value": 34, "params": [ "LiteralInteger" ] }, "Offset": { "value": 35, "params": [ "LiteralInteger" ] }, "FPRoundingMode": { "value": 39, "params": [ "FPRoundingMode" ] }, "NoContraction": { "value": 42 }, "NoSignedWrap": { "value": 4469 }, "NoUnsignedWrap": { "value": 4470 }, "ExplicitInterpAMD": { "value": 4999 }, "CounterBuffer": { "value": 5634, "params": [ "IdRef" ] }, "HlslCounterBufferGOOGLE": { "value": 5634, "params": [ "IdRef" ] }, "UserSemantic": { "value": 5635, "params": [ "LiteralString" ] }, "HlslSemanticGOOGLE": { "value": 5635, "params": [ "LiteralString" ] }, "UserTypeGOOGLE": { "value": 5636, "params": [ "LiteralString" ] } } }, "BuiltIn": { "type": "ValueEnum", "values": { "Position": { "value": 0 }, "PointSize": { "value": 1 }, "VertexId": { "value": 5 }, "InstanceId": { "value": 6 }, "FragCoord": { "value": 15 }, "PointCoord": { "value": 16 }, "FrontFacing": { "value": 17 }, "SampleMask": { "value": 20 }, "FragDepth": { "value": 22 }, "HelperInvocation": { "value": 23 }, "NumWorkgroups": { "value": 24 }, "WorkgroupSize": { "value": 25 }, "WorkgroupId": { "value": 26 }, "LocalInvocationId": { "value": 27 }, "GlobalInvocationId": { "value": 28 }, "LocalInvocationIndex": { "value": 29 }, "VertexIndex": { "value": 42 }, "InstanceIndex": { "value": 43 }, "BaryCoordNoPerspAMD": { "value": 4992 }, "BaryCoordNoPerspCentroidAMD": { "value": 4993 }, "BaryCoordNoPerspSampleAMD": { "value": 4994 }, "BaryCoordSmoothAMD": { "value": 4995 }, "BaryCoordSmoothCentroidAMD": { "value": 4996 }, "BaryCoordSmoothSampleAMD": { "value": 4997 }, "BaryCoordPullModelAMD": { "value": 4998 } } }, "Scope": { "type": "ValueEnum", "values": { "CrossDevice": { "value": 0 }, "Device": { "value": 1 }, "Workgroup": { "value": 2 }, "Subgroup": { "value": 3 }, "Invocation": { "value": 4 }, "QueueFamily": { "value": 5 }, "QueueFamilyKHR": { "value": 5 } } }, "Capability": { "type": "ValueEnum", "values": { "Matrix": { "value": 0 }, "Shader": { "value": 1 }, "Geometry": { "value": 2 }, "Tessellation": { "value": 3 }, "Addresses": { "value": 4 }, "Linkage": { "value": 5 }, "Kernel": { "value": 6 }, "Float16": { "value": 9 }, "Float64": { "value": 10 }, "Int64": { "value": 11 }, "Groups": { "value": 18 }, "AtomicStorage": { "value": 21 }, "Int16": { "value": 22 }, "ImageGatherExtended": { "value": 25 }, "StorageImageMultisample": { "value": 27 }, "UniformBufferArrayDynamicIndexing": { "value": 28 }, "SampledImageArrayDynamicIndexing": { "value": 29 }, "StorageBufferArrayDynamicIndexing": { "value": 30 }, "StorageImageArrayDynamicIndexing": { "value": 31 }, "ClipDistance": { "value": 32 }, "CullDistance": { "value": 33 }, "SampleRateShading": { "value": 35 }, "SampledRect": { "value": 37 }, "Int8": { "value": 39 }, "InputAttachment": { "value": 40 }, "SparseResidency": { "value": 41 }, "MinLod": { "value": 42 }, "Sampled1D": { "value": 43 }, "Image1D": { "value": 44 }, "SampledCubeArray": { "value": 45 }, "SampledBuffer": { "value": 46 }, "ImageMSArray": { "value": 48 }, "StorageImageExtendedFormats": { "value": 49 }, "ImageQuery": { "value": 50 }, "DerivativeControl": { "value": 51 }, "InterpolationFunction": { "value": 52 }, "TransformFeedback": { "value": 53 }, "StorageImageReadWithoutFormat": { "value": 55 }, "StorageImageWriteWithoutFormat": { "value": 56 }, "GroupNonUniform": { "value": 61 }, "ShaderLayer": { "value": 69 }, "ShaderViewportIndex": { "value": 70 }, "SubgroupBallotKHR": { "value": 4423 }, "DrawParameters": { "value": 4427 }, "SubgroupVoteKHR": { "value": 4431 }, "StorageBuffer16BitAccess": { "value": 4433 }, "StorageUniformBufferBlock16": { "value": 4433 }, "StoragePushConstant16": { "value": 4435 }, "StorageInputOutput16": { "value": 4436 }, "DeviceGroup": { "value": 4437 }, "MultiView": { "value": 4439 }, "VariablePointersStorageBuffer": { "value": 4441 }, "AtomicStorageOps": { "value": 4445 }, "SampleMaskPostDepthCoverage": { "value": 4447 }, "StorageBuffer8BitAccess": { "value": 4448 }, "StoragePushConstant8": { "value": 4450 }, "DenormPreserve": { "value": 4464 }, "DenormFlushToZero": { "value": 4465 }, "SignedZeroInfNanPreserve": { "value": 4466 }, "RoundingModeRTE": { "value": 4467 }, "RoundingModeRTZ": { "value": 4468 }, "Float16ImageAMD": { "value": 5008 }, "ImageGatherBiasLodAMD": { "value": 5009 }, "FragmentMaskAMD": { "value": 5010 }, "StencilExportEXT": { "value": 5013 }, "ImageReadWriteLodAMD": { "value": 5015 }, "ShaderClockKHR": { "value": 5055 }, "QuadControlKHR": { "value": 5087 }, "FragmentFullyCoveredEXT": { "value": 5265 }, "MeshShadingNV": { "value": 5266 }, "ImageFootprintNV": { "value": 5282 }, "FragmentBarycentricNV": { "value": 5284 }, "ComputeDerivativeGroupQuadsNV": { "value": 5288 }, "FragmentDensityEXT": { "value": 5291 }, "ShadingRateNV": { "value": 5291 }, "GroupNonUniformPartitionedNV": { "value": 5297 }, "ShaderNonUniform": { "value": 5301 }, "ShaderNonUniformEXT": { "value": 5301 }, "RuntimeDescriptorArray": { "value": 5302 }, "RuntimeDescriptorArrayEXT": { "value": 5302 }, "RayTracingNV": { "value": 5340 }, "VulkanMemoryModel": { "value": 5345 }, "VulkanMemoryModelKHR": { "value": 5345 }, "VulkanMemoryModelDeviceScope": { "value": 5346 }, "VulkanMemoryModelDeviceScopeKHR": { "value": 5346 }, "PhysicalStorageBufferAddresses": { "value": 5347 }, "PhysicalStorageBufferAddressesEXT": { "value": 5347 }, "ComputeDerivativeGroupLinearNV": { "value": 5350 }, "CooperativeMatrixNV": { "value": 5357 }, "FragmentShaderSampleInterlockEXT": { "value": 5363 }, "FragmentShaderShadingRateInterlockEXT": { "value": 5372 }, "ShaderSMBuiltinsNV": { "value": 5373 }, "FragmentShaderPixelInterlockEXT": { "value": 5378 }, "DemoteToHelperInvocationEXT": { "value": 5379 }, "SubgroupShuffleINTEL": { "value": 5568 }, "SubgroupBufferBlockIOINTEL": { "value": 5569 }, "SubgroupImageBlockIOINTEL": { "value": 5570 }, "SubgroupImageMediaBlockIOINTEL": { "value": 5579 }, "IntegerFunctions2INTEL": { "value": 5584 }, "SubgroupAvcMotionEstimationINTEL": { "value": 5696 }, "SubgroupAvcMotionEstimationIntraINTEL": { "value": 5697 }, "SubgroupAvcMotionEstimationChromaINTEL": { "value": 5698 } } } }, "ext": { "Round": 1, "RoundEven": 2, "Trunc": 3, "FAbs": 4, "SAbs": 5, "FSign": 6, "SSign": 7, "Floor": 8, "Ceil": 9, "Fract": 10, "Radians": 11, "Degrees": 12, "Sin": 13, "Cos": 14, "Tan": 15, "Asin": 16, "Acos": 17, "Atan": 18, "Sinh": 19, "Cosh": 20, "Tanh": 21, "Asinh": 22, "Acosh": 23, "Atanh": 24, "Atan2": 25, "Pow": 26, "Exp": 27, "Log": 28, "Exp2": 29, "Log2": 30, "Sqrt": 31, "InverseSqrt": 32, "Determinant": 33, "MatrixInverse": 34, "Modf": 35, "ModfStruct": 36, "FMin": 37, "UMin": 38, "SMin": 39, "FMax": 40, "UMax": 41, "SMax": 42, "FClamp": 43, "UClamp": 44, "SClamp": 45, "FMix": 46, "IMix": 47, "Step": 48, "SmoothStep": 49, "Fma": 50, "Frexp": 51, "FrexpStruct": 52, "Ldexp": 53, "PackSnorm4x8": 54, "PackUnorm4x8": 55, "PackSnorm2x16": 56, "PackUnorm2x16": 57, "PackHalf2x16": 58, "PackDouble2x32": 59, "UnpackSnorm2x16": 60, "UnpackUnorm2x16": 61, "UnpackHalf2x16": 62, "UnpackSnorm4x8": 63, "UnpackUnorm4x8": 64, "UnpackDouble2x32": 65, "Length": 66, "Distance": 67, "Cross": 68, "Normalize": 69, "FaceForward": 70, "Reflect": 71, "Refract": 72, "FindILsb": 73, "FindSMsb": 74, "FindUMsb": 75, "InterpolateAtCentroid": 76, "InterpolateAtSample": 77, "InterpolateAtOffset": 78, "NMin": 79, "NMax": 80, "NClamp": 81 } }